1a9f12690SJung-uk Kim /****************************************************************************** 2a9f12690SJung-uk Kim * 3a9f12690SJung-uk Kim * Name: acglobal.h - Declarations for global variables 4a9f12690SJung-uk Kim * 5a9f12690SJung-uk Kim *****************************************************************************/ 6a9f12690SJung-uk Kim 70d84335fSJung-uk Kim /****************************************************************************** 80d84335fSJung-uk Kim * 90d84335fSJung-uk Kim * 1. Copyright Notice 100d84335fSJung-uk Kim * 11722b1667SJung-uk Kim * Some or all of this work - Copyright (c) 1999 - 2023, Intel Corp. 12a9f12690SJung-uk Kim * All rights reserved. 13a9f12690SJung-uk Kim * 140d84335fSJung-uk Kim * 2. License 150d84335fSJung-uk Kim * 160d84335fSJung-uk Kim * 2.1. This is your license from Intel Corp. under its intellectual property 170d84335fSJung-uk Kim * rights. You may have additional license terms from the party that provided 180d84335fSJung-uk Kim * you this software, covering your right to use that party's intellectual 190d84335fSJung-uk Kim * property rights. 200d84335fSJung-uk Kim * 210d84335fSJung-uk Kim * 2.2. Intel grants, free of charge, to any person ("Licensee") obtaining a 220d84335fSJung-uk Kim * copy of the source code appearing in this file ("Covered Code") an 230d84335fSJung-uk Kim * irrevocable, perpetual, worldwide license under Intel's copyrights in the 240d84335fSJung-uk Kim * base code distributed originally by Intel ("Original Intel Code") to copy, 250d84335fSJung-uk Kim * make derivatives, distribute, use and display any portion of the Covered 260d84335fSJung-uk Kim * Code in any form, with the right to sublicense such rights; and 270d84335fSJung-uk Kim * 280d84335fSJung-uk Kim * 2.3. Intel grants Licensee a non-exclusive and non-transferable patent 290d84335fSJung-uk Kim * license (with the right to sublicense), under only those claims of Intel 300d84335fSJung-uk Kim * patents that are infringed by the Original Intel Code, to make, use, sell, 310d84335fSJung-uk Kim * offer to sell, and import the Covered Code and derivative works thereof 320d84335fSJung-uk Kim * solely to the minimum extent necessary to exercise the above copyright 330d84335fSJung-uk Kim * license, and in no event shall the patent license extend to any additions 340d84335fSJung-uk Kim * to or modifications of the Original Intel Code. No other license or right 350d84335fSJung-uk Kim * is granted directly or by implication, estoppel or otherwise; 360d84335fSJung-uk Kim * 370d84335fSJung-uk Kim * The above copyright and patent license is granted only if the following 380d84335fSJung-uk Kim * conditions are met: 390d84335fSJung-uk Kim * 400d84335fSJung-uk Kim * 3. Conditions 410d84335fSJung-uk Kim * 420d84335fSJung-uk Kim * 3.1. Redistribution of Source with Rights to Further Distribute Source. 430d84335fSJung-uk Kim * Redistribution of source code of any substantial portion of the Covered 440d84335fSJung-uk Kim * Code or modification with rights to further distribute source must include 450d84335fSJung-uk Kim * the above Copyright Notice, the above License, this list of Conditions, 460d84335fSJung-uk Kim * and the following Disclaimer and Export Compliance provision. In addition, 470d84335fSJung-uk Kim * Licensee must cause all Covered Code to which Licensee contributes to 480d84335fSJung-uk Kim * contain a file documenting the changes Licensee made to create that Covered 490d84335fSJung-uk Kim * Code and the date of any change. Licensee must include in that file the 500d84335fSJung-uk Kim * documentation of any changes made by any predecessor Licensee. Licensee 510d84335fSJung-uk Kim * must include a prominent statement that the modification is derived, 520d84335fSJung-uk Kim * directly or indirectly, from Original Intel Code. 530d84335fSJung-uk Kim * 540d84335fSJung-uk Kim * 3.2. Redistribution of Source with no Rights to Further Distribute Source. 550d84335fSJung-uk Kim * Redistribution of source code of any substantial portion of the Covered 560d84335fSJung-uk Kim * Code or modification without rights to further distribute source must 570d84335fSJung-uk Kim * include the following Disclaimer and Export Compliance provision in the 580d84335fSJung-uk Kim * documentation and/or other materials provided with distribution. In 590d84335fSJung-uk Kim * addition, Licensee may not authorize further sublicense of source of any 600d84335fSJung-uk Kim * portion of the Covered Code, and must include terms to the effect that the 610d84335fSJung-uk Kim * license from Licensee to its licensee is limited to the intellectual 620d84335fSJung-uk Kim * property embodied in the software Licensee provides to its licensee, and 630d84335fSJung-uk Kim * not to intellectual property embodied in modifications its licensee may 640d84335fSJung-uk Kim * make. 650d84335fSJung-uk Kim * 660d84335fSJung-uk Kim * 3.3. Redistribution of Executable. Redistribution in executable form of any 670d84335fSJung-uk Kim * substantial portion of the Covered Code or modification must reproduce the 680d84335fSJung-uk Kim * above Copyright Notice, and the following Disclaimer and Export Compliance 690d84335fSJung-uk Kim * provision in the documentation and/or other materials provided with the 700d84335fSJung-uk Kim * distribution. 710d84335fSJung-uk Kim * 720d84335fSJung-uk Kim * 3.4. Intel retains all right, title, and interest in and to the Original 730d84335fSJung-uk Kim * Intel Code. 740d84335fSJung-uk Kim * 750d84335fSJung-uk Kim * 3.5. Neither the name Intel nor any other trademark owned or controlled by 760d84335fSJung-uk Kim * Intel shall be used in advertising or otherwise to promote the sale, use or 770d84335fSJung-uk Kim * other dealings in products derived from or relating to the Covered Code 780d84335fSJung-uk Kim * without prior written authorization from Intel. 790d84335fSJung-uk Kim * 800d84335fSJung-uk Kim * 4. Disclaimer and Export Compliance 810d84335fSJung-uk Kim * 820d84335fSJung-uk Kim * 4.1. INTEL MAKES NO WARRANTY OF ANY KIND REGARDING ANY SOFTWARE PROVIDED 830d84335fSJung-uk Kim * HERE. ANY SOFTWARE ORIGINATING FROM INTEL OR DERIVED FROM INTEL SOFTWARE 840d84335fSJung-uk Kim * IS PROVIDED "AS IS," AND INTEL WILL NOT PROVIDE ANY SUPPORT, ASSISTANCE, 850d84335fSJung-uk Kim * INSTALLATION, TRAINING OR OTHER SERVICES. INTEL WILL NOT PROVIDE ANY 860d84335fSJung-uk Kim * UPDATES, ENHANCEMENTS OR EXTENSIONS. INTEL SPECIFICALLY DISCLAIMS ANY 870d84335fSJung-uk Kim * IMPLIED WARRANTIES OF MERCHANTABILITY, NONINFRINGEMENT AND FITNESS FOR A 880d84335fSJung-uk Kim * PARTICULAR PURPOSE. 890d84335fSJung-uk Kim * 900d84335fSJung-uk Kim * 4.2. IN NO EVENT SHALL INTEL HAVE ANY LIABILITY TO LICENSEE, ITS LICENSEES 910d84335fSJung-uk Kim * OR ANY OTHER THIRD PARTY, FOR ANY LOST PROFITS, LOST DATA, LOSS OF USE OR 920d84335fSJung-uk Kim * COSTS OF PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES, OR FOR ANY INDIRECT, 930d84335fSJung-uk Kim * SPECIAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THIS AGREEMENT, UNDER ANY 940d84335fSJung-uk Kim * CAUSE OF ACTION OR THEORY OF LIABILITY, AND IRRESPECTIVE OF WHETHER INTEL 950d84335fSJung-uk Kim * HAS ADVANCE NOTICE OF THE POSSIBILITY OF SUCH DAMAGES. THESE LIMITATIONS 960d84335fSJung-uk Kim * SHALL APPLY NOTWITHSTANDING THE FAILURE OF THE ESSENTIAL PURPOSE OF ANY 970d84335fSJung-uk Kim * LIMITED REMEDY. 980d84335fSJung-uk Kim * 990d84335fSJung-uk Kim * 4.3. Licensee shall not export, either directly or indirectly, any of this 1000d84335fSJung-uk Kim * software or system incorporating such software without first obtaining any 1010d84335fSJung-uk Kim * required license or other approval from the U. S. Department of Commerce or 1020d84335fSJung-uk Kim * any other agency or department of the United States Government. In the 1030d84335fSJung-uk Kim * event Licensee exports any such software from the United States or 1040d84335fSJung-uk Kim * re-exports any such software from a foreign destination, Licensee shall 1050d84335fSJung-uk Kim * ensure that the distribution and export/re-export of the software is in 1060d84335fSJung-uk Kim * compliance with all laws, regulations, orders, or other restrictions of the 1070d84335fSJung-uk Kim * U.S. Export Administration Regulations. Licensee agrees that neither it nor 1080d84335fSJung-uk Kim * any of its subsidiaries will export/re-export any technical data, process, 1090d84335fSJung-uk Kim * software, or service, directly or indirectly, to any country for which the 1100d84335fSJung-uk Kim * United States government or any agency thereof requires an export license, 1110d84335fSJung-uk Kim * other governmental approval, or letter of assurance, without first obtaining 1120d84335fSJung-uk Kim * such license, approval or letter. 1130d84335fSJung-uk Kim * 1140d84335fSJung-uk Kim ***************************************************************************** 1150d84335fSJung-uk Kim * 1160d84335fSJung-uk Kim * Alternatively, you may choose to be licensed under the terms of the 1170d84335fSJung-uk Kim * following license: 1180d84335fSJung-uk Kim * 119d244b227SJung-uk Kim * Redistribution and use in source and binary forms, with or without 120d244b227SJung-uk Kim * modification, are permitted provided that the following conditions 121d244b227SJung-uk Kim * are met: 122d244b227SJung-uk Kim * 1. Redistributions of source code must retain the above copyright 123d244b227SJung-uk Kim * notice, this list of conditions, and the following disclaimer, 124d244b227SJung-uk Kim * without modification. 125d244b227SJung-uk Kim * 2. Redistributions in binary form must reproduce at minimum a disclaimer 126d244b227SJung-uk Kim * substantially similar to the "NO WARRANTY" disclaimer below 127d244b227SJung-uk Kim * ("Disclaimer") and any redistribution must be conditioned upon 128d244b227SJung-uk Kim * including a substantially similar Disclaimer requirement for further 129d244b227SJung-uk Kim * binary redistribution. 130d244b227SJung-uk Kim * 3. Neither the names of the above-listed copyright holders nor the names 131d244b227SJung-uk Kim * of any contributors may be used to endorse or promote products derived 132d244b227SJung-uk Kim * from this software without specific prior written permission. 133a9f12690SJung-uk Kim * 1340d84335fSJung-uk Kim * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 1350d84335fSJung-uk Kim * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 1360d84335fSJung-uk Kim * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 1370d84335fSJung-uk Kim * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 1380d84335fSJung-uk Kim * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 1390d84335fSJung-uk Kim * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 1400d84335fSJung-uk Kim * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 1410d84335fSJung-uk Kim * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 1420d84335fSJung-uk Kim * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 1430d84335fSJung-uk Kim * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 1440d84335fSJung-uk Kim * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 1450d84335fSJung-uk Kim * 1460d84335fSJung-uk Kim * Alternatively, you may choose to be licensed under the terms of the 147d244b227SJung-uk Kim * GNU General Public License ("GPL") version 2 as published by the Free 148d244b227SJung-uk Kim * Software Foundation. 149a9f12690SJung-uk Kim * 1500d84335fSJung-uk Kim *****************************************************************************/ 151a9f12690SJung-uk Kim 152a9f12690SJung-uk Kim #ifndef __ACGLOBAL_H__ 153a9f12690SJung-uk Kim #define __ACGLOBAL_H__ 154a9f12690SJung-uk Kim 155a9f12690SJung-uk Kim 156a9f12690SJung-uk Kim /***************************************************************************** 157a9f12690SJung-uk Kim * 158f1db5ef7SJung-uk Kim * Globals related to the incoming ACPI tables 159a9f12690SJung-uk Kim * 160a9f12690SJung-uk Kim ****************************************************************************/ 161a9f12690SJung-uk Kim 162313a0c13SJung-uk Kim /* Master list of all ACPI tables that were found in the RSDT/XSDT */ 163a9f12690SJung-uk Kim 164313a0c13SJung-uk Kim ACPI_GLOBAL (ACPI_TABLE_LIST, AcpiGbl_RootTableList); 165a9f12690SJung-uk Kim 166313a0c13SJung-uk Kim /* DSDT information. Used to check for DSDT corruption */ 167a9f12690SJung-uk Kim 168313a0c13SJung-uk Kim ACPI_GLOBAL (ACPI_TABLE_HEADER *, AcpiGbl_DSDT); 169313a0c13SJung-uk Kim ACPI_GLOBAL (ACPI_TABLE_HEADER, AcpiGbl_OriginalDsdtHeader); 1709a4bc520SJung-uk Kim ACPI_INIT_GLOBAL (char *, AcpiGbl_CDAT, NULL); 17170e6ab8fSJung-uk Kim ACPI_INIT_GLOBAL (UINT32, AcpiGbl_DsdtIndex, ACPI_INVALID_TABLE_INDEX); 17270e6ab8fSJung-uk Kim ACPI_INIT_GLOBAL (UINT32, AcpiGbl_FacsIndex, ACPI_INVALID_TABLE_INDEX); 17370e6ab8fSJung-uk Kim ACPI_INIT_GLOBAL (UINT32, AcpiGbl_XFacsIndex, ACPI_INVALID_TABLE_INDEX); 174f8146b88SJung-uk Kim ACPI_INIT_GLOBAL (UINT32, AcpiGbl_FadtIndex, ACPI_INVALID_TABLE_INDEX); 175a159c266SJung-uk Kim 176a159c266SJung-uk Kim #if (!ACPI_REDUCED_HARDWARE) 177313a0c13SJung-uk Kim ACPI_GLOBAL (ACPI_TABLE_FACS *, AcpiGbl_FACS); 178a9f12690SJung-uk Kim 179a159c266SJung-uk Kim #endif /* !ACPI_REDUCED_HARDWARE */ 180a159c266SJung-uk Kim 181a9f12690SJung-uk Kim /* These addresses are calculated from the FADT Event Block addresses */ 182a9f12690SJung-uk Kim 183313a0c13SJung-uk Kim ACPI_GLOBAL (ACPI_GENERIC_ADDRESS, AcpiGbl_XPm1aStatus); 184313a0c13SJung-uk Kim ACPI_GLOBAL (ACPI_GENERIC_ADDRESS, AcpiGbl_XPm1aEnable); 185a9f12690SJung-uk Kim 186313a0c13SJung-uk Kim ACPI_GLOBAL (ACPI_GENERIC_ADDRESS, AcpiGbl_XPm1bStatus); 187313a0c13SJung-uk Kim ACPI_GLOBAL (ACPI_GENERIC_ADDRESS, AcpiGbl_XPm1bEnable); 1888c8be05fSJung-uk Kim 189a9f12690SJung-uk Kim /* 190313a0c13SJung-uk Kim * Handle both ACPI 1.0 and ACPI 2.0+ Integer widths. The integer width is 191a9f12690SJung-uk Kim * determined by the revision of the DSDT: If the DSDT revision is less than 192a9f12690SJung-uk Kim * 2, use only the lower 32 bits of the internal 64-bit Integer. 193a9f12690SJung-uk Kim */ 194313a0c13SJung-uk Kim ACPI_GLOBAL (UINT8, AcpiGbl_IntegerBitWidth); 195313a0c13SJung-uk Kim ACPI_GLOBAL (UINT8, AcpiGbl_IntegerByteWidth); 196313a0c13SJung-uk Kim ACPI_GLOBAL (UINT8, AcpiGbl_IntegerNybbleWidth); 197a9f12690SJung-uk Kim 198a9f12690SJung-uk Kim 199a9f12690SJung-uk Kim /***************************************************************************** 200a9f12690SJung-uk Kim * 201f1db5ef7SJung-uk Kim * Mutual exclusion within the ACPICA subsystem 202a9f12690SJung-uk Kim * 203a9f12690SJung-uk Kim ****************************************************************************/ 204a9f12690SJung-uk Kim 205a9f12690SJung-uk Kim /* 206a9f12690SJung-uk Kim * Predefined mutex objects. This array contains the 207a9f12690SJung-uk Kim * actual OS mutex handles, indexed by the local ACPI_MUTEX_HANDLEs. 208a9f12690SJung-uk Kim * (The table maps local handles to the real OS handles) 209a9f12690SJung-uk Kim */ 210313a0c13SJung-uk Kim ACPI_GLOBAL (ACPI_MUTEX_INFO, AcpiGbl_MutexInfo[ACPI_NUM_MUTEX]); 211a9f12690SJung-uk Kim 212a9f12690SJung-uk Kim /* 213a9f12690SJung-uk Kim * Global lock mutex is an actual AML mutex object 214dcbce41eSJung-uk Kim * Global lock semaphore works in conjunction with the actual global lock 215dcbce41eSJung-uk Kim * Global lock spinlock is used for "pending" handshake 216a9f12690SJung-uk Kim */ 217313a0c13SJung-uk Kim ACPI_GLOBAL (ACPI_OPERAND_OBJECT *, AcpiGbl_GlobalLockMutex); 218313a0c13SJung-uk Kim ACPI_GLOBAL (ACPI_SEMAPHORE, AcpiGbl_GlobalLockSemaphore); 219313a0c13SJung-uk Kim ACPI_GLOBAL (ACPI_SPINLOCK, AcpiGbl_GlobalLockPendingLock); 220313a0c13SJung-uk Kim ACPI_GLOBAL (UINT16, AcpiGbl_GlobalLockHandle); 221313a0c13SJung-uk Kim ACPI_GLOBAL (BOOLEAN, AcpiGbl_GlobalLockAcquired); 222313a0c13SJung-uk Kim ACPI_GLOBAL (BOOLEAN, AcpiGbl_GlobalLockPresent); 223313a0c13SJung-uk Kim ACPI_GLOBAL (BOOLEAN, AcpiGbl_GlobalLockPending); 224a9f12690SJung-uk Kim 225a9f12690SJung-uk Kim /* 226a9f12690SJung-uk Kim * Spinlocks are used for interfaces that can be possibly called at 227a9f12690SJung-uk Kim * interrupt level 228a9f12690SJung-uk Kim */ 229313a0c13SJung-uk Kim ACPI_GLOBAL (ACPI_SPINLOCK, AcpiGbl_GpeLock); /* For GPE data structs and registers */ 230313a0c13SJung-uk Kim ACPI_GLOBAL (ACPI_SPINLOCK, AcpiGbl_HardwareLock); /* For ACPI H/W except GPE registers */ 231313a0c13SJung-uk Kim ACPI_GLOBAL (ACPI_SPINLOCK, AcpiGbl_ReferenceCountLock); 232a9f12690SJung-uk Kim 233709fac06SJung-uk Kim /* Mutex for _OSI support */ 234709fac06SJung-uk Kim 235313a0c13SJung-uk Kim ACPI_GLOBAL (ACPI_MUTEX, AcpiGbl_OsiMutex); 236709fac06SJung-uk Kim 237a9f12690SJung-uk Kim /* Reader/Writer lock is used for namespace walk and dynamic table unload */ 238a9f12690SJung-uk Kim 239313a0c13SJung-uk Kim ACPI_GLOBAL (ACPI_RW_LOCK, AcpiGbl_NamespaceRwLock); 240a9f12690SJung-uk Kim 241a9f12690SJung-uk Kim 242a9f12690SJung-uk Kim /***************************************************************************** 243a9f12690SJung-uk Kim * 244a9f12690SJung-uk Kim * Miscellaneous globals 245a9f12690SJung-uk Kim * 246a9f12690SJung-uk Kim ****************************************************************************/ 247a9f12690SJung-uk Kim 248a9f12690SJung-uk Kim /* Object caches */ 249a9f12690SJung-uk Kim 250313a0c13SJung-uk Kim ACPI_GLOBAL (ACPI_CACHE_T *, AcpiGbl_NamespaceCache); 251313a0c13SJung-uk Kim ACPI_GLOBAL (ACPI_CACHE_T *, AcpiGbl_StateCache); 252313a0c13SJung-uk Kim ACPI_GLOBAL (ACPI_CACHE_T *, AcpiGbl_PsNodeCache); 253313a0c13SJung-uk Kim ACPI_GLOBAL (ACPI_CACHE_T *, AcpiGbl_PsNodeExtCache); 254313a0c13SJung-uk Kim ACPI_GLOBAL (ACPI_CACHE_T *, AcpiGbl_OperandCache); 255313a0c13SJung-uk Kim 256313a0c13SJung-uk Kim /* System */ 257313a0c13SJung-uk Kim 258313a0c13SJung-uk Kim ACPI_INIT_GLOBAL (UINT32, AcpiGbl_StartupFlags, 0); 259313a0c13SJung-uk Kim ACPI_INIT_GLOBAL (BOOLEAN, AcpiGbl_Shutdown, TRUE); 260f8146b88SJung-uk Kim ACPI_INIT_GLOBAL (BOOLEAN, AcpiGbl_EarlyInitialization, TRUE); 261a9f12690SJung-uk Kim 262a9f12690SJung-uk Kim /* Global handlers */ 263a9f12690SJung-uk Kim 264313a0c13SJung-uk Kim ACPI_GLOBAL (ACPI_GLOBAL_NOTIFY_HANDLER,AcpiGbl_GlobalNotify[2]); 265313a0c13SJung-uk Kim ACPI_GLOBAL (ACPI_EXCEPTION_HANDLER, AcpiGbl_ExceptionHandler); 266313a0c13SJung-uk Kim ACPI_GLOBAL (ACPI_INIT_HANDLER, AcpiGbl_InitHandler); 267313a0c13SJung-uk Kim ACPI_GLOBAL (ACPI_TABLE_HANDLER, AcpiGbl_TableHandler); 268313a0c13SJung-uk Kim ACPI_GLOBAL (void *, AcpiGbl_TableHandlerContext); 269313a0c13SJung-uk Kim ACPI_GLOBAL (ACPI_INTERFACE_HANDLER, AcpiGbl_InterfaceHandler); 270313a0c13SJung-uk Kim ACPI_GLOBAL (ACPI_SCI_HANDLER_INFO *, AcpiGbl_SciHandlerList); 271*07c64d74SJung-uk Kim ACPI_GLOBAL (ACPI_GED_HANDLER_INFO *, AcpiGbl_GedHandlerList); 272a9f12690SJung-uk Kim 273a9f12690SJung-uk Kim /* Owner ID support */ 274a9f12690SJung-uk Kim 275313a0c13SJung-uk Kim ACPI_GLOBAL (UINT32, AcpiGbl_OwnerIdMask[ACPI_NUM_OWNERID_MASKS]); 276313a0c13SJung-uk Kim ACPI_GLOBAL (UINT8, AcpiGbl_LastOwnerIdIndex); 277313a0c13SJung-uk Kim ACPI_GLOBAL (UINT8, AcpiGbl_NextOwnerIdOffset); 278a9f12690SJung-uk Kim 2790b94ba42SJung-uk Kim /* Initialization sequencing */ 2800b94ba42SJung-uk Kim 281f8146b88SJung-uk Kim ACPI_INIT_GLOBAL (BOOLEAN, AcpiGbl_NamespaceInitialized, FALSE); 2820b94ba42SJung-uk Kim 283f1db5ef7SJung-uk Kim /* Miscellaneous */ 284a9f12690SJung-uk Kim 285313a0c13SJung-uk Kim ACPI_GLOBAL (UINT32, AcpiGbl_OriginalMode); 286313a0c13SJung-uk Kim ACPI_GLOBAL (UINT32, AcpiGbl_NsLookupCount); 287313a0c13SJung-uk Kim ACPI_GLOBAL (UINT32, AcpiGbl_PsFindCount); 288313a0c13SJung-uk Kim ACPI_GLOBAL (UINT16, AcpiGbl_Pm1EnableRegisterSave); 289313a0c13SJung-uk Kim ACPI_GLOBAL (UINT8, AcpiGbl_DebuggerConfiguration); 290313a0c13SJung-uk Kim ACPI_GLOBAL (BOOLEAN, AcpiGbl_StepToNextCall); 291313a0c13SJung-uk Kim ACPI_GLOBAL (BOOLEAN, AcpiGbl_AcpiHardwarePresent); 292313a0c13SJung-uk Kim ACPI_GLOBAL (BOOLEAN, AcpiGbl_EventsInitialized); 293313a0c13SJung-uk Kim ACPI_GLOBAL (ACPI_INTERFACE_INFO *, AcpiGbl_SupportedInterfaces); 294313a0c13SJung-uk Kim ACPI_GLOBAL (ACPI_ADDRESS_RANGE *, AcpiGbl_AddressRangeList[ACPI_ADDRESS_RANGE_MAX]); 295a9f12690SJung-uk Kim 296313a0c13SJung-uk Kim /* Other miscellaneous, declared and initialized in utglobal */ 297a9f12690SJung-uk Kim 298a9f12690SJung-uk Kim extern const char *AcpiGbl_SleepStateNames[ACPI_S_STATE_COUNT]; 299d6dd1baeSJung-uk Kim extern const char *AcpiGbl_LowestDstateNames[ACPI_NUM_SxW_METHODS]; 300d6dd1baeSJung-uk Kim extern const char *AcpiGbl_HighestDstateNames[ACPI_NUM_SxD_METHODS]; 301a9f12690SJung-uk Kim extern const char *AcpiGbl_RegionTypes[ACPI_NUM_PREDEFINED_REGIONS]; 302f8146b88SJung-uk Kim extern const char AcpiGbl_LowerHexDigits[]; 303f8146b88SJung-uk Kim extern const char AcpiGbl_UpperHexDigits[]; 304313a0c13SJung-uk Kim extern const ACPI_OPCODE_INFO AcpiGbl_AmlOpInfo[AML_NUM_OPCODES]; 305a9f12690SJung-uk Kim 306313a0c13SJung-uk Kim /* Lists for tracking memory allocations (debug only) */ 307a9f12690SJung-uk Kim 308f1db5ef7SJung-uk Kim #ifdef ACPI_DBG_TRACK_ALLOCATIONS 309313a0c13SJung-uk Kim ACPI_GLOBAL (ACPI_MEMORY_LIST *, AcpiGbl_GlobalList); 310313a0c13SJung-uk Kim ACPI_GLOBAL (ACPI_MEMORY_LIST *, AcpiGbl_NsNodeList); 311313a0c13SJung-uk Kim ACPI_GLOBAL (BOOLEAN, AcpiGbl_DisplayFinalMemStats); 312313a0c13SJung-uk Kim ACPI_GLOBAL (BOOLEAN, AcpiGbl_DisableMemTracking); 313e5e1f58aSJung-uk Kim ACPI_GLOBAL (BOOLEAN, AcpiGbl_VerboseLeakDump); 314a9f12690SJung-uk Kim #endif 315a9f12690SJung-uk Kim 316a9f12690SJung-uk Kim 317a9f12690SJung-uk Kim /***************************************************************************** 318a9f12690SJung-uk Kim * 319f1db5ef7SJung-uk Kim * ACPI Namespace 320a9f12690SJung-uk Kim * 321a9f12690SJung-uk Kim ****************************************************************************/ 322a9f12690SJung-uk Kim 323a9f12690SJung-uk Kim #define NUM_PREDEFINED_NAMES 10 324a9f12690SJung-uk Kim 325313a0c13SJung-uk Kim ACPI_GLOBAL (ACPI_NAMESPACE_NODE, AcpiGbl_RootNodeStruct); 326313a0c13SJung-uk Kim ACPI_GLOBAL (ACPI_NAMESPACE_NODE *, AcpiGbl_RootNode); 327313a0c13SJung-uk Kim ACPI_GLOBAL (ACPI_NAMESPACE_NODE *, AcpiGbl_FadtGpeDevice); 328d6dd1baeSJung-uk Kim 329a9f12690SJung-uk Kim extern const UINT8 AcpiGbl_NsProperties [ACPI_NUM_NS_TYPES]; 330a9f12690SJung-uk Kim extern const ACPI_PREDEFINED_NAMES AcpiGbl_PreDefinedNames [NUM_PREDEFINED_NAMES]; 331a9f12690SJung-uk Kim 332a9f12690SJung-uk Kim #ifdef ACPI_DEBUG_OUTPUT 333313a0c13SJung-uk Kim ACPI_GLOBAL (UINT32, AcpiGbl_CurrentNodeCount); 334313a0c13SJung-uk Kim ACPI_GLOBAL (UINT32, AcpiGbl_CurrentNodeSize); 335313a0c13SJung-uk Kim ACPI_GLOBAL (UINT32, AcpiGbl_MaxConcurrentNodeCount); 336313a0c13SJung-uk Kim ACPI_GLOBAL (ACPI_SIZE *, AcpiGbl_EntryStackPointer); 337313a0c13SJung-uk Kim ACPI_GLOBAL (ACPI_SIZE *, AcpiGbl_LowestStackPointer); 338313a0c13SJung-uk Kim ACPI_GLOBAL (UINT32, AcpiGbl_DeepestNesting); 339313a0c13SJung-uk Kim ACPI_INIT_GLOBAL (UINT32, AcpiGbl_NestingLevel, 0); 340a9f12690SJung-uk Kim #endif 341a9f12690SJung-uk Kim 342a9f12690SJung-uk Kim 343a9f12690SJung-uk Kim /***************************************************************************** 344a9f12690SJung-uk Kim * 345f1db5ef7SJung-uk Kim * Interpreter/Parser globals 346a9f12690SJung-uk Kim * 347a9f12690SJung-uk Kim ****************************************************************************/ 348a9f12690SJung-uk Kim 349a9f12690SJung-uk Kim /* Control method single step flag */ 350a9f12690SJung-uk Kim 351313a0c13SJung-uk Kim ACPI_GLOBAL (UINT8, AcpiGbl_CmSingleStep); 352f1db5ef7SJung-uk Kim ACPI_GLOBAL (ACPI_THREAD_STATE *, AcpiGbl_CurrentWalkList); 353f1db5ef7SJung-uk Kim ACPI_INIT_GLOBAL (ACPI_PARSE_OBJECT, *AcpiGbl_CurrentScope, NULL); 354f1db5ef7SJung-uk Kim 355f1db5ef7SJung-uk Kim /* ASL/ASL+ converter */ 356f1db5ef7SJung-uk Kim 357f1db5ef7SJung-uk Kim ACPI_INIT_GLOBAL (BOOLEAN, AcpiGbl_CaptureComments, FALSE); 358f1db5ef7SJung-uk Kim ACPI_INIT_GLOBAL (ACPI_COMMENT_NODE, *AcpiGbl_LastListHead, NULL); 359a9f12690SJung-uk Kim 360a9f12690SJung-uk Kim 361a9f12690SJung-uk Kim /***************************************************************************** 362a9f12690SJung-uk Kim * 363a9f12690SJung-uk Kim * Hardware globals 364a9f12690SJung-uk Kim * 365a9f12690SJung-uk Kim ****************************************************************************/ 366a9f12690SJung-uk Kim 367a9f12690SJung-uk Kim extern ACPI_BIT_REGISTER_INFO AcpiGbl_BitRegisterInfo[ACPI_NUM_BITREG]; 368313a0c13SJung-uk Kim ACPI_GLOBAL (UINT8, AcpiGbl_SleepTypeA); 369313a0c13SJung-uk Kim ACPI_GLOBAL (UINT8, AcpiGbl_SleepTypeB); 3701b7a2680SJung-uk Kim ACPI_GLOBAL (UINT8, AcpiGbl_SleepTypeAS0); 3711b7a2680SJung-uk Kim ACPI_GLOBAL (UINT8, AcpiGbl_SleepTypeBS0); 372a9f12690SJung-uk Kim 373a9f12690SJung-uk Kim 374a9f12690SJung-uk Kim /***************************************************************************** 375a9f12690SJung-uk Kim * 376a9f12690SJung-uk Kim * Event and GPE globals 377a9f12690SJung-uk Kim * 378a9f12690SJung-uk Kim ****************************************************************************/ 379a9f12690SJung-uk Kim 380a159c266SJung-uk Kim #if (!ACPI_REDUCED_HARDWARE) 381313a0c13SJung-uk Kim ACPI_GLOBAL (UINT8, AcpiGbl_AllGpesInitialized); 382313a0c13SJung-uk Kim ACPI_GLOBAL (ACPI_GPE_XRUPT_INFO *, AcpiGbl_GpeXruptListHead); 383313a0c13SJung-uk Kim ACPI_GLOBAL (ACPI_GPE_BLOCK_INFO *, AcpiGbl_GpeFadtBlocks[ACPI_MAX_GPE_BLOCKS]); 384313a0c13SJung-uk Kim ACPI_GLOBAL (ACPI_GBL_EVENT_HANDLER, AcpiGbl_GlobalEventHandler); 385313a0c13SJung-uk Kim ACPI_GLOBAL (void *, AcpiGbl_GlobalEventHandlerContext); 386313a0c13SJung-uk Kim ACPI_GLOBAL (ACPI_FIXED_EVENT_HANDLER, AcpiGbl_FixedEventHandlers[ACPI_NUM_FIXED_EVENTS]); 3875a77b11bSJung-uk Kim extern ACPI_FIXED_EVENT_INFO AcpiGbl_FixedEventInfo[ACPI_NUM_FIXED_EVENTS]; 388a159c266SJung-uk Kim #endif /* !ACPI_REDUCED_HARDWARE */ 389a9f12690SJung-uk Kim 390f1db5ef7SJung-uk Kim 391a9f12690SJung-uk Kim /***************************************************************************** 392a9f12690SJung-uk Kim * 393a9f12690SJung-uk Kim * Debug support 394a9f12690SJung-uk Kim * 395a9f12690SJung-uk Kim ****************************************************************************/ 396a9f12690SJung-uk Kim 397a9f12690SJung-uk Kim /* Event counters */ 398a9f12690SJung-uk Kim 399313a0c13SJung-uk Kim ACPI_GLOBAL (UINT32, AcpiMethodCount); 400313a0c13SJung-uk Kim ACPI_GLOBAL (UINT32, AcpiGpeCount); 401313a0c13SJung-uk Kim ACPI_GLOBAL (UINT32, AcpiSciCount); 402313a0c13SJung-uk Kim ACPI_GLOBAL (UINT32, AcpiFixedEventCount[ACPI_NUM_FIXED_EVENTS]); 403a9f12690SJung-uk Kim 404f1db5ef7SJung-uk Kim /* Dynamic control method tracing mechanism */ 405a9f12690SJung-uk Kim 406313a0c13SJung-uk Kim ACPI_GLOBAL (UINT32, AcpiGbl_OriginalDbgLevel); 407313a0c13SJung-uk Kim ACPI_GLOBAL (UINT32, AcpiGbl_OriginalDbgLayer); 408a9f12690SJung-uk Kim 409a9f12690SJung-uk Kim 410a9f12690SJung-uk Kim /***************************************************************************** 411a9f12690SJung-uk Kim * 412f1db5ef7SJung-uk Kim * Debugger and Disassembler 413a9f12690SJung-uk Kim * 414a9f12690SJung-uk Kim ****************************************************************************/ 415a9f12690SJung-uk Kim 416313a0c13SJung-uk Kim ACPI_INIT_GLOBAL (UINT8, AcpiGbl_DbOutputFlags, ACPI_DB_CONSOLE_OUTPUT); 417a9f12690SJung-uk Kim 418f1db5ef7SJung-uk Kim 419a9f12690SJung-uk Kim #ifdef ACPI_DISASSEMBLER 420a9f12690SJung-uk Kim 421313a0c13SJung-uk Kim /* Do not disassemble buffers to resource descriptors */ 422efcc2a30SJung-uk Kim 423313a0c13SJung-uk Kim ACPI_INIT_GLOBAL (UINT8, AcpiGbl_NoResourceDisassembly, FALSE); 424313a0c13SJung-uk Kim ACPI_INIT_GLOBAL (BOOLEAN, AcpiGbl_IgnoreNoopOperator, FALSE); 4251c0e1b6dSJung-uk Kim ACPI_INIT_GLOBAL (BOOLEAN, AcpiGbl_CstyleDisassembly, TRUE); 4267cf3e94aSJung-uk Kim ACPI_INIT_GLOBAL (BOOLEAN, AcpiGbl_ForceAmlDisassembly, FALSE); 42770e6ab8fSJung-uk Kim ACPI_INIT_GLOBAL (BOOLEAN, AcpiGbl_DmOpt_Verbose, TRUE); 4283920312eSJung-uk Kim ACPI_INIT_GLOBAL (BOOLEAN, AcpiGbl_DmEmitExternalOpcodes, FALSE); 429493deb39SJung-uk Kim ACPI_INIT_GLOBAL (BOOLEAN, AcpiGbl_DoDisassemblerOptimizations, TRUE); 430af051161SJung-uk Kim ACPI_INIT_GLOBAL (ACPI_PARSE_OBJECT_LIST, *AcpiGbl_TempListHead, NULL); 431313a0c13SJung-uk Kim 43270e6ab8fSJung-uk Kim ACPI_GLOBAL (BOOLEAN, AcpiGbl_DmOpt_Disasm); 43370e6ab8fSJung-uk Kim ACPI_GLOBAL (BOOLEAN, AcpiGbl_DmOpt_Listing); 434313a0c13SJung-uk Kim ACPI_GLOBAL (BOOLEAN, AcpiGbl_NumExternalMethods); 435313a0c13SJung-uk Kim ACPI_GLOBAL (UINT32, AcpiGbl_ResolvedExternalMethods); 436313a0c13SJung-uk Kim ACPI_GLOBAL (ACPI_EXTERNAL_LIST *, AcpiGbl_ExternalList); 437313a0c13SJung-uk Kim ACPI_GLOBAL (ACPI_EXTERNAL_FILE *, AcpiGbl_ExternalFileList); 438a9f12690SJung-uk Kim #endif 439a9f12690SJung-uk Kim 440a9f12690SJung-uk Kim #ifdef ACPI_DEBUGGER 441313a0c13SJung-uk Kim ACPI_INIT_GLOBAL (BOOLEAN, AcpiGbl_AbortMethod, FALSE); 442f8146b88SJung-uk Kim ACPI_INIT_GLOBAL (ACPI_THREAD_ID, AcpiGbl_DbThreadId, ACPI_INVALID_THREAD_ID); 44308ddfe86SJung-uk Kim ACPI_INIT_GLOBAL (UINT32, AcpiGbl_NextCmdNum, 1); 444a9f12690SJung-uk Kim 4457cf3e94aSJung-uk Kim ACPI_GLOBAL (BOOLEAN, AcpiGbl_DbOpt_NoIniMethods); 446313a0c13SJung-uk Kim ACPI_GLOBAL (BOOLEAN, AcpiGbl_DbOpt_NoRegionSupport); 447313a0c13SJung-uk Kim ACPI_GLOBAL (BOOLEAN, AcpiGbl_DbOutputToFile); 448313a0c13SJung-uk Kim ACPI_GLOBAL (char *, AcpiGbl_DbBuffer); 449313a0c13SJung-uk Kim ACPI_GLOBAL (char *, AcpiGbl_DbFilename); 450313a0c13SJung-uk Kim ACPI_GLOBAL (UINT32, AcpiGbl_DbDebugLevel); 451313a0c13SJung-uk Kim ACPI_GLOBAL (UINT32, AcpiGbl_DbConsoleDebugLevel); 452313a0c13SJung-uk Kim ACPI_GLOBAL (ACPI_NAMESPACE_NODE *, AcpiGbl_DbScopeNode); 453f8146b88SJung-uk Kim ACPI_GLOBAL (BOOLEAN, AcpiGbl_DbTerminateLoop); 454f8146b88SJung-uk Kim ACPI_GLOBAL (BOOLEAN, AcpiGbl_DbThreadsTerminated); 455313a0c13SJung-uk Kim ACPI_GLOBAL (char *, AcpiGbl_DbArgs[ACPI_DEBUGGER_MAX_ARGS]); 456313a0c13SJung-uk Kim ACPI_GLOBAL (ACPI_OBJECT_TYPE, AcpiGbl_DbArgTypes[ACPI_DEBUGGER_MAX_ARGS]); 45779c6d946SJung-uk Kim 45879c6d946SJung-uk Kim /* These buffers should all be the same size */ 45979c6d946SJung-uk Kim 460313a0c13SJung-uk Kim ACPI_GLOBAL (char, AcpiGbl_DbParsedBuf[ACPI_DB_LINE_BUFFER_SIZE]); 461313a0c13SJung-uk Kim ACPI_GLOBAL (char, AcpiGbl_DbScopeBuf[ACPI_DB_LINE_BUFFER_SIZE]); 462313a0c13SJung-uk Kim ACPI_GLOBAL (char, AcpiGbl_DbDebugFilename[ACPI_DB_LINE_BUFFER_SIZE]); 46379c6d946SJung-uk Kim 464f1db5ef7SJung-uk Kim /* Statistics globals */ 465f1db5ef7SJung-uk Kim 46670e6ab8fSJung-uk Kim ACPI_GLOBAL (UINT16, AcpiGbl_ObjTypeCount[ACPI_TOTAL_TYPES]); 46770e6ab8fSJung-uk Kim ACPI_GLOBAL (UINT16, AcpiGbl_NodeTypeCount[ACPI_TOTAL_TYPES]); 468313a0c13SJung-uk Kim ACPI_GLOBAL (UINT16, AcpiGbl_ObjTypeCountMisc); 469313a0c13SJung-uk Kim ACPI_GLOBAL (UINT16, AcpiGbl_NodeTypeCountMisc); 470313a0c13SJung-uk Kim ACPI_GLOBAL (UINT32, AcpiGbl_NumNodes); 471313a0c13SJung-uk Kim ACPI_GLOBAL (UINT32, AcpiGbl_NumObjects); 472a9f12690SJung-uk Kim #endif /* ACPI_DEBUGGER */ 473a9f12690SJung-uk Kim 474f8146b88SJung-uk Kim #if defined (ACPI_DISASSEMBLER) || defined (ACPI_ASL_COMPILER) 475f8146b88SJung-uk Kim ACPI_GLOBAL (const char, *AcpiGbl_PldPanelList[]); 476f8146b88SJung-uk Kim ACPI_GLOBAL (const char, *AcpiGbl_PldVerticalPositionList[]); 477f8146b88SJung-uk Kim ACPI_GLOBAL (const char, *AcpiGbl_PldHorizontalPositionList[]); 478f8146b88SJung-uk Kim ACPI_GLOBAL (const char, *AcpiGbl_PldShapeList[]); 479af051161SJung-uk Kim ACPI_INIT_GLOBAL (BOOLEAN, AcpiGbl_DisasmFlag, FALSE); 480f8146b88SJung-uk Kim #endif 481f38b0f21SJung-uk Kim 482f1db5ef7SJung-uk Kim 483f1db5ef7SJung-uk Kim /***************************************************************************** 484f1db5ef7SJung-uk Kim * 485f1db5ef7SJung-uk Kim * ACPICA application-specific globals 486f1db5ef7SJung-uk Kim * 487f1db5ef7SJung-uk Kim ****************************************************************************/ 488f1db5ef7SJung-uk Kim 489f1db5ef7SJung-uk Kim /* ASL-to-ASL+ conversion utility (implemented within the iASL compiler) */ 490f1db5ef7SJung-uk Kim 491f1db5ef7SJung-uk Kim #ifdef ACPI_ASL_COMPILER 4920d84335fSJung-uk Kim ACPI_INIT_GLOBAL (char *, AcpiGbl_CurrentInlineComment, NULL); 4930d84335fSJung-uk Kim ACPI_INIT_GLOBAL (char *, AcpiGbl_CurrentEndNodeComment, NULL); 4940d84335fSJung-uk Kim ACPI_INIT_GLOBAL (char *, AcpiGbl_CurrentOpenBraceComment, NULL); 4950d84335fSJung-uk Kim ACPI_INIT_GLOBAL (char *, AcpiGbl_CurrentCloseBraceComment, NULL); 4960d84335fSJung-uk Kim 4970d84335fSJung-uk Kim ACPI_INIT_GLOBAL (char *, AcpiGbl_RootFilename, NULL); 4980d84335fSJung-uk Kim ACPI_INIT_GLOBAL (char *, AcpiGbl_CurrentFilename, NULL); 4990d84335fSJung-uk Kim ACPI_INIT_GLOBAL (char *, AcpiGbl_CurrentParentFilename, NULL); 5000d84335fSJung-uk Kim ACPI_INIT_GLOBAL (char *, AcpiGbl_CurrentIncludeFilename, NULL); 5010d84335fSJung-uk Kim 5020d84335fSJung-uk Kim ACPI_INIT_GLOBAL (ACPI_COMMENT_NODE, *AcpiGbl_DefBlkCommentListHead, NULL); 5030d84335fSJung-uk Kim ACPI_INIT_GLOBAL (ACPI_COMMENT_NODE, *AcpiGbl_DefBlkCommentListTail, NULL); 5040d84335fSJung-uk Kim ACPI_INIT_GLOBAL (ACPI_COMMENT_NODE, *AcpiGbl_RegCommentListHead, NULL); 5050d84335fSJung-uk Kim ACPI_INIT_GLOBAL (ACPI_COMMENT_NODE, *AcpiGbl_RegCommentListTail, NULL); 5060d84335fSJung-uk Kim ACPI_INIT_GLOBAL (ACPI_COMMENT_NODE, *AcpiGbl_IncCommentListHead, NULL); 5070d84335fSJung-uk Kim ACPI_INIT_GLOBAL (ACPI_COMMENT_NODE, *AcpiGbl_IncCommentListTail, NULL); 5080d84335fSJung-uk Kim ACPI_INIT_GLOBAL (ACPI_COMMENT_NODE, *AcpiGbl_EndBlkCommentListHead, NULL); 5090d84335fSJung-uk Kim ACPI_INIT_GLOBAL (ACPI_COMMENT_NODE, *AcpiGbl_EndBlkCommentListTail, NULL); 5100d84335fSJung-uk Kim 5110d84335fSJung-uk Kim ACPI_INIT_GLOBAL (ACPI_COMMENT_ADDR_NODE, *AcpiGbl_CommentAddrListHead, NULL); 5120d84335fSJung-uk Kim ACPI_INIT_GLOBAL (ACPI_FILE_NODE, *AcpiGbl_FileTreeRoot, NULL); 5130d84335fSJung-uk Kim 5140d84335fSJung-uk Kim ACPI_GLOBAL (ACPI_CACHE_T *, AcpiGbl_RegCommentCache); 5150d84335fSJung-uk Kim ACPI_GLOBAL (ACPI_CACHE_T *, AcpiGbl_CommentAddrCache); 5160d84335fSJung-uk Kim ACPI_GLOBAL (ACPI_CACHE_T *, AcpiGbl_FileCache); 5170d84335fSJung-uk Kim 5180d84335fSJung-uk Kim ACPI_INIT_GLOBAL (BOOLEAN, AcpiGbl_DebugAslConversion, FALSE); 5190d84335fSJung-uk Kim ACPI_INIT_GLOBAL (ACPI_FILE, AcpiGbl_ConvDebugFile, NULL); 5200d84335fSJung-uk Kim ACPI_GLOBAL (char, AcpiGbl_TableSig[4]); 521f1db5ef7SJung-uk Kim #endif 522313a0c13SJung-uk Kim 523313a0c13SJung-uk Kim #ifdef ACPI_APPLICATION 524313a0c13SJung-uk Kim ACPI_INIT_GLOBAL (ACPI_FILE, AcpiGbl_DebugFile, NULL); 525313a0c13SJung-uk Kim ACPI_INIT_GLOBAL (ACPI_FILE, AcpiGbl_OutputFile, NULL); 526493deb39SJung-uk Kim ACPI_INIT_GLOBAL (BOOLEAN, AcpiGbl_DebugTimeout, FALSE); 527313a0c13SJung-uk Kim 528313a0c13SJung-uk Kim /* Print buffer */ 529313a0c13SJung-uk Kim 530313a0c13SJung-uk Kim ACPI_GLOBAL (ACPI_SPINLOCK, AcpiGbl_PrintLock); /* For print buffer */ 531313a0c13SJung-uk Kim ACPI_GLOBAL (char, AcpiGbl_PrintBuffer[1024]); 532313a0c13SJung-uk Kim #endif /* ACPI_APPLICATION */ 533313a0c13SJung-uk Kim 534a9f12690SJung-uk Kim #endif /* __ACGLOBAL_H__ */ 535