/illumos-gate/usr/src/uts/common/io/pciex/ |
H A D | pci_cfgacc.c | 29 {(r).rcdip = (d); (r).bdf = (b); (r).offset = (o); \ 47 pci_cfgacc_get8(dev_info_t *rcdip, uint16_t bdf, uint16_t off) argument 51 PCI_CFGACC_FILLREQ(req, rcdip, bdf, off, 1, B_FALSE, 0); 57 pci_cfgacc_put8(dev_info_t *rcdip, uint16_t bdf, uint16_t off, uint8_t data) argument 61 PCI_CFGACC_FILLREQ(req, rcdip, bdf, off, 1, B_TRUE, data); 66 pci_cfgacc_get16(dev_info_t *rcdip, uint16_t bdf, uint16_t off) argument 70 PCI_CFGACC_FILLREQ(req, rcdip, bdf, off, 2, B_FALSE, 0); 76 pci_cfgacc_put16(dev_info_t *rcdip, uint16_t bdf, uint16_t off, uint16_t data) argument 80 PCI_CFGACC_FILLREQ(req, rcdip, bdf, off, 2, B_TRUE, data); 85 pci_cfgacc_get32(dev_info_t *rcdip, uint16_t bdf, uint16_ argument 95 pci_cfgacc_put32(dev_info_t *rcdip, uint16_t bdf, uint16_t off, uint32_t data) argument 104 pci_cfgacc_get64(dev_info_t *rcdip, uint16_t bdf, uint16_t off) argument 114 pci_cfgacc_put64(dev_info_t *rcdip, uint16_t bdf, uint16_t off, uint64_t data) argument [all...] |
H A D | pciev.c | 45 static void pcie_bdf_list_add(pcie_req_id_t bdf, 47 static void pcie_bdf_list_remove(pcie_req_id_t bdf, 57 pcie_find_dip_by_bdf(dev_info_t *rootp, pcie_req_id_t bdf) argument 66 if (bus_p && (bus_p->bus_bdf == bdf)) 69 bus_num = (bdf >> 8) & 0xff; 73 return (pcie_find_dip_by_bdf(dip, bdf)); 81 * Add a device bdf to the bdf list. 84 pcie_bdf_list_add(pcie_req_id_t bdf, pcie_req_id_list_t **rlist_p) argument 88 rl->bdf 97 pcie_bdf_list_remove(pcie_req_id_t bdf, pcie_req_id_list_t **rlist_p) argument 130 pcie_req_id_t bdf = bus_p->bus_bdf; local [all...] |
H A D | pcie.c | 540 PCIE_DBG("No I/O range found for %s, bdf 0x%x\n", 546 PCIE_DBG("No Mem range found for %s, bdf 0x%x\n", 892 * partially init pcie_bus_t for device (dip,bdf) for accessing pci 959 pcie_init_bus(dev_info_t *dip, pcie_req_id_t bdf, uint8_t flags) argument 975 bus_p->bus_bdf = bdf; 981 bus_p->bus_dev_ven_id = pci_cfgacc_get32(rcdip, bdf, PCI_CONF_VENID); 982 bus_p->bus_rev_id = pci_cfgacc_get8(rcdip, bdf, PCI_CONF_REVID); 984 bus_p->bus_hdr_type = pci_cfgacc_get8(rcdip, bdf, PCI_CONF_HEADER); 993 status = pci_cfgacc_get16(rcdip, bdf, PCI_CONF_STAT); 1019 for (base = pci_cfgacc_get8(rcdip, bdf, bas 1304 pcie_req_id_t bdf; local 1601 pcie_get_bdf_from_dip(dev_info_t *dip, pcie_req_id_t *bdf) argument [all...] |
/illumos-gate/usr/src/uts/sun4v/io/pciex/ |
H A D | pci_cfgacc_4v.c | 66 pci_cfgacc_get(dev_info_t *dip, uint16_t bdf, uint16_t offset, uint8_t size) argument 77 devaddr = ((uint64_t)bdf) << RC_RA_BDF_SHIFT; 86 pci_cfgacc_set(dev_info_t *dip, uint16_t bdf, uint16_t offset, uint8_t size, argument 98 devaddr = ((uint64_t)bdf) << RC_RA_BDF_SHIFT; 114 pci_cfgacc_set(req->rcdip, req->bdf, req->offset, 117 VAL64(req) = pci_cfgacc_get(req->rcdip, req->bdf,
|
/illumos-gate/usr/src/uts/sun4v/io/px/ |
H A D | px_libhv.c | 48 static uint64_t hvio_rp_mps(devhandle_t dev_hdl, pci_device_t bdf, int32_t *mps, 52 hvio_get_rp_mps_cap(devhandle_t dev_hdl, pci_device_t bdf, int32_t *mps_cap) argument 54 return (hvio_rp_mps(dev_hdl, bdf, mps_cap, MPS_GET)); 58 hvio_set_rp_mps(devhandle_t dev_hdl, pci_device_t bdf, int32_t mps) argument 60 return (hvio_rp_mps(dev_hdl, bdf, &mps, MPS_SET)); 64 hvio_rp_mps(devhandle_t dev_hdl, pci_device_t bdf, int32_t *mps, int op) argument 71 if ((hvio_config_get(dev_hdl, bdf, PCI_CONF_VENID, 4, 78 if ((hvio_config_get(dev_hdl, bdf, PCI_CONF_COMM, 4, 85 (void) hvio_config_get(dev_hdl, bdf, PCI_CONF_CAP_PTR, 4, 99 (void) hvio_config_get(dev_hdl, bdf, hdr_next_pt [all...] |
H A D | px_err.c | 836 pcie_req_id_t bdf = PCIE_INVALID_BDF; local 839 bdf = (uint32_t)((epkt->hdr[0] >> 16) && 0xFFFF); 843 bdf));
|
H A D | px_tools_4v.c | 213 * It assumes that offset, bdf, acc_attr are valid in prg_p. 248 req.bdf = PCI_GETBDF(prg_p->bus_no, prg_p->dev_no, prg_p->func_no); 273 DBG(DBG_TOOLS, dip, "put: bdf:%d,%d,%d, off:0x%"PRIx64", size:" 317 DBG(DBG_TOOLS, dip, "get: bdf:%d,%d,%d, off:0x%"PRIx64", size:" 351 * It assumes that offset, bdf, acc_attr are current in prg_p. 377 pci_device_t bdf = PX_GET_BDF(prg_p); local 387 size, *data_p, bdf, &io_stat); 394 DBG(DBG_TOOLS, dip, "iomem:phys_addr:0x%" PRIx64 ", bdf:0x%x, " 395 "rval:%d, io_stat:%d\n", prg_p->phys_addr, bdf,
|
/illumos-gate/usr/src/uts/sun4u/io/pciex/ |
H A D | pci_cfgacc_4u.c | 40 #define RC_BDF_TO_CFGADDR(bdf, offset) (((bdf) << RC_PA_BDF_SHIFT) + (offset)) 61 pci_cfgacc_get(dev_info_t *dip, uint16_t bdf, uint16_t offset, uint8_t size) argument 71 base_addr += RC_BDF_TO_CFGADDR(bdf, offset); 94 pci_cfgacc_set(dev_info_t *dip, uint16_t bdf, uint16_t offset, uint8_t size, argument 104 base_addr += RC_BDF_TO_CFGADDR(bdf, offset); 136 pci_cfgacc_set(req->rcdip, req->bdf, req->offset, 139 VAL64(req) = pci_cfgacc_get(req->rcdip, req->bdf,
|
/illumos-gate/usr/src/uts/common/sys/ |
H A D | pci_cfgacc.h | 59 uint16_t bdf; member in struct:pci_cfgacc_req
|
H A D | pciev.h | 74 pcie_req_id_t bdf; member in struct:pcie_req_id_list 184 #define PCIE_BDF_LIST_ADD(bus_p, bdf) \ 186 pcie_bdf_list_add(bdf, &PCIE_BUS2DOM(bus_p)->domain.ids.bdfs) 187 #define PCIE_BDF_LIST_REMOVE(bus_p, bdf) \ 189 pcie_bdf_list_remove(bdf, &PCIE_BUS2DOM(bus_p)->domain.ids.bdfs)
|
/illumos-gate/usr/src/lib/fm/topo/modules/i86pc/x86pi/ |
H A D | x86pi_hostbridge.c | 36 * of the records, bdf is compared to find a matching di_node. If the 189 x86pi_gen_pci_pciexrc(topo_mod_t *mod, tnode_t *tn_hbr, uint16_t bdf, argument 194 topo_mod_dprintf(mod, "creating pci/pciexrc node bdf = %#x\n", 195 (int)bdf); 205 if (x86pi_bdf(mod, pnode) == bdf) 213 x86pi_bdf(mod, cnode) != bdf) 224 "bdf = %#x\n", (int)bdf); 229 topo_mod_dprintf(mod, "no matching bdf found: bdf [all...] |
H A D | x86pi_bay.c | 63 bay_bdf(topo_mod_t *mod, smbios_port_ext_t *epp, uint16_t *bdf) argument 102 *bdf = BDF(bus, dev_funct); 188 bay_update_tnode(topo_mod_t *mod, tnode_t *tnodep, uint16_t bdf, int phy) argument 209 if (bdf == x86pi_bdf(mod, dnode)) { 266 uint16_t bdf; local 319 rv = bay_bdf(mod, eport, &bdf); 324 topo_mod_dprintf(mod, "%s: BDF(0x%04x)\n", f, bdf); 329 rv = bay_update_tnode(mod, tn_bay, bdf, eport->smbporte_phy);
|
/illumos-gate/usr/src/lib/fm/topo/modules/sun4v/sun4vpi/ |
H A D | pi_pciexrc.c | 198 char *bdf = NULL; local 328 bdf = pi_enum_pciexrc_findbdf(mod, dnode); 329 if (bdf == NULL) { 385 TOPO_PCI_BDF, TOPO_PROP_IMMUTABLE, bdf, &err); 409 if (bdf != NULL) { 410 topo_mod_strfree(mod, bdf); 487 uint_t bdf; local 552 * Bus/Dev/Fn bits. Shift and OR each to get bdf value. 554 bdf = (PCI_REG_BUS_G(reg) << 8) | (PCI_REG_DEV_G(reg) << 3) | 558 (void) snprintf(bdf_str, PCIEX_MAX_BDF_SIZE, "0x%x", bdf); [all...] |
/illumos-gate/usr/src/uts/i86pc/os/ |
H A D | pci_cfgacc_x86.c | 40 #define PCI_BDF_BUS(bdf) ((((uint16_t)bdf) & 0xff00) >> 8) 41 #define PCI_BDF_DEV(bdf) ((((uint16_t)bdf) & 0xf8) >> 3) 42 #define PCI_BDF_FUNC(bdf) (((uint16_t)bdf) & 0x7) 110 bus = PCI_BDF_BUS(req->bdf); 111 dev = PCI_BDF_DEV(req->bdf); 112 func = PCI_BDF_FUNC(req->bdf); 162 paddr = (paddr_t)req->bdf << 1 247 uint16_t bdf; member in struct:cfgacc_bus_range 266 pci_cfgacc_add_workaround(uint16_t bdf, uchar_t secbus, uchar_t subbus) argument 278 pci_cfgacc_find_workaround(uint16_t bdf) argument [all...] |
/illumos-gate/usr/src/cmd/fm/modules/common/fabric-xlate/ |
H A D | fabric-xlate.h | 57 uint16_t bdf; member in struct:fab_data 108 pcie_req_id_t pcie_ue_tgt_bdf; /* Fault bdf from SAER Logs */ 118 pcie_req_id_t pcie_sue_tgt_bdf; /* Fault bdf from SAER Logs */ 169 extern char *fab_find_bdf(fmd_hdl_t *hdl, nvlist_t *nvl, pcie_req_id_t bdf);
|
H A D | fx_subr.c | 171 "Cannot find Target FMRI addr:0x%llx bdf 0x%x\n", 392 fab_find_rppath_by_devbdf(fmd_hdl_t *hdl, nvlist_t *nvl, pcie_req_id_t bdf) argument 403 if (bdf != (uint16_t)-1) { 404 bus = (bdf & PCIE_REQ_ID_BUS_MASK) >> PCIE_REQ_ID_BUS_SHIFT; 405 dev = (bdf & PCIE_REQ_ID_DEV_MASK) >> PCIE_REQ_ID_DEV_SHIFT; 406 fn = (bdf & PCIE_REQ_ID_FUNC_MASK) >> PCIE_REQ_ID_FUNC_SHIFT; 578 fab_find_bdf(fmd_hdl_t *hdl, nvlist_t *nvl, pcie_req_id_t bdf) argument 585 if (bdf != (uint16_t)-1) { 586 bus = (bdf & PCIE_REQ_ID_BUS_MASK) >> PCIE_REQ_ID_BUS_SHIFT; 587 dev = (bdf [all...] |
/illumos-gate/usr/src/cmd/pcitool/ |
H A D | pcitool_ui.c | 322 * set up bdf. 330 /* Must follow -p, and -p must have no bdf. */ 591 /* Allow -p without bdf spec. */ 1066 bdf = 3, enumerator in enum:__anon1056 1083 "bdf", 1108 case bdf: { 1443 bdf = 3 enumerator in enum:__anon1057 1451 "bdf", 1462 case bdf: {
|
/illumos-gate/usr/src/uts/common/io/pciex/hotplug/ |
H A D | pcie_hp.c | 697 pcie_req_id_t bdf; local 700 ret = pcie_get_bdf_from_dip(dip, &bdf); 711 func_num = (bdf & ((~PCI_REG_BUS_M) >> 8)); 713 dev_num = (bdf & (PCI_REG_DEV_M >> 8)) >> 3; 714 func_num = bdf & (PCI_REG_FUNC_M >> 8);
|
/illumos-gate/usr/src/uts/sun4/io/px/ |
H A D | px_fm.c | 299 pcie_req_id_t bdf = PCIE_INVALID_BDF; local 333 bdf = (pcie_req_id_t)((fault_addr >> 12) & 341 bdf = PCIE_INVALID_BDF; 357 bdf); 359 pfd_p = px_rp_en_q(px_p, bdf, addr, 363 /* Update affected info, either addr or bdf is not NULL */ 366 } else if (PCIE_CHECK_VALID_BDF(bdf)) { 368 PFD_AFFECTED_DEV(pfd_p)->pe_affected_bdf = bdf; 669 pcie_req_id_t bdf; local 692 bdf 809 uint16_t bdf = *(uint16_t *)arg2; local 848 uint16_t bdf = *(uint16_t *)arg2; local 913 uint16_t bdf = *(uint16_t *)arg2; local [all...] |
/illumos-gate/usr/src/uts/intel/io/pciex/ |
H A D | pcieb_x86.c | 467 uint16_t bdf = bus_p->bus_bdf; local 476 PCIEB_DEBUG(DBG_ATTACH, dip, "VID:0x%x DID:0x%x RID:0x%x bdf=0x%x\n", 477 vid, did, rid, bdf); 530 PCIEB_DEBUG(DBG_ATTACH, dip, "bdf:%x mcheck:%d size:%d " 532 "0x%x\n", bdf, mcheck, reg->size, reg->offset,
|
/illumos-gate/usr/src/lib/fm/topo/modules/common/pcibus/ |
H A D | did_props.c | 900 int bdf; local 904 if ((bdf = did_bdf(pd)) <= 0) 907 (void) snprintf(str, 23, "0x%x", bdf);
|
/illumos-gate/usr/src/uts/i86pc/io/amd_iommu/ |
H A D | amd_iommu_impl.c | 1416 int bus, device, func, bdf; local 1466 bdf = ((uint8_t)bus << 8) | ((uint8_t)device << 3) | (uint8_t)func; 1467 hinfop = amd_iommu_lookup_ivhd(bdf);
|
H A D | amd_iommu_page_tables.c | 64 amd_iommu_get_src_bdf(amd_iommu_t *iommu, int32_t bdf, int32_t *src_bdfp) argument 68 hinfop = amd_iommu_lookup_ivhd(bdf); 70 if (bdf == -1) { 71 *src_bdfp = bdf; 73 cmn_err(CE_WARN, "No IVHD entry for 0x%x", bdf); 77 *src_bdfp = bdf; 243 uint16_t bdf; local 305 bdf = ((uint8_t)bus << 8) | ((uint8_t)device << 3) | (uint8_t)func; 307 if (amd_iommu_get_src_bdf(iommu, bdf, &src_bdf) != DDI_SUCCESS) { 321 *aliasp = (src_bdf != bdf); [all...] |
/illumos-gate/usr/src/uts/intel/os/ |
H A D | fmsmb.c | 1029 fm_smb_mc_bboards(uint_t bdf) argument 1061 if (em.smbmae_bdf == bdf) { 1076 fm_smb_mc_chipinst(uint_t bdf, uint_t *chip_inst) { argument 1107 if (em.smbmae_bdf == bdf) {
|
/illumos-gate/usr/src/uts/i86pc/io/ |
H A D | immu_dvma.c | 192 uintptr_t bdf = (seg << 16 | bus << 8 | devfunc); local 200 (void *)bdf, (void *)&domain) == 0) { 215 uintptr_t bdf = (seg << 16 | bus << 8 | devfunc); local 221 (void) mod_hash_insert(bdf_domain_hash, (void *)bdf, (void *)domain);
|