linux/drivers/pci/controller/dwc
Krishna Chaitanya Chundru c96992a24b PCI: dwc: Add support for ELBI resource mapping
External Local Bus Interface (ELBI) is an optional register space for all
DWC IPs containing the vendor specific registers. There is no need for the
vendor glue drivers to fetch and map the ELBI region separately.

Hence, optionally fetch and map the resource from DT in the DWC core. This
also warrants dropping the corresponding code from glue drivers. Hence,
drop the ELBI resource fetch and map logic from glue drivers and convert
them to use 'dw_pci::elbi_base'.

Note that the pcie-qcom-ep driver used devm_pci_remap_cfg_resource() to map
the ELBI resource previously. But it was a mistake since
devm_pci_remap_cfg_resource() should only be used for mapping the PCIe
config space region as it maps the region as Non-Posted. As ELBI is used to
hold vendor specific registers, there is no need to map the region as
Non-Posted. With this conversion, the region will get mapped as normal MMIO
memory.

Suggested-by: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
Signed-off-by: Krishna Chaitanya Chundru <krishna.chundru@oss.qualcomm.com>
[mani: removed elbi override, converted glue drivers and reworded description]
Signed-off-by: Manivannan Sadhasivam <mani@kernel.org>
Link: https://patch.msgid.link/20250923-controller-dwc-ecam-v10-1-e84390ba75fa@kernel.org
2025-09-25 18:33:37 +05:30
..
Kconfig PCI: qcom: Select PCI Power Control Slot driver 2025-08-11 16:00:12 +05:30
Makefile PCI: dwc: Add Sophgo SG2044 PCIe controller driver in Root Complex mode 2025-07-24 16:29:46 -05:00
pci-dra7xx.c pci-v6.16-changes 2025-06-04 11:26:17 -07:00
pci-exynos.c PCI: dwc: Add support for ELBI resource mapping 2025-09-25 18:33:37 +05:30
pci-imx6.c PCI: imx6: Delay link start until configfs 'start' written 2025-07-24 12:09:13 -05:00
pci-keystone.c pci-v6.16-changes 2025-06-04 11:26:17 -07:00
pci-layerscape-ep.c PCI: layerscape-ep: Use the generic dw_pcie_ep_linkdown() API to handle Link Down event 2024-07-09 18:21:11 -05:00
pci-layerscape.c PCI: layerscape: Fix arg_count to syscon_regmap_lookup_by_phandle_args() 2025-03-27 13:11:14 -05:00
pci-meson.c PCI: dwc: Return bool from link up check 2025-05-13 10:12:59 +01:00
pcie-al.c PCI: al: Check IORESOURCE_BUS existence during probe 2024-05-28 11:14:24 -05:00
pcie-amd-mdb.c PCI: Switch to irq_domain_create_linear() 2025-05-16 21:06:10 +02:00
pcie-armada8k.c PCI: dwc: Return bool from link up check 2025-05-13 10:12:59 +01:00
pcie-artpec6.c PCI: artpec6: Implement dw_pcie_ep operation get_features 2024-12-18 21:51:47 +00:00
pcie-bt1.c PCI: controller: Switch back to struct platform_driver::remove() 2024-10-03 16:44:49 -05:00
pcie-designware-debugfs.c PCI: dwc: Make dw_pcie_ptm_ops static 2025-07-07 13:23:15 +05:30
pcie-designware-ep.c Merge branch 'pci/ptm-debugfs' 2025-06-04 10:50:44 -05:00
pcie-designware-host.c Merge branch 'pci/controller/qcom' 2025-07-31 16:12:16 -05:00
pcie-designware-plat.c PCI: dwc: ep: Remove dw_pcie_ep_init_notify() wrapper 2024-07-09 18:20:21 -05:00
pcie-designware.c PCI: dwc: Add support for ELBI resource mapping 2025-09-25 18:33:37 +05:30
pcie-designware.h PCI: dwc: Add support for ELBI resource mapping 2025-09-25 18:33:37 +05:30
pcie-dw-rockchip.c Merge branch 'pci/controller/dw-rockchip' 2025-07-31 16:12:14 -05:00
pcie-fu740.c PCI: dwc: Drop host prefix from struct dw_pcie_host_ops members 2024-01-06 07:51:08 +00:00
pcie-hisi.c PCI: host-common: Convert to library for host controller drivers 2025-05-30 12:21:57 -05:00
pcie-histb.c PCI: dwc: Return bool from link up check 2025-05-13 10:12:59 +01:00
pcie-intel-gw.c PCI: intel-gw: Remove intel_pcie_cpu_addr() 2025-03-24 14:58:35 -05:00
pcie-keembay.c PCI: dwc: Return bool from link up check 2025-05-13 10:12:59 +01:00
pcie-kirin.c PCI: dwc: Return bool from link up check 2025-05-13 10:12:59 +01:00
pcie-qcom-common.c PCI: qcom: Fix macro typo for CURSOR 2025-09-04 22:25:22 +05:30
pcie-qcom-common.h PCI: qcom: Add equalization settings for 8.0 GT/s and 32.0 GT/s 2025-09-04 22:24:04 +05:30
pcie-qcom-ep.c PCI: dwc: Add support for ELBI resource mapping 2025-09-25 18:33:37 +05:30
pcie-qcom.c PCI: dwc: Add support for ELBI resource mapping 2025-09-25 18:33:37 +05:30
pcie-rcar-gen4.c Merge branch 'pci/controller/rcar-gen4' 2025-06-04 10:50:42 -05:00
pcie-sophgo.c PCI: dwc: Add Sophgo SG2044 PCIe controller driver in Root Complex mode 2025-07-24 16:29:46 -05:00
pcie-spear13xx.c PCI: dwc: Return bool from link up check 2025-05-13 10:12:59 +01:00
pcie-tegra194-acpi.c
pcie-tegra194.c Merge branch 'pci/controller/tegra194' 2025-06-04 10:50:43 -05:00
pcie-uniphier-ep.c PCI: dwc: ep: Remove dw_pcie_ep_init_notify() wrapper 2024-07-09 18:20:21 -05:00
pcie-uniphier.c pci-v6.16-changes 2025-06-04 11:26:17 -07:00
pcie-visconti.c PCI: dwc: Return bool from link up check 2025-05-13 10:12:59 +01:00