Palacios Public Git Repository

To checkout Palacios execute

  git clone http://v3vee.org/palacios/palacios.web/palacios.git
This will give you the master branch. You probably want the devel branch or one of the release branches. To switch to the devel branch, simply execute
  cd palacios
  git checkout --track -b devel origin/devel
The other branches are similar.


Modified boot and vmxassist to handle real/protected transition.
[palacios.git] / bios / vmxassist / e820.h
1 #ifndef __HVMLOADER_E820_H__
2 #define __HVMLOADER_E820_H__
3
4 /* E820 location in HVM virtual address space. */
5 #define HVM_E820_PAGE        0x00090000
6 #define HVM_E820_NR_OFFSET   0x000001E8
7 #define HVM_E820_OFFSET      0x000002D0
8
9 #define HVM_BELOW_4G_RAM_END        0xF0000000
10 #define HVM_BELOW_4G_MMIO_START     HVM_BELOW_4G_RAM_END
11 #define HVM_BELOW_4G_MMIO_LENGTH    ((1ULL << 32) - HVM_BELOW_4G_MMIO_START)
12
13
14 /*
15  * PC BIOS standard E820 types and structure.
16  */
17 #define E820_RAM          1
18 #define E820_RESERVED     2
19 #define E820_ACPI         3
20 #define E820_NVS          4
21
22 struct e820entry {
23     uint64_t addr;
24     uint64_t size;
25     uint32_t type;
26 } __attribute__((packed));
27
28 #define HVM_E820_NR ((unsigned char *)HVM_E820_PAGE + HVM_E820_NR_OFFSET)
29 #define HVM_E820    ((struct e820entry *)(HVM_E820_PAGE + HVM_E820_OFFSET))
30
31 #endif /* __HVMLOADER_E820_H__ */