Home
last modified time | relevance | path

Searched full:pci (Results 1 – 25 of 5144) sorted by relevance

12345678910>>...206

/openbmc/linux/drivers/staging/media/atomisp/
H A DMakefile7 obj-$(CONFIG_VIDEO_ATOMISP) += pci/atomisp_gmin_platform.o
16 pci/atomisp_cmd.o \
17 pci/atomisp_compat_css20.o \
18 pci/atomisp_csi2.o \
19 pci/atomisp_csi2_bridge.o \
20 pci/atomisp_drvfs.o \
21 pci/atomisp_fops.o \
22 pci/atomisp_ioctl.o \
23 pci/atomisp_subdev.o \
24 pci/atomisp_tpg.o \
[all …]
/openbmc/linux/drivers/pci/controller/dwc/
H A Dpcie-designware.c23 #include "../../pci.h"
55 static int dw_pcie_get_clocks(struct dw_pcie *pci) in dw_pcie_get_clocks() argument
60 pci->app_clks[i].id = dw_pcie_app_clks[i]; in dw_pcie_get_clocks()
63 pci->core_clks[i].id = dw_pcie_core_clks[i]; in dw_pcie_get_clocks()
65 ret = devm_clk_bulk_get_optional(pci->dev, DW_PCIE_NUM_APP_CLKS, in dw_pcie_get_clocks()
66 pci->app_clks); in dw_pcie_get_clocks()
70 return devm_clk_bulk_get_optional(pci->dev, DW_PCIE_NUM_CORE_CLKS, in dw_pcie_get_clocks()
71 pci->core_clks); in dw_pcie_get_clocks()
74 static int dw_pcie_get_resets(struct dw_pcie *pci) in dw_pcie_get_resets() argument
79 pci->app_rsts[i].id = dw_pcie_app_rsts[i]; in dw_pcie_get_resets()
[all …]
H A Dpcie-designware-ep.c14 #include <linux/pci-epc.h>
15 #include <linux/pci-epf.h>
56 static void __dw_pcie_ep_reset_bar(struct dw_pcie *pci, u8 func_no, in __dw_pcie_ep_reset_bar() argument
61 struct dw_pcie_ep *ep = &pci->ep; in __dw_pcie_ep_reset_bar()
66 dw_pcie_dbi_ro_wr_en(pci); in __dw_pcie_ep_reset_bar()
67 dw_pcie_writel_dbi2(pci, reg, 0x0); in __dw_pcie_ep_reset_bar()
68 dw_pcie_writel_dbi(pci, reg, 0x0); in __dw_pcie_ep_reset_bar()
70 dw_pcie_writel_dbi2(pci, reg + 4, 0x0); in __dw_pcie_ep_reset_bar()
71 dw_pcie_writel_dbi(pci, reg + 4, 0x0); in __dw_pcie_ep_reset_bar()
73 dw_pcie_dbi_ro_wr_dis(pci); in __dw_pcie_ep_reset_bar()
[all …]
H A Dpcie-designware-host.c20 #include "../../pci.h"
44 .name = "PCI-MSI",
63 struct dw_pcie *pci = to_dw_pcie_from_pp(pp); in dw_handle_msi_irq() local
68 status = dw_pcie_readl_dbi(pci, PCIE_MSI_INTR0_STATUS + in dw_handle_msi_irq()
105 struct dw_pcie *pci = to_dw_pcie_from_pp(pp); in dw_pci_setup_msi_msg() local
115 dev_dbg(pci->dev, "msi#%d address_hi %#x address_lo %#x\n", in dw_pci_setup_msi_msg()
128 struct dw_pcie *pci = to_dw_pcie_from_pp(pp); in dw_pci_bottom_mask() local
139 dw_pcie_writel_dbi(pci, PCIE_MSI_INTR0_MASK + res, pp->irq_mask[ctrl]); in dw_pci_bottom_mask()
147 struct dw_pcie *pci = to_dw_pcie_from_pp(pp); in dw_pci_bottom_unmask() local
158 dw_pcie_writel_dbi(pci, PCIE_MSI_INTR0_MASK + res, pp->irq_mask[ctrl]); in dw_pci_bottom_unmask()
[all …]
H A Dpci-layerscape-ep.c15 #include <linux/pci.h>
44 struct dw_pcie *pci; member
54 struct dw_pcie *pci = pcie->pci; in ls_lut_readl() local
57 return ioread32be(pci->dbi_base + offset); in ls_lut_readl()
59 return ioread32(pci->dbi_base + offset); in ls_lut_readl()
64 struct dw_pcie *pci = pcie->pci; in ls_lut_writel() local
67 iowrite32be(value, pci->dbi_base + offset); in ls_lut_writel()
69 iowrite32(value, pci->dbi_base + offset); in ls_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 Dpci-layerscape.c19 #include <linux/pci.h>
25 #include "../../pci.h"
46 struct dw_pcie *pci; member
57 struct dw_pcie *pci = pcie->pci; in ls_pcie_is_bridge() local
60 header_type = ioread8(pci->dbi_base + PCI_HEADER_TYPE); in ls_pcie_is_bridge()
69 struct dw_pcie *pci = pcie->pci; in ls_pcie_clear_multifunction() local
71 iowrite8(PCI_HEADER_TYPE_BRIDGE, pci->dbi_base + PCI_HEADER_TYPE); in ls_pcie_clear_multifunction()
78 struct dw_pcie *pci = pcie->pci; in ls_pcie_drop_msg_tlp() local
80 val = ioread32(pci->dbi_base + PCIE_STRFMR1); in ls_pcie_drop_msg_tlp()
82 iowrite32(val, pci->dbi_base + PCIE_STRFMR1); in ls_pcie_drop_msg_tlp()
[all …]
/openbmc/qemu/docs/
H A Dpcie.txt1 PCI EXPRESS GUIDELINES
6 The doc proposes best practices on how to use PCI Express (PCIe) / PCI
7 devices in PCI Express based machines and explains the reasoning behind
17 (2) A comparison between PCI and PCI Express technologies.
26 and allows any PCI/PCI Express device to be plugged into any
27 PCI/PCI Express slot.
28 Plugging a PCI device into a PCI Express slot might not always work and
30 Plugging a PCI Express device into a PCI slot will hide the Extended
33 The recommendation is to separate the PCI Express and PCI hierarchies.
34 PCI Express devices should be plugged only into PCI Express Root Ports and
[all …]
/openbmc/linux/drivers/gpu/drm/nouveau/nvkm/subdev/pci/
H A Dbase.c28 #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 pci->func->rd32(pci, addr); in nvkm_pci_rd32()
46 nvkm_pci_wr08(struct nvkm_pci *pci, u16 addr, u8 data) in nvkm_pci_wr08() argument
48 pci->func->wr08(pci, addr, data); in nvkm_pci_wr08()
52 nvkm_pci_wr32(struct nvkm_pci *pci, u16 addr, u32 data) in nvkm_pci_wr32() argument
54 pci->func->wr32(pci, addr, data); in nvkm_pci_wr32()
[all …]
H A Dpcie.c51 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 Dagp.c38 /* 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 …]
/openbmc/linux/drivers/pci/
H A DKconfig3 # PCI configuration
6 # select this to offer the PCI prompt
10 # select this to unconditionally force on PCI support
14 select PCI
16 menuconfig PCI config
17 bool "PCI support"
20 This option enables support for the PCI local bus, including
21 support for PCI-X and the foundations for PCI Express support.
24 if PCI
28 depends on PCI
[all …]
H A Dsearch.c3 * 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 …]
/openbmc/linux/drivers/edac/
H A Dedac_pci.c3 * 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 …]
/openbmc/linux/drivers/media/pci/
H A DKconfig3 if PCI
6 bool "Media PCI Adapters"
8 Enable media drivers for PCI/PCIe bus.
16 source "drivers/media/pci/solo6x10/Kconfig"
17 source "drivers/media/pci/sta2x11/Kconfig"
18 source "drivers/media/pci/tw5864/Kconfig"
19 source "drivers/media/pci/tw68/Kconfig"
20 source "drivers/media/pci/tw686x/Kconfig"
21 source "drivers/media/pci/zoran/Kconfig"
28 source "drivers/media/pci/dt3155/Kconfig"
[all …]
/openbmc/linux/Documentation/PCI/endpoint/
H A Dpci-endpoint.rst5 This document is a guide to use the PCI Endpoint Framework in order to create
12 Linux has a comprehensive PCI subsystem to support PCI controllers that
13 operates in Root Complex mode. The subsystem has capability to scan PCI bus,
14 assign memory resources and IRQ resources, load PCI driver (based on
18 However the PCI controller IP integrated in some SoCs is capable of operating
19 either in Root Complex mode or Endpoint mode. PCI Endpoint Framework will
24 PCI Endpoint Core
27 The PCI Endpoint Core layer comprises 3 components: the Endpoint Controller
31 PCI Endpoint Controller(EPC) Library
38 APIs for the PCI controller Driver
[all …]
/openbmc/u-boot/doc/driver-model/
H A Dpci-info.txt1 PCI with Driver Model
8 uclass_get_device_by_seq() to get the PCI bus for a particular bus number.
14 pci0 = &pci;
17 pci: pci-controller {
18 compatible = "sandbox,pci";
26 The call to uclass_get_device() will cause the PCI bus to be probed.
29 they are bound to a generic PCI driver which does nothing.
35 touched on PCI (eg: a call to pci_find_devices()) it will not be probed.
37 PCI devices can appear in the flattened device tree. If they do, their node
38 often contains extra information which cannot be derived from the PCI IDs or
[all …]
/openbmc/qemu/hw/scsi/
H A Desp-pci.c27 #include "hw/pci/pci_device.h"
80 static void esp_pci_update_irq(PCIESPState *pci) in esp_pci_update_irq() argument
82 int scsi_level = !!(pci->dma_regs[DMA_STAT] & DMA_STAT_SCSIINT); in esp_pci_update_irq()
83 int dma_level = (pci->dma_regs[DMA_CMD] & DMA_CMD_INTE_D) ? in esp_pci_update_irq()
84 !!(pci->dma_regs[DMA_STAT] & DMA_STAT_DONE) : 0; in esp_pci_update_irq()
87 pci_set_irq(PCI_DEVICE(pci), level); in esp_pci_update_irq()
92 PCIESPState *pci = PCI_ESP(opaque); in esp_irq_handler() local
95 pci->dma_regs[DMA_STAT] |= DMA_STAT_SCSIINT; in esp_irq_handler()
104 if ((pci->dma_regs[DMA_CMD] & DMA_CMD_MASK) == 0x3 && in esp_irq_handler()
105 pci->dma_regs[DMA_WBC] == 0) { in esp_irq_handler()
[all …]
/openbmc/linux/drivers/pinctrl/
H A Dpinctrl-rk805.c261 struct rk805_pctrl_info *pci = gpiochip_get_data(chip); in rk805_gpio_get() local
264 ret = regmap_read(pci->rk808->regmap, pci->pin_cfg[offset].reg, &val); in rk805_gpio_get()
266 dev_err(pci->dev, "get gpio%d value failed\n", offset); in rk805_gpio_get()
270 return !!(val & pci->pin_cfg[offset].val_msk); in rk805_gpio_get()
277 struct rk805_pctrl_info *pci = gpiochip_get_data(chip); in rk805_gpio_set() local
280 ret = regmap_update_bits(pci->rk808->regmap, in rk805_gpio_set()
281 pci->pin_cfg[offset].reg, in rk805_gpio_set()
282 pci->pin_cfg[offset].val_msk, in rk805_gpio_set()
283 value ? pci->pin_cfg[offset].val_msk : 0); in rk805_gpio_set()
285 dev_err(pci->dev, "set gpio%d value %d failed\n", in rk805_gpio_set()
[all …]
/openbmc/linux/Documentation/PCI/
H A Dpciebus-howto.rst5 The PCI Express Port Bus Driver Guide HOWTO
14 This guide describes the basics of the PCI Express Port Bus driver
16 register/unregister with the PCI Express Port Bus Driver.
19 What is the PCI Express Port Bus Driver
22 A PCI Express Port is a logical PCI-PCI Bridge structure. There
23 are two types of PCI Express Port: the Root Port and the Switch
24 Port. The Root Port originates a PCI Express link from a PCI Express
25 Root Complex and the Switch Port connects PCI Express links to
26 internal logical PCI buses. The Switch Port, which has its secondary
30 PCI Express link from the PCI Express Switch.
[all …]
/openbmc/linux/sound/soc/intel/atom/sst/
H A Dsst_pci.c3 * 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 = pci_request_regions(pci, SST_DRV_NAME); in sst_platform_get_resources()
36 ctx->ddr_base = pci_resource_start(pci, 0); in sst_platform_get_resources()
50 ctx->ddr_end = pci_resource_end(pci, 0); in sst_platform_get_resources()
52 ctx->ddr = pcim_iomap(pci, 0, in sst_platform_get_resources()
53 pci_resource_len(pci, 0)); in sst_platform_get_resources()
63 ctx->shim_phy_add = pci_resource_start(pci, 1); in sst_platform_get_resources()
64 ctx->shim = pcim_iomap(pci, 1, pci_resource_len(pci, 1)); in sst_platform_get_resources()
[all …]
/openbmc/linux/drivers/comedi/
H A DKconfig423 tristate "Intelligent Instruments PCI-20001C carrier support"
426 Enable support for Intelligent Instruments PCI-20001C carrier
427 PCI-20001, PCI-20006 and PCI-20341
563 tristate "Comedi PCI drivers"
564 depends on PCI
566 Enable support for comedi PCI drivers.
574 tristate "Generic PCI based 8255 digital i/o board support"
577 Enable support for PCI based 8255 digital i/o boards. This driver
578 provides a PCI wrapper around the generic 8255 driver.
581 ADlink - PCI-7224, PCI-7248, and PCI-7296
[all …]
/openbmc/linux/Documentation/ABI/testing/
H A Dsysfs-bus-pci1 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 …]
/openbmc/linux/arch/mips/pci/
H A DMakefile3 # 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 …]
/openbmc/linux/drivers/scsi/qla2xxx/
H A Dqla_devtbl.h8 "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 …]
/openbmc/qemu/hw/pci-host/
H A Dppc4xx_pci.c20 * This file implements emulation of the 32-bit PCI controller found in some
27 #include "hw/pci-host/ppc4xx.h"
31 #include "hw/pci/pci_device.h"
32 #include "hw/pci/pci_host.h"
71 * PCI accesses.
87 * PCI Target Map (PTM) registers specify which PCI addresses are translated to
102 struct PPC4xxPCIState *pci = opaque; in ppc4xx_pci_reg_write4() local
105 * We ignore all target attempts at PCI configuration, effectively in ppc4xx_pci_reg_write4()
106 * assuming a bidirectional 1:1 mapping of PLB and PCI space. in ppc4xx_pci_reg_write4()
110 pci->pmm[0].la = value; in ppc4xx_pci_reg_write4()
[all …]

12345678910>>...206