Skip to contentSkip to conversation

arm64: dts: hisilicon: poplar: Correct PCIe reset GPIO polarity

PATCH Applied Shawn Guo 2 participants 2 messages Feb 27 – Mar 21

Subsystems (3)
lore
Share & tools
lore

Shawn Guo

author
#0 lore raw

PATCH 1/1 arm64: dts: hisilicon: poplar: Correct PCIe reset GPIO polarity

The PCIe reset GPIO on Poplar is actually active low. The active high worked before because kernel driver didn't respect the setting from DT. This is changed since commit 1d26a55fbeb9 ("PCI: histb: Switch to using gpiod API"), and thus PCIe on Poplar got brken since then.

Fix the problem by correcting the polarity.

Fixes 32fa01761bd9 ("arm64: dts: hi3798cv200: enable PCIe support for poplar board")
---
 arch/arm64/boot/dts/hisilicon/hi3798cv200-poplar.dts | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
arch/arm64/boot/dts/hisilicon/hi3798cv200-poplar.dts +1 -1
index 7d370dac4c85..579d55daa7d0 100644
@@ -179,7 +179,7 @@ &ohci {
 };
 
 &pcie {
-	reset-gpios = <&gpio4 4 GPIO_ACTIVE_HIGH>;
+	reset-gpios = <&gpio4 4 GPIO_ACTIVE_LOW>;
 	vpcie-supply = <&reg_pcie>;
 	status = "okay";
 };
Signature · 1 line
2.47.3
maintainer Applied
#1 lore raw

Hi Shawn,

Quoted 20 lines · Shawn Guo

The PCIe reset GPIO on Poplar is actually active low. The active high worked before because kernel driver didn't respect the setting from DT. This is changed since commit 1d26a55fbeb9 ("PCI: histb: Switch to using gpiod API"), and thus PCIe on Poplar got brken since then.

Fix the problem by correcting the polarity.

Fixes 32fa01761bd9 ("arm64: dts: hi3798cv200: enable PCIe support for poplar board")
---
 arch/arm64/boot/dts/hisilicon/hi3798cv200-poplar.dts | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
arch/arm64/boot/dts/hisilicon/hi3798cv200-poplar.dts +0 -0
index 7d370dac4c85..579d55daa7d0 100644

arch/arm64/boot/dts/hisilicon/hi3798cv200-poplar.dts &ohci { · line 185

Quoted 8 lines
arch/arm64/boot/dts/hisilicon/hi3798cv200-poplar.dts +1 -1
@@ -179,7 +179,7 @@ &ohci {
 };
 
 &pcie {
-	reset-gpios = <&gpio4 4 GPIO_ACTIVE_HIGH>;
+	reset-gpios = <&gpio4 4 GPIO_ACTIVE_LOW>;
 	vpcie-supply = <&reg_pcie>;
 	status = "okay";
 };

Applied to the HiSilicon arm64 dt tree.
Thanks!

Best Regards,
Wei