Initialize the include folder for NT32Pkg

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@2749 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
klu2
2007-06-26 08:25:56 +00:00
parent 00b41832d5
commit 45a20a7fd8
12 changed files with 2281 additions and 0 deletions

View 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

View 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

View 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

View 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