TianoCore EDK2 master
Loading...
Searching...
No Matches
EmuMagicPageLib.h
1/*++ @file
2The PCD, gEmulatorPkgTokenSpaceGuid.PcdPeiServicesTablePage, points to a magic page
3of memory that is like SRAM on an embedded system. This file defines what goes
4where in the magic page.
5
6Copyright (c) 2011, Apple Inc. All rights reserved.<BR>
7SPDX-License-Identifier: BSD-2-Clause-Patent
8
9**/
10
11#ifndef __EMU_MAGIC_PAGE_LIB_H__
12#define __EMU_MAGIC_PAGE_LIB_H__
13
14#include <PiPei.h>
15#include <Library/PcdLib.h>
16#include <Protocol/EmuThunk.h>
17
18typedef struct {
19 // Used by PEI Core and PEIMs to store the PEI Services pointer.
20 // Privilege issues prevent using the PI mechanism in the emulator.
21 CONST EFI_PEI_SERVICES **PeiServicesTablePointer;
22
23 // Used by SecPeiServicesLib
25
26 // Needed by PEI PEI PeCoffLoaderExtraActionLib
27 EMU_THUNK_PROTOCOL *Thunk;
29
30#define EMU_MAGIC_PAGE() ((EMU_MAGIC_PAGE_LAYOUT *)((UINTN)PcdGet64 (PcdPeiServicesTablePage)))
31
32#endif
#define CONST
Definition: Base.h:259