Home
last modified time | relevance | path

Searched full:ecam (Results 1 – 25 of 67) sorted by relevance

123

/linux/Documentation/devicetree/bindings/pci/
H A Dhost-generic-pci.yaml31 While ECAM extends this by 4 bits to accommodate 4k of function space:
38 description: Depends on the layout of configuration space (CAM vs ECAM
46 - const: pci-host-ecam-generic
51 some Cavium ThunderX processors. These devices have ECAM-based config
55 const: cavium,pci-host-thunder-ecam
60 HiSilicon Hip06/Hip07 PCIe host bridge in almost-ECAM mode. Some
61 firmware places the host controller in a mode where it is ECAM
64 - hisilicon,hip06-pcie-ecam
65 - hisilicon,hip07-pcie-ecam
69 that cover all config, MMIO and I/O spaces in a [mostly] ECAM
[all …]
H A Dqcom,pcie-sa8255p.yaml7 title: Qualcomm SA8255p based firmware managed and ECAM compliant PCIe Root Complex
15 DesignWare PCIe IP which is managed by firmware, and configured in ECAM mode.
23 The base address and size of the ECAM area for accessing PCI
H A Dnvidia,tegra194-pcie.yaml39 - description: aperture to access the configuration space through ECAM.
48 - const: ecam
338 <0x24 0x30000000 0x0 0x10000000>; /* ECAM (256MB) */
339 reg-names = "appl", "config", "atu_dma", "dbi", "ecam";
H A Damazon,al-alpine-v3-pcie.yaml27 - description: PCIe ECAM space
/linux/drivers/pci/
H A Decam.c11 #include <linux/pci-ecam.h>
44 /* ECAM-compliant platforms need not supply ops->bus_shift */ in pci_ecam_create()
59 dev_warn(dev, "ECAM area %pR can only accommodate %pR (reduced from %pR desired)\n", in pci_ecam_create()
67 cfg->res.name = "PCI ECAM"; in pci_ecam_create()
72 dev_err(dev, "can't claim ECAM area %pR: address conflict with %s %pR\n", in pci_ecam_create()
92 dev_info(dev, "ECAM at %pR for %pR\n", &cfg->res, &cfg->busr); in pci_ecam_create()
96 dev_err(dev, "ECAM ioremap failed\n"); in pci_ecam_create()
199 /* ECAM ops */
212 /* ECAM ops for 32-bit access only (non-compliant) */
223 /* ECAM ops for 32-bit read only (non-compliant) */
H A DMakefile32 obj-$(CONFIG_PCI_ECAM) += ecam.o
/linux/drivers/pci/controller/
H A Dpci-host-generic.c14 #include <linux/pci-ecam.h>
33 * The Synopsys DesignWare PCIe controller in ECAM mode will not filter in pci_dw_valid_device()
65 { .compatible = "pci-host-ecam-generic",
68 { .compatible = "marvell,armada8k-pcie-ecam",
71 { .compatible = "socionext,synquacer-pcie-ecam",
74 { .compatible = "snps,dw-pcie-ecam",
H A DMakefile15 obj-$(CONFIG_PCI_HOST_THUNDER_ECAM) += pci-thunder-ecam.o
50 # pci_root.c driver but don't support standard ECAM config access.
51 # They contain MCFG quirks to replace the generic ECAM accessors with
61 obj-$(CONFIG_ARM64) += pci-thunder-ecam.o
H A Dpci-thunder-pem.c13 #include <linux/pci-ecam.h>
25 * Enhanced Configuration Access Mechanism (ECAM)
27 * N.B. This is a non-standard platform-specific ECAM bus shift value. For
29 * include/linux/pci-ecam.h.
H A Dpcie-xilinx-common.h7 #include <linux/pci-ecam.h>
H A Dpci-host-common.c15 #include <linux/pci-ecam.h>
/linux/Documentation/PCI/
H A Dacpi-info.rst52 the device-specific details. The host bridge registers also include ECAM
66 bridge registers (including ECAM space) in PNP0C02 catch-all devices [6].
67 With the exception of ECAM, the bridge register space is device-specific
72 descriptors in the PNP0A03 device for bridge registers, including ECAM,
84 The PCIe spec requires the Enhanced Configuration Access Method (ECAM)
86 ia64 SAL interface [7]. A host bridge consumes ECAM memory address space
88 defines the ECAM address space layout and functionality; only the base of
92 The MCFG table must describe the ECAM space of non-hot pluggable host
94 a _CBA method in the PNP0A03 device describes the ECAM space of a
167 access to the Configuration Space, the ECAM is required as defined in
/linux/arch/loongarch/pci/
H A Dacpi.c11 #include <linux/pci-ecam.h>
120 cfg->res.name = "PCI ECAM"; in arch_pci_ecam_create()
125 dev_err(dev, "can't claim ECAM area %pR: address conflict with %s %pR\n", in arch_pci_ecam_create()
139 dev_info(dev, "ECAM at %pR for %pR\n", &cfg->res, &cfg->busr); in arch_pci_ecam_create()
145 dev_err(dev, "ECAM ioremap failed\n"); in arch_pci_ecam_create()
168 dev_err(dev, "%04x:%pR ECAM region not found, use default value\n", seg, bus_res); in pci_acpi_setup_ecam_mapping()
186 dev_err(dev, "%04x:%pR error %ld mapping ECAM\n", seg, bus_res, PTR_ERR(cfg)); in pci_acpi_setup_ecam_mapping()
/linux/include/linux/
H A Dpci-ecam.h18 * Enhanced Configuration Access Mechanism (ECAM)
57 * use ECAM.
69 struct device *parent;/* ECAM res was from this dev */
81 /* default ECAM ops */
/linux/drivers/pci/controller/dwc/
H A Dpcie-hisi.c16 #include <linux/pci-ecam.h>
160 .compatible = "hisilicon,hip06-pcie-ecam",
164 .compatible = "hisilicon,hip07-pcie-ecam",
173 .name = "hisi-pcie-almost-ecam",
H A DMakefile36 # pci_root.c driver but don't support standard ECAM config access.
37 # They contain MCFG quirks to replace the generic ECAM accessors with
H A Dpcie-al.c12 #include <linux/pci-ecam.h>
267 dev_warn(pcie->dev, "ECAM window size is larger than 256MB. Cutting off at 256\n"); in al_pcie_config_prepare()
H A Dpcie-tegra194-acpi.c12 #include <linux/pci-ecam.h>
/linux/Documentation/translations/zh_CN/PCI/
H A Dacpi-info.rst60 ECAM,尽管对[6]的严格解释可能禁止这样做。旧的x86和ia64内核假定所有的地址空间描述
69 型配置访问方法(ECAM)。主桥消耗ECAM内存地址空间并将内存访问转换为PCI配置访问。该规范
/linux/drivers/pci/controller/plda/
H A Dpcie-microchip-host.c21 #include <linux/pci-ecam.h>
299 static void mc_pcie_enable_msi(struct mc_pcie *port, void __iomem *ecam) in mc_pcie_enable_msi() argument
306 reg = readw_relaxed(ecam + MC_MSI_CAP_CTRL_OFFSET + PCI_MSI_FLAGS); in mc_pcie_enable_msi()
308 writew_relaxed(reg, ecam + MC_MSI_CAP_CTRL_OFFSET + PCI_MSI_FLAGS); in mc_pcie_enable_msi()
313 writew_relaxed(reg, ecam + MC_MSI_CAP_CTRL_OFFSET + PCI_MSI_FLAGS); in mc_pcie_enable_msi()
317 ecam + MC_MSI_CAP_CTRL_OFFSET + PCI_MSI_ADDRESS_LO); in mc_pcie_enable_msi()
319 ecam + MC_MSI_CAP_CTRL_OFFSET + PCI_MSI_ADDRESS_HI); in mc_pcie_enable_msi()
/linux/arch/arm64/boot/dts/cavium/
H A Dthunder2-99xx.dtsi98 compatible = "pci-host-ecam-generic";
104 /* ECAM at 0x3000_0000 - 0x4000_0000 */
/linux/arch/arm64/boot/dts/arm/
H A Dmorello-sdp.dts113 compatible = "pci-host-ecam-generic";
135 compatible = "pci-host-ecam-generic";
/linux/drivers/acpi/
H A Dpci_mcfg.c14 #include <linux/pci-ecam.h>
234 dev_info(&root->device->dev, "MCFG quirk: ECAM at %pR for %pR with %ps\n", in pci_mcfg_apply_quirks()
278 * Allow quirks to override default ECAM ops and CFG resource in pci_mcfg_lookup()
/linux/arch/xtensa/boot/dts/
H A Dvirt.dts49 compatible = "pci-host-ecam-generic";
/linux/Documentation/devicetree/bindings/net/
H A Dnxp,netc-blk-ctrl.yaml87 compatible = "pci-host-ecam-generic";

123