]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
PCI: rockchip: Fix order of rockchip_pci_core_rsts
authorJensen Huang <jensenhuang@friendlyarm.com>
Fri, 28 Mar 2025 10:58:22 +0000 (18:58 +0800)
committerManivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
Sat, 19 Apr 2025 13:47:02 +0000 (19:17 +0530)
The order of rockchip_pci_core_rsts introduced in the offending commit
followed the previous comment that warned not to reorder them. But the
commit failed to take into account that reset_control_bulk_deassert()
deasserts the resets in reverse order. So this leads to the link getting
downgraded to 2.5 GT/s.

Hence, restore the deassert order and also add back the comments for
rockchip_pci_core_rsts.

Tested on NanoPC-T4 with Samsung 970 Pro.

Fixes: 18715931a5c0 ("PCI: rockchip: Simplify reset control handling by using reset_control_bulk*() function")
Signed-off-by: Jensen Huang <jensenhuang@friendlyarm.com>
[mani: reworded the commit message and the comment above rockchip_pci_core_rsts]
Signed-off-by: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
Reviewed-by: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
Acked-by: Shawn Lin <shawn.lin@rock-chips.com>
Link: https://patch.msgid.link/20250328105822.3946767-1-jensenhuang@friendlyarm.com
drivers/pci/controller/pcie-rockchip.h

index 14954f43e5e9af229168a5c5f1c636c6495971c6..5864a20323f21a004bfee4ac6d3a1328c4ab4d8a 100644 (file)
@@ -319,11 +319,12 @@ static const char * const rockchip_pci_pm_rsts[] = {
        "aclk",
 };
 
+/* NOTE: Do not reorder the deassert sequence of the following reset pins */
 static const char * const rockchip_pci_core_rsts[] = {
-       "mgmt-sticky",
-       "core",
-       "mgmt",
        "pipe",
+       "mgmt",
+       "core",
+       "mgmt-sticky",
 };
 
 struct rockchip_pcie {