]> git.proxmox.com Git - mirror_edk2.git/blob - EdkCompatibilityPkg/Sample/Platform/Nt32/Ppi/NtAutoScan/NtAutoScan.h
5c20db24261be30d8bc6df89e994f26f02d1f568
[mirror_edk2.git] / EdkCompatibilityPkg / Sample / Platform / Nt32 / Ppi / NtAutoScan / NtAutoScan.h
1 /*++
2
3 Copyright (c) 2004 - 2008, Intel Corporation. All rights reserved.<BR>
4 This program and the accompanying materials
5 are licensed and made available under the terms and conditions of the BSD License
6 which accompanies this distribution. The full text of the license may be found at
7 http://opensource.org/licenses/bsd-license.php
8
9 THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
10 WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
11
12 Module Name:
13
14 NtAutoscan.h
15
16 Abstract:
17
18 Nt Autoscan PPI
19
20 --*/
21
22 #ifndef _NT_PEI_AUTOSCAN_H_
23 #define _NT_PEI_AUTOSCAN_H_
24
25 #include "Tiano.h"
26 #include "PeiHob.h"
27
28 #define PEI_NT_AUTOSCAN_PPI_GUID \
29 { \
30 0xdce384d, 0x7c, 0x4ba5, {0x94, 0xbd, 0xf, 0x6e, 0xb6, 0x4d, 0x2a, 0xa9} \
31 }
32
33 typedef
34 EFI_STATUS
35 (EFIAPI *PEI_NT_AUTOSCAN) (
36 IN UINTN Index,
37 OUT EFI_PHYSICAL_ADDRESS * MemoryBase,
38 OUT UINT64 *MemorySize
39 );
40
41 /*++
42
43 Routine Description:
44 This service is called from Index == 0 until it returns EFI_UNSUPPORTED.
45 It allows discontiguous memory regions to be supported by the emulator.
46 It uses gSystemMemory[] and gSystemMemoryCount that were created by
47 parsing the Windows environment variable EFI_MEMORY_SIZE.
48 The size comes from the varaible and the address comes from the call to
49 WinNtOpenFile.
50
51 Arguments:
52 Index - Which memory region to use
53 MemoryBase - Return Base address of memory region
54 MemorySize - Return size in bytes of the memory region
55
56 Returns:
57 EFI_SUCCESS - If memory region was mapped
58 EFI_UNSUPPORTED - If Index is not supported
59
60 --*/
61 typedef struct {
62 PEI_NT_AUTOSCAN NtAutoScan;
63 } PEI_NT_AUTOSCAN_PPI;
64
65 extern EFI_GUID gPeiNtAutoScanPpiGuid;
66
67 #endif