u-boot/drivers/pci
Masami Hiramatsu 2f7dddc2a5 dm: pci: Skip setting VGA bridge bits if parent device is the host bus
Commit bbbcb52628 ("dm: pci: Enable VGA address forwarding on bridges")
sets the VGA bridge bits by checking pplat->class, but if the parent
device is the pci host bus device, it can be skipped. Moreover, it
shouldn't access the pplat because the parent has different plat data.

Without this fix, "pci enum" command cause a synchronous abort.

pci_auto_config_devices: start
PCI Autoconfig: Bus Memory region: [78000000-7fffffff],
		Physical Memory [78000000-7fffffffx]
PCI Autoconfig: Bus I/O region: [0-ffff],
		Physical Memory [77f00000-77f0ffffx]
pci_auto_config_devices: device pci_6:0.0
PCI Autoconfig: BAR 0, Mem, size=0x1000000, address=0x78000000 bus_lower=0x79000000

PCI Autoconfig: BAR 1, Mem, size=0x8000000, No room in resource, avail start=79000000 / size=8000000, need=8000000
PCI: Failed autoconfig bar 14

PCI Autoconfig: BAR 2, I/O, size=0x4, address=0x1000 bus_lower=0x1004

PCI Autoconfig: BAR 3, Mem, size=0x2000000, address=0x7a000000 bus_lower=0x7c000000

PCI Autoconfig: BAR 4, I/O, size=0x80, address=0x1080 bus_lower=0x1100

PCI Autoconfig: ROM, size=0x80000, address=0x7c000000 bus_lower=0x7c080000

"Synchronous Abort" handler, esr 0x96000006
elr: 00000000e002bd28 lr : 00000000e002bce8 (reloc)
elr: 00000000fff6fd28 lr : 00000000fff6fce8
x0 : 0000000000001041 x1 : 000000000000003e
x2 : 00000000ffb0f8c8 x3 : 0000000000000001
x4 : 0000000000000080 x5 : 0000000000000000
x6 : 00000000fff718fc x7 : 000000000000000f
x8 : 00000000ffb0f238 x9 : 0000000000000008
x10: 0000000000000000 x11: 0000000000000010
x12: 0000000000000006 x13: 000000000001869f
x14: 00000000ffb0fcd0 x15: 0000000000000020
x16: 00000000fff71cc4 x17: 0000000000000000
x18: 00000000ffb13d90 x19: 00000000ffb14320
x20: 0000000000000000 x21: 00000000ffb14090
x22: 00000000ffb0f8c8 x23: 0000000000000001
x24: 00000000ffb14c10 x25: 0000000000000000
x26: 0000000000000000 x27: 0000000000000000
x28: 00000000ffb14c70 x29: 00000000ffb0f830

Code: 52800843 52800061 52800e00 97ffcf65 (b9400280)
Resetting CPU ...

