From 878ddf1fc3540a715f63594ed22b6929e881afb4 Mon Sep 17 00:00:00 2001 From: bbahnsen Date: Fri, 21 Apr 2006 22:54:32 +0000 Subject: Initial import. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@3 6f19259b-4bc3-4df7-8a09-765794883524 --- EdkModulePkg/Include/Protocol/DebugAssert.h | 89 +++++++++++++++++++++++++++++ 1 file changed, 89 insertions(+) create mode 100644 EdkModulePkg/Include/Protocol/DebugAssert.h (limited to 'EdkModulePkg/Include/Protocol/DebugAssert.h') diff --git a/EdkModulePkg/Include/Protocol/DebugAssert.h b/EdkModulePkg/Include/Protocol/DebugAssert.h new file mode 100644 index 0000000000..9d26d83277 --- /dev/null +++ b/EdkModulePkg/Include/Protocol/DebugAssert.h @@ -0,0 +1,89 @@ +/*++ + +Copyright (c) 2006, Intel Corporation +All rights reserved. This program and the accompanying materials +are licensed and made available under the terms and conditions of the BSD License +which 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. + +Module Name: + + DebugAssert.h + +Abstract: + + This protocol allows provides debug services to a driver. This is not + debugger support, but things like ASSERT() and DEBUG() macros + +--*/ + +#ifndef _DEBUG_ASSERT_H_ +#define _DEBUG_ASSERT_H_ + + +#define EFI_DEBUG_ASSERT_PROTOCOL_GUID \ + { 0xbe499c92, 0x7d4b, 0x11d4, {0xbc, 0xee, 0x0, 0x80, 0xc7, 0x3c, 0x88, 0x81 } } + +// +// Forward reference for pure ANSI compatability +// +typedef struct _EFI_DEBUG_ASSERT_PROTOCOL EFI_DEBUG_ASSERT_PROTOCOL; + + +typedef +EFI_STATUS +(EFIAPI *EFI_DEBUG_ASSERT) ( + IN EFI_DEBUG_ASSERT_PROTOCOL *This, + IN CHAR8 *FileName, + IN INTN LineNumber, + IN CHAR8 *Description + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_DEBUG_PRINT) ( + IN EFI_DEBUG_ASSERT_PROTOCOL *This, + IN UINTN ErrorLevel, + IN CHAR8 *Format, + IN VA_LIST Marker + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_POST_CODE) ( + IN EFI_DEBUG_ASSERT_PROTOCOL *This, + IN UINT16 PostCode, + IN CHAR8 *PostCodeString OPTIONAL + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_GET_ERROR_LEVEL) ( + IN EFI_DEBUG_ASSERT_PROTOCOL *This, + IN UINTN *ErrorLevel + ); + +typedef +EFI_STATUS +(EFIAPI *EFI_SET_ERROR_LEVEL) ( + IN EFI_DEBUG_ASSERT_PROTOCOL *This, + IN UINTN ErrorLevel + ); + +struct _EFI_DEBUG_ASSERT_PROTOCOL { + + EFI_DEBUG_ASSERT Assert; + EFI_DEBUG_PRINT Print; + EFI_POST_CODE PostCode; + + EFI_GET_ERROR_LEVEL GetErrorLevel; + EFI_SET_ERROR_LEVEL SetErrorLevel; + +}; + +extern EFI_GUID gEfiDebugAssertProtocolGuid; + +#endif -- cgit v1.2.3