]> asedeno.scripts.mit.edu Git - linux.git/commitdiff
PCI: amlogic: Fix reset assertion via gpio descriptor
authorRemi Pommarel <repk@triplefau.lt>
Sun, 1 Sep 2019 13:39:15 +0000 (15:39 +0200)
committerLorenzo Pieralisi <lorenzo.pieralisi@arm.com>
Tue, 15 Oct 2019 13:57:32 +0000 (14:57 +0100)
Normally asserting reset signal on gpio would be achieved with:
gpiod_set_value_cansleep(reset_gpio, 1);

Meson PCI driver set reset value to '0' instead of '1' as it takes into
account the PERST# signal polarity. The polarity should be taken care
in the device tree instead.

This fixes the reset assertion meaning and moves out the polarity
configuration in DT (please note that there is no DT currently using
this driver).

Signed-off-by: Remi Pommarel <repk@triplefau.lt>
Signed-off-by: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com>
Reviewed-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com>
Reviewed-by: Neil Armstrong <narmstrong@baylibre.com>
drivers/pci/controller/dwc/pci-meson.c

index e35e9eaa50ee169240241183116285eacb7b801a..541f37a6f6a5c163fc949b8517f43ba6d7b79cde 100644 (file)
@@ -287,9 +287,9 @@ static inline void meson_cfg_writel(struct meson_pcie *mp, u32 val, u32 reg)
 
 static void meson_pcie_assert_reset(struct meson_pcie *mp)
 {
-       gpiod_set_value_cansleep(mp->reset_gpio, 0);
-       udelay(500);
        gpiod_set_value_cansleep(mp->reset_gpio, 1);
+       udelay(500);
+       gpiod_set_value_cansleep(mp->reset_gpio, 0);
 }
 
 static void meson_pcie_init_dw(struct meson_pcie *mp)