1
0
mirror of https://git.FreeBSD.org/src.git synced 2024-12-16 10:20:30 +00:00

Import of the 20020308 Intel ACPI CA update.

This commit is contained in:
Mike Smith 2002-03-16 02:18:13 +00:00
parent e7bb0990c0
commit 6ff98c910d
Notes: svn2git 2020-12-20 02:59:44 +00:00
svn path=/vendor-sys/acpica/dist/; revision=92388
21 changed files with 153 additions and 58 deletions

View File

@ -1,7 +1,7 @@
/****************************************************************************** /******************************************************************************
* *
* Name: acconfig.h - Global configuration constants * Name: acconfig.h - Global configuration constants
* $Revision: 90 $ * $Revision: 94 $
* *
*****************************************************************************/ *****************************************************************************/
@ -145,7 +145,7 @@
/* Version string */ /* Version string */
#define ACPI_CA_VERSION 0x20020214 #define ACPI_CA_VERSION 0x20020308
/* Version of ACPI supported */ /* Version of ACPI supported */

View File

@ -1,7 +1,7 @@
/****************************************************************************** /******************************************************************************
* *
* Name: acdebug.h - ACPI/AML debugger * Name: acdebug.h - ACPI/AML debugger
* $Revision: 56 $ * $Revision: 57 $
* *
*****************************************************************************/ *****************************************************************************/
@ -389,7 +389,7 @@ AcpiDbCommandDispatch (
ACPI_WALK_STATE *WalkState, ACPI_WALK_STATE *WalkState,
ACPI_PARSE_OBJECT *Op); ACPI_PARSE_OBJECT *Op);
void void ACPI_SYSTEM_XFACE
AcpiDbExecuteThread ( AcpiDbExecuteThread (
void *Context); void *Context);

View File

@ -1,7 +1,7 @@
/****************************************************************************** /******************************************************************************
* *
* Name: acefi.h - OS specific defines, etc. * Name: acefi.h - OS specific defines, etc.
* $Revision: 7 $ * $Revision: 9 $
* *
*****************************************************************************/ *****************************************************************************/
@ -128,6 +128,19 @@
#define COMPILER_DEPENDENT_UINT64 unsigned __int64 #define COMPILER_DEPENDENT_UINT64 unsigned __int64
/*
* Calling conventions:
*
* ACPI_SYSTEM_XFACE - Interfaces to host OS (handlers, threads)
* ACPI_EXTERNAL_XFACE - External ACPI interfaces
* ACPI_INTERNAL_XFACE - Internal ACPI interfaces
* ACPI_INTERNAL_VAR_XFACE - Internal variable-parameter list interfaces
*/
#define ACPI_SYSTEM_XFACE
#define ACPI_EXTERNAL_XFACE
#define ACPI_INTERNAL_XFACE
#define ACPI_INTERNAL_VAR_XFACE
/* warn C4142: redefinition of type */ /* warn C4142: redefinition of type */
#pragma warning(disable:4142) #pragma warning(disable:4142)

View File

@ -1,7 +1,7 @@
/****************************************************************************** /******************************************************************************
* *
* Name: acenv.h - Generation environment specific items * Name: acenv.h - Generation environment specific items
* $Revision: 83 $ * $Revision: 85 $
* *
*****************************************************************************/ *****************************************************************************/
@ -202,6 +202,9 @@
#elif defined(_AED_EFI) #elif defined(_AED_EFI)
#include "acefi.h" #include "acefi.h"
#elif defined(MSDOS)
#include "acdos16.h"
#elif defined(WIN32) #elif defined(WIN32)
#include "acwin.h" #include "acwin.h"
@ -355,8 +358,22 @@ typedef char *va_list;
*/ */
/* Unrecognized compiler, use defaults */ /* Unrecognized compiler, use defaults */
#ifndef ACPI_ASM_MACROS #ifndef ACPI_ASM_MACROS
/*
* Calling conventions:
*
* ACPI_SYSTEM_XFACE - Interfaces to host OS (handlers, threads)
* ACPI_EXTERNAL_XFACE - External ACPI interfaces
* ACPI_INTERNAL_XFACE - Internal ACPI interfaces
* ACPI_INTERNAL_VAR_XFACE - Internal variable-parameter list interfaces
*/
#define ACPI_SYSTEM_XFACE
#define ACPI_EXTERNAL_XFACE
#define ACPI_INTERNAL_XFACE
#define ACPI_INTERNAL_VAR_XFACE
#define ACPI_ASM_MACROS #define ACPI_ASM_MACROS
#define causeinterrupt(level) #define causeinterrupt(level)
#define BREAKPOINT3 #define BREAKPOINT3
@ -382,12 +399,8 @@ typedef char *va_list;
/****************************************************************************** /******************************************************************************
* *
* Compiler-specific * Compiler-specific information is contained in the compiler-specific
* headers.
* *
*****************************************************************************/ *****************************************************************************/
/* this has been moved to compiler-specific headers, which are included from the
platform header. */
#endif /* __ACENV_H__ */ #endif /* __ACENV_H__ */

