|
@@ -155,9 +155,9 @@
|
|
|
|
|
|
#ifndef __ASSEMBLY__
|
|
|
struct vmi_relocation_info {
|
|
|
- unsigned char *eip;
|
|
|
- unsigned char type;
|
|
|
- unsigned char reserved[3];
|
|
|
+ unsigned char *eip;
|
|
|
+ unsigned char type;
|
|
|
+ unsigned char reserved[3];
|
|
|
};
|
|
|
#endif
|
|
|
|
|
@@ -173,53 +173,53 @@ struct vmi_relocation_info {
|
|
|
#ifndef __ASSEMBLY__
|
|
|
|
|
|
struct vrom_header {
|
|
|
- u16 rom_signature; // option ROM signature
|
|
|
- u8 rom_length; // ROM length in 512 byte chunks
|
|
|
- u8 rom_entry[4]; // 16-bit code entry point
|
|
|
- u8 rom_pad0; // 4-byte align pad
|
|
|
- u32 vrom_signature; // VROM identification signature
|
|
|
- u8 api_version_min;// Minor version of API
|
|
|
- u8 api_version_maj;// Major version of API
|
|
|
- u8 jump_slots; // Number of jump slots
|
|
|
- u8 reserved1; // Reserved for expansion
|
|
|
- u32 virtual_top; // Hypervisor virtual address start
|
|
|
- u16 reserved2; // Reserved for expansion
|
|
|
- u16 license_offs; // Offset to License string
|
|
|
- u16 pci_header_offs;// Offset to PCI OPROM header
|
|
|
- u16 pnp_header_offs;// Offset to PnP OPROM header
|
|
|
- u32 rom_pad3; // PnP reserverd / VMI reserved
|
|
|
- u8 reserved[96]; // Reserved for headers
|
|
|
- char vmi_init[8]; // VMI_Init jump point
|
|
|
- char get_reloc[8]; // VMI_GetRelocationInfo jump point
|
|
|
+ u16 rom_signature; /* option ROM signature */
|
|
|
+ u8 rom_length; /* ROM length in 512 byte chunks */
|
|
|
+ u8 rom_entry[4]; /* 16-bit code entry point */
|
|
|
+ u8 rom_pad0; /* 4-byte align pad */
|
|
|
+ u32 vrom_signature; /* VROM identification signature */
|
|
|
+ u8 api_version_min;/* Minor version of API */
|
|
|
+ u8 api_version_maj;/* Major version of API */
|
|
|
+ u8 jump_slots; /* Number of jump slots */
|
|
|
+ u8 reserved1; /* Reserved for expansion */
|
|
|
+ u32 virtual_top; /* Hypervisor virtual address start */
|
|
|
+ u16 reserved2; /* Reserved for expansion */
|
|
|
+ u16 license_offs; /* Offset to License string */
|
|
|
+ u16 pci_header_offs;/* Offset to PCI OPROM header */
|
|
|
+ u16 pnp_header_offs;/* Offset to PnP OPROM header */
|
|
|
+ u32 rom_pad3; /* PnP reserverd / VMI reserved */
|
|
|
+ u8 reserved[96]; /* Reserved for headers */
|
|
|
+ char vmi_init[8]; /* VMI_Init jump point */
|
|
|
+ char get_reloc[8]; /* VMI_GetRelocationInfo jump point */
|
|
|
} __attribute__((packed));
|
|
|
|
|
|
struct pnp_header {
|
|
|
- char sig[4];
|
|
|
- char rev;
|
|
|
- char size;
|
|
|
- short next;
|
|
|
- short res;
|
|
|
- long devID;
|
|
|
- unsigned short manufacturer_offset;
|
|
|
- unsigned short product_offset;
|
|
|
+ char sig[4];
|
|
|
+ char rev;
|
|
|
+ char size;
|
|
|
+ short next;
|
|
|
+ short res;
|
|
|
+ long devID;
|
|
|
+ unsigned short manufacturer_offset;
|
|
|
+ unsigned short product_offset;
|
|
|
} __attribute__((packed));
|
|
|
|
|
|
struct pci_header {
|
|
|
- char sig[4];
|
|
|
- short vendorID;
|
|
|
- short deviceID;
|
|
|
- short vpdData;
|
|
|
- short size;
|
|
|
- char rev;
|
|
|
- char class;
|
|
|
- char subclass;
|
|
|
- char interface;
|
|
|
- short chunks;
|
|
|
- char rom_version_min;
|
|
|
- char rom_version_maj;
|
|
|
- char codetype;
|
|
|
- char lastRom;
|
|
|
- short reserved;
|
|
|
+ char sig[4];
|
|
|
+ short vendorID;
|
|
|
+ short deviceID;
|
|
|
+ short vpdData;
|
|
|
+ short size;
|
|
|
+ char rev;
|
|
|
+ char class;
|
|
|
+ char subclass;
|
|
|
+ char interface;
|
|
|
+ short chunks;
|
|
|
+ char rom_version_min;
|
|
|
+ char rom_version_maj;
|
|
|
+ char codetype;
|
|
|
+ char lastRom;
|
|
|
+ short reserved;
|
|
|
} __attribute__((packed));
|
|
|
|
|
|
/* Function prototypes for bootstrapping */
|