17b1019a6SJerry Jelinek /******************************************************************************
27b1019a6SJerry Jelinek  *
37b1019a6SJerry Jelinek  * Module Name: utglobal - Global variables for the ACPI subsystem
47b1019a6SJerry Jelinek  *
57b1019a6SJerry Jelinek  *****************************************************************************/
67b1019a6SJerry Jelinek 
7*35786f68SRobert Mustacchi /******************************************************************************
8*35786f68SRobert Mustacchi  *
9*35786f68SRobert Mustacchi  * 1. Copyright Notice
10*35786f68SRobert Mustacchi  *
11*35786f68SRobert Mustacchi  * Some or all of this work - Copyright (c) 1999 - 2018, Intel Corp.
127b1019a6SJerry Jelinek  * All rights reserved.
137b1019a6SJerry Jelinek  *
14*35786f68SRobert Mustacchi  * 2. License
15*35786f68SRobert Mustacchi  *
16*35786f68SRobert Mustacchi  * 2.1. This is your license from Intel Corp. under its intellectual property
17*35786f68SRobert Mustacchi  * rights. You may have additional license terms from the party that provided
18*35786f68SRobert Mustacchi  * you this software, covering your right to use that party's intellectual
19*35786f68SRobert Mustacchi  * property rights.
20*35786f68SRobert Mustacchi  *
21*35786f68SRobert Mustacchi  * 2.2. Intel grants, free of charge, to any person ("Licensee") obtaining a
22*35786f68SRobert Mustacchi  * copy of the source code appearing in this file ("Covered Code") an
23*35786f68SRobert Mustacchi  * irrevocable, perpetual, worldwide license under Intel's copyrights in the
24*35786f68SRobert Mustacchi  * base code distributed originally by Intel ("Original Intel Code") to copy,
25*35786f68SRobert Mustacchi  * make derivatives, distribute, use and display any portion of the Covered
26*35786f68SRobert Mustacchi  * Code in any form, with the right to sublicense such rights; and
27*35786f68SRobert Mustacchi  *
28*35786f68SRobert Mustacchi  * 2.3. Intel grants Licensee a non-exclusive and non-transferable patent
29*35786f68SRobert Mustacchi  * license (with the right to sublicense), under only those claims of Intel
30*35786f68SRobert Mustacchi  * patents that are infringed by the Original Intel Code, to make, use, sell,
31*35786f68SRobert Mustacchi  * offer to sell, and import the Covered Code and derivative works thereof
32*35786f68SRobert Mustacchi  * solely to the minimum extent necessary to exercise the above copyright
33*35786f68SRobert Mustacchi  * license, and in no event shall the patent license extend to any additions
34*35786f68SRobert Mustacchi  * to or modifications of the Original Intel Code. No other license or right
35*35786f68SRobert Mustacchi  * is granted directly or by implication, estoppel or otherwise;
36*35786f68SRobert Mustacchi  *
37*35786f68SRobert Mustacchi  * The above copyright and patent license is granted only if the following
38*35786f68SRobert Mustacchi  * conditions are met:
39*35786f68SRobert Mustacchi  *
40*35786f68SRobert Mustacchi  * 3. Conditions
41*35786f68SRobert Mustacchi  *
42*35786f68SRobert Mustacchi  * 3.1. Redistribution of Source with Rights to Further Distribute Source.
43*35786f68SRobert Mustacchi  * Redistribution of source code of any substantial portion of the Covered
44*35786f68SRobert Mustacchi  * Code or modification with rights to further distribute source must include
45*35786f68SRobert Mustacchi  * the above Copyright Notice, the above License, this list of Conditions,
46*35786f68SRobert Mustacchi  * and the following Disclaimer and Export Compliance provision. In addition,
47*35786f68SRobert Mustacchi  * Licensee must cause all Covered Code to which Licensee contributes to
48*35786f68SRobert Mustacchi  * contain a file documenting the changes Licensee made to create that Covered
49*35786f68SRobert Mustacchi  * Code and the date of any change. Licensee must include in that file the
50*35786f68SRobert Mustacchi  * documentation of any changes made by any predecessor Licensee. Licensee
51*35786f68SRobert Mustacchi  * must include a prominent statement that the modification is derived,
52*35786f68SRobert Mustacchi  * directly or indirectly, from Original Intel Code.
53*35786f68SRobert Mustacchi  *
54*35786f68SRobert Mustacchi  * 3.2. Redistribution of Source with no Rights to Further Distribute Source.
55*35786f68SRobert Mustacchi  * Redistribution of source code of any substantial portion of the Covered
56*35786f68SRobert Mustacchi  * Code or modification without rights to further distribute source must
57*35786f68SRobert Mustacchi  * include the following Disclaimer and Export Compliance provision in the
58*35786f68SRobert Mustacchi  * documentation and/or other materials provided with distribution. In
59*35786f68SRobert Mustacchi  * addition, Licensee may not authorize further sublicense of source of any
60*35786f68SRobert Mustacchi  * portion of the Covered Code, and must include terms to the effect that the
61*35786f68SRobert Mustacchi  * license from Licensee to its licensee is limited to the intellectual
62*35786f68SRobert Mustacchi  * property embodied in the software Licensee provides to its licensee, and
63*35786f68SRobert Mustacchi  * not to intellectual property embodied in modifications its licensee may
64*35786f68SRobert Mustacchi  * make.
65*35786f68SRobert Mustacchi  *
66*35786f68SRobert Mustacchi  * 3.3. Redistribution of Executable. Redistribution in executable form of any
67*35786f68SRobert Mustacchi  * substantial portion of the Covered Code or modification must reproduce the
68*35786f68SRobert Mustacchi  * above Copyright Notice, and the following Disclaimer and Export Compliance
69*35786f68SRobert Mustacchi  * provision in the documentation and/or other materials provided with the
70*35786f68SRobert Mustacchi  * distribution.
71*35786f68SRobert Mustacchi  *
72*35786f68SRobert Mustacchi  * 3.4. Intel retains all right, title, and interest in and to the Original
73*35786f68SRobert Mustacchi  * Intel Code.
74*35786f68SRobert Mustacchi  *
75*35786f68SRobert Mustacchi  * 3.5. Neither the name Intel nor any other trademark owned or controlled by
76*35786f68SRobert Mustacchi  * Intel shall be used in advertising or otherwise to promote the sale, use or
77*35786f68SRobert Mustacchi  * other dealings in products derived from or relating to the Covered Code
78*35786f68SRobert Mustacchi  * without prior written authorization from Intel.
79*35786f68SRobert Mustacchi  *
80*35786f68SRobert Mustacchi  * 4. Disclaimer and Export Compliance
81*35786f68SRobert Mustacchi  *
82*35786f68SRobert Mustacchi  * 4.1. INTEL MAKES NO WARRANTY OF ANY KIND REGARDING ANY SOFTWARE PROVIDED
83*35786f68SRobert Mustacchi  * HERE. ANY SOFTWARE ORIGINATING FROM INTEL OR DERIVED FROM INTEL SOFTWARE
84*35786f68SRobert Mustacchi  * IS PROVIDED "AS IS," AND INTEL WILL NOT PROVIDE ANY SUPPORT, ASSISTANCE,
85*35786f68SRobert Mustacchi  * INSTALLATION, TRAINING OR OTHER SERVICES. INTEL WILL NOT PROVIDE ANY
86*35786f68SRobert Mustacchi  * UPDATES, ENHANCEMENTS OR EXTENSIONS. INTEL SPECIFICALLY DISCLAIMS ANY
87*35786f68SRobert Mustacchi  * IMPLIED WARRANTIES OF MERCHANTABILITY, NONINFRINGEMENT AND FITNESS FOR A
88*35786f68SRobert Mustacchi  * PARTICULAR PURPOSE.
89*35786f68SRobert Mustacchi  *
90*35786f68SRobert Mustacchi  * 4.2. IN NO EVENT SHALL INTEL HAVE ANY LIABILITY TO LICENSEE, ITS LICENSEES
91*35786f68SRobert Mustacchi  * OR ANY OTHER THIRD PARTY, FOR ANY LOST PROFITS, LOST DATA, LOSS OF USE OR
92*35786f68SRobert Mustacchi  * COSTS OF PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES, OR FOR ANY INDIRECT,
93*35786f68SRobert Mustacchi  * SPECIAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THIS AGREEMENT, UNDER ANY
94*35786f68SRobert Mustacchi  * CAUSE OF ACTION OR THEORY OF LIABILITY, AND IRRESPECTIVE OF WHETHER INTEL
95*35786f68SRobert Mustacchi  * HAS ADVANCE NOTICE OF THE POSSIBILITY OF SUCH DAMAGES. THESE LIMITATIONS
96*35786f68SRobert Mustacchi  * SHALL APPLY NOTWITHSTANDING THE FAILURE OF THE ESSENTIAL PURPOSE OF ANY
97*35786f68SRobert Mustacchi  * LIMITED REMEDY.
98*35786f68SRobert Mustacchi  *
99*35786f68SRobert Mustacchi  * 4.3. Licensee shall not export, either directly or indirectly, any of this
100*35786f68SRobert Mustacchi  * software or system incorporating such software without first obtaining any
101*35786f68SRobert Mustacchi  * required license or other approval from the U. S. Department of Commerce or
102*35786f68SRobert Mustacchi  * any other agency or department of the United States Government. In the
103*35786f68SRobert Mustacchi  * event Licensee exports any such software from the United States or
104*35786f68SRobert Mustacchi  * re-exports any such software from a foreign destination, Licensee shall
105*35786f68SRobert Mustacchi  * ensure that the distribution and export/re-export of the software is in
106*35786f68SRobert Mustacchi  * compliance with all laws, regulations, orders, or other restrictions of the
107*35786f68SRobert Mustacchi  * U.S. Export Administration Regulations. Licensee agrees that neither it nor
108*35786f68SRobert Mustacchi  * any of its subsidiaries will export/re-export any technical data, process,
109*35786f68SRobert Mustacchi  * software, or service, directly or indirectly, to any country for which the
110*35786f68SRobert Mustacchi  * United States government or any agency thereof requires an export license,
111*35786f68SRobert Mustacchi  * other governmental approval, or letter of assurance, without first obtaining
112*35786f68SRobert Mustacchi  * such license, approval or letter.
113*35786f68SRobert Mustacchi  *
114*35786f68SRobert Mustacchi  *****************************************************************************
115*35786f68SRobert Mustacchi  *
116*35786f68SRobert Mustacchi  * Alternatively, you may choose to be licensed under the terms of the
117*35786f68SRobert Mustacchi  * following license:
118*35786f68SRobert Mustacchi  *
1197b1019a6SJerry Jelinek  * Redistribution and use in source and binary forms, with or without
1207b1019a6SJerry Jelinek  * modification, are permitted provided that the following conditions
1217b1019a6SJerry Jelinek  * are met:
1227b1019a6SJerry Jelinek  * 1. Redistributions of source code must retain the above copyright
1237b1019a6SJerry Jelinek  *    notice, this list of conditions, and the following disclaimer,
1247b1019a6SJerry Jelinek  *    without modification.
1257b1019a6SJerry Jelinek  * 2. Redistributions in binary form must reproduce at minimum a disclaimer
1267b1019a6SJerry Jelinek  *    substantially similar to the "NO WARRANTY" disclaimer below
1277b1019a6SJerry Jelinek  *    ("Disclaimer") and any redistribution must be conditioned upon
1287b1019a6SJerry Jelinek  *    including a substantially similar Disclaimer requirement for further
1297b1019a6SJerry Jelinek  *    binary redistribution.
1307b1019a6SJerry Jelinek  * 3. Neither the names of the above-listed copyright holders nor the names
1317b1019a6SJerry Jelinek  *    of any contributors may be used to endorse or promote products derived
1327b1019a6SJerry Jelinek  *    from this software without specific prior written permission.
1337b1019a6SJerry Jelinek  *
1347b1019a6SJerry Jelinek  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
1357b1019a6SJerry Jelinek  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
136*35786f68SRobert Mustacchi  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
1377b1019a6SJerry Jelinek  * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
138*35786f68SRobert Mustacchi  * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
139*35786f68SRobert Mustacchi  * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
140*35786f68SRobert Mustacchi  * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
141*35786f68SRobert Mustacchi  * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
142*35786f68SRobert Mustacchi  * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
143*35786f68SRobert Mustacchi  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
144*35786f68SRobert Mustacchi  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
145*35786f68SRobert Mustacchi  *
146*35786f68SRobert Mustacchi  * Alternatively, you may choose to be licensed under the terms of the
147*35786f68SRobert Mustacchi  * GNU General Public License ("GPL") version 2 as published by the Free
148*35786f68SRobert Mustacchi  * Software Foundation.
149*35786f68SRobert Mustacchi  *
150*35786f68SRobert Mustacchi  *****************************************************************************/
1517b1019a6SJerry Jelinek 
1527b1019a6SJerry Jelinek #define EXPORT_ACPI_INTERFACES
1537b1019a6SJerry Jelinek #define DEFINE_ACPI_GLOBALS
1547b1019a6SJerry Jelinek 
1557b1019a6SJerry Jelinek #include "acpi.h"
1567b1019a6SJerry Jelinek #include "accommon.h"
1577b1019a6SJerry Jelinek 
1587b1019a6SJerry Jelinek #define _COMPONENT          ACPI_UTILITIES
1597b1019a6SJerry Jelinek         ACPI_MODULE_NAME    ("utglobal")
1607b1019a6SJerry Jelinek 
1617b1019a6SJerry Jelinek 
1627b1019a6SJerry Jelinek /*******************************************************************************
1637b1019a6SJerry Jelinek  *
1647b1019a6SJerry Jelinek  * Static global variable initialization.
1657b1019a6SJerry Jelinek  *
1667b1019a6SJerry Jelinek  ******************************************************************************/
1677b1019a6SJerry Jelinek 
1687b1019a6SJerry Jelinek /* Various state name strings */
1697b1019a6SJerry Jelinek 
1707b1019a6SJerry Jelinek const char                  *AcpiGbl_SleepStateNames[ACPI_S_STATE_COUNT] =
1717b1019a6SJerry Jelinek {
1727b1019a6SJerry Jelinek     "\\_S0_",
1737b1019a6SJerry Jelinek     "\\_S1_",
1747b1019a6SJerry Jelinek     "\\_S2_",
1757b1019a6SJerry Jelinek     "\\_S3_",
1767b1019a6SJerry Jelinek     "\\_S4_",
1777b1019a6SJerry Jelinek     "\\_S5_"
1787b1019a6SJerry Jelinek };
1797b1019a6SJerry Jelinek 
1807b1019a6SJerry Jelinek const char                  *AcpiGbl_LowestDstateNames[ACPI_NUM_SxW_METHODS] =
1817b1019a6SJerry Jelinek {
1827b1019a6SJerry Jelinek     "_S0W",
1837b1019a6SJerry Jelinek     "_S1W",
1847b1019a6SJerry Jelinek     "_S2W",
1857b1019a6SJerry Jelinek     "_S3W",
1867b1019a6SJerry Jelinek     "_S4W"
1877b1019a6SJerry Jelinek };
1887b1019a6SJerry Jelinek 
1897b1019a6SJerry Jelinek const char                  *AcpiGbl_HighestDstateNames[ACPI_NUM_SxD_METHODS] =
1907b1019a6SJerry Jelinek {
1917b1019a6SJerry Jelinek     "_S1D",
1927b1019a6SJerry Jelinek     "_S2D",
1937b1019a6SJerry Jelinek     "_S3D",
1947b1019a6SJerry Jelinek     "_S4D"
1957b1019a6SJerry Jelinek };
1967b1019a6SJerry Jelinek 
1977b1019a6SJerry Jelinek 
1987b1019a6SJerry Jelinek /* Hex-to-ascii */
1997b1019a6SJerry Jelinek 
2007b1019a6SJerry Jelinek const char                  AcpiGbl_LowerHexDigits[] = "0123456789abcdef";
2017b1019a6SJerry Jelinek const char                  AcpiGbl_UpperHexDigits[] = "0123456789ABCDEF";
2027b1019a6SJerry Jelinek 
2037b1019a6SJerry Jelinek 
2047b1019a6SJerry Jelinek /*******************************************************************************
2057b1019a6SJerry Jelinek  *
2067b1019a6SJerry Jelinek  * Namespace globals
2077b1019a6SJerry Jelinek  *
2087b1019a6SJerry Jelinek  ******************************************************************************/
2097b1019a6SJerry Jelinek 
2107b1019a6SJerry Jelinek /*
2117b1019a6SJerry Jelinek  * Predefined ACPI Names (Built-in to the Interpreter)
2127b1019a6SJerry Jelinek  *
2137b1019a6SJerry Jelinek  * NOTES:
2147b1019a6SJerry Jelinek  * 1) _SB_ is defined to be a device to allow \_SB_._INI to be run
2157b1019a6SJerry Jelinek  *    during the initialization sequence.
2167b1019a6SJerry Jelinek  * 2) _TZ_ is defined to be a thermal zone in order to allow ASL code to
2177b1019a6SJerry Jelinek  *    perform a Notify() operation on it. 09/2010: Changed to type Device.
2187b1019a6SJerry Jelinek  *    This still allows notifies, but does not confuse host code that
2197b1019a6SJerry Jelinek  *    searches for valid ThermalZone objects.
2207b1019a6SJerry Jelinek  */
2217b1019a6SJerry Jelinek const ACPI_PREDEFINED_NAMES     AcpiGbl_PreDefinedNames[] =
2227b1019a6SJerry Jelinek {
2237b1019a6SJerry Jelinek     {"_GPE",    ACPI_TYPE_LOCAL_SCOPE,      NULL},
2247b1019a6SJerry Jelinek     {"_PR_",    ACPI_TYPE_LOCAL_SCOPE,      NULL},
2257b1019a6SJerry Jelinek     {"_SB_",    ACPI_TYPE_DEVICE,           NULL},
2267b1019a6SJerry Jelinek     {"_SI_",    ACPI_TYPE_LOCAL_SCOPE,      NULL},
2277b1019a6SJerry Jelinek     {"_TZ_",    ACPI_TYPE_DEVICE,           NULL},
2287b1019a6SJerry Jelinek     /*
2297b1019a6SJerry Jelinek      * March, 2015:
2307b1019a6SJerry Jelinek      * The _REV object is in the process of being deprecated, because
2317b1019a6SJerry Jelinek      * other ACPI implementations permanently return 2. Thus, it
2327b1019a6SJerry Jelinek      * has little or no value. Return 2 for compatibility with
2337b1019a6SJerry Jelinek      * other ACPI implementations.
2347b1019a6SJerry Jelinek      */
2357b1019a6SJerry Jelinek     {"_REV",    ACPI_TYPE_INTEGER,          ACPI_CAST_PTR (char, 2)},
2367b1019a6SJerry Jelinek     {"_OS_",    ACPI_TYPE_STRING,           ACPI_OS_NAME},
2377b1019a6SJerry Jelinek     {"_GL_",    ACPI_TYPE_MUTEX,            ACPI_CAST_PTR (char, 1)},
2387b1019a6SJerry Jelinek 
2397b1019a6SJerry Jelinek #if !defined (ACPI_NO_METHOD_EXECUTION) || defined (ACPI_CONSTANT_EVAL_ONLY)
2407b1019a6SJerry Jelinek     {"_OSI",    ACPI_TYPE_METHOD,           ACPI_CAST_PTR (char, 1)},
2417b1019a6SJerry Jelinek #endif
2427b1019a6SJerry Jelinek 
2437b1019a6SJerry Jelinek     /* Table terminator */
2447b1019a6SJerry Jelinek 
2457b1019a6SJerry Jelinek     {NULL,      ACPI_TYPE_ANY,              NULL}
2467b1019a6SJerry Jelinek };
2477b1019a6SJerry Jelinek 
2487b1019a6SJerry Jelinek 
2497b1019a6SJerry Jelinek #if (!ACPI_REDUCED_HARDWARE)
2507b1019a6SJerry Jelinek /******************************************************************************
2517b1019a6SJerry Jelinek  *
2527b1019a6SJerry Jelinek  * Event and Hardware globals
2537b1019a6SJerry Jelinek  *
2547b1019a6SJerry Jelinek  ******************************************************************************/
2557b1019a6SJerry Jelinek 
2567b1019a6SJerry Jelinek ACPI_BIT_REGISTER_INFO      AcpiGbl_BitRegisterInfo[ACPI_NUM_BITREG] =
2577b1019a6SJerry Jelinek {
2587b1019a6SJerry Jelinek     /* Name                                     Parent Register             Register Bit Position                   Register Bit Mask       */
2597b1019a6SJerry Jelinek 
2607b1019a6SJerry Jelinek     /* ACPI_BITREG_TIMER_STATUS         */   {ACPI_REGISTER_PM1_STATUS,   ACPI_BITPOSITION_TIMER_STATUS,          ACPI_BITMASK_TIMER_STATUS},
2617b1019a6SJerry Jelinek     /* ACPI_BITREG_BUS_MASTER_STATUS    */   {ACPI_REGISTER_PM1_STATUS,   ACPI_BITPOSITION_BUS_MASTER_STATUS,     ACPI_BITMASK_BUS_MASTER_STATUS},
2627b1019a6SJerry Jelinek     /* ACPI_BITREG_GLOBAL_LOCK_STATUS   */   {ACPI_REGISTER_PM1_STATUS,   ACPI_BITPOSITION_GLOBAL_LOCK_STATUS,    ACPI_BITMASK_GLOBAL_LOCK_STATUS},
2637b1019a6SJerry Jelinek     /* ACPI_BITREG_POWER_BUTTON_STATUS  */   {ACPI_REGISTER_PM1_STATUS,   ACPI_BITPOSITION_POWER_BUTTON_STATUS,   ACPI_BITMASK_POWER_BUTTON_STATUS},
2647b1019a6SJerry Jelinek     /* ACPI_BITREG_SLEEP_BUTTON_STATUS  */   {ACPI_REGISTER_PM1_STATUS,   ACPI_BITPOSITION_SLEEP_BUTTON_STATUS,   ACPI_BITMASK_SLEEP_BUTTON_STATUS},
2657b1019a6SJerry Jelinek     /* ACPI_BITREG_RT_CLOCK_STATUS      */   {ACPI_REGISTER_PM1_STATUS,   ACPI_BITPOSITION_RT_CLOCK_STATUS,       ACPI_BITMASK_RT_CLOCK_STATUS},
2667b1019a6SJerry Jelinek     /* ACPI_BITREG_WAKE_STATUS          */   {ACPI_REGISTER_PM1_STATUS,   ACPI_BITPOSITION_WAKE_STATUS,           ACPI_BITMASK_WAKE_STATUS},
2677b1019a6SJerry Jelinek     /* ACPI_BITREG_PCIEXP_WAKE_STATUS   */   {ACPI_REGISTER_PM1_STATUS,   ACPI_BITPOSITION_PCIEXP_WAKE_STATUS,    ACPI_BITMASK_PCIEXP_WAKE_STATUS},
2687b1019a6SJerry Jelinek 
2697b1019a6SJerry Jelinek     /* ACPI_BITREG_TIMER_ENABLE         */   {ACPI_REGISTER_PM1_ENABLE,   ACPI_BITPOSITION_TIMER_ENABLE,          ACPI_BITMASK_TIMER_ENABLE},
2707b1019a6SJerry Jelinek     /* ACPI_BITREG_GLOBAL_LOCK_ENABLE   */   {ACPI_REGISTER_PM1_ENABLE,   ACPI_BITPOSITION_GLOBAL_LOCK_ENABLE,    ACPI_BITMASK_GLOBAL_LOCK_ENABLE},
2717b1019a6SJerry Jelinek     /* ACPI_BITREG_POWER_BUTTON_ENABLE  */   {ACPI_REGISTER_PM1_ENABLE,   ACPI_BITPOSITION_POWER_BUTTON_ENABLE,   ACPI_BITMASK_POWER_BUTTON_ENABLE},
2727b1019a6SJerry Jelinek     /* ACPI_BITREG_SLEEP_BUTTON_ENABLE  */   {ACPI_REGISTER_PM1_ENABLE,   ACPI_BITPOSITION_SLEEP_BUTTON_ENABLE,   ACPI_BITMASK_SLEEP_BUTTON_ENABLE},
2737b1019a6SJerry Jelinek     /* ACPI_BITREG_RT_CLOCK_ENABLE      */   {ACPI_REGISTER_PM1_ENABLE,   ACPI_BITPOSITION_RT_CLOCK_ENABLE,       ACPI_BITMASK_RT_CLOCK_ENABLE},
2747b1019a6SJerry Jelinek     /* ACPI_BITREG_PCIEXP_WAKE_DISABLE  */   {ACPI_REGISTER_PM1_ENABLE,   ACPI_BITPOSITION_PCIEXP_WAKE_DISABLE,   ACPI_BITMASK_PCIEXP_WAKE_DISABLE},
2757b1019a6SJerry Jelinek 
2767b1019a6SJerry Jelinek     /* ACPI_BITREG_SCI_ENABLE           */   {ACPI_REGISTER_PM1_CONTROL,  ACPI_BITPOSITION_SCI_ENABLE,            ACPI_BITMASK_SCI_ENABLE},
2777b1019a6SJerry Jelinek     /* ACPI_BITREG_BUS_MASTER_RLD       */   {ACPI_REGISTER_PM1_CONTROL,  ACPI_BITPOSITION_BUS_MASTER_RLD,        ACPI_BITMASK_BUS_MASTER_RLD},
2787b1019a6SJerry Jelinek     /* ACPI_BITREG_GLOBAL_LOCK_RELEASE  */   {ACPI_REGISTER_PM1_CONTROL,  ACPI_BITPOSITION_GLOBAL_LOCK_RELEASE,   ACPI_BITMASK_GLOBAL_LOCK_RELEASE},
2797b1019a6SJerry Jelinek     /* ACPI_BITREG_SLEEP_TYPE           */   {ACPI_REGISTER_PM1_CONTROL,  ACPI_BITPOSITION_SLEEP_TYPE,            ACPI_BITMASK_SLEEP_TYPE},
2807b1019a6SJerry Jelinek     /* ACPI_BITREG_SLEEP_ENABLE         */   {ACPI_REGISTER_PM1_CONTROL,  ACPI_BITPOSITION_SLEEP_ENABLE,          ACPI_BITMASK_SLEEP_ENABLE},
2817b1019a6SJerry Jelinek 
2827b1019a6SJerry Jelinek     /* ACPI_BITREG_ARB_DIS              */   {ACPI_REGISTER_PM2_CONTROL,  ACPI_BITPOSITION_ARB_DISABLE,           ACPI_BITMASK_ARB_DISABLE}
2837b1019a6SJerry Jelinek };
2847b1019a6SJerry Jelinek 
2857b1019a6SJerry Jelinek 
2867b1019a6SJerry Jelinek ACPI_FIXED_EVENT_INFO       AcpiGbl_FixedEventInfo[ACPI_NUM_FIXED_EVENTS] =
2877b1019a6SJerry Jelinek {
2887b1019a6SJerry Jelinek     /* ACPI_EVENT_PMTIMER       */  {ACPI_BITREG_TIMER_STATUS,          ACPI_BITREG_TIMER_ENABLE,        ACPI_BITMASK_TIMER_STATUS,          ACPI_BITMASK_TIMER_ENABLE},
2897b1019a6SJerry Jelinek     /* ACPI_EVENT_GLOBAL        */  {ACPI_BITREG_GLOBAL_LOCK_STATUS,    ACPI_BITREG_GLOBAL_LOCK_ENABLE,  ACPI_BITMASK_GLOBAL_LOCK_STATUS,    ACPI_BITMASK_GLOBAL_LOCK_ENABLE},
2907b1019a6SJerry Jelinek     /* ACPI_EVENT_POWER_BUTTON  */  {ACPI_BITREG_POWER_BUTTON_STATUS,   ACPI_BITREG_POWER_BUTTON_ENABLE, ACPI_BITMASK_POWER_BUTTON_STATUS,   ACPI_BITMASK_POWER_BUTTON_ENABLE},
2917b1019a6SJerry Jelinek     /* ACPI_EVENT_SLEEP_BUTTON  */  {ACPI_BITREG_SLEEP_BUTTON_STATUS,   ACPI_BITREG_SLEEP_BUTTON_ENABLE, ACPI_BITMASK_SLEEP_BUTTON_STATUS,   ACPI_BITMASK_SLEEP_BUTTON_ENABLE},
2927b1019a6SJerry Jelinek     /* ACPI_EVENT_RTC           */  {ACPI_BITREG_RT_CLOCK_STATUS,       ACPI_BITREG_RT_CLOCK_ENABLE,     ACPI_BITMASK_RT_CLOCK_STATUS,       ACPI_BITMASK_RT_CLOCK_ENABLE},
2937b1019a6SJerry Jelinek };
2947b1019a6SJerry Jelinek #endif /* !ACPI_REDUCED_HARDWARE */
2957b1019a6SJerry Jelinek 
2967b1019a6SJerry Jelinek 
2977b1019a6SJerry Jelinek #if defined (ACPI_DISASSEMBLER) || defined (ACPI_ASL_COMPILER)
2987b1019a6SJerry Jelinek 
2997b1019a6SJerry Jelinek /* ToPld macro: compile/disassemble strings */
3007b1019a6SJerry Jelinek 
3017b1019a6SJerry Jelinek const char              *AcpiGbl_PldPanelList[] =
3027b1019a6SJerry Jelinek {
3037b1019a6SJerry Jelinek     "TOP",
3047b1019a6SJerry Jelinek     "BOTTOM",
3057b1019a6SJerry Jelinek     "LEFT",
3067b1019a6SJerry Jelinek     "RIGHT",
3077b1019a6SJerry Jelinek     "FRONT",
3087b1019a6SJerry Jelinek     "BACK",
3097b1019a6SJerry Jelinek     "UNKNOWN",
3107b1019a6SJerry Jelinek     NULL
3117b1019a6SJerry Jelinek };
3127b1019a6SJerry Jelinek 
3137b1019a6SJerry Jelinek const char              *AcpiGbl_PldVerticalPositionList[] =
3147b1019a6SJerry Jelinek {
3157b1019a6SJerry Jelinek     "UPPER",
3167b1019a6SJerry Jelinek     "CENTER",
3177b1019a6SJerry Jelinek     "LOWER",
3187b1019a6SJerry Jelinek     NULL
3197b1019a6SJerry Jelinek };
3207b1019a6SJerry Jelinek 
3217b1019a6SJerry Jelinek const char              *AcpiGbl_PldHorizontalPositionList[] =
3227b1019a6SJerry Jelinek {
3237b1019a6SJerry Jelinek     "LEFT",
3247b1019a6SJerry Jelinek     "CENTER",
3257b1019a6SJerry Jelinek     "RIGHT",
3267b1019a6SJerry Jelinek     NULL
3277b1019a6SJerry Jelinek };
3287b1019a6SJerry Jelinek 
3297b1019a6SJerry Jelinek const char              *AcpiGbl_PldShapeList[] =
3307b1019a6SJerry Jelinek {
3317b1019a6SJerry Jelinek     "ROUND",
3327b1019a6SJerry Jelinek     "OVAL",
3337b1019a6SJerry Jelinek     "SQUARE",
3347b1019a6SJerry Jelinek     "VERTICALRECTANGLE",
3357b1019a6SJerry Jelinek     "HORIZONTALRECTANGLE",
3367b1019a6SJerry Jelinek     "VERTICALTRAPEZOID",
3377b1019a6SJerry Jelinek     "HORIZONTALTRAPEZOID",
3387b1019a6SJerry Jelinek     "UNKNOWN",
3397b1019a6SJerry Jelinek     "CHAMFERED",
3407b1019a6SJerry Jelinek     NULL
3417b1019a6SJerry Jelinek };
3427b1019a6SJerry Jelinek #endif
3437b1019a6SJerry Jelinek 
3447b1019a6SJerry Jelinek 
3457b1019a6SJerry Jelinek /* Public globals */
3467b1019a6SJerry Jelinek 
3477b1019a6SJerry Jelinek ACPI_EXPORT_SYMBOL (AcpiGbl_FADT)
3487b1019a6SJerry Jelinek ACPI_EXPORT_SYMBOL (AcpiDbgLevel)
3497b1019a6SJerry Jelinek ACPI_EXPORT_SYMBOL (AcpiDbgLayer)
3507b1019a6SJerry Jelinek ACPI_EXPORT_SYMBOL (AcpiGpeCount)
3517b1019a6SJerry Jelinek ACPI_EXPORT_SYMBOL (AcpiCurrentGpeCount)
352