View File

@ -1,7 +1,7 @@
/****************************************************************************** /******************************************************************************
* *
* Name: acevents.h - Event subcomponent prototypes and defines * Name: acevents.h - Event subcomponent prototypes and defines
* $Revision: 74 $ * $Revision: 75 $
* *
*****************************************************************************/ *****************************************************************************/
@ -173,7 +173,7 @@ AcpiEvQueueNotifyRequest (
ACPI_NAMESPACE_NODE *Node, ACPI_NAMESPACE_NODE *Node,
UINT32 NotifyValue); UINT32 NotifyValue);
void void ACPI_SYSTEM_XFACE
AcpiEvNotifyDispatch ( AcpiEvNotifyDispatch (
void *Context); void *Context);

View File

@ -1,7 +1,7 @@
/****************************************************************************** /******************************************************************************
* *
* Name: acgcc.h - GCC specific defines, etc. * Name: acgcc.h - GCC specific defines, etc.
* $Revision: 17 $ * $Revision: 19 $
* *
*****************************************************************************/ *****************************************************************************/
@ -122,9 +122,26 @@
#define _IA64 #define _IA64
#define COMPILER_DEPENDENT_UINT64 unsigned long #define COMPILER_DEPENDENT_UINT64 unsigned long
/*
* Calling conventions:
*
* ACPI_SYSTEM_XFACE - Interfaces to host OS (handlers, threads)
* ACPI_EXTERNAL_XFACE - External ACPI interfaces
* ACPI_INTERNAL_XFACE - Internal ACPI interfaces
* ACPI_INTERNAL_VAR_XFACE - Internal variable-parameter list interfaces
*/
#define ACPI_SYSTEM_XFACE
#define ACPI_EXTERNAL_XFACE
#define ACPI_INTERNAL_XFACE
#define ACPI_INTERNAL_VAR_XFACE
/* Single threaded */ /* Single threaded */
#define ACPI_APPLICATION #define ACPI_APPLICATION
/* Asm macros */
#define ACPI_ASM_MACROS #define ACPI_ASM_MACROS
#define causeinterrupt(level) #define causeinterrupt(level)
#define BREAKPOINT3 #define BREAKPOINT3
@ -186,6 +203,22 @@
#else /* DO IA32 */ #else /* DO IA32 */
#define COMPILER_DEPENDENT_UINT64 unsigned long long #define COMPILER_DEPENDENT_UINT64 unsigned long long
/*
* Calling conventions:
*
* ACPI_SYSTEM_XFACE - Interfaces to host OS (handlers, threads)
* ACPI_EXTERNAL_XFACE - External ACPI interfaces
* ACPI_INTERNAL_XFACE - Internal ACPI interfaces
* ACPI_INTERNAL_VAR_XFACE - Internal variable-parameter list interfaces
*/
#define ACPI_SYSTEM_XFACE
#define ACPI_EXTERNAL_XFACE
#define ACPI_INTERNAL_XFACE
#define ACPI_INTERNAL_VAR_XFACE
/* Asm macros */
#define ACPI_ASM_MACROS #define ACPI_ASM_MACROS
#define causeinterrupt(level) #define causeinterrupt(level)
#define BREAKPOINT3 #define BREAKPOINT3

View File