Signed-off-by: Masami Hiramatsu <masami.hiramatsu@linaro.org>
Reviewed-by: Simon Glass <sjg@chromium.org>
2021-07-06 14:07:36 -04:00
..
fsl_pci_init.c pci: fsl_pci_init: Dynamically allocate the PCI regions 2021-03-05 10:25:42 +05:30
Kconfig drivers: pci: add pcie support for fu740 2021-05-31 16:35:54 +08:00
Makefile drivers: pci: add pcie support for fu740 2021-05-31 16:35:54 +08:00
pci-aardvark.c arm: a37xx: pci: Fix configuring PCIe resources 2021-06-04 11:32:41 +02: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 dm: treewide: Rename ofdata_to_platdata() to of_to_plat() 2020-12-13 16:51:09 -07:00
pci-rcar-gen3.c pci: renesas: Fix BAR mapping on Gen3 2021-02-20 22:38:28 +01:00
pci-uclass.c dm: pci: Skip setting VGA bridge bits if parent device is the host bus 2021-07-06 14:07:36 -04:00
pci.c common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
pci_auto.c pci: Mark 64bit Memory BARs as such 2021-04-12 17:17:11 -04:00
pci_auto_common.c common: Drop log.h from common header 2020-05-18 21:19:18 -04:00
pci_auto_old.c pci: Remove CONFIG_PCI_ENUM_ONLY as it's not used (any more) 2021-01-27 17:03:16 -05:00
pci_common.c env: Move env_get() to env.h 2019-08-11 16:43:41 -04:00
pci_compat.c common: Drop log.h from common header 2020-05-18 21:19:18 -04:00
pci_ftpci100.c common: Drop log.h from common header 2020-05-18 21:19:18 -04:00
pci_gt64120.c common: Drop log.h from common header 2020-05-18 21:19:18 -04:00
pci_indirect.c pci: Don't use pci_indirect when DM is active 2018-05-08 18:50:23 -04:00
pci_internal.h SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
pci_mpc85xx.c pci: mpc85xx: Support 64-bit bus and cpu address 2021-03-05 10:25:43 +05:30
pci_msc01.c common: Drop init.h from common header 2020-05-18 17:33:33 -04:00
pci_mvebu.c pci: pci_mvebu: set local dev to number 1 2021-02-26 10:22:29 +01:00
pci_octeontx.c common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
pci_rom.c video: Fix video on coreboot with the copy buffer 2021-03-27 15:04:30 +13:00
pci_sandbox.c dm: treewide: Rename ..._platdata variables to just ..._plat 2020-12-13 16:51:09 -07:00
pci_sh4.c common: Drop linux/delay.h from common header 2020-05-18 21:19:23 -04:00
pci_sh7751.c common: Drop linux/bitops.h from common header 2020-05-18 21:19:23 -04:00
pci_sh7780.c common: Drop linux/delay.h from common header 2020-05-18 21:19:23 -04:00
pci_tegra.c dm: treewide: Rename ofdata_to_platdata() to of_to_plat() 2020-12-13 16:51:09 -07:00
pci_x86.c dm: pci: Update the PCI read_config() method to const dev * 2020-02-05 19:33:45 -07:00
pcie_brcmstb.c pci: pcie-brcmstb: Fix inbound window configurations 2021-02-18 11:56:25 +01:00
pcie_dw_common.c drivers: pci: pcie_dw_common: fix Werror compilation error 2021-05-31 16:35:55 +08:00
pcie_dw_common.h pci: add common Designware PCIe functions 2021-04-15 10:43:17 +08:00
pcie_dw_meson.c pci: add Amlogic Meson Designware PCIe controller 2021-04-15 10:43:17 +08:00
pcie_dw_mvebu.c pcie: designware: mvebu: do not configure ATU for IO when not used 2021-05-16 06:48:45 +02:00
pcie_dw_rockchip.c pci: pcie_dw_rockchip: Replace msleep occurences by udelay 2021-06-18 14:36:54 +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 common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
pcie_fsl.c common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
pcie_fsl.h dm: pci: fsl: Correct the workaround of erratum A-007815 2020-10-23 16:52:09 +05:30
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 pci: imx: disable imx6sdl LTSSM upon driver remove 2021-05-02 12:46:54 +02: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 dm: pci: Correct use of wrong flag name 2021-02-03 03:38:41 -07:00
pcie_layerscape.c common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
pcie_layerscape.h pci: layerscape: Remove the shadow SVR definitions 2021-02-08 14:01:18 +05:30
pcie_layerscape_ep.c pci: layerscape-ep: Add check of the PCIe controller enablement 2021-06-17 11:46:11 +05:30
pcie_layerscape_fixup.c dm: Avoid accessing seq directly 2020-12-18 20:32:21 -07:00
pcie_layerscape_fixup_common.c common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05: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 common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
pcie_layerscape_gen4.h pci: Drop dm.h inclusion from header file 2020-08-03 22:19:54 -04:00
pcie_layerscape_gen4_fixup.c dm: Avoid accessing seq directly 2020-12-18 20:32:21 -07:00
pcie_layerscape_rc.c pci: layerscape: Change to allocate zeroed memery for struct ls_pcie 2021-03-23 18:06:07 +05:30
pcie_mediatek.c dm: Avoid accessing seq directly 2020-12-18 20:32:21 -07:00
pcie_octeon.c mips: octeon: Add Octeon PCIe host controller driver 2021-04-28 10:05:12 +02:00
pcie_phytium.c common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
pcie_rockchip.c common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
pcie_xilinx.c common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00