| /drivers/pcie/host/ |
| A D | controller.c | 45 return pcie_ctrl_conf_read(dev, bdf, reg); in pcie_conf_read() 153 PCIE_BDF_TO_BUS(bdf), PCIE_BDF_TO_DEV(bdf), PCIE_BDF_TO_FUNC(bdf), in pcie_generic_ctrl_enumerate_bars() 165 PCIE_BDF_TO_BUS(bdf), PCIE_BDF_TO_DEV(bdf), PCIE_BDF_TO_FUNC(bdf), in pcie_generic_ctrl_enumerate_bars() 190 ctrl_dev, bdf, PCIE_BUS_NUMBER, in pcie_generic_ctrl_enumerate_type1() 221 ctrl_dev, bdf, PCIE_MEM_BASE_LIMIT, in pcie_generic_ctrl_enumerate_type1() 258 ctrl_dev, bdf, PCIE_IO_SEC_STATUS, in pcie_generic_ctrl_post_enumerate_type1() 275 ctrl_dev, bdf, PCIE_MEM_BASE_LIMIT, in pcie_generic_ctrl_post_enumerate_type1() 312 PCIE_BDF_TO_BUS(bdf), PCIE_BDF_TO_DEV(bdf), PCIE_BDF_TO_FUNC(bdf), in pcie_generic_ctrl_enumerate_endpoint() 343 return PCIE_BDF(PCIE_BDF_TO_BUS(bdf), PCIE_BDF_TO_DEV(bdf) + 1, 0); in pcie_bdf_bus_next() 351 return PCIE_BDF(PCIE_BDF_TO_BUS(bdf), in pcie_bdf_bus_next() [all …]
|
| A D | pcie.c | 67 data = pcie_conf_read(bdf, reg); in pcie_get_cap() 85 data = pcie_conf_read(bdf, reg); in pcie_get_ext_cap() 139 phys_addr = pcie_conf_read(bdf, reg); in pcie_get_bar() 158 size = pcie_conf_read(bdf, reg); in pcie_get_bar() 254 bool pcie_get_mbar(pcie_bdf_t bdf, in pcie_get_mbar() argument 261 bool pcie_probe_mbar(pcie_bdf_t bdf, in pcie_probe_mbar() argument 268 bool pcie_get_iobar(pcie_bdf_t bdf, in pcie_get_iobar() argument 302 irq = acpi_legacy_irq_get(bdf); in pcie_alloc_irq() 340 if (pcie_is_msi(bdf)) { in pcie_connect_dynamic_irq() 481 if (dev->bdf != PCIE_BDF_NONE) { in pcie_dev_cb() [all …]
|
| A D | msi.c | 21 base = pcie_get_cap(bdf, PCI_CAP_ID_MSI); in pcie_msi_base() 148 base = pcie_msi_base(bdf, &msi); in pcie_msi_vectors_allocate() 163 req_vectors = get_msi_mmc(bdf, base); in pcie_msi_vectors_allocate() 171 vectors[req_vectors].bdf = bdf; in pcie_msi_vectors_allocate() 185 base = pcie_msi_base(bdf, NULL); in pcie_msi_vector_connect() 197 static void enable_msix(pcie_bdf_t bdf, in enable_msix() argument 235 static void enable_msi(pcie_bdf_t bdf, in enable_msi() argument 269 bool pcie_msi_enable(pcie_bdf_t bdf, in pcie_msi_enable() argument 277 base = pcie_msi_base(bdf, &msi); in pcie_msi_enable() 283 disable_msi(bdf, base); in pcie_msi_enable() [all …]
|
| A D | shell.c | 300 PCIE_BDF_TO_BUS(bdf), in show() 301 PCIE_BDF_TO_DEV(bdf), in show() 302 PCIE_BDF_TO_FUNC(bdf), in show() 320 show_bars(sh, bdf); in show() 321 show_msi(sh, bdf); in show() 322 irq = pcie_get_irq(bdf); in show() 330 show_capabilities(sh, bdf); in show() 331 show_vc(sh, bdf); in show() 335 pcie_dump(sh, bdf); in show() 375 bdf = get_bdf(argv[i]); in cmd_pcie_ls() [all …]
|
| A D | vc.c | 18 base = pcie_get_ext_cap(bdf, PCIE_EXT_CAP_ID_VC); in pcie_vc_cap_lookup() 26 regs->cap_reg_1.raw = pcie_conf_read(bdf, base + in pcie_vc_cap_lookup() 30 regs->ctrl_reg.raw = pcie_conf_read(bdf, base + in pcie_vc_cap_lookup() 36 void pcie_vc_load_resources_regs(pcie_bdf_t bdf, in pcie_vc_load_resources_regs() argument 45 pcie_conf_read(bdf, base + in pcie_vc_load_resources_regs() 48 pcie_conf_read(bdf, base + in pcie_vc_load_resources_regs() 51 pcie_conf_read(bdf, base + in pcie_vc_load_resources_regs() 57 static int get_vc_registers(pcie_bdf_t bdf, in get_vc_registers() argument 63 base = pcie_vc_cap_lookup(bdf, regs); in get_vc_registers() 80 int pcie_vc_enable(pcie_bdf_t bdf) in pcie_vc_enable() argument [all …]
|
| A D | ptm.c | 32 LOG_ERR("PTM root not supported on 0x%x", config->pcie->bdf); in pcie_ptm_root_setup() 41 LOG_DBG("PTM root 0x%x enabled", config->pcie->bdf); in pcie_ptm_root_setup() 51 reg = pcie_get_ext_cap(config->pcie->bdf, PCIE_EXT_CAP_ID_PTM); in pcie_ptm_root_init() 53 LOG_ERR("PTM capability not exposed on 0x%x", config->pcie->bdf); in pcie_ptm_root_init() 72 bool pcie_ptm_enable(pcie_bdf_t bdf) in DT_INST_FOREACH_STATUS_OKAY() 78 base = pcie_get_ext_cap(bdf, PCIE_EXT_CAP_ID_PTM); in DT_INST_FOREACH_STATUS_OKAY() 80 LOG_ERR("PTM capability not exposed on 0x%x", bdf); in DT_INST_FOREACH_STATUS_OKAY() 84 cap.raw = pcie_conf_read(bdf, base + PTM_CAP_REG_OFFSET); in DT_INST_FOREACH_STATUS_OKAY() 86 LOG_ERR("PTM requester not supported on 0x%x", bdf); in DT_INST_FOREACH_STATUS_OKAY() 92 pcie_conf_write(bdf, base + PTM_CTRL_REG_OFFSET, ctrl.raw); in DT_INST_FOREACH_STATUS_OKAY() [all …]
|
| A D | pcie_ecam.c | 183 return pcie_generic_ctrl_conf_read(data->cfg_addr, bdf, reg); in pcie_ecam_ctrl_conf_read() 191 pcie_generic_ctrl_conf_write(data->cfg_addr, bdf, reg, reg_data); in pcie_ecam_ctrl_conf_write() 213 static bool pcie_ecam_region_allocate(const struct device *dev, pcie_bdf_t bdf, in pcie_ecam_region_allocate() argument 222 LOG_DBG("bdf %x no mem region defined for allocation", bdf); in pcie_ecam_region_allocate() 227 LOG_DBG("bdf %x no io region defined for allocation", bdf); in pcie_ecam_region_allocate() 259 LOG_DBG("bdf %x no mem region defined for allocation", bdf); in pcie_ecam_region_get_allocate_base() 264 LOG_DBG("bdf %x no io region defined for allocation", bdf); in pcie_ecam_region_get_allocate_base() 324 pcie_bdf_t bdf; in pcie_ecam_msi_device_setup() local 331 bdf = vectors[0].bdf; in pcie_ecam_msi_device_setup() 340 if (vectors[i].bdf != bdf) { in pcie_ecam_msi_device_setup() [all …]
|
| A D | vc.h | 121 uint32_t pcie_vc_cap_lookup(pcie_bdf_t bdf, struct pcie_vc_regs *regs); 123 void pcie_vc_load_resources_regs(pcie_bdf_t bdf,
|
| /drivers/virtio/ |
| A D | virtio_pci.c | 140 ((uint32_t *)&tmp)[i] = pcie_conf_read(bdf, cap_off + i); in virtio_pci_read_cap() 318 if (!pcie_get_mbar(bdf, cap->bar, &mbar)) { in virtio_pci_map_cap() 409 if (conf->pcie->bdf == PCIE_BDF_NONE) { in virtio_pci_init_common() 425 conf->pcie->bdf in virtio_pci_init_common() 438 conf->pcie->bdf in virtio_pci_init_common() 445 conf->pcie->bdf, (struct virtio_pci_cap *)&vpnc, in virtio_pci_init_common() 454 conf->pcie->bdf in virtio_pci_init_common() 476 conf->pcie->bdf in virtio_pci_init_common() 503 conf->pcie->bdf, in virtio_pci_init_common() 520 conf->pcie->bdf in virtio_pci_init_common() [all …]
|
| /drivers/virtualization/ |
| A D | virt_ivshmem.c | 48 n_vectors = pcie_msi_vectors_allocate(data->pcie->bdf, in ivshmem_configure_msi_x_interrupts() 64 if (!pcie_msi_vector_connect(data->pcie->bdf, in ivshmem_configure_msi_x_interrupts() 117 data->pcie->bdf, intx->irq, intx->priority, in ivshmem_configure_int_x_interrupts() 125 pcie_irq_enable(data->pcie->bdf, intx->irq); in ivshmem_configure_int_x_interrupts() 152 uint64_t lo = pcie_conf_read(bdf, reg); in pcie_conf_read_u64() 153 uint64_t hi = pcie_conf_read(bdf, reg + 1); in pcie_conf_read_u64() 173 pcie_set_cmd(data->pcie->bdf, PCIE_CONF_CMDSTAT_MEM | in ivshmem_configure() 181 data->pcie->bdf, IVSHMEM_PCIE_MSI_X_BAR_IDX, &mbar_msi_x); in ivshmem_configure() 183 data->pcie->bdf, IVSHMEM_PCIE_SHMEM_BAR_IDX, &mbar_shmem); in ivshmem_configure() 266 pcie_conf_write(data->pcie->bdf, cap_pos, cfg_priv_cntl); in ivshmem_configure() [all …]
|
| /drivers/edac/ |
| A D | edac_ibecc.c | 59 static bool ibecc_enabled(const pcie_bdf_t bdf) in ibecc_enabled() argument 68 errcmd = pcie_conf_read(bdf, ERRCMD_REG); in ibecc_errcmd_setup() 76 pcie_conf_write(bdf, ERRCMD_REG, errcmd); in ibecc_errcmd_setup() 79 static void ibecc_errsts_clear(const pcie_bdf_t bdf) in ibecc_errsts_clear() argument 83 errsts = pcie_conf_read(bdf, ERRSTS_REG); in ibecc_errsts_clear() 89 pcie_conf_write(bdf, ERRSTS_REG, errsts); in ibecc_errsts_clear() 288 const pcie_bdf_t bdf = PCI_HOST_BRIDGE; in edac_ibecc_init() local 293 conf_data = pcie_conf_read(bdf, PCIE_CONF_ID); in edac_ibecc_init() 322 if (!ibecc_enabled(bdf)) { in edac_ibecc_init() 327 mchbar = pcie_conf_read(bdf, MCHBAR_REG); in edac_ibecc_init() [all …]
|
| /drivers/ethernet/intel/ |
| A D | eth_intel_plat.c | 39 return cfg->pcie->bdf; in eth_intel_get_pcie_bdf() 74 if (cfg->pcie->bdf == PCIE_BDF_NONE || !pcie_probe_mbar(cfg->pcie->bdf, 0, &mbar)) { in intel_eth_plat_init() 79 pcie_set_cmd(cfg->pcie->bdf, PCIE_CONF_CMDSTAT_MEM | PCIE_CONF_CMDSTAT_MASTER, true); in intel_eth_plat_init()
|
| A D | eth_intel_igc.c | 285 static int eth_intel_igc_connect_queue_msix_vector(pcie_bdf_t bdf, const struct device *dev) in eth_intel_igc_connect_queue_msix_vector() argument 295 if (!pcie_msi_vector_connect(bdf, &data->msi_vec[msix], in eth_intel_igc_connect_queue_msix_vector() 309 pcie_bdf_t bdf; in eth_intel_igc_pcie_msix_setup() local 312 bdf = eth_intel_get_pcie_bdf(cfg->platform); in eth_intel_igc_pcie_msix_setup() 313 if (bdf == PCIE_BDF_NONE) { in eth_intel_igc_pcie_msix_setup() 318 ret = pcie_msi_vectors_allocate(bdf, CONFIG_ETH_INTEL_IGC_INT_PRIORITY, data->msi_vec, in eth_intel_igc_pcie_msix_setup() 325 ret = eth_intel_igc_connect_queue_msix_vector(bdf, dev); in eth_intel_igc_pcie_msix_setup() 330 if (!pcie_msi_enable(bdf, data->msi_vec, cfg->num_msix, 0)) { in eth_intel_igc_pcie_msix_setup()
|
| /drivers/can/ |
| A D | can_kvaser_pci.c | 76 if (kvaser_config->pcie->bdf == PCIE_BDF_NONE) { in can_kvaser_pci_init() 81 pcie_set_cmd(kvaser_config->pcie->bdf, PCIE_CONF_CMDSTAT_IO, true); in can_kvaser_pci_init() 84 if (!pcie_probe_iobar(kvaser_config->pcie->bdf, 0, &iobar)) { in can_kvaser_pci_init() 92 if (!pcie_probe_iobar(kvaser_config->pcie->bdf, 1, &iobar)) { in can_kvaser_pci_init() 100 if (!pcie_probe_iobar(kvaser_config->pcie->bdf, 2, &iobar)) { in can_kvaser_pci_init()
|
| /drivers/pcie/controller/ |
| A D | pcie_brcmstb.c | 218 static mm_reg_t pcie_brcmstb_map_bus(const struct device *dev, pcie_bdf_t bdf, unsigned int reg) in pcie_brcmstb_map_bus() argument 222 sys_write32(bdf << PCIE_ECAM_BDF_SHIFT, data->cfg_addr + PCIE_EXT_CFG_INDEX); in pcie_brcmstb_map_bus() 228 mm_reg_t conf_addr = pcie_brcmstb_map_bus(dev, bdf, reg); in pcie_brcmstb_conf_read() 237 void pcie_brcmstb_conf_write(const struct device *dev, pcie_bdf_t bdf, unsigned int reg, in pcie_brcmstb_conf_write() argument 240 mm_reg_t conf_addr = pcie_brcmstb_map_bus(dev, bdf, reg); in pcie_brcmstb_conf_write() 266 static bool pcie_brcmstb_region_allocate_type(const struct device *dev, pcie_bdf_t bdf, in pcie_brcmstb_region_allocate_type() argument 274 addr = (((data->regions[type].bus_start + config->regs[PCIE_BDF_TO_BUS(bdf) + 1].addr + in pcie_brcmstb_region_allocate_type() 289 static bool pcie_brcmstb_region_allocate(const struct device *dev, pcie_bdf_t bdf, bool mem, in pcie_brcmstb_region_allocate() argument 310 return pcie_brcmstb_region_allocate_type(dev, bdf, bar_size, bar_bus_addr, type); in pcie_brcmstb_region_allocate() 313 static bool pcie_brcmstb_region_get_allocate_base(const struct device *dev, pcie_bdf_t bdf, in pcie_brcmstb_region_get_allocate_base() argument [all …]
|
| /drivers/disk/nvme/ |
| A D | nvme_controller.c | 330 if (nvme_ctrlr_cfg->pcie->bdf == PCIE_BDF_NONE) { in nvme_controller_pcie_configure() 338 PCIE_BDF_TO_BUS(nvme_ctrlr_cfg->pcie->bdf), in nvme_controller_pcie_configure() 339 PCIE_BDF_TO_DEV(nvme_ctrlr_cfg->pcie->bdf), in nvme_controller_pcie_configure() 340 PCIE_BDF_TO_FUNC(nvme_ctrlr_cfg->pcie->bdf)); in nvme_controller_pcie_configure() 342 if (!pcie_get_mbar(nvme_ctrlr_cfg->pcie->bdf, in nvme_controller_pcie_configure() 352 n_vectors = pcie_msi_vectors_allocate(nvme_ctrlr_cfg->pcie->bdf, in nvme_controller_pcie_configure() 363 if (!pcie_msi_enable(nvme_ctrlr_cfg->pcie->bdf, in nvme_controller_pcie_configure()
|
| A D | nvme_cmd.c | 509 if (!pcie_msi_vector_connect(nvme_ctrlr_cfg->pcie->bdf, in nvme_cmd_qpair_setup()
|
| /drivers/smbus/ |
| A D | intel_pch_smbus.c | 227 if (config->pcie->bdf == PCIE_BDF_NONE) { in pch_smbus_init() 232 val = pcie_conf_read(config->pcie->bdf, PCIE_CONF_CMDSTAT); in pch_smbus_init() 238 pcie_probe_mbar(config->pcie->bdf, 0, &mbar); in pch_smbus_init() 239 pcie_set_cmd(config->pcie->bdf, PCIE_CONF_CMDSTAT_MEM, true); in pch_smbus_init() 247 pcie_set_cmd(config->pcie->bdf, PCIE_CONF_CMDSTAT_IO, true); in pch_smbus_init() 248 val = pcie_conf_read(config->pcie->bdf, PCIE_CONF_BAR4); in pch_smbus_init() 259 val = pcie_conf_read(config->pcie->bdf, PCH_SMBUS_HCFG); in pch_smbus_init() 920 sts = pcie_conf_read(config->pcie->bdf, PCIE_CONF_CMDSTAT); in smbus_isr() 995 irq = pcie_alloc_irq(config->pcie->bdf); \ 1001 pcie_conf_write(config->pcie->bdf, \ [all …]
|
| /drivers/spi/ |
| A D | spi_pw.c | 758 if (info->pcie->bdf == PCIE_BDF_NONE) { in spi_pw_init() 763 if (!pcie_probe_mbar(info->pcie->bdf, 0, &mbar)) { in spi_pw_init() 768 pcie_set_cmd(info->pcie->bdf, PCIE_CONF_CMDSTAT_MEM, in spi_pw_init() 774 pcie_set_cmd(info->pcie->bdf, in spi_pw_init() 840 irq = pcie_alloc_irq(info->pcie->bdf); \ 846 pcie_conf_write(info->pcie->bdf, \ 849 pcie_connect_dynamic_irq(info->pcie->bdf, irq, \ 854 pcie_irq_enable(info->pcie->bdf, irq); \
|
| /drivers/dma/ |
| A D | dma_iproc_pax_v2.h | 71 uint64_t bdf : 16; /*reserved 31:16*/ member
|
| A D | dma_iproc_pax_v2.c | 65 r->bdf = 0x0; in rm_write_header_desc()
|
| /drivers/sdhc/ |
| A D | intel_emmc_host.c | 1242 if (config->pcie->bdf == PCIE_BDF_NONE) { in emmc_init() 1247 if (!pcie_probe_mbar(config->pcie->bdf, 0, &mbar)) { in emmc_init() 1252 pcie_get_mbar(config->pcie->bdf, 0, &mbar); in emmc_init() 1253 pcie_set_cmd(config->pcie->bdf, PCIE_CONF_CMDSTAT_MEM, true); in emmc_init() 1255 pcie_set_cmd(config->pcie->bdf, PCIE_CONF_CMDSTAT_MASTER, true); in emmc_init() 1304 unsigned int irq = pcie_alloc_irq(dev_cfg->pcie->bdf); \ 1309 pcie_connect_dynamic_irq(dev_cfg->pcie->bdf, irq, DT_INST_IRQ(n, priority), \ 1312 pcie_irq_enable(dev_cfg->pcie->bdf, irq); \
|
| /drivers/ethernet/ |
| A D | eth_e1000.c | 215 if (dev->pcie->bdf == PCIE_BDF_NONE) { in e1000_probe() 219 pcie_probe_mbar(dev->pcie->bdf, 0, &mbar); in e1000_probe() 220 pcie_set_cmd(dev->pcie->bdf, PCIE_CONF_CMDSTAT_MEM | in e1000_probe()
|
| /drivers/i2c/ |
| A D | i2c_dw.c | 1252 if (rom->pcie->bdf == PCIE_BDF_NONE) { in i2c_dw_initialize() 1256 pcie_probe_mbar(rom->pcie->bdf, 0, &mbar); in i2c_dw_initialize() 1257 pcie_set_cmd(rom->pcie->bdf, PCIE_CONF_CMDSTAT_MEM, true); in i2c_dw_initialize() 1261 pcie_set_cmd(rom->pcie->bdf, PCIE_CONF_CMDSTAT_MASTER, true); in i2c_dw_initialize() 1384 unsigned int irq = pcie_alloc_irq(dev_cfg->pcie->bdf); \ 1388 pcie_connect_dynamic_irq(dev_cfg->pcie->bdf, irq, DT_INST_IRQ(n, priority), \ 1391 pcie_irq_enable(dev_cfg->pcie->bdf, irq); \
|
| /drivers/serial/ |
| A D | uart_ns16550.c | 821 if (dev_cfg->pcie->bdf == PCIE_BDF_NONE) { 825 pcie_probe_mbar(dev_cfg->pcie->bdf, 0, &mbar); 826 pcie_set_cmd(dev_cfg->pcie->bdf, PCIE_CONF_CMDSTAT_MEM, true); 832 pcie_set_cmd(dev_cfg->pcie->bdf, PCIE_CONF_CMDSTAT_MASTER, true); 1836 unsigned int irq = pcie_alloc_irq(dev_cfg->pcie->bdf); \ 1840 pcie_connect_dynamic_irq(dev_cfg->pcie->bdf, irq, \ 1845 pcie_irq_enable(dev_cfg->pcie->bdf, irq); \
|