This commit was generated by cvs2svn to compensate for changes in r102550,

which included commits to RCS files with non-trunk default branches.
This commit is contained in:
Mitsuru IWASAKI 2002-08-29 01:51:24 +00:00
commit b7a95606db
Notes: svn2git 2020-12-20 02:59:44 +00:00
svn path=/head/; revision=102551
77 changed files with 3746 additions and 902 deletions

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,181 @@
/******************************************************************************
*
* Module Name: acapps - common include for ACPI applications/tools
*
*****************************************************************************/
/******************************************************************************
*
* 1. Copyright Notice
*
* Some or all of this work - Copyright (c) 1999 - 2002, Intel Corp.
* All rights reserved.
*
* 2. License
*
* 2.1. This is your license from Intel Corp. under its intellectual property
* rights. You may have additional license terms from the party that provided
* you this software, covering your right to use that party's intellectual
* property rights.
*
* 2.2. Intel grants, free of charge, to any person ("Licensee") obtaining a
* copy of the source code appearing in this file ("Covered Code") an
* irrevocable, perpetual, worldwide license under Intel's copyrights in the
* base code distributed originally by Intel ("Original Intel Code") to copy,
* make derivatives, distribute, use and display any portion of the Covered
* Code in any form, with the right to sublicense such rights; and
*
* 2.3. Intel grants Licensee a non-exclusive and non-transferable patent
* license (with the right to sublicense), under only those claims of Intel
* patents that are infringed by the Original Intel Code, to make, use, sell,
* offer to sell, and import the Covered Code and derivative works thereof
* solely to the minimum extent necessary to exercise the above copyright
* license, and in no event shall the patent license extend to any additions
* to or modifications of the Original Intel Code. No other license or right
* is granted directly or by implication, estoppel or otherwise;
*
* The above copyright and patent license is granted only if the following
* conditions are met:
*
* 3. Conditions
*
* 3.1. Redistribution of Source with Rights to Further Distribute Source.
* Redistribution of source code of any substantial portion of the Covered
* Code or modification with rights to further distribute source must include
* the above Copyright Notice, the above License, this list of Conditions,
* and the following Disclaimer and Export Compliance provision. In addition,
* Licensee must cause all Covered Code to which Licensee contributes to
* contain a file documenting the changes Licensee made to create that Covered
* Code and the date of any change. Licensee must include in that file the
* documentation of any changes made by any predecessor Licensee. Licensee
* must include a prominent statement that the modification is derived,
* directly or indirectly, from Original Intel Code.
*
* 3.2. Redistribution of Source with no Rights to Further Distribute Source.
* Redistribution of source code of any substantial portion of the Covered
* Code or modification without rights to further distribute source must
* include the following Disclaimer and Export Compliance provision in the
* documentation and/or other materials provided with distribution. In
* addition, Licensee may not authorize further sublicense of source of any
* portion of the Covered Code, and must include terms to the effect that the
* license from Licensee to its licensee is limited to the intellectual
* property embodied in the software Licensee provides to its licensee, and
* not to intellectual property embodied in modifications its licensee may
* make.
*
* 3.3. Redistribution of Executable. Redistribution in executable form of any
* substantial portion of the Covered Code or modification must reproduce the
* above Copyright Notice, and the following Disclaimer and Export Compliance
* provision in the documentation and/or other materials provided with the
* distribution.
*
* 3.4. Intel retains all right, title, and interest in and to the Original
* Intel Code.
*
* 3.5. Neither the name Intel nor any other trademark owned or controlled by
* Intel shall be used in advertising or otherwise to promote the sale, use or
* other dealings in products derived from or relating to the Covered Code
* without prior written authorization from Intel.
*
* 4. Disclaimer and Export Compliance
*
* 4.1. INTEL MAKES NO WARRANTY OF ANY KIND REGARDING ANY SOFTWARE PROVIDED
* HERE. ANY SOFTWARE ORIGINATING FROM INTEL OR DERIVED FROM INTEL SOFTWARE
* IS PROVIDED "AS IS," AND INTEL WILL NOT PROVIDE ANY SUPPORT, ASSISTANCE,
* INSTALLATION, TRAINING OR OTHER SERVICES. INTEL WILL NOT PROVIDE ANY
* UPDATES, ENHANCEMENTS OR EXTENSIONS. INTEL SPECIFICALLY DISCLAIMS ANY
* IMPLIED WARRANTIES OF MERCHANTABILITY, NONINFRINGEMENT AND FITNESS FOR A
* PARTICULAR PURPOSE.
*
* 4.2. IN NO EVENT SHALL INTEL HAVE ANY LIABILITY TO LICENSEE, ITS LICENSEES
* OR ANY OTHER THIRD PARTY, FOR ANY LOST PROFITS, LOST DATA, LOSS OF USE OR
* COSTS OF PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES, OR FOR ANY INDIRECT,
* SPECIAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THIS AGREEMENT, UNDER ANY
* CAUSE OF ACTION OR THEORY OF LIABILITY, AND IRRESPECTIVE OF WHETHER INTEL
* HAS ADVANCE NOTICE OF THE POSSIBILITY OF SUCH DAMAGES. THESE LIMITATIONS
* SHALL APPLY NOTWITHSTANDING THE FAILURE OF THE ESSENTIAL PURPOSE OF ANY
* LIMITED REMEDY.
*
* 4.3. Licensee shall not export, either directly or indirectly, any of this
* software or system incorporating such software without first obtaining any
* required license or other approval from the U. S. Department of Commerce or
* any other agency or department of the United States Government. In the
* event Licensee exports any such software from the United States or
* re-exports any such software from a foreign destination, Licensee shall
* ensure that the distribution and export/re-export of the software is in
* compliance with all laws, regulations, orders, or other restrictions of the
* U.S. Export Administration Regulations. Licensee agrees that neither it nor
* any of its subsidiaries will export/re-export any technical data, process,
* software, or service, directly or indirectly, to any country for which the
* United States government or any agency thereof requires an export license,
* other governmental approval, or letter of assurance, without first obtaining
* such license, approval or letter.
*
*****************************************************************************/
#ifndef _ACAPPS
#define _ACAPPS
#ifdef _MSC_VER /* disable some level-4 warnings */
#pragma warning(disable:4100) /* warning C4100: unreferenced formal parameter */
#endif
extern UINT8 *DsdtPtr;
extern UINT32 AcpiDsdtLength;
extern UINT8 *AmlStart;
extern UINT32 AmlLength;
extern int AcpiGbl_Optind;
extern NATIVE_CHAR *AcpiGbl_Optarg;
int
AcpiGetopt(
int argc,
char **argv,
char *opts);
ACPI_STATUS
AdInitialize (
void);
char *
FlGenerateFilename (
char *InputFilename,
char *Suffix);
ACPI_STATUS
AdAmlDisassemble (
BOOLEAN OutToFile,
char *Filename,
char **OutFilename);
void
AdPrintStatistics (void);
ACPI_STATUS
AdFindDsdt(
UINT8 **DsdtPtr,
UINT32 *DsdtLength);
void
AdDumpTables (void);
ACPI_STATUS
AdGetTables (
char *Filename);
ACPI_STATUS
AdParseTables (void);
ACPI_STATUS
AdDisplayTables (
char *Filename);
ACPI_STATUS
AdDisplayStatistics (void);
#endif /* _ACAPPS */

View file

@ -1,7 +1,7 @@
/****************************************************************************** /******************************************************************************
* *
* Name: acdisasm.h - AML disassembler * Name: acdisasm.h - AML disassembler
* $Revision: 2 $ * $Revision: 3 $
* *
*****************************************************************************/ *****************************************************************************/
@ -161,7 +161,6 @@ ACPI_STATUS (*ASL_WALK_CALLBACK) (
void *Context); void *Context);
/* /*
* dmwalk * dmwalk
*/ */

View file

@ -1,7 +1,7 @@
/****************************************************************************** /******************************************************************************
* *
* Name: acefi.h - OS specific defines, etc. * Name: acefi.h - OS specific defines, etc.
* $Revision: 10 $ * $Revision: 12 $
* *
*****************************************************************************/ *****************************************************************************/

View file

@ -1,7 +1,7 @@
/****************************************************************************** /******************************************************************************
* *
* Name: acglobal.h - Declarations for global variables * Name: acglobal.h - Declarations for global variables
* $Revision: 128 $ * $Revision: 130 $
* *
*****************************************************************************/ *****************************************************************************/
@ -243,8 +243,12 @@ extern const NATIVE_CHAR *AcpiGbl_RegionTypes[ACPI_NUM_PREDEFINED_
****************************************************************************/ ****************************************************************************/
#define NUM_NS_TYPES INTERNAL_TYPE_INVALID+1 #define NUM_NS_TYPES INTERNAL_TYPE_INVALID+1
#define NUM_PREDEFINED_NAMES 9
#if defined (ACPI_NO_METHOD_EXECUTION) || defined (ACPI_CONSTANT_EVAL_ONLY)
#define NUM_PREDEFINED_NAMES 10
#else
#define NUM_PREDEFINED_NAMES 9
#endif
ACPI_EXTERN ACPI_NAMESPACE_NODE AcpiGbl_RootNodeStruct; ACPI_EXTERN ACPI_NAMESPACE_NODE AcpiGbl_RootNodeStruct;
ACPI_EXTERN ACPI_NAMESPACE_NODE *AcpiGbl_RootNode; ACPI_EXTERN ACPI_NAMESPACE_NODE *AcpiGbl_RootNode;
@ -252,7 +256,7 @@ ACPI_EXTERN ACPI_NAMESPACE_NODE *AcpiGbl_RootNode;
extern const UINT8 AcpiGbl_NsProperties[NUM_NS_TYPES]; extern const UINT8 AcpiGbl_NsProperties[NUM_NS_TYPES];
extern const ACPI_PREDEFINED_NAMES AcpiGbl_PreDefinedNames [NUM_PREDEFINED_NAMES]; extern const ACPI_PREDEFINED_NAMES AcpiGbl_PreDefinedNames [NUM_PREDEFINED_NAMES];
#ifdef ACPI_DEBUG #ifdef ACPI_DEBUG_OUTPUT
ACPI_EXTERN UINT32 AcpiGbl_CurrentNodeCount; ACPI_EXTERN UINT32 AcpiGbl_CurrentNodeCount;
ACPI_EXTERN UINT32 AcpiGbl_CurrentNodeSize; ACPI_EXTERN UINT32 AcpiGbl_CurrentNodeSize;
ACPI_EXTERN UINT32 AcpiGbl_MaxConcurrentNodeCount; ACPI_EXTERN UINT32 AcpiGbl_MaxConcurrentNodeCount;
@ -336,7 +340,7 @@ ACPI_EXTERN BOOLEAN AcpiGbl_DbOpt_verbose;
#endif #endif
#ifdef ENABLE_DEBUGGER #ifdef ACPI_DEBUGGER
extern BOOLEAN AcpiGbl_MethodExecuting; extern BOOLEAN AcpiGbl_MethodExecuting;
extern BOOLEAN AcpiGbl_DbTerminateThreads; extern BOOLEAN AcpiGbl_DbTerminateThreads;
@ -378,7 +382,7 @@ ACPI_EXTERN UINT32 AcpiGbl_SizeOfMethodTrees;
ACPI_EXTERN UINT32 AcpiGbl_SizeOfNodeEntries; ACPI_EXTERN UINT32 AcpiGbl_SizeOfNodeEntries;
ACPI_EXTERN UINT32 AcpiGbl_SizeOfAcpiObjects; ACPI_EXTERN UINT32 AcpiGbl_SizeOfAcpiObjects;
#endif /* ENABLE_DEBUGGER */ #endif /* ACPI_DEBUGGER */
#endif /* __ACGLOBAL_H__ */ #endif /* __ACGLOBAL_H__ */

View file

@ -1,7 +1,7 @@
/****************************************************************************** /******************************************************************************
* *
* Name: aclocal.h - Internal data types used across the ACPI subsystem * Name: aclocal.h - Internal data types used across the ACPI subsystem
* $Revision: 173 $ * $Revision: 175 $
* *
*****************************************************************************/ *****************************************************************************/
@ -129,7 +129,6 @@ typedef UINT32 ACPI_MUTEX_HANDLE;
#define AML_NUM_OPCODES 0x7E #define AML_NUM_OPCODES 0x7E
/***************************************************************************** /*****************************************************************************
* *
* Mutex typedefs and structs * Mutex typedefs and structs
@ -165,7 +164,7 @@ typedef UINT32 ACPI_MUTEX_HANDLE;
#define NUM_MTX MAX_MTX+1 #define NUM_MTX MAX_MTX+1
#if defined(ACPI_DEBUG) || defined(ENABLE_DEBUGGER) #if defined(ACPI_DEBUG_OUTPUT) || defined(ACPI_DEBUGGER)
#ifdef DEFINE_ACPI_GLOBALS #ifdef DEFINE_ACPI_GLOBALS
/* Names for the mutexes used in the subsystem */ /* Names for the mutexes used in the subsystem */
@ -659,7 +658,7 @@ ACPI_STATUS (*ACPI_EXECUTE_OP) (
*/ */
typedef struct acpi_opcode_info typedef struct acpi_opcode_info
{ {
#if defined(ACPI_DISASSEMBLER) || defined(ACPI_DEBUG) #if defined(ACPI_DISASSEMBLER) || defined(ACPI_DEBUG_OUTPUT)
NATIVE_CHAR *Name; /* Opcode name (disassembler/debug only) */ NATIVE_CHAR *Name; /* Opcode name (disassembler/debug only) */
#endif #endif
UINT32 ParseArgs; /* Grammar/Parse time arguments */ UINT32 ParseArgs; /* Grammar/Parse time arguments */
@ -778,7 +777,6 @@ typedef union acpi_parse_obj
} ACPI_PARSE_OBJECT; } ACPI_PARSE_OBJECT;
/* /*
* Parse state - one state per parser invocation and each control * Parse state - one state per parser invocation and each control
* method. * method.

View file

@ -1,7 +1,7 @@
/****************************************************************************** /******************************************************************************
* *
* Name: acmacros.h - C macros for the entire subsystem. * Name: acmacros.h - C macros for the entire subsystem.
* $Revision: 126 $ * $Revision: 128 $
* *
*****************************************************************************/ *****************************************************************************/
@ -378,7 +378,7 @@
/* /*
* Macros for the master AML opcode table * Macros for the master AML opcode table
*/ */
#if defined(ACPI_DISASSEMBLER) || defined (ACPI_DEBUG) #if defined(ACPI_DISASSEMBLER) || defined (ACPI_DEBUG_OUTPUT)
#define ACPI_OP(Name,PArgs,IArgs,ObjType,Class,Type,Flags) {Name,PArgs,IArgs,Flags,ObjType,Class,Type} #define ACPI_OP(Name,PArgs,IArgs,ObjType,Class,Type,Flags) {Name,PArgs,IArgs,Flags,ObjType,Class,Type}
#else #else
#define ACPI_OP(Name,PArgs,IArgs,ObjType,Class,Type,Flags) {PArgs,IArgs,Flags,ObjType,Class,Type} #define ACPI_OP(Name,PArgs,IArgs,ObjType,Class,Type,Flags) {PArgs,IArgs,Flags,ObjType,Class,Type}
@ -444,11 +444,11 @@
/* /*
* Error reporting. These versions add callers module and line#. Since * Error reporting. These versions add callers module and line#. Since
* _THIS_MODULE gets compiled out when ACPI_DEBUG isn't defined, only * _THIS_MODULE gets compiled out when ACPI_DEBUG_OUTPUT isn't defined, only
* use it in debug mode. * use it in debug mode.
*/ */
#ifdef ACPI_DEBUG #ifdef ACPI_DEBUG_OUTPUT
#define ACPI_REPORT_INFO(fp) {AcpiUtReportInfo(_THIS_MODULE,__LINE__,_COMPONENT); \ #define ACPI_REPORT_INFO(fp) {AcpiUtReportInfo(_THIS_MODULE,__LINE__,_COMPONENT); \
AcpiOsPrintf ACPI_PARAM_LIST(fp);} AcpiOsPrintf ACPI_PARAM_LIST(fp);}
@ -481,7 +481,7 @@
* Debug macros that are conditionally compiled * Debug macros that are conditionally compiled
*/ */
#ifdef ACPI_DEBUG #ifdef ACPI_DEBUG_OUTPUT
#define ACPI_MODULE_NAME(name) static char *_THIS_MODULE = name; #define ACPI_MODULE_NAME(name) static char *_THIS_MODULE = name;
@ -616,9 +616,9 @@
/* /*
* Some code only gets executed when the debugger is built in. * Some code only gets executed when the debugger is built in.
* Note that this is entirely independent of whether the * Note that this is entirely independent of whether the
* DEBUG_PRINT stuff (set by ACPI_DEBUG) is on, or not. * DEBUG_PRINT stuff (set by ACPI_DEBUG_OUTPUT) is on, or not.
*/ */
#ifdef ENABLE_DEBUGGER #ifdef ACPI_DEBUGGER
#define ACPI_DEBUGGER_EXEC(a) a #define ACPI_DEBUGGER_EXEC(a) a
#else #else
#define ACPI_DEBUGGER_EXEC(a) #define ACPI_DEBUGGER_EXEC(a)
@ -627,7 +627,7 @@
/* /*
* For 16-bit code, we want to shrink some things even though * For 16-bit code, we want to shrink some things even though
* we are using ACPI_DEBUG to get the debug output * we are using ACPI_DEBUG_OUTPUT to get the debug output
*/ */
#if ACPI_MACHINE_WIDTH == 16 #if ACPI_MACHINE_WIDTH == 16
#undef ACPI_DEBUG_ONLY_MEMBERS #undef ACPI_DEBUG_ONLY_MEMBERS
@ -636,7 +636,7 @@
#endif #endif
#ifdef ACPI_DEBUG #ifdef ACPI_DEBUG_OUTPUT
/* /*
* 1) Set name to blanks * 1) Set name to blanks
* 2) Copy the object name * 2) Copy the object name

View file

@ -2,7 +2,7 @@
/****************************************************************************** /******************************************************************************
* *
* Name: acobject.h - Definition of ACPI_OPERAND_OBJECT (Internal object only) * Name: acobject.h - Definition of ACPI_OPERAND_OBJECT (Internal object only)
* $Revision: 112 $ * $Revision: 113 $
* *
*****************************************************************************/ *****************************************************************************/
@ -190,7 +190,6 @@
union acpi_operand_obj *AddrHandler; /* Handler for Address space */ union acpi_operand_obj *AddrHandler; /* Handler for Address space */
/****************************************************************************** /******************************************************************************
* *
* Basic data types * Basic data types
@ -247,7 +246,6 @@ typedef struct AcpiObjectPackage
} ACPI_OBJECT_PACKAGE; } ACPI_OBJECT_PACKAGE;
/****************************************************************************** /******************************************************************************
* *
* Complex data types * Complex data types
@ -311,7 +309,6 @@ typedef struct AcpiObjectRegion
} ACPI_OBJECT_REGION; } ACPI_OBJECT_REGION;
/****************************************************************************** /******************************************************************************
* *
* Objects that can be notified. All share a common NotifyInfo area. * Objects that can be notified. All share a common NotifyInfo area.
@ -366,7 +363,6 @@ typedef struct AcpiObjectThermalZone
} ACPI_OBJECT_THERMAL_ZONE; } ACPI_OBJECT_THERMAL_ZONE;
/****************************************************************************** /******************************************************************************
* *
* Fields. All share a common header/info field. * Fields. All share a common header/info field.
@ -430,7 +426,6 @@ typedef struct AcpiObjectBufferField
} ACPI_OBJECT_BUFFER_FIELD; } ACPI_OBJECT_BUFFER_FIELD;
/****************************************************************************** /******************************************************************************
* *
* Objects for handlers * Objects for handlers
@ -470,7 +465,6 @@ typedef struct AcpiObjectAddrHandler
} ACPI_OBJECT_ADDR_HANDLER; } ACPI_OBJECT_ADDR_HANDLER;
/****************************************************************************** /******************************************************************************
* *
* Special internal objects * Special internal objects
@ -537,7 +531,6 @@ typedef struct AcpiObjectCacheList
} ACPI_OBJECT_CACHE_LIST; } ACPI_OBJECT_CACHE_LIST;
/****************************************************************************** /******************************************************************************
* *
* ACPI_OPERAND_OBJECT Descriptor - a giant union of all of the above * ACPI_OPERAND_OBJECT Descriptor - a giant union of all of the above
@ -581,9 +574,6 @@ typedef union acpi_operand_obj
} ACPI_OPERAND_OBJECT; } ACPI_OPERAND_OBJECT;
/****************************************************************************** /******************************************************************************
* *
* ACPI_DESCRIPTOR - objects that share a common descriptor identifier * ACPI_DESCRIPTOR - objects that share a common descriptor identifier
@ -610,7 +600,6 @@ typedef union acpi_operand_obj
#define ACPI_DESC_TYPE_NAMED 0xAA #define ACPI_DESC_TYPE_NAMED 0xAA
typedef union acpi_desc typedef union acpi_desc
{ {
UINT8 DescriptorId; /* To differentiate various internal objs */\ UINT8 DescriptorId; /* To differentiate various internal objs */\

