mirror-linux/drivers/pci/controller/dwc
Sascha Hauer 71bf3550b5 PCI: imx6: Initialize PHY before deasserting core reset
[ Upstream commit ae6b9a65af ]

When the PHY is the reference clock provider then it must be initialized
and powered on before the reset on the client is deasserted, otherwise
the link will never come up. The order was changed in cf236e0c0d.
Restore the correct order to make the driver work again on boards where
the PHY provides the reference clock. This also changes the order for
boards where the Soc is the PHY reference clock divider, but this
shouldn't do any harm.

Link: https://lore.kernel.org/r/20221101095714.440001-1-s.hauer@pengutronix.de
Fixes: cf236e0c0d ("PCI: imx6: Do not hide PHY driver callbacks and refine the error handling")
Tested-by: Richard Zhu <hongxing.zhu@nxp.com>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Signed-off-by: Lorenzo Pieralisi <lpieralisi@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2022-12-31 13:32:32 +01:00
..
Kconfig
Makefile
pci-dra7xx.c Merge branch 'pci/ctrl/pm-ops' 2022-08-04 11:46:52 -05:00
pci-exynos.c Merge branch 'pci/ctrl/pm-ops' 2022-08-04 11:46:52 -05:00
pci-imx6.c PCI: imx6: Initialize PHY before deasserting core reset 2022-12-31 13:32:32 +01:00
pci-keystone.c Merge branch 'pci/misc' 2022-08-04 11:46:53 -05:00
pci-layerscape-ep.c PCI: dwc: Add start_link/stop_link inlines 2022-07-05 19:00:52 -05:00
pci-layerscape.c PCI: dwc: Rename struct pcie_port to dw_pcie_rp 2022-07-05 19:00:52 -05:00
pci-meson.c PCI: dwc: Rename struct pcie_port to dw_pcie_rp 2022-07-05 19:00:52 -05:00
pcie-al.c PCI: dwc: Rename struct pcie_port to dw_pcie_rp 2022-07-05 19:00:52 -05:00
pcie-armada8k.c Merge branch 'pci/misc' 2022-08-04 11:46:53 -05:00
pcie-artpec6.c PCI: dwc: Rename struct pcie_port to dw_pcie_rp 2022-07-05 19:00:52 -05:00
pcie-designware-ep.c Fix of heap data and clang warnings, support for a new Intel NTB device, 2022-08-13 14:00:45 -07:00
pcie-designware-host.c PCI: dwc: Drop dependency on ZONE_DMA32 2022-08-29 09:56:33 +02:00
pcie-designware-plat.c PCI: dwc-plat: Drop dw_plat_pcie_of_match[] forward declaration 2022-07-05 19:00:52 -05:00
pcie-designware.c PCI: dwc: Fix n_fts[] array overrun 2022-12-31 13:32:30 +01:00
pcie-designware.h PCI: dwc: Drop dependency on ZONE_DMA32 2022-08-29 09:56:33 +02:00
pcie-dw-rockchip.c PCI: dwc: Rename struct pcie_port to dw_pcie_rp 2022-07-05 19:00:52 -05:00
pcie-fu740.c Merge branch 'pci/ctrl/fu740' 2022-08-04 11:41:55 -05:00
pcie-hisi.c
pcie-histb.c PCI: dwc: Rename struct pcie_port to dw_pcie_rp 2022-07-05 19:00:52 -05:00
pcie-intel-gw.c Merge branch 'pci/ctrl/pm-ops' 2022-08-04 11:46:52 -05:00
pcie-keembay.c PCI: dwc: Convert struct pcie_port.msi_irq to an array 2022-08-01 15:15:33 -05:00
pcie-kirin.c PCI: dwc: Replace of_gpio_named_count() by gpiod_count() 2022-10-03 10:34:46 +02:00
pcie-qcom-ep.c PCI: qcom-ep: Check platform_get_resource_byname() return value 2022-10-05 17:30:55 -05:00
pcie-qcom.c PCI: qcom: Rename host-init error label 2022-09-29 10:34:47 +02:00
pcie-spear13xx.c Merge branch 'pci/misc' 2022-08-04 11:46:53 -05:00
pcie-tegra194-acpi.c PCI: dwc: Simplify in/outbound iATU setup methods 2022-08-01 15:15:09 -05:00
pcie-tegra194.c Merge branch 'pci/ctrl/tegra194' 2022-08-04 11:46:51 -05:00
pcie-uniphier-ep.c PCI: uniphier-ep: Add NX1 support 2022-02-11 16:26:21 +00:00
pcie-uniphier.c PCI: dwc: Rename struct pcie_port to dw_pcie_rp 2022-07-05 19:00:52 -05:00
pcie-visconti.c PCI: dwc: Rename struct pcie_port to dw_pcie_rp 2022-07-05 19:00:52 -05:00