iPXE
xen-x86_32.h File Reference

Go to the source code of this file.

Data Structures

struct  cpu_user_regs
struct  arch_vcpu_info
struct  xen_callback

Macros

#define FLAT_RING1_CS   0xe019 /* GDT index 259 */
#define FLAT_RING1_DS   0xe021 /* GDT index 260 */
#define FLAT_RING1_SS   0xe021 /* GDT index 260 */
#define FLAT_RING3_CS   0xe02b /* GDT index 261 */
#define FLAT_RING3_DS   0xe033 /* GDT index 262 */
#define FLAT_RING3_SS   0xe033 /* GDT index 262 */
#define FLAT_KERNEL_CS   FLAT_RING1_CS
#define FLAT_KERNEL_DS   FLAT_RING1_DS
#define FLAT_KERNEL_SS   FLAT_RING1_SS
#define FLAT_USER_CS   FLAT_RING3_CS
#define FLAT_USER_DS   FLAT_RING3_DS
#define FLAT_USER_SS   FLAT_RING3_SS
#define __HYPERVISOR_VIRT_START_PAE   0xF5800000
#define __MACH2PHYS_VIRT_START_PAE   0xF5800000
#define __MACH2PHYS_VIRT_END_PAE   0xF6800000
#define HYPERVISOR_VIRT_START_PAE   xen_mk_ulong(__HYPERVISOR_VIRT_START_PAE)
#define MACH2PHYS_VIRT_START_PAE   xen_mk_ulong(__MACH2PHYS_VIRT_START_PAE)
#define MACH2PHYS_VIRT_END_PAE   xen_mk_ulong(__MACH2PHYS_VIRT_END_PAE)
#define __HYPERVISOR_VIRT_START_NONPAE   0xFC000000
#define __MACH2PHYS_VIRT_START_NONPAE   0xFC000000
#define __MACH2PHYS_VIRT_END_NONPAE   0xFC400000
#define HYPERVISOR_VIRT_START_NONPAE    xen_mk_ulong(__HYPERVISOR_VIRT_START_NONPAE)
#define MACH2PHYS_VIRT_START_NONPAE    xen_mk_ulong(__MACH2PHYS_VIRT_START_NONPAE)
#define MACH2PHYS_VIRT_END_NONPAE    xen_mk_ulong(__MACH2PHYS_VIRT_END_NONPAE)
#define __HYPERVISOR_VIRT_START   __HYPERVISOR_VIRT_START_PAE
#define __MACH2PHYS_VIRT_START   __MACH2PHYS_VIRT_START_PAE
#define __MACH2PHYS_VIRT_END   __MACH2PHYS_VIRT_END_PAE
#define HYPERVISOR_VIRT_START   xen_mk_ulong(__HYPERVISOR_VIRT_START)
#define MACH2PHYS_VIRT_START   xen_mk_ulong(__MACH2PHYS_VIRT_START)
#define MACH2PHYS_VIRT_END   xen_mk_ulong(__MACH2PHYS_VIRT_END)
#define MACH2PHYS_NR_ENTRIES   ((MACH2PHYS_VIRT_END-MACH2PHYS_VIRT_START)>>2)
#define machine_to_phys_mapping   ((unsigned long *)MACH2PHYS_VIRT_START)
#define __DECL_REG_LO8(which)
#define __DECL_REG_LO16(name)
#define xen_pfn_to_cr3(pfn)
#define xen_cr3_to_pfn(cr3)

Typedefs

typedef struct cpu_user_regs cpu_user_regs_t
typedef struct xen_callback xen_callback_t

Functions

 FILE_LICENCE (MIT)
 FILE_SECBOOT (PERMITTED)
 DEFINE_XEN_GUEST_HANDLE (cpu_user_regs_t)

Macro Definition Documentation

◆ FLAT_RING1_CS

#define FLAT_RING1_CS   0xe019 /* GDT index 259 */

Definition at line 30 of file xen-x86_32.h.

◆ FLAT_RING1_DS

#define FLAT_RING1_DS   0xe021 /* GDT index 260 */

