Re: [PATCH] PCI: Add d3cold delay quirk for NVIDIA LR10 NVSwitch
From: Jennifer Chan
Date: Thu Nov 05 2026 - 18:24:16 EST
On Thu, Nov 05, 2026, Bjorn Helgaas wrote:
> Do you know where the -EIO is from?
My mistake in the changelog, sorry: it isn't -EIO. The four switches
fail in nvidia-nvswitch chip init, which logs "Failed to initialize
device : -5". That -5 is the driver's own status code
(NVL_INITIALIZATION_TOTAL_FAILURE), not an errno, and probe then returns
-ENODEV. Before that the driver warns while reading its engine
discovery table from BAR0, which looks like MMIO not returning real data
yet. My logs cut off the driver's error text, so I can't say which
access failed.
> Ugh, a second is a long time to wait. Does the kernel you're testing
> include e8df1d194c39 ("PCI: Don't treat ~0 as ready in pci_dev_wait()
> with RRS SV"), by chance? It only appeared in v7.3, so it's pretty
> new.
No, both kernels are v7.1-based without it. The fifth switch fails
because PM_CTRL reads ~0 in pci_power_up(), so the device may well be
returning ~0 after pci_dev_wait() declares it ready. I haven't yet
checked whether the Root Port has RRS SV enabled. I'll check that and
test v7.1 with e8df1d194c39 backported and without this quirk, logging
what pci_dev_wait() reads. If that fixes it, I'll drop this patch.
Thanks,
Jennifer