u-boot/drivers/pci
Eugen Hristev e04b67a7f4 pci: pcie_dw_rockchip: release resources on failing probe
Implement a resource release mechanism on failing probe.
Without this, a strange situation can happen e.g. when init port fails,
or attempting to get the PHY fails, because the gpios have been
requested first, and if the user tries to do 'pci enum' again, the
driver will fail with 'can't find reset gpios' even if the gpios are
there, just because they were blocked by a previous probe attempt.
It is only natural to release the acquired resources if the probe fails,
just for consistency if nothing else.
This way on subsequent probe attempts, the user will get the same error
message, and not something different that doesn't make sense.

Signed-off-by: Eugen Hristev <eugen.hristev@collabora.com>
Reviewed-by: Kever Yang <kever.yang@rock-chips.com>
2023-05-09 18:26:59 +08:00
..
Kconfig pci: Add Apple PCIe controller driver 2023-01-27 14:47:58 -05:00
Makefile sh4: Drop unused pci_sh7780 driver 2023-02-07 14:33:49 -05:00
pci-aardvark.c drivers: use dev_read_addr_ptr when cast to pointer 2023-05-06 17:28:18 +08:00
pci-emul-uclass.c dm: Use access methods for dev/uclass private data 2021-01-05 12:24:40 -07:00
pci-rcar-gen2.c global: Move remaining CONFIG_SYS_SDRAM_* to CFG_SYS_SDRAM_* 2022-12-05 16:06:07 -05:00
pci-rcar-gen3.c pci-rcar-gen3: Rename CONFIG_SEND_ENABLE 2022-12-23 13:01:13 -05:00
pci-uclass.c dm: treewide: Do not use the return value of simple uclass iterator 2022-10-29 07:36:33 -06:00
pci_auto.c pci: auto: Remove PCI_CLASS_PROCESSOR_POWERPC autoconfig case 2023-05-02 08:55:15 -04:00
pci_auto_common.c pci: Fix printf format for regions 2021-10-14 19:45:07 -04:00
pci_common.c doc: replace @return by Return: 2022-01-19 18:11:34 +01:00
pci_compat.c common: Drop log.h from common header 2020-05-18 21:19:18 -04:00
pci_gt64120.c pci: gt64120: Use PCI_CONF1_ADDRESS() macro 2022-01-12 14:21:24 -05:00
pci_internal.h doc: replace @return by Return: 2022-01-19 18:11:34 +01:00
pci_mpc85xx.c pci: mpc85xx: Do not access PCI BARs registers of BDF address 00:00.0 2023-05-01 18:59:33 -04:00
pci_msc01.c pci: msc01: Use PCI_CONF1_ADDRESS() macro 2022-01-12 14:21:24 -05:00
pci_mvebu.c dm: core: Drop ofnode_is_available() 2022-09-29 16:11:31 -04:00
pci_octeontx.c pci: pci_octeontx: Use PCIE_ECAM_OFFSET() macro 2022-01-12 14:21:24 -05:00
pci_rom.c efi: Support a 64-bit frame buffer address 2023-03-13 13:53:01 +01:00
pci_sandbox.c dm: treewide: Rename ..._platdata variables to just ..._plat 2020-12-13 16:51:09 -07:00
pci_sh7751.c global: Move remaining CONFIG_SYS_SDRAM_* to CFG_SYS_SDRAM_* 2022-12-05 16:06:07 -05:00
pci_tegra.c dm: core: Drop ofnode_is_available() 2022-09-29 16:11:31 -04:00
pci_x86.c dm: pci: Update the PCI read_config() method to const dev * 2020-02-05 19:33:45 -07:00
pcie_apple.c pci: apple: Initialize only enabled ports 2023-03-29 13:30:29 -04:00
pcie_brcmstb.c pci: pcie-brcmstb: Use PCIE_ECAM_OFFSET() macro 2022-01-12 14:21:24 -05:00
pcie_dw_common.c drivers: pci: pcie_dw_common: add upper-limit to iATU 2022-12-12 14:03:11 -05:00
pcie_dw_common.h drivers: pci: pcie_dw_common: add upper-limit to iATU 2022-12-12 14:03:11 -05:00
pcie_dw_meson.c drivers: use dev_read_addr_index_ptr when cast to pointer 2023-05-06 17:28:18 +08:00
pcie_dw_mvebu.c drivers: use devfdt_get_addr_index_ptr when cast to pointer 2023-05-06 17:28:18 +08:00
pcie_dw_rockchip.c pci: pcie_dw_rockchip: release resources on failing probe 2023-05-09 18:26:59 +08:00
pcie_dw_sifive.c drivers: pci: add pcie support for fu740 2021-05-31 16:35:54 +08:00
pcie_dw_ti.c pci: pcie_dw_ti: migrate to common Designware PCIe functions 2021-04-15 10:43:17 +08:00
pcie_ecam_generic.c RFC: arm: pci: Add PCI cam support to PCI-E ecam driver 2021-11-17 17:09:47 -05:00
pcie_ecam_synquacer.c pci: Add standard PCIe ECAM macros 2021-11-17 17:04:58 -05:00
pcie_fsl.c pci: fsl: Do not access PCI BAR0 register of PCIe Root Port 2023-05-03 18:30:46 -04:00
pcie_fsl.h global: Move remaining CONFIG_SYS_PCI* to CFG_SYS_PCI* 2022-12-05 16:06:07 -05:00
pcie_fsl_fixup.c treewide: convert bd_t to struct bd_info by coccinelle 2020-07-17 09:30:13 -04:00
pcie_imx.c drivers: use devfdt_get_addr_index_ptr when cast to pointer 2023-05-06 17:28:18 +08:00
pcie_intel_fpga.c common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
pcie_iproc.c pci: Add defines for normal and subtractive PCI bridges 2022-03-25 13:35:50 -04:00
pcie_layerscape.c common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
pcie_layerscape.h global: Move remaining CONFIG_SYS_SDRAM_* to CFG_SYS_SDRAM_* 2022-12-05 16:06:07 -05:00
pcie_layerscape_ep.c drivers: use devfdt_get_addr_index_ptr when cast to pointer 2023-05-06 17:28:18 +08:00
pcie_layerscape_fixup.c pci: layerscape: update the searching compatible of LX2160A PCIe 2022-02-01 15:08:07 +05:30
pcie_layerscape_fixup_common.c fdt_support: Add fdt_for_each_node_by_compatible() helper macro 2022-01-20 11:35:29 +01:00
pcie_layerscape_fixup_common.h treewide: convert bd_t to struct bd_info by coccinelle 2020-07-17 09:30:13 -04:00
pcie_layerscape_gen4.c global: Move remaining CONFIG_SYS_PCI* to CFG_SYS_PCI* 2022-12-05 16:06:07 -05:00
pcie_layerscape_gen4.h global: Move remaining CONFIG_SYS_PCI* to CFG_SYS_PCI* 2022-12-05 16:06:07 -05:00
pcie_layerscape_gen4_fixup.c fdt_support: Remove FDT_STATUS_FAIL_ERROR_CODE 2021-12-19 09:50:47 +01:00
pcie_layerscape_rc.c pci: layerscape: add support for kernel/official fsl, ls1088a-pcie binding 2023-05-05 09:46:03 +08:00
pcie_mediatek.c dm: core: Drop ofnode_is_available() 2022-09-29 16:11:31 -04:00
pcie_octeon.c mips: octeon: Add Octeon PCIe host controller driver 2021-04-28 10:05:12 +02:00
pcie_phytium.c pci: Add standard PCIe ECAM macros 2021-11-17 17:04:58 -05:00
pcie_rockchip.c pci: Add defines for normal and subtractive PCI bridges 2022-03-25 13:35:50 -04:00
pcie_uniphier.c pci: uniphier: Add UniPhier PCIe controller driver 2021-07-14 16:48:08 -04:00
pcie_xilinx.c pci: Add standard PCIe ECAM macros 2021-11-17 17:04:58 -05:00