MicrOS
pci_device.h
Go to the documentation of this file.
1 #ifndef PCI_DEVICE
2 #define PCI_DEVICE
3 
4 typedef union pci_device
5 {
6  uint8_t bits_8[64];
7  uint16_t bits_16[32];
8  //addinational 16 descriptors
10  struct
11  {
12  uint16_t vendor_id;
13  uint16_t device_id;
14  uint16_t command;
15  uint16_t status;
16  uint8_t revision_id;
17  uint8_t prog_if;
18  uint8_t subclass;
19  uint8_t class_code;
20  uint8_t cache_line_size;
21  uint8_t latency_timer;
22  uint8_t header_type;
23  uint8_t bist;
32  uint16_t subsystem_id;
35  uint8_t _reserved[7];
36  uint8_t interrupt_line;
37  uint8_t interrupt_pin;
38  uint8_t min_grant;
39  uint8_t max_latency;
41  };
42 } __attribute__((packed)) pci_device;
43 
44 #endif
uint16_t status
Definition: pci_device.h:15
uint32_t base_addres_5
Definition: pci_device.h:29
uint16_t vendor_id
Definition: pci_device.h:12
uint32_t cardbus_cis_pointer
Definition: pci_device.h:30
uint32_t expansion_rom_base_address
Definition: pci_device.h:33
uint16_t device_id
Definition: pci_device.h:13
uint16_t bits_16[32]
Definition: pci_device.h:7
uint32_t descriptors[16]
Definition: pci_device.h:40
uint16_t subsystem_id
Definition: pci_device.h:32
uint16_t command
Definition: pci_device.h:14
uint16_t subsystem_vendor_id
Definition: pci_device.h:31
uint32_t base_addres_3
Definition: pci_device.h:27
uint8_t max_latency
Definition: pci_device.h:39
uint8_t _reserved[7]
Definition: pci_device.h:35
uint8_t header_type
Definition: pci_device.h:22
uint8_t subclass
Definition: pci_device.h:18
uint8_t revision_id
Definition: pci_device.h:16
uint8_t capabilities_pointer
Definition: pci_device.h:34
uint8_t prog_if
Definition: pci_device.h:17
uint32_t base_addres_2
Definition: pci_device.h:26
uint32_t bits_32[32]
Definition: pci_device.h:9
uint8_t min_grant
Definition: pci_device.h:38
uint8_t interrupt_line
Definition: pci_device.h:36
uint8_t interrupt_pin
Definition: pci_device.h:37
uint8_t bits_8[64]
Definition: pci_device.h:6
uint8_t class_code
Definition: pci_device.h:19
Definition: pci_device.h:4
uint8_t cache_line_size
Definition: pci_device.h:20
uint32_t base_addres_0
Definition: pci_device.h:24
uint32_t base_addres_4
Definition: pci_device.h:28
size_t uint32_t
Unsigned integral type.
Definition: string.h:8
uint32_t base_addres_1
Definition: pci_device.h:25
uint8_t bist
Definition: pci_device.h:23
uint8_t latency_timer
Definition: pci_device.h:21