| /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(sizeof(struct edac_pci_ctl_info), GFP_KERNEL); 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 | edac_pci_sysfs.c | 20 static int check_pci_errors; /* default NO check PCI parity */ 21 static int edac_pci_panic_on_pe; /* default NO panic on PCI Parity */ 22 static int edac_pci_log_pe = 1; /* log PCI parity errors */ 23 static int edac_pci_log_npe = 1; /* log PCI non-parity error errors */ 58 /**************************** EDAC PCI sysfs instance *******************/ 59 static ssize_t instance_pe_count_show(struct edac_pci_ctl_info *pci, char *data) in instance_pe_count_show() argument 61 return sprintf(data, "%u\n", atomic_read(&pci->counters.pe_count)); in instance_pe_count_show() 64 static ssize_t instance_npe_count_show(struct edac_pci_ctl_info *pci, in instance_npe_count_show() argument 67 return sprintf(data, "%u\n", atomic_read(&pci->counters.npe_count)); in instance_npe_count_show() 76 struct edac_pci_ctl_info *pci; in edac_pci_instance_release() local [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/pci/ |
| H A D | Kconfig | 3 # PCI configuration 6 # select this to offer the PCI prompt 10 # select this to unconditionally force on PCI support 14 select PCI 16 # select this to provide a generic PCI iomap, 17 # without PCI itself having to be defined 21 menuconfig PCI config 22 bool "PCI support" 26 This option enables support for the PCI local bus, including 27 support for PCI-X and the foundations for PCI Express support. [all …]
|
| H A D | search.c | 3 * PCI searching functions 11 #include <linux/pci.h> 15 #include "pci.h" 37 * requester is on another PCI bus. in pci_for_each_dma_alias() 74 * PCIe-to-PCI/X bridges alias transactions from downstream in pci_for_each_dma_alias() 75 * devices using the subordinate bus number (PCI Express to in pci_for_each_dma_alias() 76 * PCI/PCI-X Bridge Spec, rev 1.0, sec 2.3). For all cases in pci_for_each_dma_alias() 77 * where the upstream bus is PCI/X we alias to the bridge in pci_for_each_dma_alias() 80 * when the secondary interface is PCI-X). in pci_for_each_dma_alias() 133 * pci_find_bus - locate PCI bus from a given domain and bus number [all …]
|
| /linux/drivers/pci/controller/dwc/ |
| H A D | pcie-designware-debugfs.c | 63 * @pci: Reference to the dw_pcie structure 69 struct dw_pcie *pci; member 189 struct dw_pcie *pci = file->private_data; in lane_detect_read() local 190 struct dwc_pcie_rasdes_info *rinfo = pci->debugfs->rasdes_info; in lane_detect_read() 195 val = dw_pcie_readl_dbi(pci, rinfo->ras_cap_offset + SD_STATUS_L1LANE_REG); in lane_detect_read() 208 struct dw_pcie *pci = file->private_data; in lane_detect_write() local 209 struct dwc_pcie_rasdes_info *rinfo = pci->debugfs->rasdes_info; in lane_detect_write() 216 val = dw_pcie_readl_dbi(pci, rinfo->ras_cap_offset + SD_STATUS_L1LANE_REG); in lane_detect_write() 219 dw_pcie_writel_dbi(pci, rinfo->ras_cap_offset + SD_STATUS_L1LANE_REG, val); in lane_detect_write() 227 struct dw_pcie *pci = file->private_data; in rx_valid_read() local [all …]
|
| H A D | pcie-designware-host.c | 22 #include "../../pci.h" 55 struct dw_pcie *pci = to_dw_pcie_from_pp(pp); in dw_handle_msi_irq() local 60 status = dw_pcie_readl_dbi(pci, PCIE_MSI_INTR0_STATUS + in dw_handle_msi_irq() 97 struct dw_pcie *pci = to_dw_pcie_from_pp(pp); in dw_pci_setup_msi_msg() local 107 dev_dbg(pci->dev, "msi#%d address_hi %#x address_lo %#x\n", in dw_pci_setup_msi_msg() 114 struct dw_pcie *pci = to_dw_pcie_from_pp(pp); in dw_pci_bottom_mask() local 125 dw_pcie_writel_dbi(pci, PCIE_MSI_INTR0_MASK + res, pp->irq_mask[ctrl]); in dw_pci_bottom_mask() 133 struct dw_pcie *pci = to_dw_pcie_from_pp(pp); in dw_pci_bottom_unmask() local 144 dw_pcie_writel_dbi(pci, PCIE_MSI_INTR0_MASK + res, pp->irq_mask[ctrl]); in dw_pci_bottom_unmask() 152 struct dw_pcie *pci = to_dw_pcie_from_pp(pp); in dw_pci_bottom_ack() local [all …]
|
| 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 | pci-layerscape-ep.c | 15 #include <linux/pci.h> 44 struct dw_pcie *pci; member 54 struct dw_pcie *pci = pcie->pci; in ls_pcie_pf_lut_readl() local 57 return ioread32be(pci->dbi_base + offset); in ls_pcie_pf_lut_readl() 59 return ioread32(pci->dbi_base + offset); in ls_pcie_pf_lut_readl() 64 struct dw_pcie *pci = pcie->pci; in ls_pcie_pf_lut_writel() local 67 iowrite32be(value, pci->dbi_base + offset); in ls_pcie_pf_lut_writel() 69 iowrite32(value, pci->dbi_base + offset); in ls_pcie_pf_lut_writel() 75 struct dw_pcie *pci = pcie->pci; in ls_pcie_ep_event_handler() local 87 offset = dw_pcie_find_capability(pci, PCI_CAP_ID_EXP); in ls_pcie_ep_event_handler() [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 …]
|
| /linux/drivers/gpu/drm/nouveau/nvkm/subdev/pci/ |
| 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/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/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/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/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/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/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/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/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/drivers/vfio/pci/ |
| H A D | Kconfig | 2 menu "VFIO support for PCI devices" 3 depends on PCI 15 tristate "Generic VFIO support for any PCI device" 18 Support for the generic PCI VFIO bus driver which can connect any 19 PCI device to the VFIO framework. 25 bool "Generic VFIO PCI support for VGA devices" 28 Support for VGA extension to VFIO PCI. This exposes an additional 35 bool "Generic VFIO PCI extensions for Intel graphics (GVT-d)" 44 To enable Intel IGD assignment through vfio-pci, say Y. 48 bool "VFIO PCI extensions for s390x KVM passthrough" [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/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/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() 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 acp63_fill_platform_dev_info() 473 static int create_acp63_platform_devs(struct pci_dev *pci, struct acp63_dev_data *adata, u32 addr) in create_acp63_platform_devs() 479 parent = &pci in create_acp63_platform_devs() 397 get_acp63_device_config(struct pci_dev * pci,struct acp63_dev_data * acp_data) get_acp63_device_config() argument 467 create_acp63_platform_devs(struct pci_dev * pci,struct acp63_dev_data * adata,u32 addr) create_acp63_platform_devs() argument 544 acp_hw_init_ops(struct acp63_dev_data * adata,struct pci_dev * pci) acp_hw_init_ops() argument 567 snd_acp63_probe(struct pci_dev * pci,const struct pci_device_id * pci_id) snd_acp63_probe() argument 696 snd_acp63_remove(struct pci_dev * pci) snd_acp63_remove() argument [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 …]
|