Home
last modified time | relevance | path

Searched +full:pci +full:- +full:domain (Results 1 – 25 of 597) sorted by relevance

12345678910>>...24

/linux-6.15/drivers/pci/msi/
Dirqdomain.c1 // SPDX-License-Identifier: GPL-2.0
3 * PCI Message Signaled Interrupt (MSI) - irqdomain support
13 struct irq_domain *domain; in pci_msi_setup_msi_irqs() local
15 domain = dev_get_msi_domain(&dev->dev); in pci_msi_setup_msi_irqs()
16 if (domain && irq_domain_is_hierarchy(domain)) in pci_msi_setup_msi_irqs()
17 return msi_domain_alloc_irqs_all_locked(&dev->dev, MSI_DEFAULT_DOMAIN, nvec); in pci_msi_setup_msi_irqs()
24 struct irq_domain *domain; in pci_msi_teardown_msi_irqs() local
26 domain = dev_get_msi_domain(&dev->dev); in pci_msi_teardown_msi_irqs()
27 if (domain && irq_domain_is_hierarchy(domain)) { in pci_msi_teardown_msi_irqs()
28 msi_domain_free_irqs_all_locked(&dev->dev, MSI_DEFAULT_DOMAIN); in pci_msi_teardown_msi_irqs()
[all …]
/linux-6.15/include/linux/
Dmsi.h1 /* SPDX-License-Identifier: GPL-2.0 */
8 * - Interrupt core code
9 * - PCI/MSI core code
10 * - MSI interrupt domain implementations
11 * - IOMMU, low level VFIO, NTB and other justified exceptions
52 * msi_msg - Representation of a MSI message
94 * pci_msi_desc - PCI/MSI specific MSI descriptor data
96 * @msi_mask: [PCI MSI] MSI cached mask bits
97 * @msix_ctrl: [PCI MSI-X] MSI-X cached per vector control bits
98 * @is_msix: [PCI MSI/X] True if MSI-X
[all …]
/linux-6.15/drivers/pci/
Dsearch.c1 // SPDX-License-Identifier: GPL-2.0
3 * PCI searching functions
5 * Copyright (C) 1993 -- 1997 Drew Eckhardt, Frederic Potter,
6 * David Mosberger-Tang
7 * Copyright (C) 1997 -- 2000 Martin Mares <mj@ucw.cz>
8 * Copyright (C) 2003 -- 2004 Greg Kroah-Hartman <greg@kroah.com>
11 #include <linux/pci.h>
15 #include "pci.h"
20 * pci_for_each_dma_alias - Iterate over DMA aliases for a device
37 * requester is on another PCI bus. in pci_for_each_dma_alias()
[all …]
Dxen-pcifront.c1 // SPDX-License-Identifier: GPL-2.0
3 * Xen PCI Frontend
15 #include <linux/pci.h>
18 #include <asm/xen/pci.h>
27 #include <asm/xen/swiotlb-xen.h>
29 #define INVALID_EVTCHN (-1)
64 return sd->pdev; in pcifront_get_pdev()
68 unsigned int domain, unsigned int bus, in pcifront_init_sd() argument
72 sd->sd.node = first_online_node; in pcifront_init_sd()
73 sd->sd.domain = domain; in pcifront_init_sd()
[all …]
Dof.c1 // SPDX-License-Identifier: GPL-2.0+
3 * PCI <-> OF mapping helpers
7 #define pr_fmt(fmt) "PCI: OF: " fmt
12 #include <linux/pci.h>
18 #include "pci.h"
22 * pci_set_of_node - Find and set device's DT device_node
23 * @dev: the PCI device structure to fill
26 * DT. Returns -ENODEV if the device is present, but disabled in the DT.
30 if (!dev->bus->dev.of_node) in pci_set_of_node()
34 of_pci_find_child_device(dev->bus->dev.of_node, dev->devfn); in pci_set_of_node()
[all …]
/linux-6.15/drivers/pci/controller/dwc/
Dpcie-amd-mdb.c1 // SPDX-License-Identifier: GPL-2.0
5 * Copyright (C) 2024-2025, Advanced Micro Devices, Inc.
16 #include <linux/pci.h>
21 #include "pcie-designware.h"
54 * struct amd_mdb_pcie - PCIe port information
55 * @pci: DesignWare PCIe controller structure
57 * @intx_domain: INTx IRQ domain pointer
58 * @mdb_domain: MDB IRQ domain pointer
62 struct dw_pcie pci; member
75 struct dw_pcie *pci = &pcie->pci; in amd_mdb_intx_irq_mask() local
[all …]
/linux-6.15/kernel/irq/
Dmsi.c1 // SPDX-License-Identifier: GPL-2.0
9 * PCI compatible and non PCI compatible devices.
16 #include <linux/pci.h>
26 * struct msi_device_data - MSI per device data
40 * struct msi_ctrl - MSI internal management control structure
41 * @domid: ID of the domain on which management operations should be done
45 * than the range due to PCI/multi-MSI.
55 #define MSI_XA_MAX_INDEX (ULONG_MAX - 1)
56 /* The maximum domain size */
65 * msi_alloc_desc - Allocate an initialized msi_desc
[all …]
/linux-6.15/drivers/xen/xen-pciback/
Dxenbus.c1 // SPDX-License-Identifier: GPL-2.0
3 * PCI Backend Xenbus Setup - handles setup with frontend and xend
17 #include <xen/pci.h>
20 #define INVALID_EVTCHN_IRQ (-1)
25 "Option to specify how to export PCI topology to guest:\n"\
26 " 0 - (default) Hide the true PCI topology and makes the frontend\n"\
27 " there is a single PCI bus with only the exported devices on it.\n"\
28 " For example, a device at 03:05.0 will be re-assigned to 00:00.0\n"\
29 " while second device at 02:1a.1 will be re-assigned to 00:01.1.\n"\
30 " 1 - Passthrough provides a real view of the PCI topology to the\n"\
[all …]
Dpci_stub.c2 * PCI Stub Driver - Grabs devices in backend to be exported later
17 #include <linux/pci.h>
22 #include <xen/pci.h>
45 int domain; member
58 struct xen_pcibk_device *pdev;/* non-NULL if struct pci_dev is in use */
80 dev_dbg(&dev->dev, "pcistub_device_alloc\n"); in pcistub_device_alloc()
86 psdev->dev = pci_dev_get(dev); in pcistub_device_alloc()
87 if (!psdev->dev) { in pcistub_device_alloc()
92 kref_init(&psdev->kref); in pcistub_device_alloc()
93 spin_lock_init(&psdev->lock); in pcistub_device_alloc()
[all …]
Dpciback.h1 /* SPDX-License-Identifier: GPL-2.0 */
3 * PCI Backend Common Data Structures & Function Declarations
10 #include <linux/pci.h>
20 #define DRV_NAME "xen-pciback"
55 unsigned int ack_intr:1; /* .. and ACK-ing */
57 unsigned int irq; /* Saved in case device transitions to MSI/MSI-X */
58 char irq_name[]; /* xen-pcibk[000:04:00.0] */
66 /* Get/Put PCI Devices that are hidden from the PCI Backend Domain */
68 int domain, int bus,
80 /* Access a virtual configuration space for a PCI device */
[all …]
/linux-6.15/Documentation/arch/s390/
Dpci.rst1 .. SPDX-License-Identifier: GPL-2.0
4 S/390 PCI
8 - Pierre Morel
17 -----------------------
21 Do not use PCI Mapped I/O (MIO) instructions.
25 Ignore the RID field and force use of one PCI domain per PCI function.
28 ---------------
36 - /sys/kernel/debug/s390dbf/pci_msg/sprintf
37 Holds messages from the processing of PCI events, like machine check handling
50 * /sys/bus/pci/slots/XXXXXXXX
[all …]
/linux-6.15/drivers/xen/
DKconfig1 # SPDX-License-Identifier: GPL-2.0-only
9 The balloon driver allows the Xen domain to request more memory from
10 the system to expand the domain's memory allocation, or alternatively
28 1) target domain: ensure that memory auto online policy is in
32 2) control domain: xl mem-max <target-domain> <maxmem>
35 3) control domain: xl mem-set <target-domain> <memory>
40 target domain.
43 the newly added memory can be manually onlined in the target domain
51 …SUBSYSTEM=="memory", ACTION=="add", RUN+="/bin/sh -c '[ -f /sys$devpath/state ] && echo online > /…
107 may pass arbitrary information to the initial domain.
[all …]
Dpci.c1 // SPDX-License-Identifier: GPL-2.0-only
8 #include <linux/pci.h>
10 #include <linux/pci-acpi.h>
11 #include <xen/pci.h>
18 #include "../pci/pci.h"
32 struct pci_dev *physfn = pci_dev->physfn; in xen_add_device()
47 if (pci_domain_nr(pci_dev->bus) >> 16) { in xen_add_device()
49 * The hypercall interface is limited to 16bit PCI segment in xen_add_device()
54 "not registering with Xen: invalid PCI segment\n"); in xen_add_device()
61 add->seg = pci_domain_nr(pci_dev->bus); in xen_add_device()
[all …]
/linux-6.15/arch/s390/pci/
Dpci_bus.c1 // SPDX-License-Identifier: GPL-2.0
20 #include <linux/pci.h>
22 #include <linux/dma-direct.h>
34 /* zpci_bus_prepare_device - Prepare a zPCI function for scanning
37 * The PCI resources for the function are set up and added to its zbus and the
39 * a PCI bus created. If an error occurs the zPCI function is not enabled.
53 if (!zdev->has_resources) { in zpci_bus_prepare_device()
56 if (zdev->bars[i].res) in zpci_bus_prepare_device()
57 pci_bus_add_resource(zdev->zbus->bus, zdev->bars[i].res); in zpci_bus_prepare_device()
64 /* zpci_bus_scan_device - Scan a single device adding it to the PCI core
[all …]
/linux-6.15/Documentation/devicetree/bindings/pci/
Dpci-ep.yaml1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
3 ---
4 $id: http://devicetree.org/schemas/pci/pci-ep.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
7 title: PCI Endpoint Controller
10 Common properties for PCI Endpoint Controller Nodes.
13 - Kishon Vijay Abraham I <kishon@kernel.org>
14 - Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
18 pattern: "^pcie-ep@"
20 max-functions:
[all …]
Dpci.txt1 PCI bus bridges have standardized Device Tree bindings:
3 PCI Bus Binding to: IEEE Std 1275-1994
4 https://www.devicetree.org/open-firmware/bindings/pci/pci2_1.pdf
9 https://www.devicetree.org/open-firmware/practice/imap/imap0_9d.pdf
14 - linux,pci-domain:
15 If present this property assigns a fixed PCI domain number to a host bridge,
18 host bridges in the system, otherwise potentially conflicting domain numbers
19 may be assigned to root buses behind different host bridges. The domain
21 - max-link-speed:
22 If present this property specifies PCI gen for link capability. Host
[all …]
Dmediatek-pcie.txt4 - compatible: Should contain one of the following strings:
5 "mediatek,mt2701-pcie"
6 "mediatek,mt2712-pcie"
7 "mediatek,mt7622-pcie"
8 "mediatek,mt7623-pcie"
9 "mediatek,mt7629-pcie"
10 "airoha,en7523-pcie"
11 - device_type: Must be "pci"
12 - reg: Base addresses and lengths of the root ports.
13 - reg-names: Names of the above areas to use during resource lookup.
[all …]
/linux-6.15/drivers/iommu/
Dfsl_pamu_domain.c1 // SPDX-License-Identifier: GPL-2.0-only
8 #define pr_fmt(fmt) "fsl-pamu-domain: %s: " fmt, __func__
41 return -ENOMEM; in iommu_init_mempool()
52 return -ENOMEM; in iommu_init_mempool()
96 ret = pamu_config_ppaace(liodn, omi_index, dma_domain->stash_id, 0); in pamu_set_liodn()
99 ret = pamu_config_ppaace(liodn, ~(u32)0, dma_domain->stash_id, in pamu_set_liodn()
114 list_del(&info->link); in remove_device_ref()
116 pamu_disable_liodn(info->liodn); in remove_device_ref()
119 dev_iommu_priv_set(info->dev, NULL); in remove_device_ref()
129 spin_lock_irqsave(&dma_domain->domain_lock, flags); in detach_device()
[all …]
/linux-6.15/arch/x86/pci/
Dcommon.c1 // SPDX-License-Identifier: GPL-2.0-only
3 * Low-Level PCI Support for PC
5 * (c) 1999--2000 Martin Mares <mj@ucw.cz>
9 #include <linux/pci.h>
10 #include <linux/pci-acpi.h>
35 int pcibios_last_bus = -1;
40 int raw_pci_read(unsigned int domain, unsigned int bus, unsigned int devfn, in raw_pci_read() argument
43 if (domain == 0 && reg < 256 && raw_pci_ops) in raw_pci_read()
44 return raw_pci_ops->read(domain, bus, devfn, reg, len, val); in raw_pci_read()
46 return raw_pci_ext_ops->read(domain, bus, devfn, reg, len, val); in raw_pci_read()
[all …]
Dacpi.c1 // SPDX-License-Identifier: GPL-2.0
3 #define pr_fmt(fmt) "PCI: " fmt
5 #include <linux/pci.h>
11 #include <linux/pci-acpi.h>
43 pr_info("%s detected: ignoring ACPI _SEG\n", id->ident); in set_ignore_seg()
51 id->ident); in set_no_e820()
70 .ident = "ASRock ALiveSATA2-GLAN",
72 DMI_MATCH(DMI_PRODUCT_NAME, "ALiveSATA2-GLAN"),
79 .ident = "ASUS M2V-MX SE",
82 DMI_MATCH(DMI_BOARD_NAME, "M2V-MX SE"),
[all …]
Dxen.c1 // SPDX-License-Identifier: GPL-2.0-only
3 * Xen PCI - handle PCI (INTx) and MSI infrastructure calls for PV, HVM and
4 * initial domain support. We also handle the DSDT _PRT callbacks for GSI's
5 * used in HVM and initial domain mode (PV does not parse ACPI, so it has no
7 * 0xcf8 PCI configuration read/write.
15 #include <linux/pci.h>
26 #include <xen/pci.h>
27 #include <asm/xen/pci.h>
42 dev_warn(&dev->dev, "Xen PCI: failed to read interrupt line: %d\n", in xen_pcifront_enable_irq()
46 /* In PV DomU the Xen PCI backend puts the PIRQ in the interrupt line.*/ in xen_pcifront_enable_irq()
[all …]
/linux-6.15/drivers/net/ethernet/sun/
DKconfig1 # SPDX-License-Identifier: GPL-2.0
9 depends on SUN3 || SBUS || PCI || SUN_LDOMS
22 depends on (SBUS || PCI)
27 both PCI and Sbus devices. This driver also supports the "qfe" quad
28 100baseT device available in both PCI and Sbus configurations.
58 depends on PCI
63 <http://docs.oracle.com/cd/E19455-01/806-3985-10/806-3985-10.pdf>.
67 depends on PCI
71 <http://docs.oracle.com/cd/E19113-01/giga.ether.pci/817-4341-10/817-4341-10.pdf>.
94 This driver adds a network interface for every vsw-port node
[all …]
/linux-6.15/tools/power/cpupower/utils/helpers/
Dpci.c1 // SPDX-License-Identifier: GPL-2.0
9 * PCI access helper function depending on libpci
14 * domain: domain
20 * Pass -1 for one of the six above to match any
24 * to access the PCI config space of matching pci devices
26 struct pci_dev *pci_acc_init(struct pci_access **pacc, int domain, int bus, in pci_acc_init() argument
37 filter_nb_link.domain = domain; in pci_acc_init()
47 for (device = (*pacc)->devices; device; device = device->next) { in pci_acc_init()
55 /* Typically one wants to get a specific slot(device)/func of the root domain
60 return pci_acc_init(pacc, 0, 0, slot, func, -1, -1); in pci_slot_func_init()
/linux-6.15/Documentation/translations/zh_CN/PCI/
Dpci-iov-howto.rst1 .. SPDX-License-Identifier: GPL-2.0
3 .. include:: ../disclaimer-zh_CN.rst
5 :Original: Documentation/PCI/pci-iov-howto.rst
15 .. _cn_pci-iov-howto:
18 PCI Express I/O 虚拟化指南
22 :作者: - Yu Zhao <yu.zhao@intel.com>
23 - Donald Dutile <ddutile@redhat.com>
28 什么是SR-IOV
29 ------------
31 单根I/O虚拟化(SR-IOV)是一种PCI Express扩展功能,它使一个物理设备显示为多个
[all …]
/linux-6.15/arch/arm64/kernel/
Dpci.c1 // SPDX-License-Identifier: GPL-2.0-only
3 * Code borrowed from powerpc/kernel/pci-common.c
9 #include <linux/pci.h>
12 * raw_pci_read/write - Platform-specific PCI config space access.
14 int raw_pci_read(unsigned int domain, unsigned int bus, in raw_pci_read() argument
17 struct pci_bus *b = pci_find_bus(domain, bus); in raw_pci_read()
21 return b->ops->read(b, devfn, reg, len, val); in raw_pci_read()
24 int raw_pci_write(unsigned int domain, unsigned int bus, in raw_pci_write() argument
27 struct pci_bus *b = pci_find_bus(domain, bus); in raw_pci_write()
31 return b->ops->write(b, devfn, reg, len, val); in raw_pci_write()
[all …]

12345678910>>...24