
Hi Jonas,
On 2024/5/11 19:28, Jonas Karlman wrote:
The GPIO2_D6 pin is changed to use func-4 using pcie30x2m1_pins during probe of pcie3x2. This cause the device to lock-up when pci driver use the reset-gpios unless the pin is first changed to use gpio pinmux.
The reset-gpio for PCIe is for sure to use this IO as GPIO instead of function IO. And also CLKREQ and WAKEN should work in GPIO mode. So keep the all PCIe IO to pinmux to function IO should not be correct. Could you try with something like this: &pcie3x2 { /delete-property/ pinctrl-names /delete-property/ pinctrl-0; };
Thanks, - Kever
Drop the board u-boot.dtsi workaround now that the gpio and pinctrl drivers automatically use gpio pinmux when a gpio is requested.
Signed-off-by: Jonas Karlmanjonas@kwiboo.se
arch/arm/dts/rk3568-rock-3a-u-boot.dtsi | 12 ------------ 1 file changed, 12 deletions(-)
diff --git a/arch/arm/dts/rk3568-rock-3a-u-boot.dtsi b/arch/arm/dts/rk3568-rock-3a-u-boot.dtsi index 9d18f5d0b364..f4e2dc91ddfb 100644 --- a/arch/arm/dts/rk3568-rock-3a-u-boot.dtsi +++ b/arch/arm/dts/rk3568-rock-3a-u-boot.dtsi @@ -6,18 +6,6 @@
#include "rk356x-u-boot.dtsi"
-&pcie3x2 {
- pinctrl-0 = <&pcie3x2_reset_h>;
-};
-&pinctrl {
- pcie {
pcie3x2_reset_h: pcie3x2-reset-h {
rockchip,pins = <2 RK_PD6 RK_FUNC_GPIO &pcfg_pull_none>;
};
- };
-};
- &sdhci { cap-mmc-highspeed; mmc-hs200-1_8v;