/xen/xen/drivers/pci/ |
A D | pci.c | 11 int pci_find_cap_offset(u16 seg, u8 bus, u8 dev, u8 func, u8 cap) in pci_find_cap_offset() argument 24 pos = pci_conf_read8(PCI_SBDF(seg, bus, dev, func), pos); in pci_find_cap_offset() 49 pos = pci_conf_read8(PCI_SBDF3(seg, bus, devfn), pos); in pci_find_next_cap() 75 int pci_find_ext_capability(int seg, int bus, int devfn, int cap) in pci_find_ext_capability() argument 77 return pci_find_next_ext_capability(seg, bus, devfn, 0, cap); in pci_find_ext_capability() 96 header = pci_conf_read32(PCI_SBDF3(seg, bus, devfn), pos); in pci_find_next_ext_capability() 145 bus = simple_strtoul(s + 1, &s, 16); in parse_pci_seg() 151 dev = bus; in parse_pci_seg() 152 bus = seg; in parse_pci_seg() 165 bus != PCI_BUS(PCI_BDF2(bus, 0)) || in parse_pci_seg() [all …]
|
/xen/xen/drivers/passthrough/ |
A D | pci.c | 172 phantom.bus = bus; in parse_phantom_dev() 243 u8 bus = pdev->bus; in check_pdev() local 339 *((u8*) &pdev->bus) = bus; in alloc_pdev() 390 pseg->bus2bridge[sec_bus].bus = bus; in alloc_pdev() 545 if ( (pdev->bus == bus || bus == -1) && in pci_get_pdev() 594 if ( (pdev->bus == bus || bus == -1) && in pci_get_pdev_by_domain() 612 u8 bus = pdev->bus; in pci_enable_acs() local 992 bus = pdev->bus; in pci_release_devices() 1063 *bus = pseg->bus2bridge[*bus].bus; in find_upstream_bridge() 1125 for ( bus = 0; bus < 256; bus++ ) in _scan_pci_devices() [all …]
|
A D | ats.h | 30 static inline int pci_ats_enabled(int seg, int bus, int devfn) in pci_ats_enabled() argument 35 pos = pci_find_ext_capability(seg, bus, devfn, PCI_EXT_CAP_ID_ATS); in pci_ats_enabled() 38 value = pci_conf_read16(PCI_SBDF3(seg, bus, devfn), pos + ATS_REG_CTL); in pci_ats_enabled() 43 static inline int pci_ats_device(int seg, int bus, int devfn) in pci_ats_device() argument 48 return pci_find_ext_capability(seg, bus, devfn, PCI_EXT_CAP_ID_ATS); in pci_ats_device()
|
/xen/xen/include/xen/ |
A D | pci.h | 58 uint8_t bus; member 73 u8 bus; member 91 uint8_t bus; member 156 enum pdev_type pdev_type(u16 seg, u8 bus, u8 devfn); 160 struct domain *, int seg, int bus, int devfn); 168 int pci_add_device(u16 seg, u8 bus, u8 devfn, 170 int pci_remove_device(u16 seg, u8 bus, u8 devfn); 171 int pci_ro_device(int seg, int bus, int devfn); 177 void pci_check_disable_device(u16 seg, u8 bus, u8 devfn); 187 int pci_mmcfg_read(unsigned int seg, unsigned int bus, [all …]
|
/xen/xen/drivers/passthrough/vtd/ |
A D | quirks.c | 275 uint32_t bus, device; in tylersburg_intremap_quirk() local 278 for ( bus = 0; bus < 0x100; bus++ ) in tylersburg_intremap_quirk() 365 id = pci_conf_read32(PCI_SBDF3(0, bus, devfn), 0); in me_wifi_quirk() 389 id = pci_conf_read32(PCI_SBDF3(0, bus, devfn), 0); in me_wifi_quirk() 415 int bus = pdev->bus; in pci_vtd_quirk() local 442 seg, bus, dev, func); in pci_vtd_quirk() 478 seg, bus, dev, func); in pci_vtd_quirk() 502 action, seg, bus, dev, func); in pci_vtd_quirk() 528 seg, bus, dev, func); in pci_vtd_quirk() 532 pa, seg, bus, dev, func); in pci_vtd_quirk() [all …]
|
A D | dmar.c | 195 u8 bus, devfn; in acpi_find_matched_drhd_unit() local 205 bus = pdev->info.physfn.bus; in acpi_find_matched_drhd_unit() 210 bus = pdev->bus; in acpi_find_matched_drhd_unit() 215 bus = pdev->bus; in acpi_find_matched_drhd_unit() 228 if ( test_bit(bus, drhd->scope.buses) ) in acpi_find_matched_drhd_unit() 313 u16 bus, sub_bus, sec_bus; in acpi_parse_dev_scope() local 335 bus = acpi_scope->bus; in acpi_parse_dev_scope() 339 bus = pci_conf_read8(PCI_SBDF(seg, bus, path->dev, path->fn), in acpi_parse_dev_scope() 374 acpi_hpet_unit->bus = bus; in acpi_parse_dev_scope() 408 acpi_ioapic_unit->ioapic.bdf.bus = bus; in acpi_parse_dev_scope() [all …]
|
A D | iommu.c | 242 root = &root_entries[bus]; in bus_to_context_maddr() 1470 u8 seg = pdev->seg, bus = pdev->bus, secbus; in domain_context_mapping() local 1573 u8 bus, u8 devfn) in domain_context_unmap_one() argument 1642 u8 seg = pdev->seg, bus = pdev->bus, tmp_bus, tmp_devfn, secbus; in domain_context_unmap() local 1685 tmp_bus = bus; in domain_context_unmap() 1718 if ( pdev->seg == seg && pdev->bus == bus && pdev->devfn == devfn ) in domain_context_unmap() 2437 u8 bus; in intel_iommu_assign_device() local 2443 bus = pdev->bus; in intel_iommu_assign_device() 2458 PCI_BUS(bdf) == bus && in intel_iommu_assign_device() 2484 PCI_BUS(bdf) == bus && in intel_iommu_assign_device() [all …]
|
A D | extern.h | 34 void print_vtd_entries(struct vtd_iommu *iommu, int bus, int devfn, u64 gmfn); 78 u8 bus, u8 devfn, const struct pci_dev *); 80 u8 bus, u8 devfn); 99 u8 bus, u8 devfn, int map);
|
/xen/xen/drivers/video/ |
A D | vga.c | 112 int bus, devfn; in video_endboot() local 114 for ( bus = 0; bus < 256; ++bus ) in video_endboot() 118 u8 b = bus, df = devfn, sb; in video_endboot() 121 pdev = pci_get_pdev(0, bus, devfn); in video_endboot() 125 pci_conf_read16(PCI_SBDF3(0, bus, devfn), in video_endboot() 127 !(pci_conf_read16(PCI_SBDF3(0, bus, devfn), PCI_COMMAND) & in video_endboot() 157 bus, PCI_SLOT(devfn), PCI_FUNC(devfn)); in video_endboot() 158 pci_hide_device(0, bus, devfn); in video_endboot()
|
/xen/xen/arch/x86/x86_64/ |
A D | mmconfig_64.c | 29 static char __iomem *get_virt(unsigned int seg, unsigned int *bus) in get_virt() argument 37 (cfg->start_bus_number <= *bus) && in get_virt() 38 (cfg->end_bus_number >= *bus)) { in get_virt() 39 *bus -= cfg->start_bus_number; in get_virt() 52 addr = get_virt(seg, &bus); in pci_dev_base() 55 return addr + ((bus << 20) | (devfn << 12)); in pci_dev_base() 58 int pci_mmcfg_read(unsigned int seg, unsigned int bus, in pci_mmcfg_read() argument 69 addr = pci_dev_base(seg, bus, devfn); in pci_mmcfg_read() 88 int pci_mmcfg_write(unsigned int seg, unsigned int bus, in pci_mmcfg_write() argument 94 if (unlikely((bus > 255) || (devfn > 255) || (reg > 4095))) in pci_mmcfg_write() [all …]
|
A D | mmconfig-shared.c | 196 int bus, i; in pci_mmcfg_nvidia_mcp55() local 213 for (i = bus = 0; bus < 256; bus++) { in pci_mmcfg_nvidia_mcp55() 217 l = pci_conf_read32(PCI_SBDF(0, bus, 0, 0), 0); in pci_mmcfg_nvidia_mcp55() 224 extcfg = pci_conf_read32(PCI_SBDF(0, bus, 0, 0), extcfg_regnum); in pci_mmcfg_nvidia_mcp55() 237 for (i = bus = 0; bus < 256; bus++) { in pci_mmcfg_nvidia_mcp55() 243 l = pci_conf_read32(PCI_SBDF(0, bus, 0, 0), 0); in pci_mmcfg_nvidia_mcp55() 270 if (bus == 256) in pci_mmcfg_nvidia_mcp55() 281 u32 bus; member 304 u32 bus, devfn; in pci_mmcfg_check_hostbridge() local 314 bus = pci_mmcfg_probes[i].bus; in pci_mmcfg_check_hostbridge() [all …]
|
A D | pci.c | 20 pci_mmcfg_read(sbdf.seg, sbdf.bus, sbdf.devfn, reg, 1, &value); in pci_conf_read8() 33 pci_mmcfg_read(sbdf.seg, sbdf.bus, sbdf.devfn, reg, 2, &value); in pci_conf_read16() 46 pci_mmcfg_read(sbdf.seg, sbdf.bus, sbdf.devfn, reg, 4, &value); in pci_conf_read32() 56 pci_mmcfg_write(sbdf.seg, sbdf.bus, sbdf.devfn, reg, 1, data); in pci_conf_write8() 64 pci_mmcfg_write(sbdf.seg, sbdf.bus, sbdf.devfn, reg, 2, data); in pci_conf_write16() 72 pci_mmcfg_write(sbdf.seg, sbdf.bus, sbdf.devfn, reg, 4, data); in pci_conf_write32()
|
A D | mmconf-fam10h.c | 20 u32 bus; member 41 unsigned int i, j, bus, slot, hi_mmio_num; in get_fam10h_pci_mmconf_base() local 53 bus = pci_probes[i].bus; in get_fam10h_pci_mmconf_base() 55 id = pci_conf_read32(PCI_SBDF(0, bus, slot, 0), PCI_VENDOR_ID); in get_fam10h_pci_mmconf_base() 86 val = pci_conf_read32(PCI_SBDF(0, bus, slot, 1), in get_fam10h_pci_mmconf_base() 92 val = pci_conf_read32(PCI_SBDF(0, bus, slot, 1), in get_fam10h_pci_mmconf_base()
|
/xen/xen/drivers/passthrough/x86/ |
A D | ats.c | 28 u8 bus = pdev->bus, devfn = pdev->devfn; in enable_ats_device() local 31 pos = pci_find_ext_capability(seg, bus, devfn, PCI_EXT_CAP_ID_ATS); in enable_ats_device() 36 seg, bus, PCI_SLOT(devfn), PCI_FUNC(devfn)); in enable_ats_device() 68 seg, bus, PCI_SLOT(devfn), PCI_FUNC(devfn), in enable_ats_device() 78 u8 bus = pdev->bus, devfn = pdev->devfn; in disable_ats_device() local 90 seg, bus, PCI_SLOT(devfn), PCI_FUNC(devfn)); in disable_ats_device()
|
/xen/xen/drivers/passthrough/amd/ |
A D | iommu_detect.c | 26 u16 seg, u8 bus, u8 dev, u8 func, struct amd_iommu *iommu) in get_iommu_msi_capabilities() argument 30 pos = pci_find_cap_offset(seg, bus, dev, func, PCI_CAP_ID_MSI); in get_iommu_msi_capabilities() 44 u16 seg, u8 bus, u8 dev, u8 func, u16 cap_ptr, struct amd_iommu *iommu) in get_iommu_capabilities() argument 48 iommu->cap.header = pci_conf_read32(PCI_SBDF(seg, bus, dev, func), cap_ptr); in get_iommu_capabilities() 136 u8 bus, dev, func; in amd_iommu_detect_one_acpi() local 170 bus = PCI_BUS(iommu->bdf); in amd_iommu_detect_one_acpi() 174 rt = get_iommu_capabilities(iommu->seg, bus, dev, func, in amd_iommu_detect_one_acpi() 179 rt = get_iommu_msi_capabilities(iommu->seg, bus, dev, func, iommu); in amd_iommu_detect_one_acpi() 183 rt = pci_ro_device(iommu->seg, bus, PCI_DEVFN(dev, func)); in amd_iommu_detect_one_acpi() 187 iommu->seg, bus, dev, func, rt); in amd_iommu_detect_one_acpi()
|
A D | pci_amd_iommu.c | 92 u8 bus = pdev->bus; in amd_iommu_setup_domain_device() local 281 u8 bus = pdev->bus; in amd_iommu_disable_domain_device() local 319 pci_ats_device(iommu->seg, bus, devfn) && in amd_iommu_disable_domain_device() 320 pci_ats_enabled(iommu->seg, bus, devfn) ) in amd_iommu_disable_domain_device() 331 bdf = PCI_BDF2(pdev->bus, pdev->devfn); in reassign_device() 367 int bdf = PCI_BDF2(pdev->bus, devfn); in amd_iommu_assign_device() 452 bdf = PCI_BDF2(pdev->bus, pdev->devfn); in amd_iommu_add_device() 478 bdf = PCI_BDF2(pdev->bus, devfn); in amd_iommu_add_device() 524 bdf = PCI_BDF2(pdev->bus, pdev->devfn); in amd_iommu_remove_device() 538 bdf = PCI_BDF2(pdev->bus, devfn); in amd_iommu_remove_device() [all …]
|
/xen/xen/include/public/ |
A D | physdev.h | 168 int bus; member 193 uint8_t bus; member 203 uint8_t bus; member 212 uint8_t bus; member 217 uint8_t bus; member 291 uint8_t bus; member 295 uint8_t bus; member 319 uint8_t bus; member 335 uint8_t bus; member
|
/xen/xen/arch/x86/ |
A D | msi.c | 133 sbdf.bus = dev->info.physfn.bus; in memory_decoded() 285 u8 bus = dev->bus; in msi_set_enable() local 298 u8 bus = dev->bus; in msix_set_enable() local 325 u8 bus, slot, func; in msi_set_mask_bit() local 332 bus = pdev->bus; in msi_set_mask_bit() 615 u8 bus = dev->bus; in msi_capability_init() local 778 u8 bus = dev->bus; in msix_capability_init() local 835 pbus = bus; in msix_capability_init() 1023 msi->seg, msi->bus, in __pci_enable_msi() 1114 u8 bus = dev->bus; in __pci_disable_msix() local [all …]
|
A D | physdev.c | 315 msi.seg = map.bus >> 16; in do_physdev_op() 321 msi.seg = map.bus >> 16; in do_physdev_op() 328 msi.bus = map.bus; in do_physdev_op() 446 ret = pci_add_device(0, manage_pci.bus, manage_pci.devfn, in do_physdev_op() 475 pdev_info.physfn.bus = manage_pci_ext.physfn.bus; in do_physdev_op() 477 ret = pci_add_device(0, manage_pci_ext.bus, in do_physdev_op() 496 pdev_info.physfn.bus = add.physfn.bus; in do_physdev_op() 527 ret = pci_remove_device(dev.seg, dev.bus, dev.devfn); in do_physdev_op() 541 pci_prepare_msix(dev.seg, dev.bus, dev.devfn, in do_physdev_op() 582 pdev = pci_get_pdev(0, restore_msi.bus, restore_msi.devfn); in do_physdev_op() [all …]
|
/xen/tools/libxl/ |
A D | libxl_pci.c | 45 pcidev->bus = bus; in pcidev_struct_fill() 234 if (domain == pcidev->domain && bus == pcidev->bus && in libxl__device_pci_remove_xenstore() 372 if ( assigned[i].bus != bus ) in is_pcidev_in_array() 629 unsigned dom, bus, dev, func; in pciback_dev_has_slot() local 640 && bus == pcidev->bus in pciback_dev_has_slot() 731 pcidev->bus, in pci_assignable_driver_path_write() 760 pcidev->bus, in pci_assignable_driver_path_remove() 770 unsigned dom, bus, dev, func; in libxl__device_pci_assignable_add() local 777 bus = pcidev->bus; in libxl__device_pci_assignable_add() 945 if ( pcidev->bus != bus ) in pci_multifunction_check() [all …]
|
A D | libxlu_pci.c | 26 unsigned int bus, unsigned int dev, in pcidev_struct_fill() argument 30 pcidev->bus = bus; in pcidev_struct_fill() 52 unsigned dom = INVALID, bus = INVALID, dev = INVALID, func = INVALID, vslot = 0; in xlu_pci_parse_bdf() local 73 if ( hex_convert(tok, &bus, 0xff) ) in xlu_pci_parse_bdf() 81 bus = dom; in xlu_pci_parse_bdf() 174 assert(dom != INVALID && bus != INVALID && dev != INVALID && func != INVALID); in xlu_pci_parse_bdf() 177 pcidev_struct_fill(pcidev, dom, bus, dev, func, vslot << 3); in xlu_pci_parse_bdf()
|
/xen/xen/drivers/char/ |
A D | ehci-dbgp.c | 336 u8 bus, slot, func, bar; member 698 unsigned int bus, slot, func; in find_dbgp() local 700 for ( bus = 0; bus < 256; bus++ ) in find_dbgp() 724 dbgp->bus = bus; in find_dbgp() 1396 dbgp->bus, dbgp->slot, dbgp->func); in ehci_dbgp_check_release() 1492 unsigned int bus, slot, func; in ehci_dbgp_init() local 1498 dbgp->bus = bus; in ehci_dbgp_init() 1505 dbgp->cap = __find_dbgp(bus, slot, func); in ehci_dbgp_init() 1510 bus, slot, func); in ehci_dbgp_init() 1550 switch ( op->bus ) in dbgp_op() [all …]
|
/xen/tools/flask/utils/ |
A D | label-pci.c | 39 int seg, bus, dev, fn; in main() local 57 sscanf(argv[1], "%x:%x:%x.%d", &seg, &bus, &dev, &fn); in main() 58 sbdf = (seg << 16) | (bus << 8) | (dev << 3) | fn; in main() 61 seg, bus, dev, fn); in main() 103 seg, bus, dev, fn); in main()
|
/xen/tools/libxc/ |
A D | xc_physdev.c | 27 int bus, in xc_physdev_pci_access_modify() argument 68 int bus, in xc_physdev_map_pirq_msi() argument 85 map.bus = bus; in xc_physdev_map_pirq_msi()
|
A D | xc_devicemodel_compat.c | 46 uint8_t bus, uint8_t device, uint8_t function) in xc_hvm_map_pcidev_to_ioreq_server() argument 49 segment, bus, device, in xc_hvm_map_pcidev_to_ioreq_server() 55 uint8_t bus, uint8_t device, uint8_t function) in xc_hvm_unmap_pcidev_from_ioreq_server() argument 58 id, segment, bus, in xc_hvm_unmap_pcidev_from_ioreq_server() 76 xc_interface *xch, uint32_t domid, uint16_t segment, uint8_t bus, in xc_hvm_set_pci_intx_level() argument 80 bus, device, intx, level); in xc_hvm_set_pci_intx_level()
|