Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
var AddressFromString = pciaddr.FromString
backward compatibility, to be removed in 1.0.0
Functions ¶
This section is empty.
Types ¶
type Device ¶
type Device struct { // The PCI address of the device Address string `json:"address"` Vendor *pcidb.Vendor `json:"vendor"` Product *pcidb.Product `json:"product"` Revision string `json:"revision"` Subsystem *pcidb.Product `json:"subsystem"` // optional subvendor/sub-device information Class *pcidb.Class `json:"class"` // optional sub-class for the device Subclass *pcidb.Subclass `json:"subclass"` // optional programming interface ProgrammingInterface *pcidb.ProgrammingInterface `json:"programming_interface"` // Topology node that the PCI device is affined to. Will be nil if the // architecture is not NUMA. Node *topology.Node `json:"node,omitempty"` Driver string `json:"driver"` }
func (*Device) MarshalJSON ¶
NOTE(jaypipes) Device has a custom JSON marshaller because we don't want to serialize the entire PCIDB information for the Vendor (which includes all of the vendor's products, etc). Instead, we simply serialize the ID and human-readable name of the vendor, product, class, etc.
type Info ¶
type Info struct { // All PCI devices on the host system Devices []*Device // hash of class ID -> class information // DEPRECATED. Will be removed in v1.0. Please use // github.com/jaypipes/pcidb to explore PCIDB information Classes map[string]*pcidb.Class `json:"-"` // hash of vendor ID -> vendor information // DEPRECATED. Will be removed in v1.0. Please use // github.com/jaypipes/pcidb to explore PCIDB information Vendors map[string]*pcidb.Vendor `json:"-"` // hash of vendor ID + product/device ID -> product information // DEPRECATED. Will be removed in v1.0. Please use // github.com/jaypipes/pcidb to explore PCIDB information Products map[string]*pcidb.Product `json:"-"` // contains filtered or unexported fields }
func New ¶
New returns a pointer to an Info struct that contains information about the PCI devices on the host system
func (*Info) GetDevice ¶
GetDevice returns a pointer to a Device struct that describes the PCI device at the requested address. If no such device could be found, returns nil.
func (*Info) JSONString ¶
JSONString returns a string with the PCI information formatted as JSON under a top-level "pci:" key
func (*Info) ListDevices ¶
ListDevices returns a list of pointers to Device structs present on the host system DEPRECATED. Will be removed in v1.0. Please use github.com/jaypipes/pcidb to explore PCIDB information
func (*Info) ParseDevice ¶
ParseDevice returns a pointer to a Device given its describing data. The PCI device obtained this way may not exist in the system; use GetDevice to get a *Device which is found in the system
func (*Info) YAMLString ¶
YAMLString returns a string with the PCI information formatted as YAML under a top-level "pci:" key