pci 0000:00:07.0: DPC: RP PIO log size 0 is invalid

From: Paul Menzel
Date: Mon Dec 07 2020 - 08:08:47 EST


[Bringing the issue up on the list in case the Linux Bugzilla is not monitored/used.]


Dear Linux folks,


On Intel Tiger Lake Dell laptop, Linux logs the error below [1].

[ 0.507307] pci 0000:00:07.0: DPC: RP PIO log size 0 is invalid
[ 0.508835] pci 0000:00:07.2: DPC: RP PIO log size 0 is invalid

$ lspci -nn -s 00:07
00:07.0 PCI bridge [0604]: Intel Corporation Tiger Lake-LP Thunderbolt PCI Express Root Port #0 [8086:9a23] (rev 01)
00:07.2 PCI bridge [0604]: Intel Corporation Tiger Lake-LP Thunderbolt PCI Express Root Port #2 [8086:9a27] (rev 01)

Commit 2700561817 (PCI/DPC: Cache DPC capabilities in pci_init_capabilities()) [1] probably introduced it in Linux 5.7.

What does this error actually mean?

pdev->dpc_rp_log_size = (cap & PCI_EXP_DPC_RP_PIO_LOG_SIZE) >> 8;
if (pdev->dpc_rp_log_size < 4 || pdev->dpc_rp_log_size > 9) {
pci_err(pdev, "RP PIO log size %u is invalid\n",
pdev->dpc_rp_log_size);
pdev->dpc_rp_log_size = 0;
}

(I guess `cap & PCI_EXP_DPC_RP_PIO_LOG_SIZE` is zero too?)

Is it a firmware issue or a hardware issue?


Kind regards,

Paul


[1]: https://bugzilla.kernel.org/show_bug.cgi?id=209943
"pci 0000:00:07.0: DPC: RP PIO log size 0 is invalid"
[2]: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=27005618178ef9e9bf9c42fd91101771c92e9308