[PATCH 2/2] arm: dts: rk356x: rock3a: disable pcie3x2
Ahmad Fatoum
a.fatoum at pengutronix.de
Wed Jan 21 03:31:28 PST 2026
The board hangs occasionally on PCI probe after:
phy7: lane number 0, val 1
On other boots, it continues to:
rockchip-dw-pcie 3c0800000.pcie at fe280000.of: Phy link never came up
In both cases, the hang affects the second PCIe host controller
to probe and the first probe never hangs:
rockchip-dw-pcie 3c0000000.pcie at fe260000.of: Phy link never came up
This hang happens on the very first read access to the PCI controller
at register PCIE_ATU_VIEWPORT. Reading Linux code, the first access
seems to be to PCIE_VERSION_NUMBER (0x8F8), but accessing that in
barebox equally hangs from time to time.
My board doesn't have any PCIe devices connected and this hang
doesn't happen in Linux and doesn't happen on the QNAP
TS433-eU, which is also RK3568, but actually has PCIe devices, which are
probed normally.
Disable the device in barebox, so the board is usable with
rockchip_v8_defconfig, which enables the PCI driver.
barebox,status is used, so the Linux device tree is not affected.
Signed-off-by: Ahmad Fatoum <a.fatoum at pengutronix.de>
---
v1 -> v2:
- add short comment explaining why we disable this device in particular
---
arch/arm/dts/rk3568-rock-3a.dts | 5 +++++
1 file changed, 5 insertions(+)
diff --git a/arch/arm/dts/rk3568-rock-3a.dts b/arch/arm/dts/rk3568-rock-3a.dts
index bcbfab14a580..4834a85b367a 100644
--- a/arch/arm/dts/rk3568-rock-3a.dts
+++ b/arch/arm/dts/rk3568-rock-3a.dts
@@ -55,3 +55,8 @@ environment_sd: partition at 408000 {
};
};
};
+
+/* Device driver probe occasionally hangs, but pcie2x1 is fine... */
+&pcie3x2 {
+ barebox,status = "disabled";
+};
--
2.47.3
More information about the barebox
mailing list