diff options
| author | Rob Herring <[email protected]> | 2020-12-18 14:39:05 +0000 |
|---|---|---|
| committer | Bjorn Helgaas <[email protected]> | 2020-12-26 03:58:36 +0000 |
| commit | 275e88b06a277ccf89d9c471a777e9b4f8c552b0 (patch) | |
| tree | fab4add6d113f3c2e4c2617583c065dd243ea960 /drivers/pci/controller/dwc/pci-keystone.c | |
| parent | Merge branch 'remotes/lorenzo/pci/misc' (diff) | |
| download | kernel-275e88b06a277ccf89d9c471a777e9b4f8c552b0.tar.gz kernel-275e88b06a277ccf89d9c471a777e9b4f8c552b0.zip | |
PCI: tegra: Fix host link initialization
Commit b9ac0f9dc8ea ("PCI: dwc: Move dw_pcie_setup_rc() to DWC common
code") broke enumeration of downstream devices on Tegra:
In non-working case (next-20201211):
0001:00:00.0 PCI bridge: NVIDIA Corporation Device 1ad2 (rev a1)
0001:01:00.0 SATA controller: Marvell Technology Group Ltd. Device 9171 (rev 13)
0005:00:00.0 PCI bridge: NVIDIA Corporation Device 1ad0 (rev a1)
In working case (v5.10-rc7):
0001:00:00.0 PCI bridge: Molex Incorporated Device 1ad2 (rev a1)
0001:01:00.0 SATA controller: Marvell Technology Group Ltd. Device 9171 (rev 13)
0005:00:00.0 PCI bridge: Molex Incorporated Device 1ad0 (rev a1)
0005:01:00.0 PCI bridge: PLX Technology, Inc. Device 3380 (rev ab)
0005:02:02.0 PCI bridge: PLX Technology, Inc. Device 3380 (rev ab)
0005:03:00.0 USB controller: PLX Technology, Inc. Device 3380 (rev ab)
The problem seems to be dw_pcie_setup_rc() is now called twice before and
after the link up handling. The fix is to move Tegra's link up handling to
.start_link() function like other DWC drivers. Tegra is a bit more
complicated than others as it re-inits the whole DWC controller to retry
the link. With this, the initialization ordering is restored to match the
prior sequence.
Fixes: b9ac0f9dc8ea ("PCI: dwc: Move dw_pcie_setup_rc() to DWC common code")
Link: https://lore.kernel.org/r/[email protected]
Reported-by: Mian Yousaf Kaukab <[email protected]>
Tested-by: Mian Yousaf Kaukab <[email protected]>
Signed-off-by: Rob Herring <[email protected]>
Signed-off-by: Bjorn Helgaas <[email protected]>
Cc: Lorenzo Pieralisi <[email protected]>
Cc: Thierry Reding <[email protected]>
Cc: Jonathan Hunter <[email protected]>
Cc: Vidya Sagar <[email protected]>
Diffstat (limited to 'drivers/pci/controller/dwc/pci-keystone.c')
0 files changed, 0 insertions, 0 deletions