Definition at line 31 of file xen-x86_32.h.

◆ FLAT_RING1_SS

#define FLAT_RING1_SS   0xe021 /* GDT index 260 */

Definition at line 32 of file xen-x86_32.h.

◆ FLAT_RING3_CS

#define FLAT_RING3_CS   0xe02b /* GDT index 261 */

Definition at line 33 of file xen-x86_32.h.

◆ FLAT_RING3_DS

#define FLAT_RING3_DS   0xe033 /* GDT index 262 */

Definition at line 34 of file xen-x86_32.h.

◆ FLAT_RING3_SS

#define FLAT_RING3_SS   0xe033 /* GDT index 262 */

Definition at line 35 of file xen-x86_32.h.

◆ FLAT_KERNEL_CS

#define FLAT_KERNEL_CS   FLAT_RING1_CS

Definition at line 37 of file xen-x86_32.h.

◆ FLAT_KERNEL_DS

#define FLAT_KERNEL_DS   FLAT_RING1_DS

Definition at line 38 of file xen-x86_32.h.

◆ FLAT_KERNEL_SS

#define FLAT_KERNEL_SS   FLAT_RING1_SS

Definition at line 39 of file xen-x86_32.h.

◆ FLAT_USER_CS

#define FLAT_USER_CS   FLAT_RING3_CS

Definition at line 40 of file xen-x86_32.h.

◆ FLAT_USER_DS

#define FLAT_USER_DS   FLAT_RING3_DS

Definition at line 41 of file xen-x86_32.h.

◆ FLAT_USER_SS

#define FLAT_USER_SS   FLAT_RING3_SS

Definition at line 42 of file xen-x86_32.h.

◆ __HYPERVISOR_VIRT_START_PAE

#define __HYPERVISOR_VIRT_START_PAE   0xF5800000

Definition at line 44 of file xen-x86_32.h.

◆ __MACH2PHYS_VIRT_START_PAE

#define __MACH2PHYS_VIRT_START_PAE   0xF5800000

Definition at line 45 of file xen-x86_32.h.

◆ __MACH2PHYS_VIRT_END_PAE

#define __MACH2PHYS_VIRT_END_PAE   0xF6800000

Definition at line 46 of file xen-x86_32.h.

◆ HYPERVISOR_VIRT_START_PAE

#define HYPERVISOR_VIRT_START_PAE   xen_mk_ulong(__HYPERVISOR_VIRT_START_PAE)

Definition at line 47 of file xen-x86_32.h.

◆ MACH2PHYS_VIRT_START_PAE

#define MACH2PHYS_VIRT_START_PAE   xen_mk_ulong(__MACH2PHYS_VIRT_START_PAE)

Definition at line 48 of file xen-x86_32.h.

◆ MACH2PHYS_VIRT_END_PAE

#define MACH2PHYS_VIRT_END_PAE   xen_mk_ulong(__MACH2PHYS_VIRT_END_PAE)

Definition at line 49 of file xen-x86_32.h.

◆ __HYPERVISOR_VIRT_START_NONPAE

#define __HYPERVISOR_VIRT_START_NONPAE   0xFC000000

Definition at line 52 of file xen-x86_32.h.

◆ __MACH2PHYS_VIRT_START_NONPAE

#define __MACH2PHYS_VIRT_START_NONPAE   0xFC000000

Definition at line 53 of file xen-x86_32.h.

◆ __MACH2PHYS_VIRT_END_NONPAE

#define __MACH2PHYS_VIRT_END_NONPAE   0xFC400000

Definition at line 54 of file xen-x86_32.h.

◆ HYPERVISOR_VIRT_START_NONPAE

#define HYPERVISOR_VIRT_START_NONPAE    xen_mk_ulong(__HYPERVISOR_VIRT_START_NONPAE)

Definition at line 55 of file xen-x86_32.h.

55#define HYPERVISOR_VIRT_START_NONPAE \
56 xen_mk_ulong(__HYPERVISOR_VIRT_START_NONPAE)

◆ MACH2PHYS_VIRT_START_NONPAE