View file

@ -1,7 +1,7 @@
/****************************************************************************** /******************************************************************************
* *
* Name: acoutput.h -- debug output * Name: acoutput.h -- debug output
* $Revision: 87 $ * $Revision: 90 $
* *
*****************************************************************************/ *****************************************************************************/
@ -134,18 +134,20 @@
#define ACPI_DISPATCHER 0x00000040 #define ACPI_DISPATCHER 0x00000040
#define ACPI_EXECUTER 0x00000080 #define ACPI_EXECUTER 0x00000080
#define ACPI_RESOURCES 0x00000100 #define ACPI_RESOURCES 0x00000100
#define ACPI_DEBUGGER 0x00000200 #define ACPI_CA_DEBUGGER 0x00000200
#define ACPI_OS_SERVICES 0x00000400 #define ACPI_OS_SERVICES 0x00000400
#define ACPI_CA_DISASSEMBLER 0x00000800
#define ACPI_ALL_COMPONENTS 0x00000FFF
#define ACPI_COMPONENT_DEFAULT (ACPI_ALL_COMPONENTS)
/* Component IDs for ACPI tools and utilities */ /* Component IDs for ACPI tools and utilities */
#define ACPI_COMPILER 0x00001000 #define ACPI_COMPILER 0x00001000
#define ACPI_TOOLS 0x00002000 #define ACPI_TOOLS 0x00002000
#define ACPI_ALL_COMPONENTS 0x00003FFF
#define ACPI_COMPONENT_DEFAULT (ACPI_ALL_COMPONENTS)
/* Component IDs reserved for ACPI drivers */ /* Component IDs reserved for ACPI drivers */
#define ACPI_ALL_DRIVERS 0xFFFF0000 #define ACPI_ALL_DRIVERS 0xFFFF0000
@ -185,7 +187,8 @@
#define ACPI_LV_ALLOCATIONS 0x00100000 #define ACPI_LV_ALLOCATIONS 0x00100000
#define ACPI_LV_FUNCTIONS 0x00200000 #define ACPI_LV_FUNCTIONS 0x00200000
#define ACPI_LV_VERBOSITY2 0x00300000 | ACPI_LV_VERBOSITY1 #define ACPI_LV_OPTIMIZATIONS 0x00400000
#define ACPI_LV_VERBOSITY2 0x00700000 | ACPI_LV_VERBOSITY1
#define ACPI_LV_ALL ACPI_LV_VERBOSITY2 #define ACPI_LV_ALL ACPI_LV_VERBOSITY2
/* Trace verbosity level 3 [Threading, I/O, and Interrupts] */ /* Trace verbosity level 3 [Threading, I/O, and Interrupts] */
@ -235,6 +238,7 @@
#define ACPI_DB_BFIELD ACPI_DEBUG_LEVEL (ACPI_LV_BFIELD) #define ACPI_DB_BFIELD ACPI_DEBUG_LEVEL (ACPI_LV_BFIELD)
#define ACPI_DB_TABLES ACPI_DEBUG_LEVEL (ACPI_LV_TABLES) #define ACPI_DB_TABLES ACPI_DEBUG_LEVEL (ACPI_LV_TABLES)
#define ACPI_DB_FUNCTIONS ACPI_DEBUG_LEVEL (ACPI_LV_FUNCTIONS) #define ACPI_DB_FUNCTIONS ACPI_DEBUG_LEVEL (ACPI_LV_FUNCTIONS)
#define ACPI_DB_OPTIMIZATIONS ACPI_DEBUG_LEVEL (ACPI_LV_OPTIMIZATIONS)
#define ACPI_DB_VALUES ACPI_DEBUG_LEVEL (ACPI_LV_VALUES) #define ACPI_DB_VALUES ACPI_DEBUG_LEVEL (ACPI_LV_VALUES)
#define ACPI_DB_OBJECTS ACPI_DEBUG_LEVEL (ACPI_LV_OBJECTS) #define ACPI_DB_OBJECTS ACPI_DEBUG_LEVEL (ACPI_LV_OBJECTS)
#define ACPI_DB_ALLOCATIONS ACPI_DEBUG_LEVEL (ACPI_LV_ALLOCATIONS) #define ACPI_DB_ALLOCATIONS ACPI_DEBUG_LEVEL (ACPI_LV_ALLOCATIONS)
@ -249,7 +253,6 @@
#define ACPI_DB_ALL ACPI_DEBUG_LEVEL (ACPI_LV_ALL) #define ACPI_DB_ALL ACPI_DEBUG_LEVEL (ACPI_LV_ALL)
/* Defaults for DebugLevel, debug and normal */ /* Defaults for DebugLevel, debug and normal */
#define DEBUG_DEFAULT (ACPI_LV_OK | ACPI_LV_WARN | ACPI_LV_ERROR | ACPI_LV_DEBUG_OBJECT) #define DEBUG_DEFAULT (ACPI_LV_OK | ACPI_LV_WARN | ACPI_LV_ERROR | ACPI_LV_DEBUG_OBJECT)

View file

@ -1,7 +1,7 @@
/****************************************************************************** /******************************************************************************
* *
* Module Name: acparser.h - AML Parser subcomponent prototypes and defines * Module Name: acparser.h - AML Parser subcomponent prototypes and defines
* $Revision: 60 $ * $Revision: 61 $
* *
*****************************************************************************/ *****************************************************************************/
@ -177,7 +177,7 @@ AcpiPsGetNextSimpleArg (
UINT32 ArgType, UINT32 ArgType,
ACPI_PARSE_OBJECT *Arg); ACPI_PARSE_OBJECT *Arg);
void ACPI_STATUS
AcpiPsGetNextNamepath ( AcpiPsGetNextNamepath (
ACPI_PARSE_STATE *ParserState, ACPI_PARSE_STATE *ParserState,
ACPI_PARSE_OBJECT *Arg, ACPI_PARSE_OBJECT *Arg,
@ -188,11 +188,12 @@ ACPI_PARSE_OBJECT *
AcpiPsGetNextField ( AcpiPsGetNextField (
ACPI_PARSE_STATE *ParserState); ACPI_PARSE_STATE *ParserState);
ACPI_PARSE_OBJECT * ACPI_STATUS
AcpiPsGetNextArg ( AcpiPsGetNextArg (
ACPI_PARSE_STATE *ParserState, ACPI_PARSE_STATE *ParserState,
UINT32 ArgType, UINT32 ArgType,
UINT32 *ArgCount); UINT32 *ArgCount,
ACPI_PARSE_OBJECT **ReturnArg);
/* psfind */ /* psfind */

View file

@ -1,7 +1,7 @@
/****************************************************************************** /******************************************************************************
* *
* Name: acresrc.h - Resource Manager function prototypes * Name: acresrc.h - Resource Manager function prototypes
* $Revision: 33 $ * $Revision: 34 $
* *
*****************************************************************************/ *****************************************************************************/

View file

@ -3,7 +3,7 @@
* Name: amlcode.h - Definitions for AML, as included in "definition blocks" * Name: amlcode.h - Definitions for AML, as included in "definition blocks"
* Declarations and definitions contained herein are derived * Declarations and definitions contained herein are derived
* directly from the ACPI specification. * directly from the ACPI specification.
* $Revision: 69 $ * $Revision: 70 $
* *
*****************************************************************************/ *****************************************************************************/
@ -565,5 +565,4 @@ typedef enum
#define METHOD_FLAGS_SYNCH_LEVEL 0xF0 #define METHOD_FLAGS_SYNCH_LEVEL 0xF0
#endif /* __AMLCODE_H__ */ #endif /* __AMLCODE_H__ */

View file

@ -2,7 +2,7 @@
/****************************************************************************** /******************************************************************************
* *
* Module Name: amlresrc.h - AML resource descriptors * Module Name: amlresrc.h - AML resource descriptors
* $Revision: 20 $ * $Revision: 22 $
* *
*****************************************************************************/ *****************************************************************************/
@ -419,172 +419,5 @@ typedef union asl_resource_desc
} ASL_RESOURCE_DESC; } ASL_RESOURCE_DESC;
#define NEXT_RESOURCE_DESC(a,b) (ASL_RESOURCE_DESC *) (((char *) (a)) + sizeof(b))
#define DEFAULT_RESOURCE_DESC_SIZE (sizeof (ASL_RESOURCE_DESC) + sizeof (ASL_END_TAG_DESC))
/*
* Resource utilities
*/
ASL_RESOURCE_NODE *
RsAllocateResourceNode (
UINT32 Size);
void
RsCreateBitField (
ACPI_PARSE_OBJECT *Op,
char *Name,
UINT32 ByteOffset,
UINT32 BitOffset);
void
RsCreateByteField (
ACPI_PARSE_OBJECT *Op,
char *Name,
UINT32 ByteOffset);
void
RsSetFlagBits (
UINT8 *Flags,
ACPI_PARSE_OBJECT *Op,
UINT8 Position,
UINT8 Default);
ACPI_PARSE_OBJECT *
RsCompleteNodeAndGetNext (
ACPI_PARSE_OBJECT *Op);
ASL_RESOURCE_NODE *
RsDoOneResourceDescriptor (
ACPI_PARSE_OBJECT *DescriptorTypeOp,
UINT32 CurrentByteOffset);
UINT32
RsLinkDescriptorChain (
ASL_RESOURCE_NODE **PreviousRnode,
ASL_RESOURCE_NODE *Rnode);
/*
* Small descriptors
*/
ASL_RESOURCE_NODE *
RsDoDmaDescriptor (
ACPI_PARSE_OBJECT *Op,
UINT32 CurrentByteOffset);
ASL_RESOURCE_NODE *
RsDoEndDependentDescriptor (
ACPI_PARSE_OBJECT *Op,
UINT32 CurrentByteOffset);
ASL_RESOURCE_NODE *
RsDoFixedIoDescriptor (
ACPI_PARSE_OBJECT *Op,
UINT32 CurrentByteOffset);
ASL_RESOURCE_NODE *
RsDoInterruptDescriptor (
ACPI_PARSE_OBJECT *Op,
UINT32 CurrentByteOffset);
ASL_RESOURCE_NODE *
RsDoIoDescriptor (
ACPI_PARSE_OBJECT *Op,
UINT32 CurrentByteOffset);
ASL_RESOURCE_NODE *
RsDoIrqDescriptor (
ACPI_PARSE_OBJECT *Op,
UINT32 CurrentByteOffset);
ASL_RESOURCE_NODE *
RsDoIrqNoFlagsDescriptor (
ACPI_PARSE_OBJECT *Op,
UINT32 CurrentByteOffset);
ASL_RESOURCE_NODE *
RsDoMemory24Descriptor (
ACPI_PARSE_OBJECT *Op,
UINT32 CurrentByteOffset);
ASL_RESOURCE_NODE *
RsDoMemory32Descriptor (
ACPI_PARSE_OBJECT *Op,
UINT32 CurrentByteOffset);
ASL_RESOURCE_NODE *
RsDoMemory32FixedDescriptor (
ACPI_PARSE_OBJECT *Op,
UINT32 CurrentByteOffset);
ASL_RESOURCE_NODE *
RsDoStartDependentDescriptor (
ACPI_PARSE_OBJECT *Op,
UINT32 CurrentByteOffset);
ASL_RESOURCE_NODE *
RsDoStartDependentNoPriDescriptor (
ACPI_PARSE_OBJECT *Op,
UINT32 CurrentByteOffset);
ASL_RESOURCE_NODE *
RsDoVendorSmallDescriptor (
ACPI_PARSE_OBJECT *Op,
UINT32 CurrentByteOffset);
/*
* Large descriptors
*/
UINT32
RsGetStringDataLength (
ACPI_PARSE_OBJECT *InitializerOp);
ASL_RESOURCE_NODE *
RsDoDwordIoDescriptor (
ACPI_PARSE_OBJECT *Op,
UINT32 CurrentByteOffset);
ASL_RESOURCE_NODE *
RsDoDwordMemoryDescriptor (
ACPI_PARSE_OBJECT *Op,
UINT32 CurrentByteOffset);
ASL_RESOURCE_NODE *
RsDoQwordIoDescriptor (
ACPI_PARSE_OBJECT *Op,
UINT32 CurrentByteOffset);
ASL_RESOURCE_NODE *
RsDoQwordMemoryDescriptor (
ACPI_PARSE_OBJECT *Op,
UINT32 CurrentByteOffset);
ASL_RESOURCE_NODE *
RsDoWordIoDescriptor (
ACPI_PARSE_OBJECT *Op,
UINT32 CurrentByteOffset);
ASL_RESOURCE_NODE *
RsDoWordBusNumberDescriptor (
ACPI_PARSE_OBJECT *Op,
UINT32 CurrentByteOffset);
ASL_RESOURCE_NODE *
RsDoVendorLargeDescriptor (
ACPI_PARSE_OBJECT *Op,
UINT32 CurrentByteOffset);
ASL_RESOURCE_NODE *
RsDoGeneralRegisterDescriptor (
ACPI_PARSE_OBJECT *Op,
UINT32 CurrentByteOffset);
#endif #endif

