2018-11-12 09:49:00 +01:00
|
|
|
static pciclass old[] = {
|
2018-12-12 15:25:04 +01:00
|
|
|
{0x0, "Pre-2.0 PCI Specification Device, Non-VGA"},
|
|
|
|
{0x1, "Pre-2.0 PCI Specification Device, VGA Compatible"},
|
|
|
|
{0, NULL}
|
2018-11-12 09:49:00 +01:00
|
|
|
};
|
|
|
|
|
|
|
|
static pciclass storage[] = {
|
2018-12-12 15:25:04 +01:00
|
|
|
{0x00, "Mass Storage Controller, SCSI"},
|
|
|
|
{0x01, "Mass Storage Controller, IDE"},
|
|
|
|
{0x02, "Mass Storage Controller, Floppy"},
|
|
|
|
{0x03, "Mass Storage Controller, IPI"},
|
|
|
|
{0x04, "Mass Storage Controller, RAID"},
|
|
|
|
{0x05, "Mass Storage Controller, ATA controller with single DMA"},
|
|
|
|
{0x06, "Mass Storage Controller, SATA"},
|
|
|
|
{0x07, "Mass Storage Controller, SAS"},
|
|
|
|
{0x08, "Mass Storage Controller, NVM"},
|
|
|
|
{0x80, "Mass Storage Controller, Other"},
|
|
|
|
{0, NULL}
|
2018-11-12 09:49:00 +01:00
|
|
|
};
|
|
|
|
|
|
|
|
static pciclass network[] = {
|
2018-12-12 15:25:04 +01:00
|
|
|
{0x00, "Network Controller, Ethernet"},
|
|
|
|
{0x01, "Network Controller, Token Ring"},
|
|
|
|
{0x02, "Network Controller, FDDI"},
|
|
|
|
{0x03, "Network Controller, ATM"},
|
|
|
|
{0x04, "Network Controller, ISDN"},
|
|
|
|
{0x80, "Network Controller, Other"},
|
|
|
|
{0, NULL}
|
2018-11-12 09:49:00 +01:00
|
|
|
};
|
|
|
|
|
|
|
|
static pciclass display[] = {
|
2018-12-12 15:25:04 +01:00
|
|
|
{0x00, "Display Controller, VGA"},
|
|
|
|
{0x01, "Display Controller, XGA"},
|
|
|
|
{0x02, "Display Controller, 3D"},
|
|
|
|
{0x80, "Display Controller, Other"},
|
|
|
|
{0, NULL}
|
2018-11-12 09:49:00 +01:00
|
|
|
};
|
|
|
|
|
|
|
|
static pciclass multimedia[] = {
|
2018-12-12 15:25:04 +01:00
|
|
|
{0x00, "Multimedia Device, Video"},
|
|
|
|
{0x01, "Multimedia Device, Audio"},
|
|
|
|
{0x02, "Multimedia Device, Telephony"},
|
|
|
|
{0x03, "Multimedia Device, HDA"},
|
|
|
|
{0x80, "Multimedia Device, Other"},
|
|
|
|
{0, NULL}
|
2018-11-12 09:49:00 +01:00
|
|
|
};
|
|
|
|
|
|
|
|
static pciclass memory[] = {
|
2018-12-12 15:25:04 +01:00
|
|
|
{0x00, "Memory Controller, RAM"},
|
|
|
|
{0x01, "Memory Controller, Flash"},
|
|
|
|
{0x80, "Memory Controller, Other"},
|
|
|
|
{0, NULL}
|
2018-11-12 09:49:00 +01:00
|
|
|
};
|
|
|
|
|
|
|
|
static pciclass bridge[] = {
|
2018-12-12 15:25:04 +01:00
|
|
|
{0x00, "Bridge Device, Host/PCI"},
|
|
|
|
{0x01, "Bridge Device, PCI/ISA"},
|
|
|
|
{0x02, "Bridge Device, PCI/EISA"},
|
|
|
|
{0x03, "Bridge Device, PCI/Micro Channel"},
|
|
|
|
{0x04, "Bridge Device, PCI/PCI"},
|
|
|
|
{0x05, "Bridge Device, PCI/PCMCIA"},
|
|
|
|
{0x06, "Bridge Device, PCI/NuBus"},
|
|
|
|
{0x07, "Bridge Device, PCI/CardBus"},
|
|
|
|
{0x08, "Bridge Device, PCI/RACEway"},
|
|
|
|
{0x09, "Bridge Device, PCI/Transparent"},
|
|
|
|
{0x0a, "Bridge Device, Infiniband"},
|
|
|
|
{0x80, "Bridge Device, Other"},
|
|
|
|
{0, NULL}
|
2018-11-12 09:49:00 +01:00
|
|
|
};
|
|
|
|
|
|
|
|
static pciclass simplecomm[] = {
|
2018-12-12 15:25:04 +01:00
|
|
|
{0x00, "Simple Communications Controller, Serial"},
|
|
|
|
{0x01, "Simple Communications Controller, Parallel"},
|
|
|
|
{0x02, "Simple Communications Controller, Multiport"},
|
|
|
|
{0x03, "Simple Communications Controller, Modem"},
|
|
|
|
{0x04, "Simple Communications Controller, GPIB"},
|
|
|
|
{0x05, "Simple Communications Controller, Smart Card"},
|
|
|
|
{0x80, "Simple Communications Controller, Other"},
|
|
|
|
{0, NULL}
|
2018-11-12 09:49:00 +01:00
|
|
|
};
|
|
|
|
|
|
|
|
static pciclass baseperiph[] = {
|
2018-12-12 15:25:04 +01:00
|
|
|
{0x00, "Base Systems Peripheral, Interrupt Controller"},
|
|
|
|
{0x01, "Base Systems Peripheral, DMA"},
|
|
|
|
{0x02, "Base Systems Peripheral, System Timer"},
|
|
|
|
{0x03, "Base Systems Peripheral, Real Time Clock"},
|
|
|
|
{0x04, "Base Systems Peripheral, PCI Hot-plug"},
|
|
|
|
{0x05, "Base Systems Peripheral, SD Host Controller"},
|
|
|
|
{0x06, "Base Systems Peripheral, IOMMU"},
|
|
|
|
{0x80, "Base Systems Peripheral, Other"},
|
|
|
|
{0, NULL}
|
2018-11-12 09:49:00 +01:00
|
|
|
};
|
|
|
|
|
|
|
|
static pciclass input[] = {
|
2018-12-12 15:25:04 +01:00
|
|
|
{0x00, "Input Device, Keyboard"},
|
|
|
|
{0x01, "Input Device, Digitizer"},
|
|
|
|
{0x02, "Input Device, Mouse"},
|
|
|
|
{0x03, "Input Device, Scanner"},
|
|
|
|
{0x04, "Input Device, Game Port"},
|
|
|
|
{0x80, "Input Device, Other"},
|
|
|
|
{0, NULL}
|
2018-11-12 09:49:00 +01:00
|
|
|
};
|
|
|
|
|
|
|
|
static pciclass docking[] = {
|
2018-12-12 15:25:04 +01:00
|
|
|
{0x00, "Docking Station, Generic"},
|
|
|
|
{0x80, "Docking Station, Other"},
|
|
|
|
{0, NULL}
|
2018-11-12 09:49:00 +01:00
|
|
|
};
|
|
|
|
|
|
|
|
static pciclass processor[] = {
|
2018-12-12 15:25:04 +01:00
|
|
|
{0x00, "Processor, i386"},
|
|
|
|
{0x01, "Processor, i486"},
|
|
|
|
{0x02, "Processor, Pentium"},
|
|
|
|
{0x10, "Processor, Alpha"},
|
|
|
|
{0x20, "Processor, Power PC"},
|
|
|
|
{0x80, "Processor, Co-processor"},
|
|
|
|
{0, NULL}
|
2018-11-12 09:49:00 +01:00
|
|
|
};
|
|
|
|
|
|
|
|
static pciclass serial[] = {
|
2018-12-12 15:25:04 +01:00
|
|
|
{0x00, "Serial Bus Controller, Firewire"},
|
|
|
|
{0x01, "Serial Bus Controller, ACCESS.bus"},
|
|
|
|
{0x02, "Serial Bus Controller, SSA"},
|
|
|
|
{0x03, "Serial Bus Controller, USB"},
|
|
|
|
{0x04, "Serial Bus Controller, Fibre Channel"},
|
|
|
|
{0x05, "Serial Bus Controller, SMBus"},
|
|
|
|
{0x06, "Serial Bus Controller, Inifiniband"},
|
|
|
|
{0x07, "Serial Bus Controller, IPMI"},
|
|
|
|
{0, NULL}
|
2018-11-12 09:49:00 +01:00
|
|
|
};
|
|
|
|
|
|
|
|
static pciclass wireless[] = {
|
2018-12-12 15:25:04 +01:00
|
|
|
{0x00, "Wireless Controller, iRDA"},
|
|
|
|
{0x01, "Wireless Controller, IR"},
|
|
|
|
{0x10, "Wireless Controller, RF"},
|
|
|
|
{0x11, "Wireless Controller, Bluetooth"},
|
|
|
|
{0x12, "Wireless Controller, Broadband"},
|
|
|
|
{0x20, "Wireless Controller, 802.11a"},
|
|
|
|
{0x21, "Wireless Controller, 802.11b"},
|
|
|
|
{0x80, "Wireless Controller, Other"},
|
|
|
|
{0, NULL}
|
2018-11-12 09:49:00 +01:00
|
|
|
};
|
|
|
|
|
|
|
|
static pciclass intelliio[] = {
|
2018-12-12 15:25:04 +01:00
|
|
|
{0x00, "Intelligent IO Controller, I2O"},
|
|
|
|
{0, NULL}
|
2018-11-12 09:49:00 +01:00
|
|
|
};
|
|
|
|
|
|
|
|
static pciclass satcomm[] = {
|
2018-12-12 15:25:04 +01:00
|
|
|
{0x00, "Satellite Communication Controller, TV"},
|
|
|
|
{0x01, "Satellite Communication Controller, Audio"},
|
|
|
|
{0x02, "Satellite Communication Controller, Voice"},
|
|
|
|
{0x03, "Satellite Communication Controller, Data"},
|
|
|
|
{0, NULL}
|
2018-11-12 09:49:00 +01:00
|
|
|
};
|
|
|
|
|
|
|
|
static pciclass crypto[] = {
|
2018-12-12 15:25:04 +01:00
|
|
|
{0x00, "Encryption/Decryption Controller, Network/computer"},
|
|
|
|
{0x01, "Encryption/Decryption Controller, Entertainment"},
|
|
|
|
{0x80, "Encryption/Decryption Controller, Other"},
|
|
|
|
{0, NULL}
|
2018-11-12 09:49:00 +01:00
|
|
|
};
|
|
|
|
|
|
|
|
static pciclass dasp[] = {
|
2018-12-12 15:25:04 +01:00
|
|
|
{0x00, "Data Acquisition and Signal Processing Controller, DPIO"},
|
|
|
|
{0x01,
|
|
|
|
"Data Acquisition and Signal Processing Controller, Performance Counter"},
|
|
|
|
{0x10,
|
|
|
|
"Data Acquisition and Signal Processing Controller, Communications Synchronization"},
|
|
|
|
{0x20,
|
|
|
|
"Data Acquisition and Signal Processing Controller, Management Card"},
|
|
|
|
{0x80, "Data Acquisition and Signal Processing Controller, Other"},
|
|
|
|
{0, NULL}
|
2018-11-12 09:49:00 +01:00
|
|
|
};
|
|
|
|
|
|
|
|
static pciclass *classcodes[] = {
|
|
|
|
old,
|
|
|
|
storage,
|
|
|
|
network,
|
|
|
|
display,
|
|
|
|
multimedia,
|
|
|
|
memory,
|
|
|
|
bridge,
|
|
|
|
simplecomm,
|
|
|
|
baseperiph,
|
|
|
|
input,
|
|
|
|
docking,
|
|
|
|
processor,
|
|
|
|
serial,
|
|
|
|
wireless,
|
|
|
|
intelliio,
|
|
|
|
satcomm,
|
|
|
|
crypto,
|
|
|
|
dasp,
|
|
|
|
[255] = NULL
|
|
|
|
};
|