diff options
author | Marc Zyngier <maz@kernel.org> | 2021-11-23 19:06:36 +0100 |
---|---|---|
committer | Bjorn Helgaas <bhelgaas@google.com> | 2021-12-07 21:27:29 +0100 |
commit | 87620512681a20ef24ece85ac21ff90c9efed37d (patch) | |
tree | 84f57be8d7b83cb6d1184a1553b86b16be58c4b1 /drivers/pci/controller/pcie-apple.c | |
parent | arm64: dts: apple: t8103: Mark PCIe PERST# polarity active low in DT (diff) | |
download | linux-87620512681a20ef24ece85ac21ff90c9efed37d.tar.xz linux-87620512681a20ef24ece85ac21ff90c9efed37d.zip |
PCI: apple: Fix PERST# polarity
Now that PERST# is properly defined as active-low in the device tree, fix
the driver to correctly drive the line independently of the implied
polarity.
Suggested-by: Pali Rohár <pali@kernel.org>
Fixes: 1e33888fbe44 ("PCI: apple: Add initial hardware bring-up")
Link: https://lore.kernel.org/r/20211123180636.80558-4-maz@kernel.org
Signed-off-by: Marc Zyngier <maz@kernel.org>
Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
Reviewed-by: Luca Ceresoli <luca@lucaceresoli.net>
Diffstat (limited to 'drivers/pci/controller/pcie-apple.c')
-rw-r--r-- | drivers/pci/controller/pcie-apple.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/pci/controller/pcie-apple.c b/drivers/pci/controller/pcie-apple.c index c384777b0374..b090924b41fe 100644 --- a/drivers/pci/controller/pcie-apple.c +++ b/drivers/pci/controller/pcie-apple.c @@ -540,7 +540,7 @@ static int apple_pcie_setup_port(struct apple_pcie *pcie, rmw_set(PORT_APPCLK_EN, port->base + PORT_APPCLK); /* Assert PERST# before setting up the clock */ - gpiod_set_value(reset, 0); + gpiod_set_value(reset, 1); ret = apple_pcie_setup_refclk(pcie, port); if (ret < 0) @@ -551,7 +551,7 @@ static int apple_pcie_setup_port(struct apple_pcie *pcie, /* Deassert PERST# */ rmw_set(PORT_PERST_OFF, port->base + PORT_PERST); - gpiod_set_value(reset, 1); + gpiod_set_value(reset, 0); /* Wait for 100ms after PERST# deassertion (PCIe r5.0, 6.6.1) */ msleep(100); |