2007-06-28 09:00:39 +02:00
|
|
|
/*++
|
|
|
|
|
|
|
|
Copyright (c) 2004, 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
|
|
|
|
//
|
|
|
|
EFI_FORWARD_DECLARATION (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
|
|
|
|
);
|
|
|
|
|
2008-03-20 21:45:58 +01:00
|
|
|
struct _EFI_DEBUG_ASSERT_PROTOCOL {
|
2007-06-28 09:00:39 +02:00
|
|
|
|
|
|
|
EFI_DEBUG_ASSERT Assert;
|
|
|
|
EFI_DEBUG_PRINT Print;
|
|
|
|
EFI_POST_CODE PostCode;
|
|
|
|
|
|
|
|
EFI_GET_ERROR_LEVEL GetErrorLevel;
|
|
|
|
EFI_SET_ERROR_LEVEL SetErrorLevel;
|
|
|
|
|
2008-03-20 21:45:58 +01:00
|
|
|
};
|
2007-06-28 09:00:39 +02:00
|
|
|
|
|
|
|
extern EFI_GUID gEfiDebugAssertProtocolGuid;
|
|
|
|
|
|
|
|
#endif
|