3 Copyright (c) 1999 - 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.
19 This file defines SMM SMRAM Access abstraction protocol defined
24 #ifndef _SMM_ACCESS_H_
25 #define _SMM_ACCESS_H_
27 #include EFI_GUID_DEFINITION (SmramMemoryReserve)
29 EFI_FORWARD_DECLARATION (EFI_SMM_ACCESS_PROTOCOL
);
31 #define EFI_SMM_ACCESS_PROTOCOL_GUID \
33 0x3792095a, 0xe309, 0x4c1e, 0xaa, 0x01, 0x85, 0xf5, 0x65, 0x5a, 0x17, 0xf1 \
37 // SMM Access specification Data Structures
41 (EFIAPI
*EFI_SMM_OPEN
) (
42 IN EFI_SMM_ACCESS_PROTOCOL
* This
,
48 (EFIAPI
*EFI_SMM_CLOSE
) (
49 IN EFI_SMM_ACCESS_PROTOCOL
* This
,
55 (EFIAPI
*EFI_SMM_LOCK
) (
56 IN EFI_SMM_ACCESS_PROTOCOL
* This
,
62 (EFIAPI
*EFI_SMM_CAPABILITIES
) (
63 IN EFI_SMM_ACCESS_PROTOCOL
* This
,
64 IN OUT UINTN
*SmramMapSize
,
65 IN OUT EFI_SMRAM_DESCRIPTOR
* SmramMap
68 typedef struct _EFI_SMM_ACCESS_PROTOCOL
{
72 EFI_SMM_CAPABILITIES GetCapabilities
;
75 } EFI_SMM_ACCESS_PROTOCOL
;
77 extern EFI_GUID gEfiSmmAccessProtocolGuid
;