| /linux/drivers/edac/ |
| H A D | edac_pci.c | 3 * EDAC PCI component 31 struct edac_pci_ctl_info *pci; in edac_pci_alloc_ctl_info() local 35 pci = kzalloc_obj(struct edac_pci_ctl_info); in edac_pci_alloc_ctl_info() 36 if (!pci) in edac_pci_alloc_ctl_info() 40 pci->pvt_info = kzalloc(sz_pvt, GFP_KERNEL); in edac_pci_alloc_ctl_info() 41 if (!pci->pvt_info) in edac_pci_alloc_ctl_info() 45 pci->op_state = OP_ALLOC; in edac_pci_alloc_ctl_info() 47 snprintf(pci->name, strlen(edac_pci_name) + 1, "%s", edac_pci_name); in edac_pci_alloc_ctl_info() 49 return pci; in edac_pci_alloc_ctl_info() 52 kfree(pci); in edac_pci_alloc_ctl_info() [all …]
|
| H A D | octeon_edac-pci.c | 18 #include <asm/octeon/cvmx-pci-defs.h> 23 static void octeon_pci_poll(struct edac_pci_ctl_info *pci) in octeon_pci_poll() argument 29 edac_pci_handle_pe(pci, pci->ctl_name); in octeon_pci_poll() 34 edac_pci_handle_npe(pci, "Signaled System Error"); in octeon_pci_poll() 39 edac_pci_handle_npe(pci, "Received Master Abort"); in octeon_pci_poll() 44 edac_pci_handle_npe(pci, "Received Target Abort"); in octeon_pci_poll() 49 edac_pci_handle_npe(pci, "Signaled Target Abort"); in octeon_pci_poll() 54 edac_pci_handle_npe(pci, "Master Data Parity Error"); in octeon_pci_poll() 62 struct edac_pci_ctl_info *pci; in octeon_pci_probe() local 65 pci = edac_pci_alloc_ctl_info(0, "octeon_pci_err"); in octeon_pci_probe() [all …]
|
| /linux/drivers/gpu/drm/nouveau/nvkm/subdev/pci/ |
| H A D | base.c | 28 #include <core/pci.h> 33 struct nvkm_pci *pci = device->pci; in nvkm_pci_msi_rearm() local 35 if (pci && pci->msi) in nvkm_pci_msi_rearm() 36 pci->func->msi_rearm(pci); in nvkm_pci_msi_rearm() 40 nvkm_pci_rd32(struct nvkm_pci *pci, u16 addr) in nvkm_pci_rd32() argument 42 return nvkm_rd32(pci->subdev.device, pci->func->cfg.addr + addr); in nvkm_pci_rd32() 46 nvkm_pci_wr08(struct nvkm_pci *pci, u16 addr, u8 data) in nvkm_pci_wr08() argument 48 nvkm_wr08(pci->subdev.device, pci->func->cfg.addr + addr, data); in nvkm_pci_wr08() 52 nvkm_pci_wr32(struct nvkm_pci *pci, u16 addr, u32 data) in nvkm_pci_wr32() argument 54 nvkm_wr32(pci->subdev.device, pci->func->cfg.addr + addr, data); in nvkm_pci_wr32() [all …]
|
| H A D | pcie.c | 51 nvkm_pcie_get_version(struct nvkm_pci *pci) in nvkm_pcie_get_version() argument 53 if (!pci->func->pcie.version) in nvkm_pcie_get_version() 56 return pci->func->pcie.version(pci); in nvkm_pcie_get_version() 60 nvkm_pcie_get_max_version(struct nvkm_pci *pci) in nvkm_pcie_get_max_version() argument 62 if (!pci->func->pcie.version_supported) in nvkm_pcie_get_max_version() 65 return pci->func->pcie.version_supported(pci); in nvkm_pcie_get_max_version() 69 nvkm_pcie_set_version(struct nvkm_pci *pci, int version) in nvkm_pcie_set_version() argument 71 if (!pci->func->pcie.set_version) in nvkm_pcie_set_version() 74 nvkm_trace(&pci->subdev, "set to version %i\n", version); in nvkm_pcie_set_version() 75 pci->func->pcie.set_version(pci, version); in nvkm_pcie_set_version() [all …]
|
| H A D | agp.c | 38 /* SiS 761 does not support AGP cards, use PCI mode */ 44 nvkm_agp_fini(struct nvkm_pci *pci) in nvkm_agp_fini() argument 46 if (pci->agp.acquired) { in nvkm_agp_fini() 47 agp_backend_release(pci->agp.bridge); in nvkm_agp_fini() 48 pci->agp.acquired = false; in nvkm_agp_fini() 56 nvkm_agp_preinit(struct nvkm_pci *pci) in nvkm_agp_preinit() argument 58 struct nvkm_device *device = pci->subdev.device; in nvkm_agp_preinit() 59 u32 mode = nvkm_pci_rd32(pci, 0x004c); in nvkm_agp_preinit() 66 if ((mode | pci->agp.mode) & PCI_AGP_COMMAND_FW) { in nvkm_agp_preinit() 67 mode = pci->agp.mode & ~PCI_AGP_COMMAND_FW; in nvkm_agp_preinit() [all …]
|
| /linux/drivers/comedi/ |
| H A D | Kconfig | 427 tristate "Intelligent Instruments PCI-20001C carrier support" 430 Enable support for Intelligent Instruments PCI-20001C carrier 431 PCI-20001, PCI-20006 and PCI-20341 567 tristate "Comedi PCI drivers" 568 depends on PCI 570 Enable support for comedi PCI drivers. 578 tristate "Generic PCI based 8255 digital i/o board support" 581 Enable support for PCI based 8255 digital i/o boards. This driver 582 provides a PCI wrapper around the generic 8255 driver. 585 ADlink - PCI-7224, PCI-7248, and PCI-7296 [all …]
|
| /linux/drivers/pci/controller/dwc/ |
| H A D | pci-exynos.c | 17 #include <linux/pci.h> 55 struct dw_pcie pci; member 73 struct dw_pcie *pci = &ep->pci; in exynos_pcie_sideband_dbi_w_mode() local 76 val = exynos_pcie_readl(pci->elbi_base, PCIE_ELBI_SLV_AWMISC); in exynos_pcie_sideband_dbi_w_mode() 81 exynos_pcie_writel(pci->elbi_base, val, PCIE_ELBI_SLV_AWMISC); in exynos_pcie_sideband_dbi_w_mode() 86 struct dw_pcie *pci = &ep->pci; in exynos_pcie_sideband_dbi_r_mode() local 89 val = exynos_pcie_readl(pci->elbi_base, PCIE_ELBI_SLV_ARMISC); in exynos_pcie_sideband_dbi_r_mode() 94 exynos_pcie_writel(pci->elbi_base, val, PCIE_ELBI_SLV_ARMISC); in exynos_pcie_sideband_dbi_r_mode() 99 struct dw_pcie *pci = &ep->pci; in exynos_pcie_assert_core_reset() local 102 val = exynos_pcie_readl(pci->elbi_base, PCIE_CORE_RESET); in exynos_pcie_assert_core_reset() [all …]
|
| H A D | pcie-armada8k.c | 19 #include <linux/pci.h> 30 struct dw_pcie *pci; member 112 struct dw_pcie *pci = pcie->pci; in armada8k_pcie_setup_phys() local 113 struct device *dev = pci->dev; in armada8k_pcie_setup_phys() 142 static bool armada8k_pcie_link_up(struct dw_pcie *pci) in armada8k_pcie_link_up() argument 147 reg = dw_pcie_readl_dbi(pci, PCIE_GLOBAL_STATUS_REG); in armada8k_pcie_link_up() 152 dev_dbg(pci->dev, "No link detected (Global-Status: 0x%08x).\n", reg); in armada8k_pcie_link_up() 156 static int armada8k_pcie_start_link(struct dw_pcie *pci) in armada8k_pcie_start_link() argument 161 reg = dw_pcie_readl_dbi(pci, PCIE_GLOBAL_CONTROL_REG); in armada8k_pcie_start_link() 163 dw_pcie_writel_dbi(pci, PCIE_GLOBAL_CONTROL_REG, reg); in armada8k_pcie_start_link() [all …]
|
| H A D | pcie-designware-ep.c | 15 #include <linux/pci-epc.h> 16 #include <linux/pci-epf.h> 39 static void __dw_pcie_ep_reset_bar(struct dw_pcie *pci, u8 func_no, in __dw_pcie_ep_reset_bar() argument 42 struct dw_pcie_ep *ep = &pci->ep; in __dw_pcie_ep_reset_bar() 46 dw_pcie_dbi_ro_wr_en(pci); in __dw_pcie_ep_reset_bar() 53 dw_pcie_dbi_ro_wr_dis(pci); in __dw_pcie_ep_reset_bar() 58 * @pci: DWC PCI device 61 void dw_pcie_ep_reset_bar(struct dw_pcie *pci, enum pci_barno bar) in dw_pcie_ep_reset_bar() argument 65 funcs = pci->ep.epc->max_functions; in dw_pcie_ep_reset_bar() 68 __dw_pcie_ep_reset_bar(pci, func_no, bar, 0); in dw_pcie_ep_reset_bar() [all …]
|
| /linux/sound/soc/intel/atom/sst/ |
| H A D | sst_pci.c | 3 * sst_pci.c - SST (LPE) driver init file for pci enumeration. 15 #include <linux/pci.h> 27 struct pci_dev *pci = ctx->pci; in sst_platform_get_resources() local 29 ret = pcim_request_all_regions(pci, SST_DRV_NAME); in sst_platform_get_resources() 36 ctx->ddr_base = pci_resource_start(pci, 0); in sst_platform_get_resources() 48 ctx->ddr_end = pci_resource_end(pci, 0); in sst_platform_get_resources() 50 ctx->ddr = pcim_iomap(pci, 0, 0); in sst_platform_get_resources() 59 ctx->shim_phy_add = pci_resource_start(pci, 1); in sst_platform_get_resources() 60 ctx->shim = pcim_iomap(pci, 1, 0); in sst_platform_get_resources() 67 ctx->mailbox_add = pci_resource_start(pci, 2); in sst_platform_get_resources() [all …]
|
| /linux/drivers/scsi/qla2xxx/ |
| H A D | qla_devtbl.h | 8 "QLA2340", "133MHz PCI-X to 2Gb FC, Single Channel", /* 0x100 */ 9 "QLA2342", "133MHz PCI-X to 2Gb FC, Dual Channel", /* 0x101 */ 10 "QLA2344", "133MHz PCI-X to 2Gb FC, Quad Channel", /* 0x102 */ 14 "QLA2310", "Sun 66MHz PCI-X to 2Gb FC, Single Channel", /* 0x106 */ 15 "QLA2332", "Sun 66MHz PCI-X to 2Gb FC, Single Channel", /* 0x107 */ 18 "QLA2342", "Sun 133MHz PCI-X to 2Gb FC, Dual Channel", /* 0x10a */ 20 "QLA2350", "133MHz PCI-X to 2Gb FC, Single Channel", /* 0x10c */ 21 "QLA2352", "133MHz PCI-X to 2Gb FC, Dual Channel", /* 0x10d */ 22 "QLA2352", "Sun 133MHz PCI-X to 2Gb FC, Dual Channel", /* 0x10e */ 29 "QLA2360", "133MHz PCI-X to 2Gb FC, Single Channel", /* 0x115 */ [all …]
|
| /linux/arch/mips/pci/ |
| H A D | Makefile | 3 # Makefile for the PCI specific kernel interface routines under Linux. 6 obj-y += pci.o 7 obj-$(CONFIG_PCI_DRIVERS_LEGACY)+= pci-legacy.o 8 obj-$(CONFIG_PCI_DRIVERS_GENERIC)+= pci-generic.o 11 # PCI bus host bridge specific code 17 obj-$(CONFIG_BCM47XX) += pci-bcm47xx.o 18 obj-$(CONFIG_BCM63XX) += pci-bcm63xx.o fixup-bcm63xx.o \ 20 obj-$(CONFIG_MIPS_ALCHEMY) += pci-alchemy.o 21 obj-$(CONFIG_PCI_AR2315) += pci-ar2315.o 22 obj-$(CONFIG_SOC_AR71XX) += pci-ar71xx.o [all …]
|
| /linux/Documentation/ABI/testing/ |
| H A D | sysfs-bus-pci | 1 What: /sys/bus/pci/drivers/.../bind 4 Contact: linux-pci@vger.kernel.org 11 found in /sys/bus/pci/devices/. For example:: 13 # echo 0000:00:19.0 > /sys/bus/pci/drivers/foo/bind 17 What: /sys/bus/pci/drivers/.../unbind 20 Contact: linux-pci@vger.kernel.org 27 found in /sys/bus/pci/devices/. For example:: 29 # echo 0000:00:19.0 > /sys/bus/pci/drivers/foo/unbind 33 What: /sys/bus/pci/drivers/.../new_id 36 Contact: linux-pci@vger.kernel.org [all …]
|
| /linux/Documentation/scsi/ |
| H A D | aic7xxx.rst | 27 aic7850 10 PCI/32 10MHz 8Bit 3 28 aic7855 10 PCI/32 10MHz 8Bit 3 29 aic7856 10 PCI/32 10MHz 8Bit 3 30 aic7859 10 PCI/32 20MHz 8Bit 3 31 aic7860 10 PCI/32 20MHz 8Bit 3 32 aic7870 10 PCI/32 10MHz 16Bit 16 33 aic7880 10 PCI/32 20MHz 16Bit 16 34 aic7890 20 PCI/32 40MHz 16Bit 16 3 4 5 6 7 8 35 aic7891 20 PCI/64 40MHz 16Bit 16 3 4 5 6 7 8 36 aic7892 20 PCI/64-66 80MHz 16Bit 16 3 4 5 6 7 8 [all …]
|
| /linux/sound/soc/amd/acp/ |
| H A D | acp-pci.c | 11 * Generic PCI interface for ACP device 16 #include <linux/pci.h> 57 static int create_acp_platform_devs(struct pci_dev *pci, struct acp_chip_info *chip, u32 addr) in create_acp_platform_devs() argument 63 parent = &pci->dev; in create_acp_platform_devs() 66 chip->res = devm_kzalloc(&pci->dev, sizeof(struct resource), GFP_KERNEL); in create_acp_platform_devs() 83 dev_err(&pci->dev, in create_acp_platform_devs() 89 chip->dmic_codec_dev = platform_device_register_data(&pci->dev, in create_acp_platform_devs() 94 dev_err(&pci->dev, "failed to create DMIC device\n"); in create_acp_platform_devs() 106 static int acp_pci_probe(struct pci_dev *pci, const struct pci_device_id *pci_id) in acp_pci_probe() argument 108 struct device *dev = &pci->dev; in acp_pci_probe() [all …]
|
| /linux/Documentation/arch/s390/ |
| H A D | pci.rst | 4 S/390 PCI 22 Do not use PCI Mapped I/O (MIO) instructions. 26 Ignore the RID field and force use of one PCI domain per PCI function. 40 holds messages from the processing of PCI events, like machine check handling 53 * /sys/bus/pci/slots/XXXXXXXX: 55 The slot entries are set up using the function identifier (FID) of the PCI 59 - /sys/bus/pci/slots/XXXXXXXX/power 70 echo 0 > /sys/bus/pci/devices/DDDD:BB:dd.f/sriov_numvf 72 * /sys/bus/pci/devices/DDDD:BB:dd.f/: 76 uniquely identifies the PCI function. Unless the hypervisor provides [all …]
|
| /linux/include/linux/ssb/ |
| H A D | ssb_driver_pci.h | 12 /* PCI core registers. */ 13 #define SSB_PCICORE_CTL 0x0000 /* PCI Control */ 18 #define SSB_PCICORE_ARBCTL 0x0010 /* PCI Arbiter Control */ 27 #define SSB_PCICORE_ISTAT_INTA 0x00000001 /* PCI INTA# */ 28 #define SSB_PCICORE_ISTAT_INTB 0x00000002 /* PCI INTB# */ 29 #define SSB_PCICORE_ISTAT_SERR 0x00000004 /* PCI SERR# (write to clear) */ 30 #define SSB_PCICORE_ISTAT_PERR 0x00000008 /* PCI PERR# (write to clear) */ 31 #define SSB_PCICORE_ISTAT_PME 0x00000010 /* PCI PME# */ 33 #define SSB_PCICORE_IMASK_INTA 0x00000001 /* PCI INTA# */ 34 #define SSB_PCICORE_IMASK_INTB 0x00000002 /* PCI INTB# */ [all …]
|
| /linux/sound/soc/amd/ps/ |
| H A D | pci-ps.c | 3 * AMD common ACP PCI driver for ACP6.3, ACP7.0 & ACP7.1 platforms. 8 #include <linux/pci.h> 403 static int get_acp63_device_config(struct pci_dev *pci, struct acp63_dev_data *acp_data) in get_acp63_device_config() argument 418 acp_hw_get_config(pci, acp_data); in get_acp63_device_config() 421 pdm_dev = acpi_find_child_device(ACPI_COMPANION(&pci->dev), ACP63_DMIC_ADDR, 0); in get_acp63_device_config() 430 handle = ACPI_HANDLE(&pci->dev); in get_acp63_device_config() 440 ret = acp_scan_sdw_devices(&pci->dev, ACP63_SDW_ADDR); in get_acp63_device_config() 448 dev_dbg(&pci->dev, "No PDM or SoundWire manager devices found\n"); in get_acp63_device_config() 473 static int create_acp63_platform_devs(struct pci_dev *pci, struct acp63_dev_data *adata, u32 addr) in create_acp63_platform_devs() argument 479 parent = &pci->dev; in create_acp63_platform_devs() [all …]
|
| /linux/Documentation/devicetree/bindings/pinctrl/ |
| H A D | marvell,orion-pinctrl.txt | 24 mpp0 0 pcie(rstout), pci(req2), gpio 25 mpp1 1 gpio, pci(gnt2) 26 mpp2 2 gpio, pci(req3), pci-1(pme) 27 mpp3 3 gpio, pci(gnt3) 28 mpp4 4 gpio, pci(req4) 29 mpp5 5 gpio, pci(gnt4) 30 mpp6 6 gpio, pci(req5), pci-1(clk) 31 mpp7 7 gpio, pci(gnt5), pci-1(clk) 49 mpp0 0 pcie(rstout), pci(req2), gpio 50 mpp1 1 gpio, pci(gnt2) [all …]
|
| /linux/Documentation/virt/hyperv/ |
| H A D | vpci.rst | 3 PCI pass-thru devices 5 In a Hyper-V guest VM, PCI pass-thru devices (also called 6 virtual PCI devices, or vPCI devices) are physical PCI devices 35 Hyper-V provides full PCI functionality for a vPCI device when 38 APIs for accessing PCI config space and for other integration 39 with Linux. But the initial detection of the PCI device and 40 its integration with the Linux PCI subsystem must use Hyper-V 46 drivers/pci/controller/pci-hyperv.c handles a newly introduced 47 vPCI device by fabricating a PCI bus topology and creating all 48 the normal PCI device data structures in Linux that would [all …]
|
| /linux/Documentation/devicetree/bindings/pci/ |
| H A D | ralink,rt3883-pci.txt | 1 * Mediatek/Ralink RT3883 PCI controller 7 - compatible: must be "ralink,rt3883-pci" 29 interrupt controller and the PCI host bridge. 48 b) PCI host bridge: 61 - device_type: must be "pci" 63 - bus-range: PCI bus numbers covered 65 - ranges: specifies the ranges for the PCI memory and I/O regions 68 - interrupt-map: standard PCI properties to define the mapping of the 69 PCI interface to interrupt numbers. 71 The PCI host bridge node might have additional sub-nodes representing [all …]
|
| /linux/sound/soc/amd/vangogh/ |
| H A D | pci-acp5x.c | 3 // AMD Vangogh ACP PCI Driver 7 #include <linux/pci.h> 124 static int snd_acp5x_probe(struct pci_dev *pci, in snd_acp5x_probe() argument 137 flag = snd_amd_acp_find_config(pci); in snd_acp5x_probe() 143 if (pci->revision != 0x50) in snd_acp5x_probe() 146 if (pci_enable_device(pci)) { in snd_acp5x_probe() 147 dev_err(&pci->dev, "pci_enable_device failed\n"); in snd_acp5x_probe() 151 ret = pci_request_regions(pci, "AMD ACP5x audio"); in snd_acp5x_probe() 153 dev_err(&pci->dev, "pci_request_regions failed\n"); in snd_acp5x_probe() 157 adata = devm_kzalloc(&pci->dev, sizeof(struct acp5x_dev_data), in snd_acp5x_probe() [all …]
|
| /linux/arch/powerpc/platforms/52xx/ |
| H A D | mpc52xx_pci.c | 2 * PCI code for the Freescale MPC52xx embedded CPU. 15 #include <linux/pci.h> 24 /* Structures mapping & Defines for PCI Unit */ 65 u32 idr; /* PCI + 0x00 */ 66 u32 scr; /* PCI + 0x04 */ 67 u32 ccrir; /* PCI + 0x08 */ 68 u32 cr1; /* PCI + 0x0C */ 69 u32 bar0; /* PCI + 0x10 */ 70 u32 bar1; /* PCI + 0x14 */ 71 u8 reserved1[16]; /* PCI + 0x18 */ [all …]
|
| /linux/Documentation/nvme/ |
| H A D | nvme-pci-endpoint-target.rst | 4 NVMe PCI Endpoint Function Target 9 The NVMe PCI endpoint function target driver implements an NVMe PCIe controller 10 using an NVMe fabrics target controller configured with the PCI transport type. 15 The NVMe PCI endpoint function target driver allows exposing an NVMe target 20 "pci". The subsystem can be configured to have namespaces backed by regular 21 files or block devices, or can use NVMe passthrough to expose to the PCI host an 25 The NVMe PCI endpoint function target driver relies as much as possible on the 27 host. However, using the PCI endpoint framework API and DMA API, the driver is 29 implies that the NVMe PCI endpoint function target driver implements several 42 PCI endpoint framework API to raise an interrupt to the host to signal the [all …]
|
| /linux/sound/soc/amd/renoir/ |
| H A D | rn-pci-acp3x.c | 3 // AMD Renoir ACP PCI Driver 7 #include <linux/pci.h> 205 static int snd_rn_acp_probe(struct pci_dev *pci, in snd_rn_acp_probe() argument 220 flag = snd_amd_acp_find_config(pci); in snd_rn_acp_probe() 225 if (pci->revision != 0x01) in snd_rn_acp_probe() 228 if (pci_enable_device(pci)) { in snd_rn_acp_probe() 229 dev_err(&pci->dev, "pci_enable_device failed\n"); in snd_rn_acp_probe() 233 ret = pci_request_regions(pci, "AMD ACP3x audio"); in snd_rn_acp_probe() 235 dev_err(&pci->dev, "pci_request_regions failed\n"); in snd_rn_acp_probe() 239 adata = devm_kzalloc(&pci->dev, sizeof(struct acp_dev_data), in snd_rn_acp_probe() [all …]
|