-#elif defined (MDE_CPU_IPF)\r
-\r
-typedef struct {\r
- //\r
- // Space for the code\r
- // The address of Code is also the beginning of the relocated Thunk code\r
- //\r
- CHAR8 Code[4096]; // ?\r
- //\r
- // The address of the Reverse Thunk code\r
- // Note that this member CONTAINS the address of the relocated reverse thunk\r
- // code unlike the member variable 'Code', which IS the address of the Thunk\r
- // code.\r
- //\r
- UINT32 LowReverseThunkStart;\r
-\r
- //\r
- // Data for the code (cs releative)\r
- //\r
- DESCRIPTOR32 GdtDesc; // Protected mode GDT\r
- DESCRIPTOR32 IdtDesc; // Protected mode IDT\r
- UINT32 FlatSs;\r
- UINT32 FlatEsp;\r
-\r
- UINT32 LowCodeSelector; // Low code selector in GDT\r
- UINT32 LowDataSelector; // Low data selector in GDT\r
- UINT32 LowStack;\r
- DESCRIPTOR32 RealModeIdtDesc;\r
-\r
- //\r
- // real-mode GDT (temporary GDT with two real mode segment descriptors)\r
- //\r
- GDT32 RealModeGdt[NUM_REAL_GDT_ENTRIES];\r
- DESCRIPTOR32 RealModeGdtDesc;\r
-\r
- //\r
- // Members specifically for the reverse thunk\r
- // The RevReal* members are used to store the current state of real mode\r
- // before performing the reverse thunk. The RevFlat* members must be set\r
- // before calling the reverse thunk assembly code.\r
- //\r
- UINT16 RevRealDs;\r
- UINT16 RevRealSs;\r
- UINT32 RevRealEsp;\r
- DESCRIPTOR32 RevRealIdtDesc;\r
- UINT16 RevFlatDataSelector; // Flat data selector in GDT\r
- UINT32 RevFlatStack;\r
-\r
- //\r
- // A low memory stack\r
- //\r
- CHAR8 Stack[LOW_STACK_SIZE];\r
-\r
- //\r
- // Stack for flat mode after reverse thunk\r
- // @bug - This may no longer be necessary if the reverse thunk interface\r
- // is changed to have the flat stack in a different location.\r
- //\r
- CHAR8 RevThunkStack[LOW_STACK_SIZE];\r
-\r
- //\r
- // Legacy16 Init memory map info\r
- //\r
- EFI_TO_COMPATIBILITY16_INIT_TABLE EfiToLegacy16InitTable;\r
-\r
- EFI_TO_COMPATIBILITY16_BOOT_TABLE EfiToLegacy16BootTable;\r
-\r
- CHAR8 InterruptRedirectionCode[32];\r
- EFI_LEGACY_INSTALL_PCI_HANDLER PciHandler;\r
- EFI_DISPATCH_OPROM_TABLE DispatchOpromTable;\r
- BBS_TABLE BbsTable[MAX_BBS_ENTRIES];\r
-} LOW_MEMORY_THUNK;\r
-\r