blob: 68c8e71b7c85b32ecdf812854e791a08a4ed8666 [file] [log] [blame]
Li-Ta Lo883b8792005-01-10 23:16:22 +00001#include <arch/byteorder.h>
2#include <stddef.h>
3
4#define PCI_ROM_HDR 0xAA55
5#define PCI_DATA_HDR (uint32_t) ( ('R' << 24) | ('I' << 16) | ('C' << 8) | 'P' )
6
7#define PCI_RAM_IMAGE_START 0xD0000
8#define PCI_VGA_RAM_IMAGE_START 0xC0000
9
10struct rom_header {
11 uint16_t signature;
12 uint8_t size;
13 uint8_t init[3];
14 uint8_t reserved[0x12];
15 uint16_t data;
16};
17
18struct pci_data {
19 uint32_t signature;
20 uint16_t vendor;
21 uint16_t device;
22 uint16_t reserved_1;
23 uint16_t dlen;
24 uint8_t drevision;
25 uint8_t class_hi;
26 uint16_t class_lo;
27 uint16_t ilen;
28 uint16_t irevision;
29 uint8_t type;
30 uint8_t indicator;
31 uint16_t reserved_2;
32};