/** @file | |
Debug Mask Protocol. | |
Copyright (c) 2011, Intel Corporation. All rights reserved.<BR> | |
This program and the accompanying materials are licensed and made available under | |
the terms and conditions of the BSD License that 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. | |
**/ | |
#ifndef __DEBUG_MASK_H__ | |
#define __DEBUG_MASK_H__ | |
/// | |
/// Protocol GUID for DXE Phase Debug Mask support | |
/// | |
#define EFI_DEBUG_MASK_PROTOCOL_GUID \ | |
{ 0x4c8a2451, 0xc207, 0x405b, {0x96, 0x94, 0x99, 0xea, 0x13, 0x25, 0x13, 0x41} } | |
/// | |
/// Forward reference for pure ANSI compatability | |
/// | |
typedef struct _EFI_DEBUG_MASK_PROTOCOL EFI_DEBUG_MASK_PROTOCOL; | |
/// | |
/// | |
/// | |
#define EFI_DEBUG_MASK_REVISION 0x00010000 | |
// | |
// DebugMask member functions definition | |
// | |
typedef | |
EFI_STATUS | |
(EFIAPI * EFI_GET_DEBUG_MASK) ( | |
IN EFI_DEBUG_MASK_PROTOCOL *This, | |
IN OUT UINTN *CurrentDebugMask | |
); | |
typedef | |
EFI_STATUS | |
(EFIAPI *EFI_SET_DEBUG_MASK) ( | |
IN EFI_DEBUG_MASK_PROTOCOL *This, | |
IN UINTN NewDebugMask | |
); | |
/// | |
/// DebugMask protocol definition | |
/// | |
struct _EFI_DEBUG_MASK_PROTOCOL { | |
INT64 Revision; | |
EFI_GET_DEBUG_MASK GetDebugMask; | |
EFI_SET_DEBUG_MASK SetDebugMask; | |
}; | |
extern EFI_GUID gEfiDebugMaskProtocolGuid; | |
/// | |
/// GUID used to store the global debug mask in an the "EFIDebug" EFI Variabe | |
/// Also used as a GUIDed HOB that contains a UINT32 debug mask default value | |
/// | |
#define EFI_GENERIC_VARIABLE_GUID \ | |
{ 0x59d1c24f, 0x50f1, 0x401a, {0xb1, 0x01, 0xf3, 0x3e, 0x0d, 0xae, 0xd4, 0x43} } | |
#define DEBUG_MASK_VARIABLE_NAME L"EFIDebug" | |
extern EFI_GUID gEfiGenericVariableGuid; | |
#endif |