diff options
Diffstat (limited to 'sys/contrib/dev/acpica/utglobal.c')
-rw-r--r-- | sys/contrib/dev/acpica/utglobal.c | 109 |
1 files changed, 61 insertions, 48 deletions
diff --git a/sys/contrib/dev/acpica/utglobal.c b/sys/contrib/dev/acpica/utglobal.c index 7a8ba8758836..44f6f36b3fd0 100644 --- a/sys/contrib/dev/acpica/utglobal.c +++ b/sys/contrib/dev/acpica/utglobal.c @@ -1,7 +1,7 @@ /****************************************************************************** * * Module Name: utglobal - Global variables for the ACPI subsystem - * $Revision: 127 $ + * $Revision: 131 $ * *****************************************************************************/ @@ -128,7 +128,6 @@ MODULE_NAME ("utglobal") - /****************************************************************************** * * FUNCTION: AcpiFormatException @@ -145,7 +144,7 @@ const char * AcpiFormatException ( ACPI_STATUS Status) { - char *Exception = "UNKNOWN_STATUS_CODE"; + const char *Exception = "UNKNOWN_STATUS_CODE"; ACPI_STATUS SubStatus; @@ -239,10 +238,14 @@ UINT32 AcpiGbl_SystemFlags = 0; UINT32 AcpiGbl_StartupFlags = 0; /* System starts unitialized! */ + BOOLEAN AcpiGbl_Shutdown = TRUE; +const UINT8 AcpiGbl_DecodeTo8bit [8] = {1,2,4,8,16,32,64,128}; -UINT8 AcpiGbl_DecodeTo8bit [8] = {1,2,4,8,16,32,64,128}; +const NATIVE_CHAR *AcpiGbl_DbSleepStates[ACPI_NUM_SLEEP_STATES] = { + "\\_S0_","\\_S1_","\\_S2_","\\_S3_", + "\\_S4_","\\_S5_","\\_S4B"}; /****************************************************************************** @@ -263,7 +266,7 @@ UINT8 AcpiGbl_DecodeTo8bit [8] = {1,2,4,8,16,32,64,128}; * during the initialization sequence. */ -PREDEFINED_NAMES AcpiGbl_PreDefinedNames[] = +const PREDEFINED_NAMES AcpiGbl_PreDefinedNames[] = { {"_GPE", INTERNAL_TYPE_DEF_ANY}, {"_PR_", INTERNAL_TYPE_DEF_ANY}, @@ -284,7 +287,7 @@ PREDEFINED_NAMES AcpiGbl_PreDefinedNames[] = * and the table is indexed by values of ACPI_OBJECT_TYPE */ -UINT8 AcpiGbl_NsProperties[] = +const UINT8 AcpiGbl_NsProperties[] = { NSP_NORMAL, /* 00 Any */ NSP_NORMAL, /* 01 Number */ @@ -327,10 +330,24 @@ UINT8 AcpiGbl_NsProperties[] = /* Hex to ASCII conversion table */ -NATIVE_CHAR AcpiGbl_HexToAscii[] = +const NATIVE_CHAR AcpiGbl_HexToAscii[] = {'0','1','2','3','4','5','6','7', '8','9','A','B','C','D','E','F'}; +/***************************************************************************** + * + * FUNCTION: AcpiUtHexToAsciiChar + * + * PARAMETERS: Integer - Contains the hex digit + * Position - bit position of the digit within the + * integer + * + * RETURN: Ascii character + * + * DESCRIPTION: Convert a hex digit to an ascii character + * + ****************************************************************************/ + UINT8 AcpiUtHexToAsciiChar ( ACPI_INTEGER Integer, @@ -340,6 +357,7 @@ AcpiUtHexToAsciiChar ( return (AcpiGbl_HexToAscii[(Integer >> Position) & 0xF]); } + /****************************************************************************** * * Table globals @@ -370,13 +388,10 @@ ACPI_TABLE_SUPPORT AcpiGbl_AcpiTableData[NUM_ACPI_TABLES] = #ifdef ACPI_DEBUG -/****************************************************************************** - * +/* * Strings and procedures used for debug only * - ******************************************************************************/ - -NATIVE_CHAR *MsgAcpiErrorBreak = "*** Break on ACPI_ERROR ***\n"; + */ /***************************************************************************** @@ -414,10 +429,10 @@ AcpiUtGetMutexName ( * indicatewhat type is actually going to be stored for this entry. */ -static NATIVE_CHAR AcpiGbl_BadType[] = "UNDEFINED"; -#define TYPE_NAME_LENGTH 9 /* Maximum length of each string */ +static const NATIVE_CHAR AcpiGbl_BadType[] = "UNDEFINED"; +#define TYPE_NAME_LENGTH 9 /* Maximum length of each string */ -static NATIVE_CHAR *AcpiGbl_NsTypeNames[] = /* printable names of ACPI types */ +static const NATIVE_CHAR *AcpiGbl_NsTypeNames[] = /* printable names of ACPI types */ { /* 00 */ "Untyped", /* 01 */ "Integer", @@ -477,16 +492,16 @@ AcpiUtGetTypeName ( if (Type > INTERNAL_TYPE_INVALID) { - return (AcpiGbl_BadType); + return ((NATIVE_CHAR *) AcpiGbl_BadType); } - return (AcpiGbl_NsTypeNames[Type]); + return ((NATIVE_CHAR *) AcpiGbl_NsTypeNames[Type]); } /* Region type decoding */ -NATIVE_CHAR *AcpiGbl_RegionTypes[NUM_REGION_TYPES] = +const NATIVE_CHAR *AcpiGbl_RegionTypes[NUM_REGION_TYPES] = { "SystemMemory", "SystemIO", @@ -525,20 +540,20 @@ AcpiUtGetRegionName ( return ("InvalidSpaceID"); } - return (AcpiGbl_RegionTypes[SpaceId]); + return ((NATIVE_CHAR *) AcpiGbl_RegionTypes[SpaceId]); } /* Data used in keeping track of fields */ -NATIVE_CHAR *AcpiGbl_FENames[NUM_FIELD_NAMES] = +const NATIVE_CHAR *AcpiGbl_FENames[NUM_FIELD_NAMES] = { "skip", "?access?" }; /* FE = Field Element */ -NATIVE_CHAR *AcpiGbl_MatchOps[NUM_MATCH_OPS] = +const NATIVE_CHAR *AcpiGbl_MatchOps[NUM_MATCH_OPS] = { "Error", "MTR", @@ -552,7 +567,7 @@ NATIVE_CHAR *AcpiGbl_MatchOps[NUM_MATCH_OPS] = /* Access type decoding */ -NATIVE_CHAR *AcpiGbl_AccessTypes[NUM_ACCESS_TYPES] = +const NATIVE_CHAR *AcpiGbl_AccessTypes[NUM_ACCESS_TYPES] = { "AnyAcc", "ByteAcc", @@ -566,7 +581,7 @@ NATIVE_CHAR *AcpiGbl_AccessTypes[NUM_ACCESS_TYPES] = /* Update rule decoding */ -NATIVE_CHAR *AcpiGbl_UpdateRules[NUM_UPDATE_RULES] = +const NATIVE_CHAR *AcpiGbl_UpdateRules[NUM_UPDATE_RULES] = { "Preserve", "WriteAsOnes", @@ -681,25 +696,22 @@ AcpiUtInitGlobals ( FUNCTION_TRACE ("UtInitGlobals"); - - /* Memory allocation and cache lists */ - MEMSET (AcpiGbl_MemoryLists, 0, - sizeof (ACPI_MEMORY_LIST) * ACPI_NUM_MEM_LISTS); + MEMSET (AcpiGbl_MemoryLists, 0, sizeof (ACPI_MEMORY_LIST) * ACPI_NUM_MEM_LISTS); - AcpiGbl_MemoryLists[ACPI_MEM_LIST_STATE].LinkOffset = (UINT16) (NATIVE_UINT) &(((ACPI_GENERIC_STATE *) NULL)->Common.Next); - AcpiGbl_MemoryLists[ACPI_MEM_LIST_PSNODE].LinkOffset = (UINT16) (NATIVE_UINT) &(((ACPI_PARSE_OBJECT *) NULL)->Next); - AcpiGbl_MemoryLists[ACPI_MEM_LIST_PSNODE_EXT].LinkOffset = (UINT16) (NATIVE_UINT) &(((ACPI_PARSE2_OBJECT *) NULL)->Next); - AcpiGbl_MemoryLists[ACPI_MEM_LIST_OPERAND].LinkOffset = (UINT16) (NATIVE_UINT) &(((ACPI_OPERAND_OBJECT *) NULL)->Cache.Next); - AcpiGbl_MemoryLists[ACPI_MEM_LIST_WALK].LinkOffset = (UINT16) (NATIVE_UINT) &(((ACPI_WALK_STATE *) NULL)->Next); + AcpiGbl_MemoryLists[ACPI_MEM_LIST_STATE].LinkOffset = (UINT16) (NATIVE_UINT) &(((ACPI_GENERIC_STATE *) NULL)->Common.Next); + AcpiGbl_MemoryLists[ACPI_MEM_LIST_PSNODE].LinkOffset = (UINT16) (NATIVE_UINT) &(((ACPI_PARSE_OBJECT *) NULL)->Next); + AcpiGbl_MemoryLists[ACPI_MEM_LIST_PSNODE_EXT].LinkOffset = (UINT16) (NATIVE_UINT) &(((ACPI_PARSE2_OBJECT *) NULL)->Next); + AcpiGbl_MemoryLists[ACPI_MEM_LIST_OPERAND].LinkOffset = (UINT16) (NATIVE_UINT) &(((ACPI_OPERAND_OBJECT *) NULL)->Cache.Next); + AcpiGbl_MemoryLists[ACPI_MEM_LIST_WALK].LinkOffset = (UINT16) (NATIVE_UINT) &(((ACPI_WALK_STATE *) NULL)->Next); - AcpiGbl_MemoryLists[ACPI_MEM_LIST_NSNODE].ObjectSize = sizeof (ACPI_NAMESPACE_NODE); - AcpiGbl_MemoryLists[ACPI_MEM_LIST_STATE].ObjectSize = sizeof (ACPI_GENERIC_STATE); - AcpiGbl_MemoryLists[ACPI_MEM_LIST_PSNODE].ObjectSize = sizeof (ACPI_PARSE_OBJECT); - AcpiGbl_MemoryLists[ACPI_MEM_LIST_PSNODE_EXT].ObjectSize = sizeof (ACPI_PARSE2_OBJECT); - AcpiGbl_MemoryLists[ACPI_MEM_LIST_OPERAND].ObjectSize = sizeof (ACPI_OPERAND_OBJECT); - AcpiGbl_MemoryLists[ACPI_MEM_LIST_WALK].ObjectSize = sizeof (ACPI_WALK_STATE); + AcpiGbl_MemoryLists[ACPI_MEM_LIST_NSNODE].ObjectSize = sizeof (ACPI_NAMESPACE_NODE); + AcpiGbl_MemoryLists[ACPI_MEM_LIST_STATE].ObjectSize = sizeof (ACPI_GENERIC_STATE); + AcpiGbl_MemoryLists[ACPI_MEM_LIST_PSNODE].ObjectSize = sizeof (ACPI_PARSE_OBJECT); + AcpiGbl_MemoryLists[ACPI_MEM_LIST_PSNODE_EXT].ObjectSize = sizeof (ACPI_PARSE2_OBJECT); + AcpiGbl_MemoryLists[ACPI_MEM_LIST_OPERAND].ObjectSize = sizeof (ACPI_OPERAND_OBJECT); + AcpiGbl_MemoryLists[ACPI_MEM_LIST_WALK].ObjectSize = sizeof (ACPI_WALK_STATE); AcpiGbl_MemoryLists[ACPI_MEM_LIST_STATE].MaxCacheDepth = MAX_STATE_CACHE_DEPTH; AcpiGbl_MemoryLists[ACPI_MEM_LIST_PSNODE].MaxCacheDepth = MAX_PARSE_CACHE_DEPTH; @@ -707,14 +719,13 @@ AcpiUtInitGlobals ( AcpiGbl_MemoryLists[ACPI_MEM_LIST_OPERAND].MaxCacheDepth = MAX_OBJECT_CACHE_DEPTH; AcpiGbl_MemoryLists[ACPI_MEM_LIST_WALK].MaxCacheDepth = MAX_WALK_CACHE_DEPTH; - - ACPI_MEM_TRACKING (AcpiGbl_MemoryLists[ACPI_MEM_LIST_GLOBAL].ListName = "Global Memory Allocation"); - ACPI_MEM_TRACKING (AcpiGbl_MemoryLists[ACPI_MEM_LIST_NSNODE].ListName = "Namespace Nodes"); - ACPI_MEM_TRACKING (AcpiGbl_MemoryLists[ACPI_MEM_LIST_STATE].ListName = "State Object Cache"); - ACPI_MEM_TRACKING (AcpiGbl_MemoryLists[ACPI_MEM_LIST_PSNODE].ListName = "Parse Node Cache"); - ACPI_MEM_TRACKING (AcpiGbl_MemoryLists[ACPI_MEM_LIST_PSNODE_EXT].ListName = "Extended Parse Node Cache"); - ACPI_MEM_TRACKING (AcpiGbl_MemoryLists[ACPI_MEM_LIST_OPERAND].ListName = "Operand Object Cache"); - ACPI_MEM_TRACKING (AcpiGbl_MemoryLists[ACPI_MEM_LIST_WALK].ListName = "Tree Walk Node Cache"); + ACPI_MEM_TRACKING (AcpiGbl_MemoryLists[ACPI_MEM_LIST_GLOBAL].ListName = "Global Memory Allocation"); + ACPI_MEM_TRACKING (AcpiGbl_MemoryLists[ACPI_MEM_LIST_NSNODE].ListName = "Namespace Nodes"); + ACPI_MEM_TRACKING (AcpiGbl_MemoryLists[ACPI_MEM_LIST_STATE].ListName = "State Object Cache"); + ACPI_MEM_TRACKING (AcpiGbl_MemoryLists[ACPI_MEM_LIST_PSNODE].ListName = "Parse Node Cache"); + ACPI_MEM_TRACKING (AcpiGbl_MemoryLists[ACPI_MEM_LIST_PSNODE_EXT].ListName = "Extended Parse Node Cache"); + ACPI_MEM_TRACKING (AcpiGbl_MemoryLists[ACPI_MEM_LIST_OPERAND].ListName = "Operand Object Cache"); + ACPI_MEM_TRACKING (AcpiGbl_MemoryLists[ACPI_MEM_LIST_WALK].ListName = "Tree Walk Node Cache"); /* ACPI table structure */ @@ -759,7 +770,6 @@ AcpiUtInitGlobals ( AcpiGbl_FADT = NULL; AcpiGbl_DSDT = NULL; - /* Global Lock support */ AcpiGbl_GlobalLockAcquired = FALSE; @@ -780,7 +790,6 @@ AcpiUtInitGlobals ( AcpiGbl_NextMethodOwnerId = FIRST_METHOD_ID; AcpiGbl_DebuggerConfiguration = DEBUGGER_THREADING; - /* Hardware oriented */ AcpiGbl_Gpe0EnableRegisterSave = NULL; @@ -802,6 +811,10 @@ AcpiUtInitGlobals ( AcpiGbl_RootNodeStruct.Flags = ANOBJ_END_OF_PEER_LIST; +#ifdef ACPI_DEBUG + AcpiGbl_LowestStackPointer = ACPI_UINT32_MAX; +#endif + return_VOID; } |