View file

@ -1,7 +1,7 @@
/******************************************************************************* /*******************************************************************************
* *
* Module Name: dbdisply - debug display commands * Module Name: dbdisply - debug display commands
* $Revision: 76 $ * $Revision: 78 $
* *
******************************************************************************/ ******************************************************************************/
@ -124,10 +124,10 @@
#include "acdebug.h" #include "acdebug.h"
#ifdef ENABLE_DEBUGGER #ifdef ACPI_DEBUGGER
#define _COMPONENT ACPI_DEBUGGER #define _COMPONENT ACPI_CA_DEBUGGER
ACPI_MODULE_NAME ("dbdisply") ACPI_MODULE_NAME ("dbdisply")
@ -998,5 +998,5 @@ AcpiDbDisplayArgumentObject (
AcpiDbDisplayInternalObject (ObjDesc, WalkState); AcpiDbDisplayInternalObject (ObjDesc, WalkState);
} }
#endif /* ENABLE_DEBUGGER */ #endif /* ACPI_DEBUGGER */

View file

@ -1,7 +1,7 @@
/******************************************************************************* /*******************************************************************************
* *
* Module Name: dbexec - debugger control method execution * Module Name: dbexec - debugger control method execution
* $Revision: 42 $ * $Revision: 44 $
* *
******************************************************************************/ ******************************************************************************/
@ -118,9 +118,9 @@
#include "acpi.h" #include "acpi.h"
#include "acdebug.h" #include "acdebug.h"
#ifdef ENABLE_DEBUGGER #ifdef ACPI_DEBUGGER
#define _COMPONENT ACPI_DEBUGGER #define _COMPONENT ACPI_CA_DEBUGGER
ACPI_MODULE_NAME ("dbexec") ACPI_MODULE_NAME ("dbexec")
@ -308,7 +308,7 @@ AcpiDbExecute (
ACPI_BUFFER ReturnObj; ACPI_BUFFER ReturnObj;
#ifdef ACPI_DEBUG #ifdef ACPI_DEBUG_OUTPUT
UINT32 PreviousAllocations; UINT32 PreviousAllocations;
UINT32 Allocations; UINT32 Allocations;
@ -335,7 +335,7 @@ AcpiDbExecute (
AcpiOsSleep (0, 10); AcpiOsSleep (0, 10);
#ifdef ACPI_DEBUG #ifdef ACPI_DEBUG_OUTPUT
/* Memory allocation tracking */ /* Memory allocation tracking */
@ -513,6 +513,6 @@ AcpiDbCreateExecutionThreads (
} }
#endif /* ENABLE_DEBUGGER */ #endif /* ACPI_DEBUGGER */

View file

@ -1,7 +1,7 @@
/****************************************************************************** /******************************************************************************
* *
* Module Name: dbhistry - debugger HISTORY command * Module Name: dbhistry - debugger HISTORY command
* $Revision: 24 $ * $Revision: 25 $
* *
*****************************************************************************/ *****************************************************************************/
@ -118,9 +118,9 @@
#include "acpi.h" #include "acpi.h"
#include "acdebug.h" #include "acdebug.h"
#ifdef ENABLE_DEBUGGER #ifdef ACPI_DEBUGGER
#define _COMPONENT ACPI_DEBUGGER #define _COMPONENT ACPI_CA_DEBUGGER
ACPI_MODULE_NAME ("dbhistry") ACPI_MODULE_NAME ("dbhistry")
@ -287,5 +287,5 @@ AcpiDbGetFromHistory (
} }
#endif /* ENABLE_DEBUGGER */ #endif /* ACPI_DEBUGGER */

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: 86 $ * $Revision: 87 $
* *
******************************************************************************/ ******************************************************************************/
@ -119,9 +119,9 @@
#include "acdebug.h" #include "acdebug.h"
#ifdef ENABLE_DEBUGGER #ifdef ACPI_DEBUGGER
#define _COMPONENT ACPI_DEBUGGER #define _COMPONENT ACPI_CA_DEBUGGER
ACPI_MODULE_NAME ("dbinput") ACPI_MODULE_NAME ("dbinput")
@ -980,5 +980,5 @@ AcpiDbUserCommands (
} }
#endif /* ENABLE_DEBUGGER */ #endif /* ACPI_DEBUGGER */

View file

@ -1,7 +1,7 @@
/******************************************************************************* /*******************************************************************************
* *
* Module Name: dbstats - Generation and display of ACPI table statistics * Module Name: dbstats - Generation and display of ACPI table statistics
* $Revision: 60 $ * $Revision: 61 $
* *
******************************************************************************/ ******************************************************************************/
@ -119,9 +119,9 @@
#include <acdebug.h> #include <acdebug.h>
#include <acnamesp.h> #include <acnamesp.h>
#ifdef ENABLE_DEBUGGER #ifdef ACPI_DEBUGGER
#define _COMPONENT ACPI_DEBUGGER #define _COMPONENT ACPI_CA_DEBUGGER
ACPI_MODULE_NAME ("dbstats") ACPI_MODULE_NAME ("dbstats")
/* /*
@ -240,8 +240,6 @@ AcpiDbEnumerateObject (
} }
#ifndef PARSER_ONLY
/******************************************************************************* /*******************************************************************************
* *
* FUNCTION: AcpiDbClassifyOneObject * FUNCTION: AcpiDbClassifyOneObject
@ -346,8 +344,6 @@ AcpiDbCountNamespaceObjects (
FALSE, AcpiDbClassifyOneObject, NULL, NULL); FALSE, AcpiDbClassifyOneObject, NULL, NULL);
} }
#endif
/******************************************************************************* /*******************************************************************************
* *
@ -395,13 +391,11 @@ AcpiDbDisplayStatistics (
switch (Type) switch (Type)
{ {
#ifndef PARSER_ONLY
case CMD_STAT_ALLOCATIONS: case CMD_STAT_ALLOCATIONS:
#ifdef ACPI_DBG_TRACK_ALLOCATIONS #ifdef ACPI_DBG_TRACK_ALLOCATIONS
AcpiUtDumpAllocationInfo (); AcpiUtDumpAllocationInfo ();
#endif #endif
break; break;
#endif
case CMD_STAT_TABLES: case CMD_STAT_TABLES:
@ -414,8 +408,6 @@ AcpiDbDisplayStatistics (
case CMD_STAT_OBJECTS: case CMD_STAT_OBJECTS:
#ifndef PARSER_ONLY
AcpiDbCountNamespaceObjects (); AcpiDbCountNamespaceObjects ();
AcpiOsPrintf ("\nObjects defined in the current namespace:\n\n"); AcpiOsPrintf ("\nObjects defined in the current namespace:\n\n");
@ -432,8 +424,6 @@ AcpiDbDisplayStatistics (
AcpiOsPrintf ("%16.16s % 10ld% 10ld\n", "TOTALS:", AcpiOsPrintf ("%16.16s % 10ld% 10ld\n", "TOTALS:",
AcpiGbl_NumNodes, AcpiGbl_NumObjects); AcpiGbl_NumNodes, AcpiGbl_NumObjects);
#endif
break; break;
case CMD_STAT_MEMORY: case CMD_STAT_MEMORY:
@ -537,7 +527,7 @@ AcpiDbDisplayStatistics (
case CMD_STAT_STACK: case CMD_STAT_STACK:
#if defined(ACPI_DEBUG) #if defined(ACPI_DEBUG_OUTPUT)
Size = (UINT32) (AcpiGbl_EntryStackPointer - AcpiGbl_LowestStackPointer); Size = (UINT32) (AcpiGbl_EntryStackPointer - AcpiGbl_LowestStackPointer);
@ -558,4 +548,4 @@ AcpiDbDisplayStatistics (
} }
#endif /* ENABLE_DEBUGGER */ #endif /* ACPI_DEBUGGER */

View file

@ -1,7 +1,7 @@
/******************************************************************************* /*******************************************************************************
* *
* Module Name: dbutils - AML debugger utilities * Module Name: dbutils - AML debugger utilities
* $Revision: 55 $ * $Revision: 56 $
* *
******************************************************************************/ ******************************************************************************/
@ -123,9 +123,9 @@
#include "acdispat.h" #include "acdispat.h"
#ifdef ENABLE_DEBUGGER #ifdef ACPI_DEBUGGER
#define _COMPONENT ACPI_DEBUGGER #define _COMPONENT ACPI_CA_DEBUGGER
ACPI_MODULE_NAME ("dbutils") ACPI_MODULE_NAME ("dbutils")
@ -486,6 +486,6 @@ AcpiDbLocalNsLookup (
} }
#endif /* ENABLE_DEBUGGER */ #endif /* ACPI_DEBUGGER */

View file

@ -1,7 +1,7 @@
/******************************************************************************* /*******************************************************************************
* *
* Module Name: dmbuffer - AML disassembler, buffer and string support * Module Name: dmbuffer - AML disassembler, buffer and string support
* $Revision: 5 $ * $Revision: 7 $
* *
******************************************************************************/ ******************************************************************************/
@ -123,7 +123,7 @@
#ifdef ACPI_DISASSEMBLER #ifdef ACPI_DISASSEMBLER
#define _COMPONENT ACPI_DEBUGGER #define _COMPONENT ACPI_CA_DEBUGGER
ACPI_MODULE_NAME ("dmbuffer") ACPI_MODULE_NAME ("dmbuffer")

View file

