/linux/Documentation/devicetree/bindings/pci/ |
H A D | pci-msi.txt | 2 relationship between PCI devices and MSI controllers. 18 Requester ID. A mechanism is required to associate a device with both the MSI 22 For generic MSI bindings, see 23 Documentation/devicetree/bindings/interrupt-controller/msi.txt. 30 ------------------- 32 - msi-map: Maps a Requester ID to an MSI controller and associated 33 msi-specifier data. The property is an arbitrary number of tuples of 34 (rid-base,msi-controller,msi-base,length), where: 36 * rid-base is a single cell describing the first RID matched by the entry. 38 * msi-controller is a single phandle to an MSI controller [all …]
|
H A D | xilinx-versal-cpm.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/pci/xilinx-versal-cpm.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 10 - Bharat Kumar Gogada <bharat.kumar.gogada@amd.com> 13 - $ref: /schemas/pci/pci-host-bridge.yaml# 18 - xlnx,versal-cpm-host-1.00 19 - xlnx,versal-cpm5-host 23 - description: CPM system level control and status registers. 24 - description: Configuration space region and bridge registers. [all …]
|
H A D | xlnx,nwl-pcie.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/pci/xlnx,nwl-pcie.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 10 - Thippeswamy Havalige <thippeswamy.havalige@amd.com> 13 - $ref: /schemas/pci/pci-host-bridge.yaml# 14 - $ref: /schemas/interrupt-controller/msi-controller.yaml# 18 const: xlnx,nwl-pcie-2.11 22 - description: PCIe bridge registers location. 23 - description: PCIe Controller registers location. [all …]
|
H A D | aardvark-pci.txt | 8 - compatible: Should be "marvell,armada-3700-pcie" 9 - reg: range of registers for the PCIe controller 10 - interrupts: the interrupt line of the PCIe controller 11 - #address-cells: set to <3> 12 - #size-cells: set to <2> 13 - device_type: set to "pci" 14 - ranges: ranges for the PCI memory and I/O regions 15 - #interrupt-cells: set to <1> 16 - msi-controller: indicates that the PCIe controller can itself 17 handle MSI interrupts [all …]
|
H A D | brcm,stb-pcie.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/pci/brcm,stb-pcie.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 10 - Jim Quinlan <james.quinlan@broadcom.com> 15 - enum: 16 - brcm,bcm2711-pcie # The Raspberry Pi 4 17 - brcm,bcm4908-pcie 18 - brcm,bcm7211-pcie # Broadcom STB version of RPi4 19 - brcm,bcm7216-pcie # Broadcom 7216 Arm [all …]
|
H A D | xgene-pci-msi.txt | 1 * AppliedMicro X-Gene v1 PCIe MSI controller 5 - compatible: should be "apm,xgene1-msi" to identify 6 X-Gene v1 PCIe MSI controller block. 7 - msi-controller: indicates that this is an X-Gene v1 PCIe MSI controller node 8 - reg: physical base address (0x79000000) and length (0x900000) for controller 9 registers. These registers include the MSI termination address and data 10 registers as well as the MSI interrupt status registers. 11 - reg-names: not required 12 - interrupts: A list of 16 interrupt outputs of the controller, starting from 14 - interrupt-names: not required [all …]
|
H A D | altr,pcie-root-port.yaml | 1 # SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) 4 --- 5 $id: http://devicetree.org/schemas/altr,pcie-root-port.yaml# 6 $schema: http://devicetree.org/meta-schemas/core.yaml# 11 - Matthew Gerlach <matthew.gerlach@linux.intel.com> 16 - altr,pcie-root-port-1.0 17 - altr,pcie-root-port-2.0 21 - description: TX slave port region 22 - description: Control register access region 23 - description: Hard IP region [all …]
|
H A D | layerscape-pcie-gen4.txt | 4 the common properties defined in mobiveil-pcie.txt. 7 - compatible: should contain the platform identifier such as: 8 "fsl,lx2160a-pcie" 9 - reg: base addresses and lengths of the PCIe controller register blocks. 12 - interrupts: A list of interrupt outputs of the controller. Must contain an 13 entry for each entry in the interrupt-names property. 14 - interrupt-names: It could include the following entries: 17 none MSI/MSI-X/INTx mode,but there is interrupt line for aer. 19 none MSI/MSI-X/INTx mode,but there is interrupt line for pme. 20 - dma-coherent: Indicates that the hardware IP block can ensure the coherency [all …]
|
H A D | sifive,fu740-pcie.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/pci/sifive,fu740-pcie.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 13 Documentation/devicetree/bindings/pci/snps,dw-pcie.yaml. 16 - Paul Walmsley <paul.walmsley@sifive.com> 17 - Greentime Hu <greentime.hu@sifive.com> 20 - $ref: /schemas/pci/snps,dw-pcie.yaml# 24 const: sifive,fu740-pcie 29 reg-names: [all …]
|
H A D | nvidia,tegra20-pcie.txt | 4 - compatible: Must be: 5 - "nvidia,tegra20-pcie": for Tegra20 6 - "nvidia,tegra30-pcie": for Tegra30 7 - "nvidia,tegra124-pcie": for Tegra124 and Tegra132 8 - "nvidia,tegra210-pcie": for Tegra210 9 - "nvidia,tegra186-pcie": for Tegra186 10 - power-domains: To ungate power partition by BPMP powergate driver. Must 13 - device_type: Must be "pci" 14 - reg: A list of physical base address and length for each set of controller 15 registers. Must contain an entry for each entry in the reg-names property. [all …]
|
H A D | xlnx,xdma-host.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/pci/xlnx,xdma-host.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 10 - Thippeswamy Havalige <thippeswamy.havalige@amd.com> 13 - $ref: /schemas/pci/pci-host-bridge.yaml# 18 - xlnx,xdma-host-3.00 19 - xlnx,qdma-host-3.00 23 - description: configuration region and XDMA bridge register. 24 - description: QDMA bridge register. [all …]
|
H A D | nvidia,tegra194-pcie.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/pci/nvidia,tegra194-pcie.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 10 - Thierry Reding <thierry.reding@gmail.com> 11 - Jon Hunter <jonathanh@nvidia.com> 12 - Vidya Sagar <vidyas@nvidia.com> 16 inherits all the common properties defined in snps,dw-pcie.yaml. Some of 20 See nvidia,tegra194-pcie-ep.yaml for details on the Endpoint mode device 26 - nvidia,tegra194-pcie [all …]
|
H A D | fsl,imx6q-pcie.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/pci/fsl,imx6q-pcie.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 10 - Lucas Stach <l.stach@pengutronix.de> 11 - Richard Zhu <hongxing.zhu@nxp.com> 15 and thus inherits all the common properties defined in snps,dw-pcie.yaml. 19 See fsl,imx6q-pcie-ep.yaml for details on the Endpoint mode device tree 25 - fsl,imx6q-pcie 26 - fsl,imx6sx-pcie [all …]
|
/linux/drivers/pci/controller/plda/ |
H A D | pcie-plda-host.c | 1 // SPDX-License-Identifier: GPL-2.0 13 #include <linux/msi.h> 15 #include <linux/pci-ecam.h> 17 #include "pcie-plda.h" 22 struct plda_pcie_rp *pcie = bus->sysdata; in plda_pcie_map_bus() 24 return pcie->config_base + PCIE_ECAM_OFFSET(bus->number, devfn, where); in plda_pcie_map_bus() 32 struct device *dev = port->dev; in plda_handle_msi() 33 struct plda_msi *msi = &port->msi; in plda_handle_msi() local 34 void __iomem *bridge_base_addr = port->bridge_addr; in plda_handle_msi() 46 for_each_set_bit(bit, &status, msi->num_vectors) { in plda_handle_msi() [all …]
|
/linux/drivers/pci/controller/mobiveil/ |
H A D | pcie-mobiveil-host.c | 1 // SPDX-License-Identifier: GPL-2.0 6 * Copyright 2019-2020 NXP 19 #include <linux/msi.h> 25 #include "pcie-mobiveil.h" 37 if ((bus->primary == to_pci_host_bridge(bus->bridge)->busnr) && (PCI_SLOT(devfn) > 0)) in mobiveil_pcie_valid_device() 44 * mobiveil_pcie_map_bus - routine to get the configuration base of either 50 struct mobiveil_pcie *pcie = bus->sysdata; in mobiveil_pcie_map_bus() 51 struct mobiveil_root_port *rp = &pcie->rp; in mobiveil_pcie_map_bus() 59 return pcie->csr_axi_slave_base + where; in mobiveil_pcie_map_bus() 67 value = bus->number << PAB_BUS_SHIFT | in mobiveil_pcie_map_bus() [all …]
|
/linux/arch/powerpc/boot/dts/fsl/ |
H A D | mpc8641si-post.dtsi | 1 // SPDX-License-Identifier: GPL-2.0-or-later 5 * Copyright 2016 Elettra-Sincrotrone Trieste S.C.p.A. 9 #address-cells = <2>; 10 #size-cells = <1>; 11 compatible = "fsl,mpc8641-localbus", "simple-bus"; 16 #address-cells = <1>; 17 #size-cells = <1>; 19 compatible = "fsl,mpc8641-soc", "simple-bus"; 20 bus-frequency = <0>; 22 mcm-law@0 { [all …]
|
/linux/drivers/irqchip/ |
H A D | irq-armada-370-xp.c | 1 // SPDX-License-Identifier: GPL-2.0-only 8 * Gregory CLEMENT <gregory.clement@free-electrons.com> 9 * Thomas Petazzoni <thomas.petazzoni@free-electrons.com> 31 #include <linux/msi.h> 45 * +---------------+ +---------------+ 47 * | per-CPU | | per-CPU | 48 * | mask/unmask | | mask/unmask | 51 * +---------------+ +---------------+ 56 * +-------------------+ 59 * | mask/unmask | [all …]
|
/linux/drivers/pci/controller/ |
H A D | pcie-xilinx-dma-pl.c | 1 // SPDX-License-Identifier: GPL-2.0-only 13 #include <linux/msi.h> 18 #include "pcie-xilinx-common.h" 46 IMR(MSI) | \ 76 /* Number of MSI IRQs */ 85 * struct xilinx_pl_dma_variant - PL DMA PCIe variant information 102 * struct pl_dma_pcie - PCIe port information 112 * @msi: MSI information 127 struct xilinx_msi msi; member 135 if (port->variant->version == QDMA) in pcie_read() [all …]
|
/linux/drivers/of/ |
H A D | irq.c | 1 // SPDX-License-Identifier: GPL-2.0+ 6 * Copyright (C) 1995-1996 Gary Thomas (gdt@linuxppc.org) 8 * Copyright (C) 1996-2001 Cort Dougan 31 * irq_of_parse_and_map - Parse and map an interrupt into linux virq space 33 * @index: Index of the interrupt to map 50 * of_irq_find_parent - Given a device node, find its interrupt parent node 65 if (of_property_read_u32(child, "interrupt-parent", &parent)) { in of_irq_find_parent() 75 } while (p && of_get_property(p, "#interrupt-cells", NULL) == NULL); in of_irq_find_parent() 82 * These interrupt controllers abuse interrupt-map for unspeakable 85 * non-sensical interrupt-map that is better left ignored. [all …]
|
/linux/kernel/irq/ |
H A D | msi.c | 1 // SPDX-License-Identifier: GPL-2.0 14 #include <linux/msi.h> 25 * struct msi_device_data - MSI per device data 26 * @properties: MSI properties which are interesting to drivers 27 * @mutex: Mutex protecting the MSI descriptor store 28 * @__domains: Internal data for per device MSI domains 39 * struct msi_ctrl - MSI internal management control structure 44 * than the range due to PCI/multi-MSI. 54 #define MSI_XA_MAX_INDEX (ULONG_MAX - 1) 64 * msi_alloc_desc - Allocate an initialized msi_desc [all …]
|
/linux/drivers/cdx/ |
H A D | cdx_msi.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * AMD CDX bus driver MSI support 5 * Copyright (C) 2022-2023, Advanced Micro Devices, Inc. 14 #include <linux/msi.h> 22 struct cdx_device *cdx_dev = to_cdx_device(msi_desc->dev); in cdx_msi_write_msg() 27 msi_desc->msg = *msg; in cdx_msi_write_msg() 28 cdx_dev->msi_write_pending = true; in cdx_msi_write_msg() 34 struct cdx_device *cdx_dev = to_cdx_device(msi_desc->dev); in cdx_msi_write_irq_lock() 36 mutex_lock(&cdx_dev->irqchip_lock); in cdx_msi_write_irq_lock() 42 struct cdx_device *cdx_dev = to_cdx_device(msi_desc->dev); in cdx_msi_write_irq_unlock() [all …]
|
/linux/arch/arm64/boot/dts/apm/ |
H A D | apm-storm.dtsi | 1 // SPDX-License-Identifier: GPL-2.0-or-later 3 * dts file for AppliedMicro (APM) X-Gene Storm SOC 9 compatible = "apm,xgene-storm"; 10 interrupt-parent = <&gic>; 11 #address-cells = <2>; 12 #size-cells = <2>; 15 #address-cells = <2>; 16 #size-cells = <0>; 22 enable-method = "spin-table"; 23 cpu-release-addr = <0x1 0x0000fff8>; [all …]
|
/linux/arch/arm/boot/dts/broadcom/ |
H A D | bcm-nsp.dtsi | 33 #include <dt-bindings/interrupt-controller/arm-gic.h> 34 #include <dt-bindings/interrupt-controller/irq.h> 35 #include <dt-bindings/clock/bcm-nsp.h> 38 #address-cells = <1>; 39 #size-cells = <1>; 42 interrupt-parent = <&gic>; 53 #address-cells = <1>; 54 #size-cells = <0>; 58 compatible = "arm,cortex-a9"; 59 next-level-cache = <&L2>; [all …]
|
H A D | bcm-hr2.dtsi | 33 #include <dt-bindings/interrupt-controller/arm-gic.h> 34 #include <dt-bindings/interrupt-controller/irq.h> 39 interrupt-parent = <&gic>; 40 #address-cells = <1>; 41 #size-cells = <1>; 44 #address-cells = <1>; 45 #size-cells = <0>; 49 compatible = "arm,cortex-a9"; 50 next-level-cache = <&L2>; 56 compatible = "arm,cortex-a9-pmu"; [all …]
|
/linux/drivers/net/ethernet/mellanox/mlx5/core/ |
H A D | pci_irq.c | 1 // SPDX-License-Identifier: GPL-2.0 OR Linux-OpenIB 32 cpumask_var_t mask; member 36 struct msi_map map; member 52 return mlx5_core_ec_vf_vport_base(dev) + func - 1; in mlx5_core_func_to_vport() 56 * mlx5_get_default_msix_vec_count - Get the default number of MSI-X vectors 72 /* Limit maximum number of MSI-X vectors so the default configuration in mlx5_get_default_msix_vec_count() 74 * the number of vectors in a VF without having to first size-down other in mlx5_get_default_msix_vec_count() 81 * mlx5_set_msix_vec_count - Set dynamically allocated MSI-X on the VF 84 * @msix_vec_count: Number of MSI-X vectors to set 102 return -EOPNOTSUPP; in mlx5_set_msix_vec_count() [all …]
|