|
Insert a list of PCI devices and bridges in the backend topology.
Insert a list of objects (either PCI device or bridges) starting at first_obj (linked by next_sibling in the topology, and ending with NULL). Objects are placed under the right bridges, and the remaining upstream bridges are then inserted in the topology by calling the get_obj_cpuset() callback to find their locality.
unsigned hwloc_pci_find_cap |
( |
const unsigned char * |
config, |
|
|
unsigned |
cap |
|
) |
| |
Return the offset of the given capability in the PCI config space buffer.
This function requires a 256-bytes config space. Unknown/unavailable bytes should be set to 0xff.
int hwloc_pci_find_linkspeed |
( |
const unsigned char * |
config, |
|
|
unsigned |
offset, |
|
|
float * |
linkspeed |
|
) |
| |
Fill linkspeed by reading the PCI config space where PCI_CAP_ID_EXP is at position offset.
Needs 20 bytes of EXP capability block starting at offset in the config space for registers up to link status.
int hwloc_pci_prepare_bridge |
( |
hwloc_obj_t |
obj, |
|
|
const unsigned char * |
config |
|
) |
| |
Modify the PCI device object into a bridge and fill its attribute if a bridge is found in the PCI config space.
This function requires 64 bytes of common configuration header at the beginning of config.
|
|
|