Home | History | Annotate | Download | only in NtThunk
      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   NtThunk.h
     15 
     16 Abstract:
     17 
     18   WinNt Thunk interface PPI
     19 
     20 --*/
     21 
     22 #ifndef _NT_PEI_WIN_NT_THUNK_H_
     23 #define _NT_PEI_WIN_NT_THUNK_H_
     24 
     25 #include "Tiano.h"
     26 #include "PeiHob.h"
     27 
     28 #define PEI_NT_THUNK_GUID \
     29   { \
     30     0x98c281e5, 0xf906, 0x43dd, {0xa9, 0x2b, 0xb0, 0x3, 0xbf, 0x27, 0x65, 0xda} \
     31   }
     32 
     33 typedef
     34 EFI_STATUS
     35 (EFIAPI *PEI_NT_THUNK_INTERFACE) (
     36   IN OUT UINT64                *InterfaceSize,
     37   IN OUT EFI_PHYSICAL_ADDRESS  * InterfaceBase
     38   );
     39 
     40 /*++
     41 
     42 Routine Description:
     43   Export of EFI_WIN_NT_THUNK_PROTOCOL from the Windows SEC.
     44 
     45 Arguments:
     46   InterfaceSize - sizeof (EFI_WIN_NT_THUNK_PROTOCOL);
     47   InterfaceBase - Address of the EFI_WIN_NT_THUNK_PROTOCOL
     48 
     49 Returns:
     50   EFI_SUCCESS - Data returned
     51 
     52 --*/
     53 typedef struct {
     54   PEI_NT_THUNK_INTERFACE  NtThunk;
     55 } PEI_NT_THUNK_PPI;
     56 
     57 extern EFI_GUID gPeiNtThunkPpiGuid;
     58 
     59 #endif
     60