@ -1,7 +1,7 @@
/******************************************************************************* /*******************************************************************************
* *
* Module Name: dmnames - AML disassembler, names, namestrings, pathnames * Module Name: dmnames - AML disassembler, names, namestrings, pathnames
* $Revision: 2 $ * $Revision: 3 $
* *
******************************************************************************/ ******************************************************************************/
@ -124,7 +124,7 @@
#ifdef ACPI_DISASSEMBLER #ifdef ACPI_DISASSEMBLER
#define _COMPONENT ACPI_DEBUGGER #define _COMPONENT ACPI_CA_DEBUGGER
ACPI_MODULE_NAME ("dmnames") ACPI_MODULE_NAME ("dmnames")
@ -145,7 +145,7 @@ AcpiDmValidateName (
char *Name, char *Name,
ACPI_PARSE_OBJECT *Op) ACPI_PARSE_OBJECT *Op)
{ {
#ifdef PARSER_ONLY #if 0
ACPI_PARSE_OBJECT *TargetOp; ACPI_PARSE_OBJECT *TargetOp;
@ -226,58 +226,6 @@ AcpiDmDumpName (
* *
******************************************************************************/ ******************************************************************************/
#ifdef PARSER_ONLY
ACPI_STATUS
AcpiPsDisplayObjectPathname (
ACPI_WALK_STATE *WalkState,
ACPI_PARSE_OBJECT *Op)
{
ACPI_PARSE_OBJECT *TargetOp;
char *Name;
if (Op->Common.Flags & ACPI_PARSEOP_GENERIC)
{
Name = Op->Common.Value.Name;
if (Name[0] == '\\')
{
AcpiOsPrintf (" (Fully Qualified Pathname)");
return (AE_OK);
}
}
else
{
Name = (char *) &Op->Named.Name;
}
/* Search parent tree up to the root if necessary */
TargetOp = AcpiPsFind (Op, Name, 0, 0);
if (!TargetOp)
{
/*
* Didn't find the name in the parse tree. This may be
* a problem, or it may simply be one of the predefined names
* (such as _OS_). Rather than worry about looking up all
* the predefined names, just display the name as given
*/
AcpiOsPrintf (" **** Path not found in parse tree");
}
else
{
/* The target was found, print the name and complete path */
AcpiOsPrintf (" (Path ");
AcpiDmDisplayPath (TargetOp);
AcpiOsPrintf (")");
}
return (AE_OK);
}
#else
ACPI_STATUS ACPI_STATUS
AcpiPsDisplayObjectPathname ( AcpiPsDisplayObjectPathname (
ACPI_WALK_STATE *WalkState, ACPI_WALK_STATE *WalkState,
@ -341,8 +289,6 @@ AcpiPsDisplayObjectPathname (
return (Status); return (Status);
} }
#endif
/******************************************************************************* /*******************************************************************************
* *

View file

@ -1,7 +1,7 @@
/******************************************************************************* /*******************************************************************************
* *
* Module Name: dmopcode - AML disassembler, specific AML opcodes * Module Name: dmopcode - AML disassembler, specific AML opcodes
* $Revision: 75 $ * $Revision: 77 $
* *
******************************************************************************/ ******************************************************************************/
@ -122,7 +122,7 @@
#ifdef ACPI_DISASSEMBLER #ifdef ACPI_DISASSEMBLER
#define _COMPONENT ACPI_DEBUGGER #define _COMPONENT ACPI_CA_DEBUGGER
ACPI_MODULE_NAME ("dmopcode") ACPI_MODULE_NAME ("dmopcode")
@ -419,7 +419,7 @@ AcpiDmDisassembleOneOp (
case AML_BYTE_OP: case AML_BYTE_OP:
AcpiOsPrintf ("0x%.2X", (UINT32) Op->Common.Value.Integer8); AcpiOsPrintf ("0x%2.2X", (UINT32) Op->Common.Value.Integer8);
break; break;
@ -431,7 +431,7 @@ AcpiDmDisassembleOneOp (
} }
else else
{ {
AcpiOsPrintf ("0x%.2X", (UINT32) Op->Common.Value.Integer16); AcpiOsPrintf ("0x%4.4X", (UINT32) Op->Common.Value.Integer16);
} }
break; break;
@ -442,30 +442,17 @@ AcpiDmDisassembleOneOp (
{ {
AcpiDmEisaId (Op->Common.Value.Integer32); AcpiDmEisaId (Op->Common.Value.Integer32);
} }
else if ((Op->Common.Value.Integer32 == ACPI_UINT32_MAX) &&
(AcpiGbl_DSDT->Revision < 2))
{
AcpiOsPrintf ("Ones");
}
else else
{ {
AcpiOsPrintf ("0x%.2X", Op->Common.Value.Integer32); AcpiOsPrintf ("0x%8.8X", Op->Common.Value.Integer32);
} }
break; break;
case AML_QWORD_OP: case AML_QWORD_OP:
if ((Op->Common.Value.Integer == ACPI_INTEGER_MAX) && AcpiOsPrintf ("0x%8.8X%8.8X", Op->Common.Value.Integer64.Hi,
(AcpiGbl_DSDT->Revision >= 2)) Op->Common.Value.Integer64.Lo);
{
AcpiOsPrintf ("Ones");
}
else
{
AcpiOsPrintf ("0x%X%8.8X", Op->Common.Value.Integer64.Hi,
Op->Common.Value.Integer64.Lo);
}
break; break;
@ -596,7 +583,7 @@ AcpiDmDisassembleOneOp (
AcpiOsPrintf ("%s", OpInfo->Name); AcpiOsPrintf ("%s", OpInfo->Name);
#ifdef ENABLE_DEBUGGER #ifdef ACPI_DEBUGGER
if ((Op->Common.AmlOpcode == AML_INT_RETURN_VALUE_OP) && if ((Op->Common.AmlOpcode == AML_INT_RETURN_VALUE_OP) &&
(WalkState) && (WalkState) &&

View file

@ -1,7 +1,7 @@
/******************************************************************************* /*******************************************************************************
* *
* Module Name: dmresrc.c - Resource Descriptor disassembly * Module Name: dmresrc.c - Resource Descriptor disassembly
* $Revision: 3 $ * $Revision: 5 $
* *
******************************************************************************/ ******************************************************************************/
@ -121,7 +121,7 @@
#ifdef ACPI_DISASSEMBLER #ifdef ACPI_DISASSEMBLER
#define _COMPONENT ACPI_DEBUGGER #define _COMPONENT ACPI_CA_DEBUGGER
ACPI_MODULE_NAME ("dbresrc") ACPI_MODULE_NAME ("dbresrc")

View file

@ -1,7 +1,7 @@
/******************************************************************************* /*******************************************************************************
* *
* Module Name: dmresrcl.c - "Large" Resource Descriptor disassembly * Module Name: dmresrcl.c - "Large" Resource Descriptor disassembly
* $Revision: 5 $ * $Revision: 7 $
* *
******************************************************************************/ ******************************************************************************/
@ -121,7 +121,7 @@
#ifdef ACPI_DISASSEMBLER #ifdef ACPI_DISASSEMBLER
#define _COMPONENT ACPI_DEBUGGER #define _COMPONENT ACPI_CA_DEBUGGER
ACPI_MODULE_NAME ("dbresrcl") ACPI_MODULE_NAME ("dbresrcl")

View file

@ -1,7 +1,7 @@
/******************************************************************************* /*******************************************************************************
* *
* Module Name: dmresrcs.c - "Small" Resource Descriptor disassembly * Module Name: dmresrcs.c - "Small" Resource Descriptor disassembly
* $Revision: 2 $ * $Revision: 3 $
* *
******************************************************************************/ ******************************************************************************/
@ -121,7 +121,7 @@
#ifdef ACPI_DISASSEMBLER #ifdef ACPI_DISASSEMBLER
#define _COMPONENT ACPI_DEBUGGER #define _COMPONENT ACPI_CA_DEBUGGER
ACPI_MODULE_NAME ("dbresrcs") ACPI_MODULE_NAME ("dbresrcs")

View file

@ -1,7 +1,7 @@
/******************************************************************************* /*******************************************************************************
* *
* Module Name: dmutils - AML disassembler utilities * Module Name: dmutils - AML disassembler utilities
* $Revision: 2 $ * $Revision: 4 $
* *
******************************************************************************/ ******************************************************************************/
@ -122,12 +122,10 @@
#ifdef ACPI_DISASSEMBLER #ifdef ACPI_DISASSEMBLER
#define _COMPONENT ACPI_DEBUGGER #define _COMPONENT ACPI_CA_DEBUGGER
ACPI_MODULE_NAME ("dmutils") ACPI_MODULE_NAME ("dmutils")
/* Data used in keeping track of fields */ /* Data used in keeping track of fields */
#if 0 #if 0
const NATIVE_CHAR *AcpiGbl_FENames[NUM_FIELD_NAMES] = const NATIVE_CHAR *AcpiGbl_FENames[NUM_FIELD_NAMES] =
@ -401,5 +399,4 @@ AcpiDmCommaIfFieldMember (
} }
#endif #endif

View file

@ -1,7 +1,7 @@
/******************************************************************************* /*******************************************************************************
* *
* Module Name: dmwalk - AML disassembly tree walk * Module Name: dmwalk - AML disassembly tree walk
* $Revision: 6 $ * $Revision: 8 $
* *
******************************************************************************/ ******************************************************************************/
@ -124,14 +124,13 @@
#ifdef ACPI_DISASSEMBLER #ifdef ACPI_DISASSEMBLER
#define _COMPONENT ACPI_DEBUGGER #define _COMPONENT ACPI_CA_DEBUGGER
ACPI_MODULE_NAME ("dmwalk") ACPI_MODULE_NAME ("dmwalk")
#define DB_FULL_OP_INFO "%5.5X #%4.4hX " #define DB_FULL_OP_INFO "%5.5X #%4.4hX "
/******************************************************************************* /*******************************************************************************
* *
* FUNCTION: AcpiDmDisassemble * FUNCTION: AcpiDmDisassemble

View file

@ -1,7 +1,7 @@
/****************************************************************************** /******************************************************************************
* *
* Module Name: dsfield - Dispatcher field routines * Module Name: dsfield - Dispatcher field routines
* $Revision: 65 $ * $Revision: 66 $
* *
*****************************************************************************/ *****************************************************************************/

View file

@ -1,7 +1,7 @@
/****************************************************************************** /******************************************************************************
* *
* Module Name: dsmethod - Parser/Interpreter interface - control method parsing * Module Name: dsmethod - Parser/Interpreter interface - control method parsing
* $Revision: 87 $ * $Revision: 88 $
* *
*****************************************************************************/ *****************************************************************************/

View file

@ -1,7 +1,7 @@
/******************************************************************************* /*******************************************************************************
* *
* Module Name: dsmthdat - control method arguments and local variables * Module Name: dsmthdat - control method arguments and local variables
* $Revision: 62 $ * $Revision: 63 $
* *
******************************************************************************/ ******************************************************************************/
@ -704,24 +704,43 @@ AcpiDsStoreObjectToLocal (
* *
* Weird, but true. * Weird, but true.
*/ */
if ((Opcode == AML_ARG_OP) && if (Opcode == AML_ARG_OP)
(ACPI_GET_DESCRIPTOR_TYPE (CurrentObjDesc) == ACPI_DESC_TYPE_NAMED))
{ {
ACPI_DEBUG_PRINT ((ACPI_DB_EXEC, /*
"Arg (%p) is an ObjRef(Node), storing in node %p\n", * Make sure that the object is the correct type. This may be overkill, but
ObjDesc, CurrentObjDesc)); * it is here because references were NS nodes in the past. Now they are
* operand objects of type Reference.
/* Detach an existing object from the Node */ */
if (ACPI_GET_DESCRIPTOR_TYPE (CurrentObjDesc) != ACPI_DESC_TYPE_OPERAND)
AcpiNsDetachObject ((ACPI_NAMESPACE_NODE *) CurrentObjDesc); {
ACPI_REPORT_ERROR (("Invalid descriptor type while storing to method arg: %X\n",
CurrentObjDesc->Common.Type));
return_ACPI_STATUS (AE_AML_INTERNAL);
}
/* /*
* Store this object into the Node * If we have a valid reference object that came from RefOf(), do the
* (perform the indirect store) * indirect store
*/ */
Status = AcpiNsAttachObject ((ACPI_NAMESPACE_NODE *) CurrentObjDesc, if ((CurrentObjDesc->Common.Type == INTERNAL_TYPE_REFERENCE) &&
ObjDesc, ACPI_GET_OBJECT_TYPE (ObjDesc)); (CurrentObjDesc->Reference.Opcode == AML_REF_OF_OP))
return_ACPI_STATUS (Status); {
ACPI_DEBUG_PRINT ((ACPI_DB_EXEC,
"Arg (%p) is an ObjRef(Node), storing in node %p\n",
ObjDesc, CurrentObjDesc));
/* Detach an existing object from the referenced Node */
AcpiNsDetachObject (CurrentObjDesc->Reference.Object);
/*
* Store this object into the Node
* (perform the indirect store)
*/
Status = AcpiNsAttachObject (CurrentObjDesc->Reference.Object,
ObjDesc, ACPI_GET_OBJECT_TYPE (ObjDesc));
return_ACPI_STATUS (Status);
}
} }
/* /*

View file

@ -1,7 +1,7 @@
/****************************************************************************** /******************************************************************************
* *
* Module Name: dsobject - Dispatcher object management routines * Module Name: dsobject - Dispatcher object management routines
* $Revision: 105 $ * $Revision: 106 $
* *
*****************************************************************************/ *****************************************************************************/
@ -924,4 +924,3 @@ AcpiDsInitObjectFromOp (
} }

View file

@ -2,7 +2,7 @@
* *
* Module Name: dsopcode - Dispatcher Op Region support and handling of * Module Name: dsopcode - Dispatcher Op Region support and handling of
* "control" opcodes * "control" opcodes
* $Revision: 80 $ * $Revision: 81 $
* *
*****************************************************************************/ *****************************************************************************/
@ -848,7 +848,6 @@ AcpiDsEvalRegionOperands (
} }
/***************************************************************************** /*****************************************************************************
* *
* FUNCTION: AcpiDsEvalDataObjectOperands * FUNCTION: AcpiDsEvalDataObjectOperands
@ -950,7 +949,6 @@ AcpiDsEvalDataObjectOperands (
} }
/******************************************************************************* /*******************************************************************************
* *
* FUNCTION: AcpiDsExecBeginControlOp * FUNCTION: AcpiDsExecBeginControlOp

View file

@ -2,7 +2,7 @@
* *
* Module Name: dswexec - Dispatcher method execution callbacks; * Module Name: dswexec - Dispatcher method execution callbacks;
* dispatch to interpreter. * dispatch to interpreter.
* $Revision: 94 $ * $Revision: 95 $
* *
*****************************************************************************/ *****************************************************************************/
@ -417,7 +417,6 @@ AcpiDsExecBeginOp (
} }
/***************************************************************************** /*****************************************************************************
* *
* FUNCTION: AcpiDsExecEndOp * FUNCTION: AcpiDsExecEndOp

View file

@ -1,7 +1,7 @@
/****************************************************************************** /******************************************************************************
* *
* Module Name: dswload - Dispatcher namespace load callbacks * Module Name: dswload - Dispatcher namespace load callbacks
* $Revision: 69 $ * $Revision: 70 $
* *
*****************************************************************************/ *****************************************************************************/
@ -404,7 +404,7 @@ AcpiDsLoad2BeginOp (
NATIVE_CHAR *BufferPtr; NATIVE_CHAR *BufferPtr;
ACPI_FUNCTION_NAME ("DsLoad2BeginOp"); ACPI_FUNCTION_TRACE ("DsLoad2BeginOp");
Op = WalkState->Op; Op = WalkState->Op;
@ -417,7 +417,7 @@ AcpiDsLoad2BeginOp (
if ((!(WalkState->OpInfo->Flags & AML_NSOPCODE) && (WalkState->Opcode != AML_INT_NAMEPATH_OP)) || if ((!(WalkState->OpInfo->Flags & AML_NSOPCODE) && (WalkState->Opcode != AML_INT_NAMEPATH_OP)) ||
(!(WalkState->OpInfo->Flags & AML_NAMED))) (!(WalkState->OpInfo->Flags & AML_NAMED)))
{ {
return (AE_OK); return_ACPI_STATUS (AE_OK);
} }
/* /*
@ -432,7 +432,7 @@ AcpiDsLoad2BeginOp (
{ {
/* No name, just exit */ /* No name, just exit */
return (AE_OK); return_ACPI_STATUS (AE_OK);
} }
} }
else else
@ -488,11 +488,11 @@ AcpiDsLoad2BeginOp (
Status = AcpiDsScopeStackPush (Node, ObjectType, WalkState); Status = AcpiDsScopeStackPush (Node, ObjectType, WalkState);
if (ACPI_FAILURE (Status)) if (ACPI_FAILURE (Status))
{ {
return (Status); return_ACPI_STATUS (Status);
} }
} }
return (AE_OK); return_ACPI_STATUS (AE_OK);
} }
/* /*
@ -513,7 +513,7 @@ AcpiDsLoad2BeginOp (
Op = AcpiPsAllocOp (WalkState->Opcode); Op = AcpiPsAllocOp (WalkState->Opcode);
if (!Op) if (!Op)
{ {
return (AE_NO_MEMORY); return_ACPI_STATUS (AE_NO_MEMORY);
} }
/* Initialize the new op */ /* Initialize the new op */
@ -535,7 +535,7 @@ AcpiDsLoad2BeginOp (
Op->Common.Node = Node; Op->Common.Node = Node;
} }
return (Status); return_ACPI_STATUS (Status);
} }
@ -569,7 +569,7 @@ AcpiDsLoad2EndOp (
#endif #endif
ACPI_FUNCTION_NAME ("DsLoad2EndOp"); ACPI_FUNCTION_TRACE ("DsLoad2EndOp");
Op = WalkState->Op; Op = WalkState->Op;
ACPI_DEBUG_PRINT ((ACPI_DB_DISPATCH, "Opcode [%s] Op %p State %p\n", ACPI_DEBUG_PRINT ((ACPI_DB_DISPATCH, "Opcode [%s] Op %p State %p\n",
@ -579,7 +579,7 @@ AcpiDsLoad2EndOp (
if (!(WalkState->OpInfo->Flags & AML_NSOBJECT)) if (!(WalkState->OpInfo->Flags & AML_NSOBJECT))
{ {
return (AE_OK); return_ACPI_STATUS (AE_OK);
} }
if (Op->Common.AmlOpcode == AML_SCOPE_OP) if (Op->Common.AmlOpcode == AML_SCOPE_OP)
@ -606,7 +606,7 @@ AcpiDsLoad2EndOp (
/* Pop the scope stack */ /* Pop the scope stack */
if (AcpiNsOpensScope (ObjectType)) if (AcpiNsOpensScope (ObjectType) && (Op->Common.AmlOpcode != AML_INT_METHODCALL_OP))
{ {
ACPI_DEBUG_PRINT ((ACPI_DB_DISPATCH, "(%s) Popping scope for Op %p\n", ACPI_DEBUG_PRINT ((ACPI_DB_DISPATCH, "(%s) Popping scope for Op %p\n",
AcpiUtGetTypeName (ObjectType), Op)); AcpiUtGetTypeName (ObjectType), Op));
@ -614,7 +614,7 @@ AcpiDsLoad2EndOp (
Status = AcpiDsScopeStackPop (WalkState); Status = AcpiDsScopeStackPop (WalkState);
if (ACPI_FAILURE (Status)) if (ACPI_FAILURE (Status))
{ {
return (Status); return_ACPI_STATUS (Status);
} }
} }
@ -871,7 +871,7 @@ AcpiDsLoad2EndOp (
WalkState->Operands[0] = NULL; WalkState->Operands[0] = NULL;
WalkState->NumOperands = 0; WalkState->NumOperands = 0;
return (Status); return_ACPI_STATUS (Status);
} }

View file

@ -1,7 +1,7 @@
/****************************************************************************** /******************************************************************************
* *
* Module Name: dswstate - Dispatcher parse tree walk management routines * Module Name: dswstate - Dispatcher parse tree walk management routines
* $Revision: 67 $ * $Revision: 68 $
* *
*****************************************************************************/ *****************************************************************************/
@ -962,6 +962,8 @@ AcpiDsCreateWalkState (
WalkState->MethodDesc = MthDesc; WalkState->MethodDesc = MthDesc;
WalkState->Thread = Thread; WalkState->Thread = Thread;
WalkState->ParserState.StartOp = Origin;
/* Init the method args/local */ /* Init the method args/local */
#if (!defined (ACPI_NO_METHOD_EXECUTION) && !defined (ACPI_CONSTANT_EVAL_ONLY)) #if (!defined (ACPI_NO_METHOD_EXECUTION) && !defined (ACPI_CONSTANT_EVAL_ONLY))
@ -1012,6 +1014,7 @@ AcpiDsInitAmlWalk (
{ {
ACPI_STATUS Status; ACPI_STATUS Status;
ACPI_PARSE_STATE *ParserState = &WalkState->ParserState; ACPI_PARSE_STATE *ParserState = &WalkState->ParserState;
ACPI_PARSE_OBJECT *ExtraOp;
ACPI_FUNCTION_TRACE ("DsInitAmlWalk"); ACPI_FUNCTION_TRACE ("DsInitAmlWalk");
@ -1059,9 +1062,26 @@ AcpiDsInitAmlWalk (
} }
else else
{ {
/* Setup the current scope */ /*
* Setup the current scope.
* Find a Named Op that has a namespace node associated with it.
* search upwards from this Op. Current scope is the first
* Op with a namespace node.
*/
ExtraOp = ParserState->StartOp;
while (ExtraOp && !ExtraOp->Common.Node)
{
ExtraOp = ExtraOp->Common.Parent;
}
if (!ExtraOp)
{
ParserState->StartNode = NULL;
}
else
{
ParserState->StartNode = ExtraOp->Common.Node;
}
ParserState->StartNode = ParserState->StartOp->Common.Node;
if (ParserState->StartNode) if (ParserState->StartNode)
{ {
/* Push start scope on scope stack and make it current */ /* Push start scope on scope stack and make it current */

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: 88 $ * $Revision: 90 $
* *
*****************************************************************************/ *****************************************************************************/
@ -198,7 +198,7 @@ AcpiEvHandlerInitialize (
ACPI_STATUS Status; ACPI_STATUS Status;
ACPI_FUNCTION_TRACE ("EvInitialize"); ACPI_FUNCTION_TRACE ("EvHandlerInitialize");
/* Install the SCI handler */ /* Install the SCI handler */

View file

@ -1,7 +1,7 @@
/****************************************************************************** /******************************************************************************
* *
* Module Name: evmisc - Miscellaneous event manager support functions * Module Name: evmisc - Miscellaneous event manager support functions
* $Revision: 53 $ * $Revision: 56 $
* *
*****************************************************************************/ *****************************************************************************/
@ -556,12 +556,14 @@ AcpiEvAcquireGlobalLock (
ACPI_FUNCTION_TRACE ("EvAcquireGlobalLock"); ACPI_FUNCTION_TRACE ("EvAcquireGlobalLock");
#ifndef ACPI_APPLICATION
/* Make sure that we actually have a global lock */ /* Make sure that we actually have a global lock */
if (!AcpiGbl_GlobalLockPresent) if (!AcpiGbl_GlobalLockPresent)
{ {
return_ACPI_STATUS (AE_NO_GLOBAL_LOCK); return_ACPI_STATUS (AE_NO_GLOBAL_LOCK);
} }
#endif
/* One more thread wants the global lock */ /* One more thread wants the global lock */
@ -672,9 +674,64 @@ AcpiEvReleaseGlobalLock (void)
void void
AcpiEvTerminate (void) AcpiEvTerminate (void)
{ {
NATIVE_UINT_MAX32 i;
ACPI_STATUS Status;
ACPI_FUNCTION_TRACE ("EvTerminate"); ACPI_FUNCTION_TRACE ("EvTerminate");
/*
* Disable all event-related functionality.
* In all cases, on error, print a message but obviously we don't abort.
*/
/*
* Disable all fixed events
*/
for (i = 0; i < ACPI_NUM_FIXED_EVENTS; i++)
{
Status = AcpiDisableEvent(i, ACPI_EVENT_FIXED, 0);
if (ACPI_FAILURE (Status))
{
ACPI_DEBUG_PRINT ((ACPI_DB_ERROR, "Failed to disable fixed event %d.\n", i));
}
}
/*
* Disable all GPEs
*/
for (i = 0; i < AcpiGbl_GpeNumberMax; i++)
{
if (AcpiEvGetGpeNumberIndex(i) != ACPI_GPE_INVALID)
{
Status = AcpiHwDisableGpe(i);
if (ACPI_FAILURE (Status))
{
ACPI_DEBUG_PRINT ((ACPI_DB_ERROR, "Failed to disable GPE %d.\n", i));
}
}
}
/*
* Remove SCI handler
*/
Status = AcpiEvRemoveSciHandler();
if (ACPI_FAILURE(Status))
{
ACPI_DEBUG_PRINT ((ACPI_DB_ERROR, "Unable to remove SCI handler.\n"));
}
/*
* Return to original mode if necessary
*/
if (AcpiGbl_OriginalMode == ACPI_SYS_MODE_LEGACY)
{
Status = AcpiDisable ();
if (ACPI_FAILURE (Status))
{
ACPI_DEBUG_PRINT ((ACPI_DB_WARN, "AcpiDisable failed.\n"));
}
}
/* /*
* Free global tables, etc. * Free global tables, etc.

View file

@ -1,7 +1,7 @@
/****************************************************************************** /******************************************************************************
* *
* Module Name: evregion - ACPI AddressSpace (OpRegion) handler dispatch * Module Name: evregion - ACPI AddressSpace (OpRegion) handler dispatch
* $Revision: 134 $ * $Revision: 135 $
* *
*****************************************************************************/ *****************************************************************************/
@ -126,7 +126,6 @@
ACPI_MODULE_NAME ("evregion") ACPI_MODULE_NAME ("evregion")
/******************************************************************************* /*******************************************************************************
* *
* FUNCTION: AcpiEvInitAddressSpaces * FUNCTION: AcpiEvInitAddressSpaces

View file

@ -1,7 +1,7 @@
/****************************************************************************** /******************************************************************************
* *
* Module Name: evrgnini- ACPI AddressSpace (OpRegion) init * Module Name: evrgnini- ACPI AddressSpace (OpRegion) init
* $Revision: 62 $ * $Revision: 63 $
* *
*****************************************************************************/ *****************************************************************************/

View file

@ -1,7 +1,7 @@
/****************************************************************************** /******************************************************************************
* *
* Module Name: evxface - External interfaces for ACPI events * Module Name: evxface - External interfaces for ACPI events
* $Revision: 129 $ * $Revision: 130 $
* *
*****************************************************************************/ *****************************************************************************/
@ -126,7 +126,6 @@
ACPI_MODULE_NAME ("evxface") ACPI_MODULE_NAME ("evxface")
/******************************************************************************* /*******************************************************************************
* *
* FUNCTION: AcpiInstallFixedEventHandler * FUNCTION: AcpiInstallFixedEventHandler

View file

@ -1,7 +1,7 @@
/****************************************************************************** /******************************************************************************
* *
* Module Name: evxfevnt - External Interfaces, ACPI event disable/enable * Module Name: evxfevnt - External Interfaces, ACPI event disable/enable
* $Revision: 55 $ * $Revision: 57 $
* *
*****************************************************************************/ *****************************************************************************/
@ -145,17 +145,15 @@ AcpiEnable (void)
ACPI_FUNCTION_TRACE ("AcpiEnable"); ACPI_FUNCTION_TRACE ("AcpiEnable");
/* Make sure we have ACPI tables */ /* Make sure we have the FADT*/
if (!AcpiGbl_DSDT) if (!AcpiGbl_FADT)
{ {
ACPI_DEBUG_PRINT ((ACPI_DB_WARN, "No ACPI tables present!\n")); ACPI_DEBUG_PRINT ((ACPI_DB_WARN, "No FADT information present!\n"));
return_ACPI_STATUS (AE_NO_ACPI_TABLES); return_ACPI_STATUS (AE_NO_ACPI_TABLES);
} }
AcpiGbl_OriginalMode = AcpiHwGetMode (); if (AcpiHwGetMode() == ACPI_SYS_MODE_ACPI)
if (AcpiGbl_OriginalMode == ACPI_SYS_MODE_ACPI)
{ {
ACPI_DEBUG_PRINT ((ACPI_DB_OK, "Already in ACPI mode.\n")); ACPI_DEBUG_PRINT ((ACPI_DB_OK, "Already in ACPI mode.\n"));
} }
@ -185,8 +183,7 @@ AcpiEnable (void)
* *
* RETURN: Status * RETURN: Status
* *
* DESCRIPTION: Returns the system to original ACPI/legacy mode, and * DESCRIPTION: Transfers the system into LEGACY mode.
* uninstalls the SCI interrupt handler.
* *
******************************************************************************/ ******************************************************************************/
@ -198,22 +195,30 @@ AcpiDisable (void)
ACPI_FUNCTION_TRACE ("AcpiDisable"); ACPI_FUNCTION_TRACE ("AcpiDisable");
if (!AcpiGbl_FADT)
if (AcpiHwGetMode () != AcpiGbl_OriginalMode)
{ {
/* Restore original mode */ ACPI_DEBUG_PRINT ((ACPI_DB_WARN, "No FADT information present!\n"));
return_ACPI_STATUS (AE_NO_ACPI_TABLES);
Status = AcpiHwSetMode (AcpiGbl_OriginalMode);
if (ACPI_FAILURE (Status))
{
ACPI_DEBUG_PRINT ((ACPI_DB_ERROR, "Unable to transition to original mode"));
return_ACPI_STATUS (Status);
}
} }
/* Unload the SCI interrupt handler */ if (AcpiHwGetMode() == ACPI_SYS_MODE_LEGACY)
{
ACPI_DEBUG_PRINT ((ACPI_DB_OK, "Already in LEGACY mode.\n"));
}
else
{
/* Transition to LEGACY mode */
Status = AcpiHwSetMode (ACPI_SYS_MODE_LEGACY);
if (ACPI_FAILURE (Status))
{
ACPI_DEBUG_PRINT ((ACPI_DB_ERROR, "Could not transition to LEGACY mode."));
return_ACPI_STATUS (Status);
}
ACPI_DEBUG_PRINT ((ACPI_DB_OK, "Transition to LEGACY mode successful\n"));
}
Status = AcpiEvRemoveSciHandler ();
return_ACPI_STATUS (Status); return_ACPI_STATUS (Status);
} }

View file

@ -1,7 +1,7 @@
/****************************************************************************** /******************************************************************************
* *
* Module Name: exdump - Interpreter debug output routines * Module Name: exdump - Interpreter debug output routines
* $Revision: 157 $ * $Revision: 159 $
* *
*****************************************************************************/ *****************************************************************************/
@ -130,7 +130,7 @@
* The following routines are used for debug output only * The following routines are used for debug output only
*/ */
#if defined(ACPI_DEBUG) || defined(ENABLE_DEBUGGER) #if defined(ACPI_DEBUG_OUTPUT) || defined(ACPI_DEBUGGER)
/***************************************************************************** /*****************************************************************************
* *
@ -155,7 +155,6 @@ AcpiExDumpOperand (
UINT16 ElementIndex; UINT16 ElementIndex;
ACPI_FUNCTION_NAME ("ExDumpOperand") ACPI_FUNCTION_NAME ("ExDumpOperand")

View file

@ -2,7 +2,7 @@
/****************************************************************************** /******************************************************************************
* *
* Module Name: exmisc - ACPI AML (p-code) execution - specific opcodes * Module Name: exmisc - ACPI AML (p-code) execution - specific opcodes
* $Revision: 107 $ * $Revision: 108 $
* *
*****************************************************************************/ *****************************************************************************/

View file

@ -2,7 +2,7 @@
/****************************************************************************** /******************************************************************************
* *
* Module Name: exoparg1 - AML execution - opcodes with 1 argument * Module Name: exoparg1 - AML execution - opcodes with 1 argument
* $Revision: 141 $ * $Revision: 142 $
* *
*****************************************************************************/ *****************************************************************************/
@ -306,7 +306,6 @@ AcpiExOpcode_1A_1T_1R (
ACPI_FUNCTION_TRACE_STR ("ExOpcode_1A_1T_1R", AcpiPsGetOpcodeName (WalkState->Opcode)); ACPI_FUNCTION_TRACE_STR ("ExOpcode_1A_1T_1R", AcpiPsGetOpcodeName (WalkState->Opcode));
/* Examine the AML opcode */ /* Examine the AML opcode */
switch (WalkState->Opcode) switch (WalkState->Opcode)

View file

@ -1,7 +1,7 @@
/****************************************************************************** /******************************************************************************
* *
* Module Name: exoparg2 - AML execution - opcodes with 2 arguments * Module Name: exoparg2 - AML execution - opcodes with 2 arguments
* $Revision: 109 $ * $Revision: 110 $
* *
*****************************************************************************/ *****************************************************************************/

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: 118 $ * $Revision: 119 $
* *
*****************************************************************************/ *****************************************************************************/

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: 79 $ * $Revision: 80 $
* *
*****************************************************************************/ *****************************************************************************/

View file

@ -2,7 +2,7 @@
/****************************************************************************** /******************************************************************************
* *
* Module Name: exresop - AML Interpreter operand/object resolution * Module Name: exresop - AML Interpreter operand/object resolution
* $Revision: 54 $ * $Revision: 55 $
* *
*****************************************************************************/ *****************************************************************************/

View file

@ -2,7 +2,7 @@
/****************************************************************************** /******************************************************************************
* *
* Module Name: exstore - AML Interpreter object store support * Module Name: exstore - AML Interpreter object store support
* $Revision: 168 $ * $Revision: 169 $
* *
*****************************************************************************/ *****************************************************************************/

View file

@ -2,7 +2,7 @@
/****************************************************************************** /******************************************************************************
* *
* Module Name: exutils - interpreter/scanner utilities * Module Name: exutils - interpreter/scanner utilities
* $Revision: 102 $ * $Revision: 103 $
* *
*****************************************************************************/ *****************************************************************************/
@ -363,7 +363,8 @@ AcpiExReleaseGlobalLock (
{ {
/* Report the error, but there isn't much else we can do */ /* Report the error, but there isn't much else we can do */
ACPI_REPORT_ERROR (("Could not release ACPI Global Lock\n")); ACPI_REPORT_ERROR (("Could not release ACPI Global Lock, %s\n",
AcpiFormatException (Status)));
} }
} }

View file

@ -2,7 +2,7 @@
/****************************************************************************** /******************************************************************************
* *
* Module Name: hwacpi - ACPI Hardware Initialization/Mode Interface * Module Name: hwacpi - ACPI Hardware Initialization/Mode Interface
* $Revision: 58 $ * $Revision: 60 $
* *
*****************************************************************************/ *****************************************************************************/
@ -190,6 +190,29 @@ AcpiHwSetMode (
ACPI_FUNCTION_TRACE ("HwSetMode"); ACPI_FUNCTION_TRACE ("HwSetMode");
/*
* ACPI 2.0 clarified that if SMI_CMD in FADT is zero,
* system does not support mode transition.
*/
if (!AcpiGbl_FADT->SmiCmd)
{
ACPI_DEBUG_PRINT ((ACPI_DB_ERROR, "No SMI_CMD in FADT, mode transition failed.\n"));
return_ACPI_STATUS (AE_NO_HARDWARE_RESPONSE);
}
/*
* ACPI 2.0 clarified the meaning of ACPI_ENABLE and ACPI_DISABLE
* in FADT: If it is zero, enabling or disabling is not supported.
* As old systems may have used zero for mode transition,
* we make sure both the numbers are zero to determine these
* transitions are not supported.
*/
if (!AcpiGbl_FADT->AcpiEnable && !AcpiGbl_FADT->AcpiDisable)
{
ACPI_DEBUG_PRINT ((ACPI_DB_INFO, "No mode transition supported in this system.\n"));
return_ACPI_STATUS (AE_OK);
}
switch (Mode) switch (Mode)
{ {
case ACPI_SYS_MODE_ACPI: case ACPI_SYS_MODE_ACPI:
@ -231,7 +254,8 @@ AcpiHwSetMode (
{ {
Status = AE_NO_HARDWARE_RESPONSE; Status = AE_NO_HARDWARE_RESPONSE;
if (AcpiHwGetMode() == Mode) { if (AcpiHwGetMode() == Mode)
{
ACPI_DEBUG_PRINT ((ACPI_DB_INFO, "Mode %X successfully enabled\n", Mode)); ACPI_DEBUG_PRINT ((ACPI_DB_INFO, "Mode %X successfully enabled\n", Mode));
Status = AE_OK; Status = AE_OK;
break; break;

View file

@ -2,7 +2,7 @@
/****************************************************************************** /******************************************************************************
* *
* Module Name: hwgpe - Low level GPE enable/disable/clear functions * Module Name: hwgpe - Low level GPE enable/disable/clear functions
* $Revision: 41 $ * $Revision: 42 $
* *
*****************************************************************************/ *****************************************************************************/

View file

@ -3,7 +3,7 @@
* *
* Module Name: hwregs - Read/write access functions for the various ACPI * Module Name: hwregs - Read/write access functions for the various ACPI
* control and status registers. * control and status registers.
* $Revision: 133 $ * $Revision: 134 $
* *
******************************************************************************/ ******************************************************************************/

View file

@ -1,7 +1,7 @@
/******************************************************************************* /*******************************************************************************
* *
* Module Name: nsaccess - Top-level functions for accessing ACPI namespace * Module Name: nsaccess - Top-level functions for accessing ACPI namespace
* $Revision: 156 $ * $Revision: 161 $
* *
******************************************************************************/ ******************************************************************************/
@ -216,6 +216,19 @@ AcpiNsRootInitialize (void)
*/ */
switch (InitVal->Type) switch (InitVal->Type)
{ {
case ACPI_TYPE_METHOD:
ObjDesc->Method.ParamCount =
(UINT8) ACPI_STRTOUL (InitVal->Val, NULL, 10);
ObjDesc->Common.Flags |= AOPOBJ_DATA_VALID;
#if defined (ACPI_NO_METHOD_EXECUTION) || defined (ACPI_CONSTANT_EVAL_ONLY)
/* Compiler cheats by putting parameter count in the OwnerID */
NewNode->OwnerId = ObjDesc->Method.ParamCount;
#endif
break;
case ACPI_TYPE_INTEGER: case ACPI_TYPE_INTEGER:
ObjDesc->Integer.Value = ObjDesc->Integer.Value =
@ -331,6 +344,7 @@ AcpiNsLookup (
ACPI_NAMESPACE_NODE **ReturnNode) ACPI_NAMESPACE_NODE **ReturnNode)
{ {
ACPI_STATUS Status; ACPI_STATUS Status;
NATIVE_CHAR *Path = Pathname;
ACPI_NAMESPACE_NODE *PrefixNode; ACPI_NAMESPACE_NODE *PrefixNode;
ACPI_NAMESPACE_NODE *CurrentNode = NULL; ACPI_NAMESPACE_NODE *CurrentNode = NULL;
ACPI_NAMESPACE_NODE *ThisNode = NULL; ACPI_NAMESPACE_NODE *ThisNode = NULL;
@ -338,7 +352,9 @@ AcpiNsLookup (
ACPI_NAME SimpleName; ACPI_NAME SimpleName;
ACPI_OBJECT_TYPE TypeToCheckFor; ACPI_OBJECT_TYPE TypeToCheckFor;
ACPI_OBJECT_TYPE ThisSearchType; ACPI_OBJECT_TYPE ThisSearchType;
UINT32 LocalFlags = Flags & ~ACPI_NS_ERROR_IF_FOUND; UINT32 SearchParentFlag = ACPI_NS_SEARCH_PARENT;
UINT32 LocalFlags = Flags & ~(ACPI_NS_ERROR_IF_FOUND |
ACPI_NS_SEARCH_PARENT);
ACPI_FUNCTION_TRACE ("NsLookup"); ACPI_FUNCTION_TRACE ("NsLookup");
@ -373,6 +389,23 @@ AcpiNsLookup (
else else
{ {
PrefixNode = ScopeInfo->Scope.Node; PrefixNode = ScopeInfo->Scope.Node;
if (ACPI_GET_DESCRIPTOR_TYPE (PrefixNode) != ACPI_DESC_TYPE_NAMED)
{
ACPI_DEBUG_PRINT ((ACPI_DB_ERROR, "[%p] Not a namespace node\n",
PrefixNode));
return_ACPI_STATUS (AE_AML_INTERNAL);
}
/*
* This node might not be a actual "scope" node (such as a
* Device/Method, etc.) It could be a Package or other object node.
* Backup up the tree to find the containing scope node.
*/
while (!AcpiNsOpensScope (PrefixNode->Type) &&
PrefixNode->Type != ACPI_TYPE_ANY)
{
PrefixNode = AcpiNsGetParentNode (PrefixNode);
}
} }
/* /*
@ -408,7 +441,7 @@ AcpiNsLookup (
NumSegments = 0; NumSegments = 0;
ThisNode = AcpiGbl_RootNode; ThisNode = AcpiGbl_RootNode;
Pathname = ""; Path = "";
ACPI_DEBUG_PRINT ((ACPI_DB_NAMES, ACPI_DEBUG_PRINT ((ACPI_DB_NAMES,
"Null Pathname (Zero segments), Flags=%X\n", Flags)); "Null Pathname (Zero segments), Flags=%X\n", Flags));
@ -428,25 +461,26 @@ AcpiNsLookup (
* Parent Prefixes (in which case the name's scope is relative * Parent Prefixes (in which case the name's scope is relative
* to the current scope). * to the current scope).
*/ */
if (*Pathname == (UINT8) AML_ROOT_PREFIX) if (*Path == (UINT8) AML_ROOT_PREFIX)
{ {
/* Pathname is fully qualified, start from the root */ /* Pathname is fully qualified, start from the root */
ThisNode = AcpiGbl_RootNode; ThisNode = AcpiGbl_RootNode;
SearchParentFlag = ACPI_NS_NO_UPSEARCH;
/* Point to name segment part */ /* Point to name segment part */
Pathname++; Path++;
ACPI_DEBUG_PRINT ((ACPI_DB_NAMES, "Searching from root [%p]\n", ACPI_DEBUG_PRINT ((ACPI_DB_NAMES,
ThisNode)); "Path is absolute from root [%p]\n", ThisNode));
} }
else else
{ {
/* Pathname is relative to current scope, start there */ /* Pathname is relative to current scope, start there */
ACPI_DEBUG_PRINT ((ACPI_DB_NAMES, ACPI_DEBUG_PRINT ((ACPI_DB_NAMES,
"Searching relative to pfx scope [%p]\n", "Searching relative to prefix scope [%p]\n",
PrefixNode)); PrefixNode));
/* /*
@ -454,13 +488,16 @@ AcpiNsLookup (
* the parent node for each prefix instance. * the parent node for each prefix instance.
*/ */
ThisNode = PrefixNode; ThisNode = PrefixNode;
while (*Pathname == (UINT8) AML_PARENT_PREFIX) while (*Path == (UINT8) AML_PARENT_PREFIX)
{ {
/* Name is fully qualified, no search rules apply */
SearchParentFlag = ACPI_NS_NO_UPSEARCH;
/* /*
* Point past this prefix to the name segment * Point past this prefix to the name segment
* part or the next Parent Prefix * part or the next Parent Prefix
*/ */
Pathname++; Path++;
/* Backup to the parent node */ /* Backup to the parent node */
@ -474,6 +511,12 @@ AcpiNsLookup (
return_ACPI_STATUS (AE_NOT_FOUND); return_ACPI_STATUS (AE_NOT_FOUND);
} }
} }
if (SearchParentFlag == ACPI_NS_NO_UPSEARCH)
{
ACPI_DEBUG_PRINT ((ACPI_DB_NAMES,
"Path is absolute with one or more carats\n"));
}
} }
/* /*
@ -489,7 +532,7 @@ AcpiNsLookup (
* Examine the name prefix opcode, if any, to determine the number of * Examine the name prefix opcode, if any, to determine the number of
* segments. * segments.
*/ */
switch (*Pathname) switch (*Path)
{ {
case 0: case 0:
/* /*
@ -504,10 +547,14 @@ AcpiNsLookup (
case AML_DUAL_NAME_PREFIX: case AML_DUAL_NAME_PREFIX:
/* More than one NameSeg, search rules do not apply */
SearchParentFlag = ACPI_NS_NO_UPSEARCH;
/* Two segments, point to first name segment */ /* Two segments, point to first name segment */
NumSegments = 2; NumSegments = 2;
Pathname++; Path++;
ACPI_DEBUG_PRINT ((ACPI_DB_NAMES, ACPI_DEBUG_PRINT ((ACPI_DB_NAMES,
"Dual Pathname (2 segments, Flags=%X)\n", Flags)); "Dual Pathname (2 segments, Flags=%X)\n", Flags));
@ -515,11 +562,15 @@ AcpiNsLookup (
case AML_MULTI_NAME_PREFIX_OP: case AML_MULTI_NAME_PREFIX_OP:
/* More than one NameSeg, search rules do not apply */
SearchParentFlag = ACPI_NS_NO_UPSEARCH;
/* Extract segment count, point to first name segment */ /* Extract segment count, point to first name segment */
Pathname++; Path++;
NumSegments = (UINT32) (UINT8) *Pathname; NumSegments = (UINT32) (UINT8) *Path;
Pathname++; Path++;
ACPI_DEBUG_PRINT ((ACPI_DB_NAMES, ACPI_DEBUG_PRINT ((ACPI_DB_NAMES,
"Multi Pathname (%d Segments, Flags=%X) \n", "Multi Pathname (%d Segments, Flags=%X) \n",
@ -538,35 +589,53 @@ AcpiNsLookup (
break; break;
} }
ACPI_DEBUG_EXEC (AcpiNsPrintPathname (NumSegments, Pathname)); ACPI_DEBUG_EXEC (AcpiNsPrintPathname (NumSegments, Path));
} }
/* /*
* Search namespace for each segment of the name. Loop through and * Search namespace for each segment of the name. Loop through and
* verify/add each name segment. * verify (or add to the namespace) each name segment.
*
* The object type is significant only at the last name
* segment. (We don't care about the types along the path, only
* the type of the final target object.)
*/ */
ThisSearchType = ACPI_TYPE_ANY;
CurrentNode = ThisNode; CurrentNode = ThisNode;
while (NumSegments && CurrentNode) while (NumSegments && CurrentNode)
{ {
/*
* Search for the current name segment under the current
* named object. The Type is significant only at the last name
* segment. (We don't care about the types along the path, only
* the type of the final target object.)
*/
ThisSearchType = ACPI_TYPE_ANY;
NumSegments--; NumSegments--;
if (!NumSegments) if (!NumSegments)
{ {
/*
* This is the last segment, enable typechecking
*/
ThisSearchType = Type; ThisSearchType = Type;
LocalFlags = Flags;
/*
* Only allow automatic parent search (search rules) if the caller
* requested it AND we have a single, non-fully-qualified NameSeg
*/
if ((SearchParentFlag != ACPI_NS_NO_UPSEARCH) &&
(Flags & ACPI_NS_SEARCH_PARENT))
{
LocalFlags |= ACPI_NS_SEARCH_PARENT;
}
/* Set error flag according to caller */
if (Flags & ACPI_NS_ERROR_IF_FOUND)
{
LocalFlags |= ACPI_NS_ERROR_IF_FOUND;
}
} }
/* Extract one ACPI name from the front of the pathname */ /* Extract one ACPI name from the front of the pathname */
ACPI_MOVE_UNALIGNED32_TO_32 (&SimpleName, Pathname); ACPI_MOVE_UNALIGNED32_TO_32 (&SimpleName, Path);
/* Try to find the ACPI name */ /* Try to find the single (4 character) ACPI name */
Status = AcpiNsSearchAndEnter (SimpleName, WalkState, CurrentNode, Status = AcpiNsSearchAndEnter (SimpleName, WalkState, CurrentNode,
InterpreterMode, ThisSearchType, LocalFlags, &ThisNode); InterpreterMode, ThisSearchType, LocalFlags, &ThisNode);
@ -578,7 +647,8 @@ AcpiNsLookup (
ACPI_DEBUG_PRINT ((ACPI_DB_NAMES, ACPI_DEBUG_PRINT ((ACPI_DB_NAMES,
"Name [%4.4s] not found in scope [%4.4s] %p\n", "Name [%4.4s] not found in scope [%4.4s] %p\n",
(char *) &SimpleName, (char *) &CurrentNode->Name, CurrentNode)); (char *) &SimpleName, (char *) &CurrentNode->Name,
CurrentNode));
} }
return_ACPI_STATUS (Status); return_ACPI_STATUS (Status);
@ -627,7 +697,7 @@ AcpiNsLookup (
/* Point to next name segment and make this node current */ /* Point to next name segment and make this node current */
Pathname += ACPI_NAME_SIZE; Path += ACPI_NAME_SIZE;
CurrentNode = ThisNode; CurrentNode = ThisNode;
} }

View file

@ -1,7 +1,7 @@
/****************************************************************************** /******************************************************************************
* *
* Module Name: nsdump - table dumping routines for debug * Module Name: nsdump - table dumping routines for debug
* $Revision: 137 $ * $Revision: 139 $
* *
*****************************************************************************/ *****************************************************************************/
@ -125,7 +125,7 @@
#define _COMPONENT ACPI_NAMESPACE #define _COMPONENT ACPI_NAMESPACE
ACPI_MODULE_NAME ("nsdump") ACPI_MODULE_NAME ("nsdump")
#if defined(ACPI_DEBUG) || defined(ENABLE_DEBUGGER) #if defined(ACPI_DEBUG_OUTPUT) || defined(ACPI_DEBUGGER)
/******************************************************************************* /*******************************************************************************

View file

@ -1,7 +1,7 @@
/****************************************************************************** /******************************************************************************
* *
* Module Name: nsdump - table dumping routines for debug * Module Name: nsdump - table dumping routines for debug
* $Revision: 1 $ * $Revision: 3 $
* *
*****************************************************************************/ *****************************************************************************/
@ -126,7 +126,7 @@
ACPI_MODULE_NAME ("nsdumpdv") ACPI_MODULE_NAME ("nsdumpdv")
#if defined(ACPI_DEBUG) || defined(ENABLE_DEBUGGER) #if defined(ACPI_DEBUG_OUTPUT) || defined(ACPI_DEBUGGER)
/******************************************************************************* /*******************************************************************************
* *

View file

@ -2,7 +2,7 @@
* *
* Module Name: nseval - Object evaluation interfaces -- includes control * Module Name: nseval - Object evaluation interfaces -- includes control
* method lookup and execution. * method lookup and execution.
* $Revision: 117 $ * $Revision: 118 $
* *
******************************************************************************/ ******************************************************************************/

View file

@ -1,7 +1,7 @@
/****************************************************************************** /******************************************************************************
* *
* Module Name: nsinit - namespace initialization * Module Name: nsinit - namespace initialization
* $Revision: 47 $ * $Revision: 49 $
* *
*****************************************************************************/ *****************************************************************************/
@ -479,7 +479,7 @@ AcpiNsInitOneDevice (
{ {
/* Ignore error and move on to next device */ /* Ignore error and move on to next device */
#ifdef ACPI_DEBUG #ifdef ACPI_DEBUG_OUTPUT
NATIVE_CHAR *ScopeName = AcpiNsGetExternalPathname (ObjHandle); NATIVE_CHAR *ScopeName = AcpiNsGetExternalPathname (ObjHandle);
ACPI_DEBUG_PRINT ((ACPI_DB_WARN, "%s._INI failed: %s\n", ACPI_DEBUG_PRINT ((ACPI_DB_WARN, "%s._INI failed: %s\n",

View file

@ -1,7 +1,7 @@
/****************************************************************************** /******************************************************************************
* *
* Module Name: nsload - namespace loading/expanding/contracting procedures * Module Name: nsload - namespace loading/expanding/contracting procedures
* $Revision: 57 $ * $Revision: 58 $
* *
*****************************************************************************/ *****************************************************************************/
@ -534,7 +534,6 @@ AcpiNsLoadNamespace (
} }
/******************************************************************************* /*******************************************************************************
* *
* FUNCTION: AcpiNsDeleteSubtree * FUNCTION: AcpiNsDeleteSubtree

View file

@ -1,7 +1,7 @@
/******************************************************************************* /*******************************************************************************
* *
* Module Name: nsnames - Name manipulation and search * Module Name: nsnames - Name manipulation and search
* $Revision: 78 $ * $Revision: 79 $
* *
******************************************************************************/ ******************************************************************************/
@ -198,7 +198,7 @@ AcpiNsBuildExternalPath (
} }
#ifdef ACPI_DEBUG #ifdef ACPI_DEBUG_OUTPUT
/******************************************************************************* /*******************************************************************************
* *
* FUNCTION: AcpiNsGetExternalPathname * FUNCTION: AcpiNsGetExternalPathname

View file

@ -1,7 +1,7 @@
/******************************************************************************* /*******************************************************************************
* *
* Module Name: nssearch - Namespace search * Module Name: nssearch - Namespace search
* $Revision: 86 $ * $Revision: 89 $
* *
******************************************************************************/ ******************************************************************************/
@ -163,7 +163,7 @@ AcpiNsSearchNode (
ACPI_FUNCTION_TRACE ("NsSearchNode"); ACPI_FUNCTION_TRACE ("NsSearchNode");
#ifdef ACPI_DEBUG #ifdef ACPI_DEBUG_OUTPUT
if (ACPI_LV_NAMES & AcpiDbgLevel) if (ACPI_LV_NAMES & AcpiDbgLevel)
{ {
NATIVE_CHAR *ScopeName; NATIVE_CHAR *ScopeName;
@ -395,10 +395,10 @@ AcpiNsSearchAndEnter (
if (!Node || !TargetName || !ReturnNode) if (!Node || !TargetName || !ReturnNode)
{ {
ACPI_DEBUG_PRINT ((ACPI_DB_ERROR, "Null param- Table %p Name %X Return %p\n", ACPI_DEBUG_PRINT ((ACPI_DB_ERROR, "Null param: Node %p Name %X ReturnNode %p\n",
Node, TargetName, ReturnNode)); Node, TargetName, ReturnNode));
ACPI_REPORT_ERROR (("NsSearchAndEnter: bad (null) parameter\n")); ACPI_REPORT_ERROR (("NsSearchAndEnter: Null parameter\n"));
return_ACPI_STATUS (AE_BAD_PARAMETER); return_ACPI_STATUS (AE_BAD_PARAMETER);
} }

View file

@ -2,7 +2,7 @@
* *
* Module Name: nsutils - Utilities for accessing ACPI namespace, accessing * Module Name: nsutils - Utilities for accessing ACPI namespace, accessing
* parents and siblings and Scope manipulation * parents and siblings and Scope manipulation
* $Revision: 110 $ * $Revision: 112 $
* *
*****************************************************************************/ *****************************************************************************/
@ -557,10 +557,14 @@ AcpiNsExternalizeName (
case '^': case '^':
for (i = 0; i < InternalNameLength; i++) for (i = 0; i < InternalNameLength; i++)
{ {
if (InternalName[i] != '^') if (InternalName[i] == '^')
{ {
PrefixLength = i + 1; PrefixLength = i + 1;
} }
else
{
break;
}
} }
if (i == InternalNameLength) if (i == InternalNameLength)
@ -980,7 +984,7 @@ AcpiNsFindParentName (
} }
#if defined(ACPI_DEBUG) || defined(ENABLE_DEBUGGER) #if defined(ACPI_DEBUG_OUTPUT) || defined(ACPI_DEBUGGER)
/******************************************************************************* /*******************************************************************************
* *
@ -1016,7 +1020,7 @@ AcpiNsExistDownstreamSibling (
return (FALSE); return (FALSE);
} }
#endif /* ACPI_DEBUG */ #endif /* ACPI_DEBUG_OUTPUT */
/******************************************************************************* /*******************************************************************************

View file

@ -2,7 +2,7 @@
* *
* Module Name: nsxfeval - Public interfaces to the ACPI subsystem * Module Name: nsxfeval - Public interfaces to the ACPI subsystem
* ACPI Object evaluation interfaces * ACPI Object evaluation interfaces
* $Revision: 1 $ * $Revision: 2 $
* *
******************************************************************************/ ******************************************************************************/
@ -447,7 +447,6 @@ AcpiEvaluateObject (
} }
/******************************************************************************* /*******************************************************************************
* *
* FUNCTION: AcpiWalkNamespace * FUNCTION: AcpiWalkNamespace

View file

@ -1,7 +1,7 @@
/****************************************************************************** /******************************************************************************
* *
* Module Name: psargs - Parse AML opcode arguments * Module Name: psargs - Parse AML opcode arguments
* $Revision: 62 $ * $Revision: 64 $
* *
*****************************************************************************/ *****************************************************************************/
@ -256,7 +256,7 @@ AcpiPsGetNextNamestring (
while (AcpiPsIsPrefixChar (ACPI_GET8 (End))) while (AcpiPsIsPrefixChar (ACPI_GET8 (End)))
{ {
/* include prefix '\\' or '^' */ /* Include prefix '\\' or '^' */
End++; End++;
} }
@ -314,20 +314,17 @@ AcpiPsGetNextNamestring (
* MethodCall - Whether the namepath can be the start * MethodCall - Whether the namepath can be the start
* of a method call * of a method call
* *
* RETURN: None * RETURN: Status
* *
* DESCRIPTION: Get next name (if method call, push appropriate # args). Names * DESCRIPTION: Get next name (if method call, return # of required args).
* are looked up in either the parsed or internal namespace to * Names are looked up in the internal namespace to determine
* determine if the name represents a control method. If a method * if the name represents a control method. If a method
* is found, the number of arguments to the method is returned. * is found, the number of arguments to the method is returned.
* This information is critical for parsing to continue correctly. * This information is critical for parsing to continue correctly.
* *
******************************************************************************/ ******************************************************************************/
ACPI_STATUS
#ifdef PARSER_ONLY
void
AcpiPsGetNextNamepath ( AcpiPsGetNextNamepath (
ACPI_PARSE_STATE *ParserState, ACPI_PARSE_STATE *ParserState,
ACPI_PARSE_OBJECT *Arg, ACPI_PARSE_OBJECT *Arg,
@ -336,69 +333,77 @@ AcpiPsGetNextNamepath (
{ {
NATIVE_CHAR *Path; NATIVE_CHAR *Path;
ACPI_PARSE_OBJECT *NameOp; ACPI_PARSE_OBJECT *NameOp;
ACPI_PARSE_OBJECT *Op; ACPI_STATUS Status = AE_OK;
ACPI_PARSE_OBJECT *Count; ACPI_OPERAND_OBJECT *MethodDesc;
ACPI_NAMESPACE_NODE *Node;
ACPI_GENERIC_STATE ScopeInfo;
ACPI_FUNCTION_TRACE ("PsGetNextNamepath"); ACPI_FUNCTION_TRACE ("PsGetNextNamepath");
Path = AcpiPsGetNextNamestring (ParserState); Path = AcpiPsGetNextNamestring (ParserState);
if (!Path || !MethodCall)
{
/* Null name case, create a null namepath object */
AcpiPsInitOp (Arg, AML_INT_NAMEPATH_OP); /* Null path case is allowed */
Arg->Common.Value.Name = Path;
return_VOID;
}
if (Path)
if (AcpiGbl_ParsedNamespaceRoot)
{ {
/* /*
* Lookup the name in the parsed namespace * Lookup the name in the internal namespace
*/ */
Op = NULL; ScopeInfo.Scope.Node = NULL;
if (MethodCall) Node = ParserState->StartNode;
if (Node)
{ {
Op = AcpiPsFind (AcpiPsGetParentScope (ParserState), ScopeInfo.Scope.Node = Node;
Path, AML_METHOD_OP, 0);
} }
if (Op) /*
* Lookup object. We don't want to add anything new to the namespace
* here, however. So we use MODE_EXECUTE. Allow searching of the
* parent tree, but don't open a new scope -- we just want to lookup the
* object (MUST BE mode EXECUTE to perform upsearch)
*/
Status = AcpiNsLookup (&ScopeInfo, Path, ACPI_TYPE_ANY, ACPI_IMODE_EXECUTE,
ACPI_NS_SEARCH_PARENT | ACPI_NS_DONT_OPEN_SCOPE, NULL,
&Node);
if (ACPI_SUCCESS (Status) && MethodCall)
{ {
if (Op->Common.AmlOpcode == AML_METHOD_OP) if (Node->Type == ACPI_TYPE_METHOD)
{ {
/* MethodDesc = AcpiNsGetAttachedObject (Node);
* The name refers to a control method, so this namepath is a ACPI_DEBUG_PRINT ((ACPI_DB_PARSE, "Control Method - %p Desc %p Path=%p\n",
* method invocation. We need to 1) Get the number of arguments Node, MethodDesc, Path));
* associated with this method, and 2) Change the NAMEPATH
* object into a METHODCALL object. NameOp = AcpiPsAllocOp (AML_INT_NAMEPATH_OP);
*/ if (!NameOp)
Count = AcpiPsGetArg (Op, 0);
if (Count && Count->Common.AmlOpcode == AML_BYTE_OP)
{ {
NameOp = AcpiPsAllocOp (AML_INT_NAMEPATH_OP); return_ACPI_STATUS (AE_NO_MEMORY);
if (NameOp)
{
/* Change arg into a METHOD CALL and attach the name */
AcpiPsInitOp (Arg, AML_INT_METHODCALL_OP);
NameOp->Common.Value.Name = Path;
/* Point METHODCALL/NAME to the METHOD Node */
NameOp->Common.Node = (ACPI_NAMESPACE_NODE *) Op;
AcpiPsAppendArg (Arg, NameOp);
*ArgCount = (UINT32) Count->Common.Value.Integer &
METHOD_FLAGS_ARG_COUNT;
}
} }
return_VOID; /* Change arg into a METHOD CALL and attach name to it */
AcpiPsInitOp (Arg, AML_INT_METHODCALL_OP);
NameOp->Common.Value.Name = Path;
/* Point METHODCALL/NAME to the METHOD Node */
NameOp->Common.Node = Node;
AcpiPsAppendArg (Arg, NameOp);
if (!MethodDesc)
{
ACPI_DEBUG_PRINT ((ACPI_DB_PARSE, "Control Method - %p has no attached object\n",
Node));
return_ACPI_STATUS (AE_AML_INTERNAL);
}
ACPI_DEBUG_PRINT ((ACPI_DB_PARSE, "Control Method - %p Args %X\n",
Node, MethodDesc->Method.ParamCount));
*ArgCount = MethodDesc->Method.ParamCount;
return_ACPI_STATUS (AE_OK);
} }
/* /*
@ -410,128 +415,16 @@ AcpiPsGetNextNamepath (
} }
/* /*
* Either we didn't find the object in the namespace, or the object is * Regardless of success/failure above,
* something other than a control method. Just initialize the Op with the * Just initialize the Op with the pathname.
* pathname
*/ */
AcpiPsInitOp (Arg, AML_INT_NAMEPATH_OP); AcpiPsInitOp (Arg, AML_INT_NAMEPATH_OP);
Arg->Common.Value.Name = Path; Arg->Common.Value.Name = Path;
return_ACPI_STATUS (Status);
return_VOID;
} }
#else
void
AcpiPsGetNextNamepath (
ACPI_PARSE_STATE *ParserState,
ACPI_PARSE_OBJECT *Arg,
UINT32 *ArgCount,
BOOLEAN MethodCall)
{
NATIVE_CHAR *Path;
ACPI_PARSE_OBJECT *NameOp;
ACPI_STATUS Status;
ACPI_OPERAND_OBJECT *MethodDesc;
ACPI_NAMESPACE_NODE *Node;
ACPI_GENERIC_STATE ScopeInfo;
ACPI_FUNCTION_TRACE ("PsGetNextNamepath");
Path = AcpiPsGetNextNamestring (ParserState);
if (!Path || !MethodCall)
{
/* Null name case, create a null namepath object */
AcpiPsInitOp (Arg, AML_INT_NAMEPATH_OP);
Arg->Common.Value.Name = Path;
return_VOID;
}
/*
* Lookup the name in the internal namespace
*/
ScopeInfo.Scope.Node = NULL;
Node = ParserState->StartNode;
if (Node)
{
ScopeInfo.Scope.Node = Node;
}
/*
* Lookup object. We don't want to add anything new to the namespace
* here, however. So we use MODE_EXECUTE. Allow searching of the
* parent tree, but don't open a new scope -- we just want to lookup the
* object (MUST BE mode EXECUTE to perform upsearch)
*/
Status = AcpiNsLookup (&ScopeInfo, Path, ACPI_TYPE_ANY, ACPI_IMODE_EXECUTE,
ACPI_NS_SEARCH_PARENT | ACPI_NS_DONT_OPEN_SCOPE, NULL,
&Node);
if (ACPI_SUCCESS (Status))
{
if (Node->Type == ACPI_TYPE_METHOD)
{
MethodDesc = AcpiNsGetAttachedObject (Node);
ACPI_DEBUG_PRINT ((ACPI_DB_PARSE, "Control Method - %p Desc %p Path=%p\n",
Node, MethodDesc, Path));
NameOp = AcpiPsAllocOp (AML_INT_NAMEPATH_OP);
if (!NameOp)
{
return_VOID;
}
/* Change arg into a METHOD CALL and attach name to it */
AcpiPsInitOp (Arg, AML_INT_METHODCALL_OP);
NameOp->Common.Value.Name = Path;
/* Point METHODCALL/NAME to the METHOD Node */
NameOp->Common.Node = Node;
AcpiPsAppendArg (Arg, NameOp);
if (!MethodDesc)
{
ACPI_DEBUG_PRINT ((ACPI_DB_PARSE, "Control Method - %p has no attached object\n",
Node));
return_VOID;
}
ACPI_DEBUG_PRINT ((ACPI_DB_PARSE, "Control Method - %p Args %X\n",
Node, MethodDesc->Method.ParamCount));
*ArgCount = MethodDesc->Method.ParamCount;
return_VOID;
}
/*
* Else this is normal named object reference.
* Just init the NAMEPATH object with the pathname.
* (See code below)
*/
}
/*
* Either we didn't find the object in the namespace, or the object is
* something other than a control method. Just initialize the Op with the
* pathname.
*/
AcpiPsInitOp (Arg, AML_INT_NAMEPATH_OP);
Arg->Common.Value.Name = Path;
return_VOID;
}
#endif
/******************************************************************************* /*******************************************************************************
* *
* FUNCTION: AcpiPsGetNextSimpleArg * FUNCTION: AcpiPsGetNextSimpleArg
@ -744,23 +637,25 @@ AcpiPsGetNextField (
* ArgCount - If the argument points to a control method * ArgCount - If the argument points to a control method
* the method's argument is returned here. * the method's argument is returned here.
* *
* RETURN: An op object containing the next argument. * RETURN: Status, and an op object containing the next argument.
* *
* DESCRIPTION: Get next argument (including complex list arguments that require * DESCRIPTION: Get next argument (including complex list arguments that require
* pushing the parser stack) * pushing the parser stack)
* *
******************************************************************************/ ******************************************************************************/
ACPI_PARSE_OBJECT * ACPI_STATUS
AcpiPsGetNextArg ( AcpiPsGetNextArg (
ACPI_PARSE_STATE *ParserState, ACPI_PARSE_STATE *ParserState,
UINT32 ArgType, UINT32 ArgType,
UINT32 *ArgCount) UINT32 *ArgCount,
ACPI_PARSE_OBJECT **ReturnArg)
{ {
ACPI_PARSE_OBJECT *Arg = NULL; ACPI_PARSE_OBJECT *Arg = NULL;
ACPI_PARSE_OBJECT *Prev = NULL; ACPI_PARSE_OBJECT *Prev = NULL;
ACPI_PARSE_OBJECT *Field; ACPI_PARSE_OBJECT *Field;
UINT32 Subop; UINT32 Subop;
ACPI_STATUS Status = AE_OK;
ACPI_FUNCTION_TRACE_PTR ("PsGetNextArg", ParserState); ACPI_FUNCTION_TRACE_PTR ("PsGetNextArg", ParserState);
@ -778,16 +673,17 @@ AcpiPsGetNextArg (
/* constants, strings, and namestrings are all the same size */ /* constants, strings, and namestrings are all the same size */
Arg = AcpiPsAllocOp (AML_BYTE_OP); Arg = AcpiPsAllocOp (AML_BYTE_OP);
if (Arg) if (!Arg)
{ {
AcpiPsGetNextSimpleArg (ParserState, ArgType, Arg); return_ACPI_STATUS (AE_NO_MEMORY);
} }
AcpiPsGetNextSimpleArg (ParserState, ArgType, Arg);
break; break;
case ARGP_PKGLENGTH: case ARGP_PKGLENGTH:
/* package length, nothing returned */ /* Package length, nothing returned */
ParserState->PkgEnd = AcpiPsGetNextPackageEnd (ParserState); ParserState->PkgEnd = AcpiPsGetNextPackageEnd (ParserState);
break; break;
@ -797,21 +693,20 @@ AcpiPsGetNextArg (
if (ParserState->Aml < ParserState->PkgEnd) if (ParserState->Aml < ParserState->PkgEnd)
{ {
/* non-empty list */ /* Non-empty list */
while (ParserState->Aml < ParserState->PkgEnd) while (ParserState->Aml < ParserState->PkgEnd)
{ {
Field = AcpiPsGetNextField (ParserState); Field = AcpiPsGetNextField (ParserState);
if (!Field) if (!Field)
{ {
break; return_ACPI_STATUS (AE_NO_MEMORY);
} }
if (Prev) if (Prev)
{ {
Prev->Common.Next = Field; Prev->Common.Next = Field;
} }
else else
{ {
Arg = Field; Arg = Field;
@ -820,7 +715,7 @@ AcpiPsGetNextArg (
Prev = Field; Prev = Field;
} }
/* skip to End of byte data */ /* Skip to End of byte data */
ParserState->Aml = ParserState->PkgEnd; ParserState->Aml = ParserState->PkgEnd;
} }
@ -831,18 +726,20 @@ AcpiPsGetNextArg (
if (ParserState->Aml < ParserState->PkgEnd) if (ParserState->Aml < ParserState->PkgEnd)
{ {
/* non-empty list */ /* Non-empty list */
Arg = AcpiPsAllocOp (AML_INT_BYTELIST_OP); Arg = AcpiPsAllocOp (AML_INT_BYTELIST_OP);
if (Arg) if (!Arg)
{ {
/* fill in bytelist data */ return_ACPI_STATUS (AE_NO_MEMORY);
Arg->Common.Value.Size = ACPI_PTR_DIFF (ParserState->PkgEnd, ParserState->Aml);
Arg->Named.Data = ParserState->Aml;
} }
/* skip to End of byte data */ /* Fill in bytelist data */
Arg->Common.Value.Size = ACPI_PTR_DIFF (ParserState->PkgEnd, ParserState->Aml);
Arg->Named.Data = ParserState->Aml;
/* Skip to End of byte data */
ParserState->Aml = ParserState->PkgEnd; ParserState->Aml = ParserState->PkgEnd;
} }
@ -852,27 +749,27 @@ AcpiPsGetNextArg (
case ARGP_TARGET: case ARGP_TARGET:
case ARGP_SUPERNAME: case ARGP_SUPERNAME:
case ARGP_SIMPLENAME: case ARGP_SIMPLENAME:
Subop = AcpiPsPeekOpcode (ParserState);
if (Subop == 0 ||
AcpiPsIsLeadingChar (Subop) ||
AcpiPsIsPrefixChar (Subop))
{ {
Subop = AcpiPsPeekOpcode (ParserState); /* NullName or NameString */
if (Subop == 0 ||
AcpiPsIsLeadingChar (Subop) ||
AcpiPsIsPrefixChar (Subop))
{
/* NullName or NameString */
Arg = AcpiPsAllocOp (AML_INT_NAMEPATH_OP); Arg = AcpiPsAllocOp (AML_INT_NAMEPATH_OP);
if (Arg) if (!Arg)
{ {
AcpiPsGetNextNamepath (ParserState, Arg, ArgCount, 0); return_ACPI_STATUS (AE_NO_MEMORY);
}
} }
else Status = AcpiPsGetNextNamepath (ParserState, Arg, ArgCount, 0);
{ }
/* single complex argument, nothing returned */ else
{
/* single complex argument, nothing returned */
*ArgCount = 1; *ArgCount = 1;
}
} }
break; break;
@ -898,10 +795,14 @@ AcpiPsGetNextArg (
} }
break; break;
default: default:
ACPI_REPORT_ERROR (("Invalid ArgType: %X\n", ArgType)); ACPI_REPORT_ERROR (("Invalid ArgType: %X\n", ArgType));
Status = AE_AML_OPERAND_TYPE;
break; break;
} }
return_PTR (Arg); *ReturnArg = Arg;
return_ACPI_STATUS (Status);
} }

View file

@ -1,7 +1,7 @@
/****************************************************************************** /******************************************************************************
* *
* Module Name: psopcode - Parser/Interpreter opcode information table * Module Name: psopcode - Parser/Interpreter opcode information table
* $Revision: 71 $ * $Revision: 72 $
* *
*****************************************************************************/ *****************************************************************************/
@ -649,17 +649,17 @@ const ACPI_OPCODE_INFO AcpiGbl_AmlOpInfo[AML_NUM_OPCODES] =
/* 60 */ ACPI_OP ("LNotEqual", ARGP_LNOTEQUAL_OP, ARGI_LNOTEQUAL_OP, ACPI_TYPE_ANY, AML_CLASS_INTERNAL, AML_TYPE_BOGUS, AML_HAS_ARGS | AML_CONSTANT), /* 60 */ ACPI_OP ("LNotEqual", ARGP_LNOTEQUAL_OP, ARGI_LNOTEQUAL_OP, ACPI_TYPE_ANY, AML_CLASS_INTERNAL, AML_TYPE_BOGUS, AML_HAS_ARGS | AML_CONSTANT),
/* 61 */ ACPI_OP ("LLessEqual", ARGP_LLESSEQUAL_OP, ARGI_LLESSEQUAL_OP, ACPI_TYPE_ANY, AML_CLASS_INTERNAL, AML_TYPE_BOGUS, AML_HAS_ARGS | AML_CONSTANT), /* 61 */ ACPI_OP ("LLessEqual", ARGP_LLESSEQUAL_OP, ARGI_LLESSEQUAL_OP, ACPI_TYPE_ANY, AML_CLASS_INTERNAL, AML_TYPE_BOGUS, AML_HAS_ARGS | AML_CONSTANT),
/* 62 */ ACPI_OP ("LGreaterEqual", ARGP_LGREATEREQUAL_OP, ARGI_LGREATEREQUAL_OP, ACPI_TYPE_ANY, AML_CLASS_INTERNAL, AML_TYPE_BOGUS, AML_HAS_ARGS | AML_CONSTANT), /* 62 */ ACPI_OP ("LGreaterEqual", ARGP_LGREATEREQUAL_OP, ARGI_LGREATEREQUAL_OP, ACPI_TYPE_ANY, AML_CLASS_INTERNAL, AML_TYPE_BOGUS, AML_HAS_ARGS | AML_CONSTANT),
/* 63 */ ACPI_OP ("[NamePath]", ARGP_NAMEPATH_OP, ARGI_NAMEPATH_OP, INTERNAL_TYPE_REFERENCE, AML_CLASS_ARGUMENT, AML_TYPE_LITERAL, AML_NSOBJECT | AML_NSNODE ), /* 63 */ ACPI_OP ("-NamePath-", ARGP_NAMEPATH_OP, ARGI_NAMEPATH_OP, INTERNAL_TYPE_REFERENCE, AML_CLASS_ARGUMENT, AML_TYPE_LITERAL, AML_NSOBJECT | AML_NSNODE ),
/* 64 */ ACPI_OP ("[MethodCall]", ARGP_METHODCALL_OP, ARGI_METHODCALL_OP, ACPI_TYPE_METHOD, AML_CLASS_METHOD_CALL, AML_TYPE_METHOD_CALL, AML_HAS_ARGS | AML_NSOBJECT | AML_NSNODE), /* 64 */ ACPI_OP ("-MethodCall-", ARGP_METHODCALL_OP, ARGI_METHODCALL_OP, ACPI_TYPE_METHOD, AML_CLASS_METHOD_CALL, AML_TYPE_METHOD_CALL, AML_HAS_ARGS | AML_NSOBJECT | AML_NSNODE),
/* 65 */ ACPI_OP ("[ByteList]", ARGP_BYTELIST_OP, ARGI_BYTELIST_OP, ACPI_TYPE_ANY, AML_CLASS_ARGUMENT, AML_TYPE_LITERAL, 0), /* 65 */ ACPI_OP ("-ByteList-", ARGP_BYTELIST_OP, ARGI_BYTELIST_OP, ACPI_TYPE_ANY, AML_CLASS_ARGUMENT, AML_TYPE_LITERAL, 0),
/* 66 */ ACPI_OP ("[ReservedField]", ARGP_RESERVEDFIELD_OP, ARGI_RESERVEDFIELD_OP, ACPI_TYPE_ANY, AML_CLASS_INTERNAL, AML_TYPE_BOGUS, 0), /* 66 */ ACPI_OP ("-ReservedField-", ARGP_RESERVEDFIELD_OP, ARGI_RESERVEDFIELD_OP, ACPI_TYPE_ANY, AML_CLASS_INTERNAL, AML_TYPE_BOGUS, 0),
/* 67 */ ACPI_OP ("[NamedField]", ARGP_NAMEDFIELD_OP, ARGI_NAMEDFIELD_OP, ACPI_TYPE_ANY, AML_CLASS_INTERNAL, AML_TYPE_BOGUS, AML_NSOBJECT | AML_NSOPCODE | AML_NSNODE | AML_NAMED ), /* 67 */ ACPI_OP ("-NamedField-", ARGP_NAMEDFIELD_OP, ARGI_NAMEDFIELD_OP, ACPI_TYPE_ANY, AML_CLASS_INTERNAL, AML_TYPE_BOGUS, AML_NSOBJECT | AML_NSOPCODE | AML_NSNODE | AML_NAMED ),
/* 68 */ ACPI_OP ("[AccessField]", ARGP_ACCESSFIELD_OP, ARGI_ACCESSFIELD_OP, ACPI_TYPE_ANY, AML_CLASS_INTERNAL, AML_TYPE_BOGUS, 0), /* 68 */ ACPI_OP ("-AccessField-", ARGP_ACCESSFIELD_OP, ARGI_ACCESSFIELD_OP, ACPI_TYPE_ANY, AML_CLASS_INTERNAL, AML_TYPE_BOGUS, 0),
/* 69 */ ACPI_OP ("[StaticString", ARGP_STATICSTRING_OP, ARGI_STATICSTRING_OP, ACPI_TYPE_ANY, AML_CLASS_INTERNAL, AML_TYPE_BOGUS, 0), /* 69 */ ACPI_OP ("-StaticString", ARGP_STATICSTRING_OP, ARGI_STATICSTRING_OP, ACPI_TYPE_ANY, AML_CLASS_INTERNAL, AML_TYPE_BOGUS, 0),
/* 6A */ ACPI_OP ("[Return Value]", ARG_NONE, ARG_NONE, ACPI_TYPE_ANY, AML_CLASS_RETURN_VALUE, AML_TYPE_RETURN, AML_HAS_ARGS | AML_HAS_RETVAL), /* 6A */ ACPI_OP ("-Return Value-", ARG_NONE, ARG_NONE, ACPI_TYPE_ANY, AML_CLASS_RETURN_VALUE, AML_TYPE_RETURN, AML_HAS_ARGS | AML_HAS_RETVAL),
/* 6B */ ACPI_OP ("UNKNOWN_OP!", ARG_NONE, ARG_NONE, INTERNAL_TYPE_INVALID, AML_CLASS_UNKNOWN, AML_TYPE_BOGUS, AML_HAS_ARGS), /* 6B */ ACPI_OP ("-UNKNOWN_OP-", ARG_NONE, ARG_NONE, INTERNAL_TYPE_INVALID, AML_CLASS_UNKNOWN, AML_TYPE_BOGUS, AML_HAS_ARGS),
/* 6C */ ACPI_OP ("ASCII_ONLY!", ARG_NONE, ARG_NONE, ACPI_TYPE_ANY, AML_CLASS_ASCII, AML_TYPE_BOGUS, AML_HAS_ARGS), /* 6C */ ACPI_OP ("-ASCII_ONLY-", ARG_NONE, ARG_NONE, ACPI_TYPE_ANY, AML_CLASS_ASCII, AML_TYPE_BOGUS, AML_HAS_ARGS),
/* 6D */ ACPI_OP ("PREFIX_ONLY!", ARG_NONE, ARG_NONE, ACPI_TYPE_ANY, AML_CLASS_PREFIX, AML_TYPE_BOGUS, AML_HAS_ARGS), /* 6D */ ACPI_OP ("-PREFIX_ONLY-", ARG_NONE, ARG_NONE, ACPI_TYPE_ANY, AML_CLASS_PREFIX, AML_TYPE_BOGUS, AML_HAS_ARGS),
/* ACPI 2.0 opcodes */ /* ACPI 2.0 opcodes */

View file

@ -1,7 +1,7 @@
/****************************************************************************** /******************************************************************************
* *
* Module Name: pstree - Parser op tree manipulation/traversal/search * Module Name: pstree - Parser op tree manipulation/traversal/search
* $Revision: 39 $ * $Revision: 40 $
* *
*****************************************************************************/ *****************************************************************************/

View file

@ -1,7 +1,7 @@
/******************************************************************************* /*******************************************************************************
* *
* Module Name: rsdump - Functions to display the resource structures. * Module Name: rsdump - Functions to display the resource structures.
* $Revision: 32 $ * $Revision: 33 $
* *
******************************************************************************/ ******************************************************************************/
@ -124,7 +124,7 @@
ACPI_MODULE_NAME ("rsdump") ACPI_MODULE_NAME ("rsdump")
#if defined(ACPI_DEBUG) || defined(ENABLE_DEBUGGER) #if defined(ACPI_DEBUG_OUTPUT) || defined(ACPI_DEBUGGER)
/******************************************************************************* /*******************************************************************************
* *

View file

@ -1,7 +1,7 @@
/****************************************************************************** /******************************************************************************
* *
* Module Name: tbconvrt - ACPI Table conversion utilities * Module Name: tbconvrt - ACPI Table conversion utilities
* $Revision: 42 $ * $Revision: 43 $
* *
*****************************************************************************/ *****************************************************************************/
@ -242,7 +242,6 @@ AcpiTbConvertToXsdt (
} }
/******************************************************************************* /*******************************************************************************
* *
* FUNCTION: AcpiTbConvertFadt1 * FUNCTION: AcpiTbConvertFadt1

View file

@ -1,7 +1,7 @@
/****************************************************************************** /******************************************************************************
* *
* Module Name: tbgetall - Get all required ACPI tables * Module Name: tbgetall - Get all required ACPI tables
* $Revision: 1 $ * $Revision: 2 $
* *
*****************************************************************************/ *****************************************************************************/
@ -124,7 +124,6 @@
ACPI_MODULE_NAME ("tbgetall") ACPI_MODULE_NAME ("tbgetall")
/******************************************************************************* /*******************************************************************************
* *
* FUNCTION: AcpiTbGetPrimaryTable * FUNCTION: AcpiTbGetPrimaryTable

View file

@ -1,7 +1,7 @@
/****************************************************************************** /******************************************************************************
* *
* Module Name: tbinstal - ACPI table installation and removal * Module Name: tbinstal - ACPI table installation and removal
* $Revision: 62 $ * $Revision: 63 $
* *
*****************************************************************************/ *****************************************************************************/

View file

@ -1,7 +1,7 @@
/****************************************************************************** /******************************************************************************
* *
* Module Name: tbrsdt - ACPI RSDT table utilities * Module Name: tbrsdt - ACPI RSDT table utilities
* $Revision: 2 $ * $Revision: 3 $
* *
*****************************************************************************/ *****************************************************************************/

View file

@ -1,7 +1,7 @@
/****************************************************************************** /******************************************************************************
* *
* Module Name: tbutils - Table manipulation utilities * Module Name: tbutils - Table manipulation utilities
* $Revision: 55 $ * $Revision: 56 $
* *
*****************************************************************************/ *****************************************************************************/
@ -233,7 +233,7 @@ AcpiTbValidateTableHeader (
TableHeader, (char *) &Signature)); TableHeader, (char *) &Signature));
ACPI_REPORT_WARNING (("Invalid table header length (0x%X) found\n", ACPI_REPORT_WARNING (("Invalid table header length (0x%X) found\n",
TableHeader->Length)); (UINT32) TableHeader->Length));
ACPI_DUMP_BUFFER (TableHeader, sizeof (ACPI_TABLE_HEADER)); ACPI_DUMP_BUFFER (TableHeader, sizeof (ACPI_TABLE_HEADER));
return (AE_BAD_HEADER); return (AE_BAD_HEADER);
} }
@ -275,7 +275,7 @@ AcpiTbVerifyTableChecksum (
if (Checksum) if (Checksum)
{ {
ACPI_REPORT_WARNING (("Invalid checksum (%X) in table %4.4s\n", ACPI_REPORT_WARNING (("Invalid checksum (%X) in table %4.4s\n",
Checksum, TableHeader->Signature)); (UINT32) Checksum, TableHeader->Signature));
Status = AE_BAD_CHECKSUM; Status = AE_BAD_CHECKSUM;
} }

View file

@ -1,7 +1,7 @@
/****************************************************************************** /******************************************************************************
* *
* Module Name: utdebug - Debug print routines * Module Name: utdebug - Debug print routines
* $Revision: 103 $ * $Revision: 104 $
* *
*****************************************************************************/ *****************************************************************************/
@ -122,7 +122,7 @@
ACPI_MODULE_NAME ("utdebug") ACPI_MODULE_NAME ("utdebug")
#ifdef ACPI_DEBUG #ifdef ACPI_DEBUG_OUTPUT
static UINT32 AcpiGbl_PrevThreadId = 0xFFFFFFFF; static UINT32 AcpiGbl_PrevThreadId = 0xFFFFFFFF;
static char *AcpiGbl_FnEntryStr = "----Entry"; static char *AcpiGbl_FnEntryStr = "----Entry";

View file

@ -1,7 +1,7 @@
/****************************************************************************** /******************************************************************************
* *
* Module Name: uteval - Object evaluation * Module Name: uteval - Object evaluation
* $Revision: 40 $ * $Revision: 41 $
* *
*****************************************************************************/ *****************************************************************************/

View file

@ -1,7 +1,7 @@
/****************************************************************************** /******************************************************************************
* *
* Module Name: utinit - Common ACPI subsystem initialization * Module Name: utinit - Common ACPI subsystem initialization
* $Revision: 112 $ * $Revision: 113 $
* *
*****************************************************************************/ *****************************************************************************/
@ -301,14 +301,14 @@ AcpiUtSubsystemShutdown (void)
AcpiGbl_Shutdown = TRUE; AcpiGbl_Shutdown = TRUE;
ACPI_DEBUG_PRINT ((ACPI_DB_INFO, "Shutting down ACPI Subsystem...\n")); ACPI_DEBUG_PRINT ((ACPI_DB_INFO, "Shutting down ACPI Subsystem...\n"));
/* Close the Namespace */
AcpiNsTerminate ();
/* Close the AcpiEvent Handling */ /* Close the AcpiEvent Handling */
AcpiEvTerminate (); AcpiEvTerminate ();
/* Close the Namespace */
AcpiNsTerminate ();
/* Close the globals */ /* Close the globals */
AcpiUtTerminate (); AcpiUtTerminate ();

View file

@ -1,7 +1,7 @@
/******************************************************************************* /*******************************************************************************
* *
* Module Name: utmisc - common utility procedures * Module Name: utmisc - common utility procedures
* $Revision: 78 $ * $Revision: 80 $
* *
******************************************************************************/ ******************************************************************************/
@ -201,8 +201,7 @@ AcpiUtSetIntegerWidth (
} }
#ifdef ACPI_DEBUG_OUTPUT
#ifdef ACPI_DEBUG
/******************************************************************************* /*******************************************************************************
* *
* FUNCTION: AcpiUtDisplayInitPathname * FUNCTION: AcpiUtDisplayInitPathname

View file

@ -1,7 +1,7 @@
/****************************************************************************** /******************************************************************************
* *
* Module Name: utxface - External interfaces for "global" ACPI functions * Module Name: utxface - External interfaces for "global" ACPI functions
* $Revision: 97 $ * $Revision: 100 $
* *
*****************************************************************************/ *****************************************************************************/
@ -260,6 +260,8 @@ AcpiEnableSubsystem (
{ {
ACPI_DEBUG_PRINT ((ACPI_DB_EXEC, "[Init] Going into ACPI mode\n")); ACPI_DEBUG_PRINT ((ACPI_DB_EXEC, "[Init] Going into ACPI mode\n"));
AcpiGbl_OriginalMode = AcpiHwGetMode();
Status = AcpiEnable (); Status = AcpiEnable ();
if (ACPI_FAILURE (Status)) if (ACPI_FAILURE (Status))
{ {
@ -401,7 +403,7 @@ AcpiTerminate (void)
AcpiUtMutexTerminate (); AcpiUtMutexTerminate ();
#ifdef ENABLE_DEBUGGER #ifdef ACPI_DEBUGGER
/* Shut down the debugger */ /* Shut down the debugger */