3 Copyright (c) 2006, Intel Corporation
4 All rights reserved. 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
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.
22 #ifndef __NT_PEI_AUTOSCAN_H__
23 #define __NT_PEI_AUTOSCAN_H__
27 #define PEI_NT_AUTOSCAN_PPI_GUID \
29 0xdce384d, 0x7c, 0x4ba5, {0x94, 0xbd, 0xf, 0x6e, 0xb6, 0x4d, 0x2a, 0xa9 } \
34 (EFIAPI
*PEI_NT_AUTOSCAN
) (
36 OUT EFI_PHYSICAL_ADDRESS
* MemoryBase
,
37 OUT UINT64
*MemorySize
43 This service is called from Index == 0 until it returns EFI_UNSUPPORTED.
44 It allows discontiguous memory regions to be supported by the emulator.
45 It uses gSystemMemory[] and gSystemMemoryCount that were created by
46 parsing the Windows environment variable EFI_MEMORY_SIZE.
47 The size comes from the varaible and the address comes from the call to
51 Index - Which memory region to use
52 MemoryBase - Return Base address of memory region
53 MemorySize - Return size in bytes of the memory region
56 EFI_SUCCESS - If memory region was mapped
57 EFI_UNSUPPORTED - If Index is not supported
61 PEI_NT_AUTOSCAN NtAutoScan
;
62 } PEI_NT_AUTOSCAN_PPI
;
64 extern EFI_GUID gPeiNtAutoScanPpiGuid
;