Initial import.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@3 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
66
EdkNt32Pkg/Include/Ppi/NtAutoscan.h
Normal file
66
EdkNt32Pkg/Include/Ppi/NtAutoscan.h
Normal file
@@ -0,0 +1,66 @@
|
||||
/*++
|
||||
|
||||
Copyright (c) 2006, Intel Corporation
|
||||
All rights reserved. This program and the accompanying materials
|
||||
are licensed and made available under the terms and conditions of the BSD License
|
||||
which accompanies this distribution. The full text of the license may be found at
|
||||
http://opensource.org/licenses/bsd-license.php
|
||||
|
||||
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
|
||||
|
||||
Module Name:
|
||||
|
||||
NtAutoscan.h
|
||||
|
||||
Abstract:
|
||||
|
||||
Nt Autoscan PPI
|
||||
|
||||
--*/
|
||||
|
||||
#ifndef __NT_PEI_AUTOSCAN_H__
|
||||
#define __NT_PEI_AUTOSCAN_H__
|
||||
|
||||
#include <WinNtDxe.h>
|
||||
|
||||
#define PEI_NT_AUTOSCAN_PPI_GUID \
|
||||
{ \
|
||||
0xdce384d, 0x7c, 0x4ba5, {0x94, 0xbd, 0xf, 0x6e, 0xb6, 0x4d, 0x2a, 0xa9 } \
|
||||
}
|
||||
|
||||
typedef
|
||||
EFI_STATUS
|
||||
(EFIAPI *PEI_NT_AUTOSCAN) (
|
||||
IN UINTN Index,
|
||||
OUT EFI_PHYSICAL_ADDRESS * MemoryBase,
|
||||
OUT UINT64 *MemorySize
|
||||
);
|
||||
|
||||
/*++
|
||||
|
||||
Routine Description:
|
||||
This service is called from Index == 0 until it returns EFI_UNSUPPORTED.
|
||||
It allows discontiguous memory regions to be supported by the emulator.
|
||||
It uses gSystemMemory[] and gSystemMemoryCount that were created by
|
||||
parsing the Windows environment variable EFI_MEMORY_SIZE.
|
||||
The size comes from the varaible and the address comes from the call to
|
||||
WinNtOpenFile.
|
||||
|
||||
Arguments:
|
||||
Index - Which memory region to use
|
||||
MemoryBase - Return Base address of memory region
|
||||
MemorySize - Return size in bytes of the memory region
|
||||
|
||||
Returns:
|
||||
EFI_SUCCESS - If memory region was mapped
|
||||
EFI_UNSUPPORTED - If Index is not supported
|
||||
|
||||
--*/
|
||||
typedef struct {
|
||||
PEI_NT_AUTOSCAN NtAutoScan;
|
||||
} PEI_NT_AUTOSCAN_PPI;
|
||||
|
||||
extern EFI_GUID gPeiNtAutoScanPpiGuid;
|
||||
|
||||
#endif
|
62
EdkNt32Pkg/Include/Ppi/NtFwh.h
Normal file
62
EdkNt32Pkg/Include/Ppi/NtFwh.h
Normal file
@@ -0,0 +1,62 @@
|
||||
/*++
|
||||
|
||||
Copyright (c) 2006, Intel Corporation
|
||||
All rights reserved. This program and the accompanying materials
|
||||
are licensed and made available under the terms and conditions of the BSD License
|
||||
which accompanies this distribution. The full text of the license may be found at
|
||||
http://opensource.org/licenses/bsd-license.php
|
||||
|
||||
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
|
||||
|
||||
Module Name:
|
||||
|
||||
NtFwh.h
|
||||
|
||||
Abstract:
|
||||
|
||||
WinNt FWH PPI as defined in Tiano
|
||||
|
||||
--*/
|
||||
|
||||
#ifndef __NT_PEI_FWH_H__
|
||||
#define __NT_PEI_FWH_H__
|
||||
|
||||
#include <WinNtDxe.h>
|
||||
|
||||
#define NT_FWH_PPI_GUID \
|
||||
{ \
|
||||
0x4e76928f, 0x50ad, 0x4334, {0xb0, 0x6b, 0xa8, 0x42, 0x13, 0x10, 0x8a, 0x57 } \
|
||||
}
|
||||
|
||||
typedef
|
||||
EFI_STATUS
|
||||
(EFIAPI *NT_FWH_INFORMATION) (
|
||||
IN UINTN Index,
|
||||
IN OUT EFI_PHYSICAL_ADDRESS * FdBase,
|
||||
IN OUT UINT64 *FdSize
|
||||
);
|
||||
|
||||
/*++
|
||||
|
||||
Routine Description:
|
||||
Return the FD Size and base address. Since the FD is loaded from a
|
||||
file into Windows memory only the SEC will know it's address.
|
||||
|
||||
Arguments:
|
||||
Index - Which FD, starts at zero.
|
||||
FdSize - Size of the FD in bytes
|
||||
FdBase - Start address of the FD. Assume it points to an FV Header
|
||||
|
||||
Returns:
|
||||
EFI_SUCCESS - Return the Base address and size of the FV
|
||||
EFI_UNSUPPORTED - Index does nto map to an FD in the system
|
||||
|
||||
--*/
|
||||
typedef struct {
|
||||
NT_FWH_INFORMATION NtFwh;
|
||||
} NT_FWH_PPI;
|
||||
|
||||
extern EFI_GUID gNtFwhPpiGuid;
|
||||
|
||||
#endif
|
65
EdkNt32Pkg/Include/Ppi/NtPeiLoadFile.h
Normal file
65
EdkNt32Pkg/Include/Ppi/NtPeiLoadFile.h
Normal file
@@ -0,0 +1,65 @@
|
||||
/*++
|
||||
|
||||
Copyright (c) 2006, Intel Corporation
|
||||
All rights reserved. This program and the accompanying materials
|
||||
are licensed and made available under the terms and conditions of the BSD License
|
||||
which accompanies this distribution. The full text of the license may be found at
|
||||
http://opensource.org/licenses/bsd-license.php
|
||||
|
||||
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
|
||||
|
||||
Module Name:
|
||||
|
||||
NtPeiLoadFile.h
|
||||
|
||||
Abstract:
|
||||
|
||||
WinNt Load File PPI.
|
||||
|
||||
When the PEI core is done it calls the DXE IPL via PPI
|
||||
|
||||
--*/
|
||||
|
||||
#ifndef __NT_PEI_LOAD_FILE_H__
|
||||
#define __NT_PEI_LOAD_FILE_H__
|
||||
|
||||
#include <WinNtDxe.h>
|
||||
|
||||
#define NT_PEI_LOAD_FILE_GUID \
|
||||
{ \
|
||||
0xfd0c65eb, 0x405, 0x4cd2, {0x8a, 0xee, 0xf4, 0x0, 0xef, 0x13, 0xba, 0xc2 } \
|
||||
}
|
||||
|
||||
typedef
|
||||
EFI_STATUS
|
||||
(EFIAPI *NT_PEI_LOAD_FILE) (
|
||||
VOID *Pe32Data,
|
||||
EFI_PHYSICAL_ADDRESS *ImageAddress,
|
||||
UINT64 *ImageSize,
|
||||
EFI_PHYSICAL_ADDRESS *EntryPoint
|
||||
);
|
||||
|
||||
/*++
|
||||
|
||||
Routine Description:
|
||||
Loads and relocates a PE/COFF image into memory.
|
||||
|
||||
Arguments:
|
||||
Pe32Data - The base address of the PE/COFF file that is to be loaded and relocated
|
||||
ImageAddress - The base address of the relocated PE/COFF image
|
||||
ImageSize - The size of the relocated PE/COFF image
|
||||
EntryPoint - The entry point of the relocated PE/COFF image
|
||||
|
||||
Returns:
|
||||
EFI_SUCCESS - The file was loaded and relocated
|
||||
EFI_OUT_OF_RESOURCES - There was not enough memory to load and relocate the PE/COFF file
|
||||
|
||||
--*/
|
||||
typedef struct {
|
||||
NT_PEI_LOAD_FILE PeiLoadFileService;
|
||||
} NT_PEI_LOAD_FILE_PPI;
|
||||
|
||||
extern EFI_GUID gNtPeiLoadFilePpiGuid;
|
||||
|
||||
#endif
|
56
EdkNt32Pkg/Include/Ppi/NtThunk.h
Normal file
56
EdkNt32Pkg/Include/Ppi/NtThunk.h
Normal file
@@ -0,0 +1,56 @@
|
||||
/*++
|
||||
|
||||
Copyright (c) 2006, Intel Corporation
|
||||
All rights reserved. This program and the accompanying materials
|
||||
are licensed and made available under the terms and conditions of the BSD License
|
||||
which accompanies this distribution. The full text of the license may be found at
|
||||
http://opensource.org/licenses/bsd-license.php
|
||||
|
||||
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
|
||||
|
||||
Module Name:
|
||||
|
||||
NtThunk.h
|
||||
|
||||
Abstract:
|
||||
|
||||
WinNt Thunk interface PPI
|
||||
|
||||
--*/
|
||||
|
||||
#ifndef __NT_PEI_WIN_NT_THUNK_H__
|
||||
#define __NT_PEI_WIN_NT_THUNK_H__
|
||||
|
||||
#include <WinNtDxe.h>
|
||||
|
||||
#define PEI_NT_THUNK_PPI_GUID \
|
||||
{ \
|
||||
0x98c281e5, 0xf906, 0x43dd, {0xa9, 0x2b, 0xb0, 0x3, 0xbf, 0x27, 0x65, 0xda } \
|
||||
}
|
||||
|
||||
typedef
|
||||
VOID *
|
||||
(EFIAPI *PEI_NT_THUNK_INTERFACE) (
|
||||
VOID
|
||||
);
|
||||
|
||||
/*++
|
||||
|
||||
Routine Description:
|
||||
Export of EFI_WIN_NT_THUNK_PROTOCOL from the Windows SEC.
|
||||
|
||||
Arguments:
|
||||
InterfaceBase - Address of the EFI_WIN_NT_THUNK_PROTOCOL
|
||||
|
||||
Returns:
|
||||
EFI_SUCCESS - Data returned
|
||||
|
||||
--*/
|
||||
typedef struct {
|
||||
PEI_NT_THUNK_INTERFACE NtThunk;
|
||||
} PEI_NT_THUNK_PPI;
|
||||
|
||||
extern EFI_GUID gPeiNtThunkPpiGuid;
|
||||
|
||||
#endif
|
Reference in New Issue
Block a user