@ -154,12 +154,12 @@ typedef struct AcpiFatalInfo
* Types specific to the OS service interfaces * Types specific to the OS service interfaces
*/ */
typedef typedef UINT32
UINT32 (*OSD_HANDLER) ( (ACPI_SYSTEM_XFACE *OSD_HANDLER) (
void *Context); void *Context);
typedef typedef void
void (*OSD_EXECUTION_CALLBACK) ( (ACPI_SYSTEM_XFACE *OSD_EXECUTION_CALLBACK) (
void *Context); void *Context);
@ -360,7 +360,7 @@ AcpiOsSignal (
* Debug print routines * Debug print routines
*/ */
void void ACPI_INTERNAL_VAR_XFACE
AcpiOsPrintf ( AcpiOsPrintf (
const NATIVE_CHAR *Format, const NATIVE_CHAR *Format,
...); ...);

View File

@ -1,7 +1,7 @@
/****************************************************************************** /******************************************************************************
* *
* Name: actypes.h - Common data types for the entire ACPI subsystem * Name: actypes.h - Common data types for the entire ACPI subsystem
* $Revision: 223 $ * $Revision: 224 $
* *
*****************************************************************************/ *****************************************************************************/
@ -868,6 +868,8 @@ typedef struct
typedef struct typedef struct
{ {
UINT32 Length;
ACPI_PHYSICAL_ADDRESS Address;
ACPI_PHYSICAL_ADDRESS MappedPhysicalAddress; ACPI_PHYSICAL_ADDRESS MappedPhysicalAddress;
UINT8 *MappedLogicalAddress; UINT8 *MappedLogicalAddress;
UINT32 MappedLength; UINT32 MappedLength;

View File

@ -1,7 +1,7 @@
/****************************************************************************** /******************************************************************************
* *
* Name: acutils.h -- prototypes for the common (subsystem-wide) procedures * Name: acutils.h -- prototypes for the common (subsystem-wide) procedures
* $Revision: 129 $ * $Revision: 130 $
* *
*****************************************************************************/ *****************************************************************************/
@ -444,7 +444,7 @@ AcpiUtDumpBuffer (
UINT32 Display, UINT32 Display,
UINT32 componentId); UINT32 componentId);
void void ACPI_INTERNAL_VAR_XFACE
AcpiUtDebugPrint ( AcpiUtDebugPrint (
UINT32 RequestedDebugLevel, UINT32 RequestedDebugLevel,
UINT32 LineNumber, UINT32 LineNumber,
@ -452,7 +452,7 @@ AcpiUtDebugPrint (
char *Format, char *Format,
...) ACPI_PRINTF_LIKE_FUNC; ...) ACPI_PRINTF_LIKE_FUNC;
void void ACPI_INTERNAL_VAR_XFACE
AcpiUtDebugPrintRaw ( AcpiUtDebugPrintRaw (
UINT32 RequestedDebugLevel, UINT32 RequestedDebugLevel,
UINT32 LineNumber, UINT32 LineNumber,

View File

@ -1,7 +1,7 @@
/******************************************************************************* /*******************************************************************************
* *
* Module Name: dbexec - debugger control method execution * Module Name: dbexec - debugger control method execution
* $Revision: 38 $ * $Revision: 39 $
* *
******************************************************************************/ ******************************************************************************/
@ -389,7 +389,7 @@ AcpiDbExecute (
* *
******************************************************************************/ ******************************************************************************/
void void ACPI_SYSTEM_XFACE
AcpiDbMethodThread ( AcpiDbMethodThread (
void *Context) void *Context)
{ {

View File

@ -1,7 +1,7 @@
/******************************************************************************* /*******************************************************************************
* *
* Module Name: dbinput - user front-end to the AML debugger * Module Name: dbinput - user front-end to the AML debugger
* $Revision: 80 $ * $Revision: 81 $
* *
******************************************************************************/ ******************************************************************************/
@ -839,7 +839,7 @@ AcpiDbCommandDispatch (
* *
******************************************************************************/ ******************************************************************************/
void void ACPI_SYSTEM_XFACE
AcpiDbExecuteThread ( AcpiDbExecuteThread (
void *Context) void *Context)
{ {

View File

@ -1,7 +1,7 @@
/****************************************************************************** /******************************************************************************
* *
* Module Name: dswload - Dispatcher namespace load callbacks * Module Name: dswload - Dispatcher namespace load callbacks
* $Revision: 60 $ * $Revision: 61 $
* *
*****************************************************************************/ *****************************************************************************/
@ -560,8 +560,8 @@ AcpiDsLoad2EndOp (
ACPI_FUNCTION_NAME ("DsLoad2EndOp"); ACPI_FUNCTION_NAME ("DsLoad2EndOp");
Op = WalkState->Op; Op = WalkState->Op;
ACPI_DEBUG_PRINT ((ACPI_DB_DISPATCH, "Opcode [%4.4X] Op %p State %p\n", ACPI_DEBUG_PRINT ((ACPI_DB_DISPATCH, "Opcode [%s] Op %p State %p\n",
Op->Opcode, Op, WalkState)); WalkState->OpInfo->Name, Op, WalkState));
/* Only interested in opcodes that have namespace objects */ /* Only interested in opcodes that have namespace objects */

View File

@ -1,7 +1,7 @@
/****************************************************************************** /******************************************************************************
* *
* Module Name: evevent - Fixed and General Purpose Even handling and dispatch * Module Name: evevent - Fixed and General Purpose Even handling and dispatch
* $Revision: 69 $ * $Revision: 71 $
* *
*****************************************************************************/ *****************************************************************************/
@ -543,7 +543,7 @@ AcpiEvGpeInitialize (void)
GpeNumber = GpeRegisterInfo->BaseGpeNumber + j; GpeNumber = GpeRegisterInfo->BaseGpeNumber + j;
AcpiGbl_GpeNumberToIndex[GpeNumber].NumberIndex = (UINT8) GpeNumberIndex; AcpiGbl_GpeNumberToIndex[GpeNumber].NumberIndex = (UINT8) GpeNumberIndex;
AcpiGbl_GpeNumberInfo[GpeNumberIndex].BitMask = AcpiGbl_DecodeTo8bit[i]; AcpiGbl_GpeNumberInfo[GpeNumberIndex].BitMask = AcpiGbl_DecodeTo8bit[j];
GpeNumberIndex++; GpeNumberIndex++;
} }
@ -823,7 +823,7 @@ AcpiEvGpeDetect (void)
* *
******************************************************************************/ ******************************************************************************/
static void static void ACPI_SYSTEM_XFACE
AcpiEvAsynchExecuteGpeMethod ( AcpiEvAsynchExecuteGpeMethod (
void *Context) void *Context)
{ {

View File

@ -2,7 +2,7 @@
* *
* Module Name: evmisc - ACPI device notification handler dispatch * Module Name: evmisc - ACPI device notification handler dispatch
* and ACPI Global Lock support * and ACPI Global Lock support
* $Revision: 46 $ * $Revision: 47 $
* *
*****************************************************************************/ *****************************************************************************/
@ -324,7 +324,7 @@ AcpiEvQueueNotifyRequest (
* *
******************************************************************************/ ******************************************************************************/
void void ACPI_SYSTEM_XFACE
AcpiEvNotifyDispatch ( AcpiEvNotifyDispatch (
void *Context) void *Context)
{ {
@ -396,7 +396,7 @@ AcpiEvNotifyDispatch (
* *
******************************************************************************/ ******************************************************************************/
static void static void ACPI_SYSTEM_XFACE
AcpiEvGlobalLockThread ( AcpiEvGlobalLockThread (
void *Context) void *Context)
{ {

View File

@ -1,7 +1,7 @@
/****************************************************************************** /******************************************************************************
* *
* Module Name: evrgnini- ACPI AddressSpace (OpRegion) init * Module Name: evrgnini- ACPI AddressSpace (OpRegion) init
* $Revision: 56 $ * $Revision: 57 $
* *
*****************************************************************************/ *****************************************************************************/
@ -149,6 +149,9 @@ AcpiEvSystemMemoryRegionSetup (
void *HandlerContext, void *HandlerContext,
void **RegionContext) void **RegionContext)
{ {
ACPI_OPERAND_OBJECT *RegionDesc = (ACPI_OPERAND_OBJECT *) Handle;
ACPI_MEM_SPACE_CONTEXT *LocalRegionContext;
ACPI_FUNCTION_TRACE ("EvSystemMemoryRegionSetup"); ACPI_FUNCTION_TRACE ("EvSystemMemoryRegionSetup");
@ -165,12 +168,18 @@ AcpiEvSystemMemoryRegionSetup (
/* Activate. Create a new context */ /* Activate. Create a new context */
*RegionContext = ACPI_MEM_CALLOCATE (sizeof (ACPI_MEM_SPACE_CONTEXT)); LocalRegionContext = ACPI_MEM_CALLOCATE (sizeof (ACPI_MEM_SPACE_CONTEXT));
if (!(*RegionContext)) if (!(LocalRegionContext))
{ {
return_ACPI_STATUS (AE_NO_MEMORY); return_ACPI_STATUS (AE_NO_MEMORY);
} }
/* Save the region length and address for use in the handler */
LocalRegionContext->Length = RegionDesc->Region.Length;
LocalRegionContext->Address = RegionDesc->Region.Address;
*RegionContext = LocalRegionContext;
return_ACPI_STATUS (AE_OK); return_ACPI_STATUS (AE_OK);
} }

View File

@ -2,7 +2,7 @@
* *
* Module Name: evsci - System Control Interrupt configuration and * Module Name: evsci - System Control Interrupt configuration and
* legacy to ACPI mode state transition functions * legacy to ACPI mode state transition functions
* $Revision: 82 $ * $Revision: 83 $
* *
******************************************************************************/ ******************************************************************************/
@ -140,7 +140,7 @@
* *
******************************************************************************/ ******************************************************************************/
static UINT32 static UINT32 ACPI_SYSTEM_XFACE
AcpiEvSciHandler ( AcpiEvSciHandler (
void *Context) void *Context)
{ {

View File

@ -2,7 +2,7 @@
/****************************************************************************** /******************************************************************************
* *
* Module Name: exprep - ACPI AML (p-code) execution - field prep utilities * Module Name: exprep - ACPI AML (p-code) execution - field prep utilities
* $Revision: 113 $ * $Revision: 114 $
* *
*****************************************************************************/ *****************************************************************************/
@ -165,6 +165,17 @@ AcpiExDecodeFieldAccess (
case AML_FIELD_ACCESS_ANY: case AML_FIELD_ACCESS_ANY:
ByteAlignment = 1; ByteAlignment = 1;
BitLength = 8;
#if 0
/*
* TBD: optimize
*
* Any attempt to optimize the access size to the size of the field
* must take into consideration the length of the region and take
* care that an access to the field will not attempt to access
* beyond the end of the region.
*/
/* Use the length to set the access type */ /* Use the length to set the access type */
@ -190,6 +201,7 @@ AcpiExDecodeFieldAccess (
BitLength = 8; BitLength = 8;
} }
#endif
break; break;
case AML_FIELD_ACCESS_BYTE: case AML_FIELD_ACCESS_BYTE:

View File

@ -2,7 +2,7 @@
/****************************************************************************** /******************************************************************************
* *
* Module Name: exregion - ACPI default OpRegion (address space) handlers * Module Name: exregion - ACPI default OpRegion (address space) handlers
* $Revision: 71 $ * $Revision: 72 $
* *
*****************************************************************************/ *****************************************************************************/
@ -161,6 +161,8 @@ AcpiExSystemMemorySpaceHandler (
void *LogicalAddrPtr = NULL; void *LogicalAddrPtr = NULL;
ACPI_MEM_SPACE_CONTEXT *MemInfo = RegionContext; ACPI_MEM_SPACE_CONTEXT *MemInfo = RegionContext;
UINT32 Length; UINT32 Length;
UINT32 WindowSize;
UINT32 Remaining;
ACPI_FUNCTION_TRACE ("ExSystemMemorySpaceHandler"); ACPI_FUNCTION_TRACE ("ExSystemMemorySpaceHandler");
@ -192,7 +194,6 @@ AcpiExSystemMemorySpaceHandler (
return_ACPI_STATUS (AE_AML_OPERAND_VALUE); return_ACPI_STATUS (AE_AML_OPERAND_VALUE);
} }
/* /*
* Does the request fit into the cached memory mapping? * Does the request fit into the cached memory mapping?
* Is 1) Address below the current mapping? OR * Is 1) Address below the current mapping? OR
@ -214,24 +215,36 @@ AcpiExSystemMemorySpaceHandler (
MemInfo->MappedLength); MemInfo->MappedLength);
} }
MemInfo->MappedLength = 0; /* In case of failure below */ /*
* Don't attempt to map memory beyond the end of the region, and
* constrain the maximum mapping size to something reasonable.
*/
Remaining = (UINT32) ((MemInfo->Address + (ACPI_PHYSICAL_ADDRESS) MemInfo->Length) - Address);
if (Remaining > SYSMEM_REGION_WINDOW_SIZE)
{
WindowSize = SYSMEM_REGION_WINDOW_SIZE;
}
else
{
WindowSize = Remaining;
}
/* Create a new mapping starting at the address given */ /* Create a new mapping starting at the address given */
Status = AcpiOsMapMemory (Address, SYSMEM_REGION_WINDOW_SIZE, Status = AcpiOsMapMemory (Address, WindowSize,
(void **) &MemInfo->MappedLogicalAddress); (void **) &MemInfo->MappedLogicalAddress);
if (ACPI_FAILURE (Status)) if (ACPI_FAILURE (Status))
{ {
MemInfo->MappedLength = 0;
return_ACPI_STATUS (Status); return_ACPI_STATUS (Status);
} }
/* Save the physical address and mapping size */ /* Save the physical address and mapping size */
MemInfo->MappedPhysicalAddress = Address; MemInfo->MappedPhysicalAddress = Address;
MemInfo->MappedLength = SYSMEM_REGION_WINDOW_SIZE; MemInfo->MappedLength = WindowSize;
} }
/* /*
* Generate a logical pointer corresponding to the address we want to * Generate a logical pointer corresponding to the address we want to
* access * access

View File

@ -2,7 +2,7 @@
/****************************************************************************** /******************************************************************************
* *
* Module Name: exresnte - AML Interpreter object resolution * Module Name: exresnte - AML Interpreter object resolution
* $Revision: 49 $ * $Revision: 50 $
* *
*****************************************************************************/ *****************************************************************************/
@ -136,7 +136,7 @@
* FUNCTION: AcpiExResolveNodeToValue * FUNCTION: AcpiExResolveNodeToValue
* *
* PARAMETERS: ObjectPtr - Pointer to a location that contains * PARAMETERS: ObjectPtr - Pointer to a location that contains
* a pointer to a NS node, and will recieve a * a pointer to a NS node, and will receive a
* pointer to the resolved object. * pointer to the resolved object.
* WalkState - Current state. Valid only if executing AML * WalkState - Current state. Valid only if executing AML
* code. NULL if simply resolving an object * code. NULL if simply resolving an object

View File

@ -1,7 +1,7 @@
/******************************************************************************* /*******************************************************************************
* *
* Module Name: nssearch - Namespace search * Module Name: nssearch - Namespace search
* $Revision: 82 $ * $Revision: 83 $
* *
******************************************************************************/ ******************************************************************************/
@ -220,8 +220,8 @@ AcpiNsSearchNode (
} }
ACPI_DEBUG_PRINT ((ACPI_DB_NAMES, ACPI_DEBUG_PRINT ((ACPI_DB_NAMES,
"Name %4.4s (actual type %X) found at %p\n", "Name %4.4s Type [%s] found at %p\n",
(char *) &TargetName, NextNode->Type, NextNode)); (char *) &TargetName, AcpiUtGetTypeName (NextNode->Type), NextNode));
*ReturnNode = NextNode; *ReturnNode = NextNode;
return_ACPI_STATUS (AE_OK); return_ACPI_STATUS (AE_OK);

View File

@ -1,7 +1,7 @@
/****************************************************************************** /******************************************************************************
* *
* Module Name: utdebug - Debug print routines * Module Name: utdebug - Debug print routines
* $Revision: 95 $ * $Revision: 96 $
* *
*****************************************************************************/ *****************************************************************************/
@ -206,7 +206,7 @@ AcpiUtTrackStackPtr (
* *
****************************************************************************/ ****************************************************************************/
void void ACPI_INTERNAL_VAR_XFACE
AcpiUtDebugPrint ( AcpiUtDebugPrint (
UINT32 RequestedDebugLevel, UINT32 RequestedDebugLevel,
UINT32 LineNumber, UINT32 LineNumber,
@ -283,7 +283,7 @@ AcpiUtDebugPrint (
* *
****************************************************************************/ ****************************************************************************/
void void ACPI_INTERNAL_VAR_XFACE
AcpiUtDebugPrintRaw ( AcpiUtDebugPrintRaw (
UINT32 RequestedDebugLevel, UINT32 RequestedDebugLevel,
UINT32 LineNumber, UINT32 LineNumber,