#define MACH2PHYS_VIRT_START_NONPAE    xen_mk_ulong(__MACH2PHYS_VIRT_START_NONPAE)

Definition at line 57 of file xen-x86_32.h.

57#define MACH2PHYS_VIRT_START_NONPAE \
58 xen_mk_ulong(__MACH2PHYS_VIRT_START_NONPAE)

◆ MACH2PHYS_VIRT_END_NONPAE

#define MACH2PHYS_VIRT_END_NONPAE    xen_mk_ulong(__MACH2PHYS_VIRT_END_NONPAE)

Definition at line 59 of file xen-x86_32.h.

59#define MACH2PHYS_VIRT_END_NONPAE \
60 xen_mk_ulong(__MACH2PHYS_VIRT_END_NONPAE)

◆ __HYPERVISOR_VIRT_START

#define __HYPERVISOR_VIRT_START   __HYPERVISOR_VIRT_START_PAE

Definition at line 62 of file xen-x86_32.h.

◆ __MACH2PHYS_VIRT_START

#define __MACH2PHYS_VIRT_START   __MACH2PHYS_VIRT_START_PAE

Definition at line 63 of file xen-x86_32.h.

◆ __MACH2PHYS_VIRT_END

#define __MACH2PHYS_VIRT_END   __MACH2PHYS_VIRT_END_PAE

Definition at line 64 of file xen-x86_32.h.

◆ HYPERVISOR_VIRT_START

#define HYPERVISOR_VIRT_START   xen_mk_ulong(__HYPERVISOR_VIRT_START)

Definition at line 67 of file xen-x86_32.h.

◆ MACH2PHYS_VIRT_START

#define MACH2PHYS_VIRT_START   xen_mk_ulong(__MACH2PHYS_VIRT_START)

Definition at line 70 of file xen-x86_32.h.

◆ MACH2PHYS_VIRT_END

#define MACH2PHYS_VIRT_END   xen_mk_ulong(__MACH2PHYS_VIRT_END)

Definition at line 71 of file xen-x86_32.h.

◆ MACH2PHYS_NR_ENTRIES

#define MACH2PHYS_NR_ENTRIES   ((MACH2PHYS_VIRT_END-MACH2PHYS_VIRT_START)>>2)

Definition at line 72 of file xen-x86_32.h.

◆ machine_to_phys_mapping

#define machine_to_phys_mapping   ((unsigned long *)MACH2PHYS_VIRT_START)

Definition at line 74 of file xen-x86_32.h.

◆ __DECL_REG_LO8

#define __DECL_REG_LO8 ( which)
Value:
uint32_t e ## which ## x
unsigned int uint32_t
Definition stdint.h:12
static unsigned int x
Definition pixbuf.h:63

Definition at line 116 of file xen-x86_32.h.

◆ __DECL_REG_LO16

#define __DECL_REG_LO16 ( name)
Value:
const char * name
Definition ath9k_hw.c:1986

Definition at line 117 of file xen-x86_32.h.

◆ xen_pfn_to_cr3

#define xen_pfn_to_cr3 ( pfn)
Value:
(((unsigned)(pfn) << 12) | ((unsigned)(pfn) >> 20))

Definition at line 162 of file xen-x86_32.h.

◆ xen_cr3_to_pfn

#define xen_cr3_to_pfn ( cr3)
Value:
(((unsigned)(cr3) >> 12) | ((unsigned)(cr3) << 20))

Definition at line 163 of file xen-x86_32.h.

Typedef Documentation

◆ cpu_user_regs_t

Definition at line 150 of file xen-x86_32.h.

◆ xen_callback_t

typedef struct xen_callback xen_callback_t

Definition at line 175 of file xen-x86_32.h.

Function Documentation

◆ FILE_LICENCE()

FILE_LICENCE ( MIT )

◆ FILE_SECBOOT()

FILE_SECBOOT ( PERMITTED )

◆ DEFINE_XEN_GUEST_HANDLE()

DEFINE_XEN_GUEST_HANDLE ( cpu_user_regs_t )