linux/drivers/pci/controller
Thierry Reding e7a877b2fa PCI: armada8x: Propagate errors for optional PHYs
devm_of_phy_get_by_index() can fail for a number of reasons besides
probe deferral. It can for example return -ENOMEM if it runs out of
memory as it tries to allocate devres structures. Propagating only
-EPROBE_DEFER is problematic because it results in these legitimately
fatal errors being treated as "PHY not specified in DT".

What we really want is to ignore the optional PHYs only if they have not
been specified in DT. devm_of_phy_get_by_index() returns -ENODEV in this
case, so that's the special case that we need to handle. So we propagate
all errors, except -ENODEV, so that real failures will still cause the
driver to fail probe.

Signed-off-by: Thierry Reding <treding@nvidia.com>
Signed-off-by: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com>
Reviewed-by: Andrew Murray <andrew.murray@arm.com>
Cc: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2019-09-04 15:42:38 +01:00
..
dwc PCI: armada8x: Propagate errors for optional PHYs 2019-09-04 15:42:38 +01:00
Kconfig PCI: altera-msi: Allow building as module 2019-05-30 15:34:54 +01:00
Makefile PCI: mobiveil: Add Kconfig/Makefile entries 2018-07-30 14:30:16 +01:00
pci-aardvark.c PCI: Fix typos and whitespace errors 2019-07-09 07:24:53 -05:00
pci-ftpci100.c PCI: faraday: Fix I/O space page leak 2018-07-18 17:01:14 -05:00
pci-host-common.c PCI: Remove unnecessary check of device_type == pci 2018-09-25 09:40:03 +01:00
pci-host-generic.c PCI: Fix comment typos 2019-04-13 11:17:15 -05:00
pci-hyperv.c PCI: hv: Fix a use-after-free bug in hv_eject_device_work() 2019-07-05 14:37:44 +01:00
pci-mvebu.c PCI: pci-bridge-emul: Extend pci_bridge_emul_init() with flags 2019-02-22 10:51:14 +00:00
pci-rcar-gen2.c
pci-tegra.c PCI: tegra: Enable Relaxed Ordering only for Tegra20 & Tegra30 2019-07-05 13:59:59 +01:00
pci-thunder-ecam.c
pci-thunder-pem.c
pci-v3-semi.c PCI: v3-semi: Fix I/O space page leak 2018-07-18 17:02:13 -05:00
pci-versatile.c PCI: versatile: Fix I/O space page leak 2018-07-18 17:00:11 -05:00
pci-xgene-msi.c
pci-xgene.c PCI: xgene: Fix I/O space page leak 2018-07-18 16:59:40 -05:00
pcie-altera-msi.c PCI: altera-msi: Allow building as module 2019-05-30 15:34:54 +01:00
pcie-altera.c PCI: altera: Fix configuration type based on secondary number 2019-06-17 12:22:25 +01:00
pcie-cadence-ep.c PCI: cadence: Remove pci_epf_linkup() from Cadence EP driver 2019-02-15 10:02:38 +00:00
pcie-cadence-host.c PCI: Remove unnecessary check of device_type == pci 2018-09-25 09:40:03 +01:00
pcie-cadence.c pci-v4.20-changes 2018-10-25 06:50:48 -07:00
pcie-cadence.h
pcie-iproc-bcma.c
pcie-iproc-msi.c PCI: Fix comment typos 2019-04-13 11:17:15 -05:00
pcie-iproc-platform.c PCI: Fix typos and whitespace errors 2019-07-09 07:24:53 -05:00
pcie-iproc.c PCI: Fix typos and whitespace errors 2019-07-09 07:24:53 -05:00
pcie-iproc.h
pcie-mediatek.c Merge branch 'remotes/lorenzo/pci/misc' 2019-05-13 18:34:44 -05:00
pcie-mobiveil.c PCI: mobiveil: Fix INTx interrupt clearing in mobiveil_pcie_isr() 2019-07-08 12:39:09 +01:00
pcie-rcar.c Merge branch 'remotes/lorenzo/pci/rcar' 2019-05-13 18:34:42 -05:00
pcie-rockchip-ep.c PCI: rockchip: Fix rockchip_pcie_ep_assert_intx() bitwise operations 2019-04-15 10:39:26 +01:00
pcie-rockchip-host.c PCI: rockchip: Propagate errors for optional regulators 2019-09-04 15:37:47 +01:00
pcie-rockchip.c
pcie-rockchip.h
pcie-tango.c
pcie-xilinx-nwl.c PCI: xilinx-nwl: Fix Multi MSI data programming 2019-06-26 10:56:51 +01:00
pcie-xilinx.c PCI: xilinx: Check for __get_free_pages() failure 2019-03-29 16:28:20 +00:00
vmd.c PCI: Fix typos and whitespace errors 2019-07-09 07:24:53 -05:00