xref: /illumos-gate/usr/src/cmd/acpi/common/ahpredef.c (revision bc36eafd)
1*bc36eafdSMike Gerdts /******************************************************************************
2*bc36eafdSMike Gerdts  *
3*bc36eafdSMike Gerdts  * Module Name: ahpredef - Table of all known ACPI predefined names
4*bc36eafdSMike Gerdts  *
5*bc36eafdSMike Gerdts  *****************************************************************************/
6*bc36eafdSMike Gerdts 
7*bc36eafdSMike Gerdts /*
8*bc36eafdSMike Gerdts  * Copyright (C) 2000 - 2016, Intel Corp.
9*bc36eafdSMike Gerdts  * All rights reserved.
10*bc36eafdSMike Gerdts  *
11*bc36eafdSMike Gerdts  * Redistribution and use in source and binary forms, with or without
12*bc36eafdSMike Gerdts  * modification, are permitted provided that the following conditions
13*bc36eafdSMike Gerdts  * are met:
14*bc36eafdSMike Gerdts  * 1. Redistributions of source code must retain the above copyright
15*bc36eafdSMike Gerdts  *    notice, this list of conditions, and the following disclaimer,
16*bc36eafdSMike Gerdts  *    without modification.
17*bc36eafdSMike Gerdts  * 2. Redistributions in binary form must reproduce at minimum a disclaimer
18*bc36eafdSMike Gerdts  *    substantially similar to the "NO WARRANTY" disclaimer below
19*bc36eafdSMike Gerdts  *    ("Disclaimer") and any redistribution must be conditioned upon
20*bc36eafdSMike Gerdts  *    including a substantially similar Disclaimer requirement for further
21*bc36eafdSMike Gerdts  *    binary redistribution.
22*bc36eafdSMike Gerdts  * 3. Neither the names of the above-listed copyright holders nor the names
23*bc36eafdSMike Gerdts  *    of any contributors may be used to endorse or promote products derived
24*bc36eafdSMike Gerdts  *    from this software without specific prior written permission.
25*bc36eafdSMike Gerdts  *
26*bc36eafdSMike Gerdts  * Alternatively, this software may be distributed under the terms of the
27*bc36eafdSMike Gerdts  * GNU General Public License ("GPL") version 2 as published by the Free
28*bc36eafdSMike Gerdts  * Software Foundation.
29*bc36eafdSMike Gerdts  *
30*bc36eafdSMike Gerdts  * NO WARRANTY
31*bc36eafdSMike Gerdts  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
32*bc36eafdSMike Gerdts  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
33*bc36eafdSMike Gerdts  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR
34*bc36eafdSMike Gerdts  * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
35*bc36eafdSMike Gerdts  * HOLDERS OR CONTRIBUTORS BE LIABLE FOR SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
36*bc36eafdSMike Gerdts  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
37*bc36eafdSMike Gerdts  * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
38*bc36eafdSMike Gerdts  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
39*bc36eafdSMike Gerdts  * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
40*bc36eafdSMike Gerdts  * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
41*bc36eafdSMike Gerdts  * POSSIBILITY OF SUCH DAMAGES.
42*bc36eafdSMike Gerdts  */
43*bc36eafdSMike Gerdts 
44*bc36eafdSMike Gerdts #include "acpi.h"
45*bc36eafdSMike Gerdts #include "accommon.h"
46*bc36eafdSMike Gerdts 
47*bc36eafdSMike Gerdts #define _COMPONENT          ACPI_UTILITIES
48*bc36eafdSMike Gerdts         ACPI_MODULE_NAME    ("ahpredef")
49*bc36eafdSMike Gerdts 
50*bc36eafdSMike Gerdts /*
51*bc36eafdSMike Gerdts  * iASL only needs a partial table (short descriptions only).
52*bc36eafdSMike Gerdts  * AcpiHelp needs the full table.
53*bc36eafdSMike Gerdts  */
54*bc36eafdSMike Gerdts #ifdef ACPI_ASL_COMPILER
55*bc36eafdSMike Gerdts #define AH_PREDEF(Name, ShortDesc, LongDesc) {Name, ShortDesc}
56*bc36eafdSMike Gerdts #else
57*bc36eafdSMike Gerdts #define AH_PREDEF(Name, ShortDesc, LongDesc) {Name, ShortDesc, LongDesc}
58*bc36eafdSMike Gerdts #endif
59*bc36eafdSMike Gerdts 
60*bc36eafdSMike Gerdts /*
61*bc36eafdSMike Gerdts  * Predefined ACPI names, with short description and return value.
62*bc36eafdSMike Gerdts  * This table was extracted directly from the ACPI specification.
63*bc36eafdSMike Gerdts  */
64*bc36eafdSMike Gerdts const AH_PREDEFINED_NAME    AslPredefinedInfo[] =
65*bc36eafdSMike Gerdts {
66*bc36eafdSMike Gerdts     AH_PREDEF ("_ACx",    "Active Cooling", "Returns the active cooling policy threshold values"),
67*bc36eafdSMike Gerdts     AH_PREDEF ("_ADR",    "Address", "Returns address of a device on parent bus, and resource field"),
68*bc36eafdSMike Gerdts     AH_PREDEF ("_AEI",    "ACPI Event Interrupts", "Returns a list of GPIO events to be used as ACPI events"),
69*bc36eafdSMike Gerdts     AH_PREDEF ("_ALC",    "Ambient Light Chromaticity", "Returns the ambient light color chromaticity"),
70*bc36eafdSMike Gerdts     AH_PREDEF ("_ALI",    "Ambient Light Illuminance", "Returns the ambient light brightness"),
71*bc36eafdSMike Gerdts     AH_PREDEF ("_ALN",    "Alignment", "Base alignment, Resource Descriptor field"),
72*bc36eafdSMike Gerdts     AH_PREDEF ("_ALP",    "Ambient Light Polling", "Returns the ambient light sensor polling frequency"),
73*bc36eafdSMike Gerdts     AH_PREDEF ("_ALR",    "Ambient Light Response", "Returns the ambient light brightness to display brightness mappings"),
74*bc36eafdSMike Gerdts     AH_PREDEF ("_ALT",    "Ambient Light Temperature", "Returns the ambient light color temperature"),
75*bc36eafdSMike Gerdts     AH_PREDEF ("_ALx",    "Active List", "Returns a list of active cooling device objects"),
76*bc36eafdSMike Gerdts     AH_PREDEF ("_ART",    "Active Cooling Relationship Table", "Returns thermal relationship information between platform devices and fan devices"),
77*bc36eafdSMike Gerdts     AH_PREDEF ("_ASI",    "Address Space Id", "Resource Descriptor field"),
78*bc36eafdSMike Gerdts     AH_PREDEF ("_ASZ",    "Access Size", "Resource Descriptor field"),
79*bc36eafdSMike Gerdts     AH_PREDEF ("_ATT",    "Type-Specific Attribute", "Resource Descriptor field"),
80*bc36eafdSMike Gerdts     AH_PREDEF ("_BAS",    "Base Address", "Range base address, Resource Descriptor field"),
81*bc36eafdSMike Gerdts     AH_PREDEF ("_BBN",    "BIOS Bus Number", "Returns the PCI bus number returned by the BIOS"),
82*bc36eafdSMike Gerdts     AH_PREDEF ("_BCL",    "Brightness Control Levels", "Returns a list of supported brightness control levels"),
83*bc36eafdSMike Gerdts     AH_PREDEF ("_BCM",    "Brightness Control Method", "Sets the brightness level of the display device"),
84*bc36eafdSMike Gerdts     AH_PREDEF ("_BCT",    "Battery Charge Time", "Returns time remaining to complete charging battery"),
85*bc36eafdSMike Gerdts     AH_PREDEF ("_BDN",    "BIOS Dock Name", "Returns the Dock ID returned by the BIOS"),
86*bc36eafdSMike Gerdts     AH_PREDEF ("_BFS",    "Back From Sleep", "Inform AML of a wake event"),
87*bc36eafdSMike Gerdts     AH_PREDEF ("_BIF",    "Battery Information", "Returns a Control Method Battery information block"),
88*bc36eafdSMike Gerdts     AH_PREDEF ("_BIX",    "Battery Information Extended", "Returns a Control Method Battery extended information block"),
89*bc36eafdSMike Gerdts     AH_PREDEF ("_BLT",    "Battery Level Threshold", "Set battery level threshold preferences"),
90*bc36eafdSMike Gerdts     AH_PREDEF ("_BM_",    "Bus Master", "Resource Descriptor field"),
91*bc36eafdSMike Gerdts     AH_PREDEF ("_BMA",    "Battery Measurement Averaging Interval", "Sets battery measurement averaging interval"),
92*bc36eafdSMike Gerdts     AH_PREDEF ("_BMC",    "Battery Maintenance Control", "Sets battery maintenance and control features"),
93*bc36eafdSMike Gerdts     AH_PREDEF ("_BMD",    "Battery Maintenance Data", "Returns battery maintenance, control, and state data"),
94*bc36eafdSMike Gerdts     AH_PREDEF ("_BMS",    "Battery Measurement Sampling Time", "Sets the battery measurement sampling time"),
95*bc36eafdSMike Gerdts     AH_PREDEF ("_BQC",    "Brightness Query Current", "Returns the current display brightness level"),
96*bc36eafdSMike Gerdts     AH_PREDEF ("_BST",    "Battery Status", "Returns a Control Method Battery status block"),
97*bc36eafdSMike Gerdts     AH_PREDEF ("_BTH",    "Battery Throttle Limit", "Thermal limit for charging and discharging"),
98*bc36eafdSMike Gerdts     AH_PREDEF ("_BTM",    "Battery Time", "Returns the battery runtime"),
99*bc36eafdSMike Gerdts     AH_PREDEF ("_BTP",    "Battery Trip Point", "Sets a Control Method Battery trip point"),
100*bc36eafdSMike Gerdts     AH_PREDEF ("_CBA",    "Configuration Base Address", "Sets the base address for a PCI Express host bridge"),
101*bc36eafdSMike Gerdts     AH_PREDEF ("_CCA",    "Cache Coherency Attribute", "Returns a device's support level for cache coherency"),
102*bc36eafdSMike Gerdts     AH_PREDEF ("_CDM",    "Clock Domain", "Returns a logical processor's clock domain identifier"),
103*bc36eafdSMike Gerdts     AH_PREDEF ("_CID",    "Compatible ID", "Returns a device's Plug and Play Compatible ID list"),
104*bc36eafdSMike Gerdts     AH_PREDEF ("_CLS",    "Class Code", "Returns PCI class code and subclass"),
105*bc36eafdSMike Gerdts     AH_PREDEF ("_CPC",    "Continuous Performance Control", "Returns a list of performance control interfaces"),
106*bc36eafdSMike Gerdts     AH_PREDEF ("_CR3",    "Warm/Standby Temperature", "Temperature for a fast low power state"),
107*bc36eafdSMike Gerdts     AH_PREDEF ("_CRS",    "Current Resource Settings", "Returns the current resource settings for a device"),
108*bc36eafdSMike Gerdts     AH_PREDEF ("_CRT",    "Critical Temperature", "Returns the shutdown critical temperature"),
109*bc36eafdSMike Gerdts     AH_PREDEF ("_CSD",    "C-State Dependencies", "Returns a list of C-state dependencies"),
110*bc36eafdSMike Gerdts     AH_PREDEF ("_CST",    "C-States", "Returns a list of supported C-states"),
111*bc36eafdSMike Gerdts     AH_PREDEF ("_CWS",    "Clear Wake Alarm Status", "Clear the status of wake alarms"),
112*bc36eafdSMike Gerdts     AH_PREDEF ("_DBT",    "Debounce Timeout", "Timeout value, Resource Descriptor field"),
113*bc36eafdSMike Gerdts     AH_PREDEF ("_DCK",    "Dock Present", "Sets docking isolation. Presence indicates device is a docking station"),
114*bc36eafdSMike Gerdts     AH_PREDEF ("_DCS",    "Display Current Status", "Returns status of the display output device"),
115*bc36eafdSMike Gerdts     AH_PREDEF ("_DDC",    "Display Data Current", "Returns the EDID for the display output device"),
116*bc36eafdSMike Gerdts     AH_PREDEF ("_DDN",    "DOS Device Name", "Returns a device logical name"),
117*bc36eafdSMike Gerdts     AH_PREDEF ("_DEC",    "Decode", "Device decoding type, Resource Descriptor field"),
118*bc36eafdSMike Gerdts     AH_PREDEF ("_DEP",    "Dependencies", "Returns a list of operation region dependencies"),
119*bc36eafdSMike Gerdts     AH_PREDEF ("_DGS",    "Display Graphics State", "Return the current state of the output device"),
120*bc36eafdSMike Gerdts     AH_PREDEF ("_DIS",    "Disable Device", "Disables a device"),
121*bc36eafdSMike Gerdts     AH_PREDEF ("_DLM",    "Device Lock Mutex", "Defines mutex for OS/AML sharing"),
122*bc36eafdSMike Gerdts     AH_PREDEF ("_DMA",    "Direct Memory Access", "Returns device current resources for DMA transactions, and resource field"),
123*bc36eafdSMike Gerdts     AH_PREDEF ("_DOD",    "Display Output Devices", "Enumerate all devices attached to the display adapter"),
124*bc36eafdSMike Gerdts     AH_PREDEF ("_DOS",    "Disable Output Switching", "Sets the display output switching mode"),
125*bc36eafdSMike Gerdts     AH_PREDEF ("_DPL",    "Device Selection Polarity", "Polarity of Device Selection signal, Resource Descriptor field"),
126*bc36eafdSMike Gerdts     AH_PREDEF ("_DRS",    "Drive Strength", "Drive Strength setting for GPIO connection, Resource Descriptor field"),
127*bc36eafdSMike Gerdts     AH_PREDEF ("_DSD",    "Device-Specific Data", "Returns a list of device property information"),
128*bc36eafdSMike Gerdts     AH_PREDEF ("_DSM",    "Device-Specific Method", "Executes device-specific functions"),
129*bc36eafdSMike Gerdts     AH_PREDEF ("_DSS",    "Device Set State", "Sets the display device state"),
130*bc36eafdSMike Gerdts     AH_PREDEF ("_DSW",    "Device Sleep Wake", "Sets the sleep and wake transition states for a device"),
131*bc36eafdSMike Gerdts     AH_PREDEF ("_DTI",    "Device Temperature Indication", "Conveys native device temperature to the platform"),
132*bc36eafdSMike Gerdts     AH_PREDEF ("_Exx",    "Edge-Triggered GPE", "Method executed as a result of a general-purpose event"),
133*bc36eafdSMike Gerdts     AH_PREDEF ("_EC_",    "Embedded Controller", "returns EC offset and query information"),
134*bc36eafdSMike Gerdts     AH_PREDEF ("_EDL",    "Eject Device List", "Returns a list of devices that are dependent on a device (docking)"),
135*bc36eafdSMike Gerdts     AH_PREDEF ("_EJD",    "Ejection Dependent Device", "Returns the name of dependent (parent) device (docking)"),
136*bc36eafdSMike Gerdts     AH_PREDEF ("_EJx",    "Eject Device", "Begin or cancel a device ejection request (docking)"),
137*bc36eafdSMike Gerdts     AH_PREDEF ("_END",    "Endianness", "Endian orientation, Resource Descriptor field"),
138*bc36eafdSMike Gerdts     AH_PREDEF ("_EVT",    "Event", "Event method for GPIO events"),
139*bc36eafdSMike Gerdts     AH_PREDEF ("_FDE",    "Floppy Disk Enumerate", "Returns floppy disk configuration information"),
140*bc36eafdSMike Gerdts     AH_PREDEF ("_FDI",    "Floppy Drive Information", "Returns a floppy drive information block"),
141*bc36eafdSMike Gerdts     AH_PREDEF ("_FDM",    "Floppy Drive Mode", "Sets a floppy drive speed"),
142*bc36eafdSMike Gerdts     AH_PREDEF ("_FIF",    "Fan Information", "Returns fan device information"),
143*bc36eafdSMike Gerdts     AH_PREDEF ("_FIT",    "Firmware Interface Table", "Returns a list of NFIT structures"),
144*bc36eafdSMike Gerdts     AH_PREDEF ("_FIX",    "Fixed Register Resource Provider", "Returns a list of devices that implement FADT register blocks"),
145*bc36eafdSMike Gerdts     AH_PREDEF ("_FLC",    "Flow Control", "Flow control, Resource Descriptor field"),
146*bc36eafdSMike Gerdts     AH_PREDEF ("_FPS",    "Fan Performance States", "Returns a list of supported fan performance states"),
147*bc36eafdSMike Gerdts     AH_PREDEF ("_FSL",    "Fan Set Level", "Control method that sets the fan device's speed level (performance state)"),
148*bc36eafdSMike Gerdts     AH_PREDEF ("_FST",    "Fan Status", "Returns current status information for a fan device"),
149*bc36eafdSMike Gerdts     AH_PREDEF ("_GAI",    "Get Averaging Interval", "Returns the power meter averaging interval"),
150*bc36eafdSMike Gerdts     AH_PREDEF ("_GCP",    "Get Capabilities", "Get device time capabilities"),
151*bc36eafdSMike Gerdts     AH_PREDEF ("_GHL",    "Get Hardware Limit", "Returns the hardware limit enforced by the power meter"),
152*bc36eafdSMike Gerdts     AH_PREDEF ("_GL_",    "Global Lock", "OS-defined Global Lock mutex object"),
153*bc36eafdSMike Gerdts     AH_PREDEF ("_GLK",    "Get Global Lock Requirement", "Returns a device's Global Lock requirement for device access"),
154*bc36eafdSMike Gerdts     AH_PREDEF ("_GPD",    "Get Post Data", "Returns the value of the VGA device that will be posted at boot"),
155*bc36eafdSMike Gerdts     AH_PREDEF ("_GPE",    "General Purpose Events", "Predefined scope (\\_GPE) or SCI number for EC"),
156*bc36eafdSMike Gerdts     AH_PREDEF ("_GRA",    "Granularity", "Address space granularity, Resource Descriptor field"),
157*bc36eafdSMike Gerdts     AH_PREDEF ("_GRT",    "Get Real Time", "Returns current time-of-day from a time/alarm device"),
158*bc36eafdSMike Gerdts     AH_PREDEF ("_GSB",    "Global System Interrupt Base", "Returns the GSB for a I/O APIC device"),
159*bc36eafdSMike Gerdts     AH_PREDEF ("_GTF",    "Get Task File", "Returns a list of ATA commands to restore a drive to default state"),
160*bc36eafdSMike Gerdts     AH_PREDEF ("_GTM",    "Get Timing Mode", "Returns a list of IDE controller timing information"),
161*bc36eafdSMike Gerdts     AH_PREDEF ("_GTS",    "Going To Sleep", "Inform AML of pending sleep"),
162*bc36eafdSMike Gerdts     AH_PREDEF ("_GWS",    "Get Wake Status", "Return status of wake alarms"),
163*bc36eafdSMike Gerdts     AH_PREDEF ("_HE_",    "High-Edge", "Interrupt triggering, Resource Descriptor field"),
164*bc36eafdSMike Gerdts     AH_PREDEF ("_HID",    "Hardware ID", "Returns a device's Plug and Play Hardware ID"),
165*bc36eafdSMike Gerdts     AH_PREDEF ("_HOT",    "Hot Temperature", "Returns the critical temperature for sleep (entry to S4)"),
166*bc36eafdSMike Gerdts     AH_PREDEF ("_HPP",    "Hot Plug Parameters", "Returns a list of hot-plug information for a PCI device"),
167*bc36eafdSMike Gerdts     AH_PREDEF ("_HPX",    "Hot Plug Parameter Extensions", "Returns a list of hot-plug information for a PCI device. Supersedes _HPP"),
168*bc36eafdSMike Gerdts     AH_PREDEF ("_HRV",    "Hardware Revision", "Returns a hardware revision value"),
169*bc36eafdSMike Gerdts     AH_PREDEF ("_IFT",    "IPMI Interface Type", "See the Intelligent Platform Management Interface Specification"),
170*bc36eafdSMike Gerdts     AH_PREDEF ("_INI",    "Initialize", "Performs device specific initialization"),
171*bc36eafdSMike Gerdts     AH_PREDEF ("_INT",    "Interrupts", "Interrupt mask bits, Resource Descriptor field"),
172*bc36eafdSMike Gerdts     AH_PREDEF ("_IOR",    "I/O Restriction", "Restriction type, Resource Descriptor field"),
173*bc36eafdSMike Gerdts     AH_PREDEF ("_IRC",    "Inrush Current", "Presence indicates that a device has a significant inrush current draw"),
174*bc36eafdSMike Gerdts     AH_PREDEF ("_Lxx",    "Level-Triggered GPE", "Control method executed as a result of a general-purpose event"),
175*bc36eafdSMike Gerdts     AH_PREDEF ("_LCK",    "Lock Device", "Locks or unlocks a device (docking)"),
176*bc36eafdSMike Gerdts     AH_PREDEF ("_LEN",    "Length", "Range length, Resource Descriptor field"),
177*bc36eafdSMike Gerdts     AH_PREDEF ("_LID",    "Lid Status", "Returns the open/closed status of the lid on a mobile system"),
178*bc36eafdSMike Gerdts     AH_PREDEF ("_LIN",    "Lines In Use", "Handshake lines, Resource Descriptor field"),
179*bc36eafdSMike Gerdts     AH_PREDEF ("_LL_",    "Low Level", "Interrupt polarity, Resource Descriptor field"),
180*bc36eafdSMike Gerdts     AH_PREDEF ("_LPD",    "Low Power Dependencies", "Returns a list of dependencies for low power idle entry"),
181*bc36eafdSMike Gerdts     AH_PREDEF ("_LPI",    "Low Power Idle States", "Returns a list of supported low power idle states"),
182*bc36eafdSMike Gerdts     AH_PREDEF ("_MAF",    "Maximum Address Fixed", "Resource Descriptor field"),
183*bc36eafdSMike Gerdts     AH_PREDEF ("_MAT",    "Multiple APIC Table Entry", "Returns a list of MADT APIC structure entries"),
184*bc36eafdSMike Gerdts     AH_PREDEF ("_MAX",    "Maximum Base Address", "Resource Descriptor field"),
185*bc36eafdSMike Gerdts     AH_PREDEF ("_MBM",    "Memory Bandwidth Monitoring Data", "Returns bandwidth monitoring data for a memory device"),
186*bc36eafdSMike Gerdts     AH_PREDEF ("_MEM",    "Memory Attributes", "Resource Descriptor field"),
187*bc36eafdSMike Gerdts     AH_PREDEF ("_MIF",    "Minimum Address Fixed", "Resource Descriptor field"),
188*bc36eafdSMike Gerdts     AH_PREDEF ("_MIN",    "Minimum Base Address", "Resource Descriptor field"),
189*bc36eafdSMike Gerdts     AH_PREDEF ("_MLS",    "Multiple Language String", "Returns a device description in multiple languages"),
190*bc36eafdSMike Gerdts     AH_PREDEF ("_MOD",    "Mode", "Interrupt mode, Resource Descriptor field"),
191*bc36eafdSMike Gerdts     AH_PREDEF ("_MSG",    "Message", "Sets the system message waiting status indicator"),
192*bc36eafdSMike Gerdts     AH_PREDEF ("_MSM",    "Memory Set Monitoring", "Sets bandwidth monitoring parameters for a memory device"),
193*bc36eafdSMike Gerdts     AH_PREDEF ("_MTL",    "Minimum Throttle Limit", "Returns the minimum throttle limit for a thermal zone"),
194*bc36eafdSMike Gerdts     AH_PREDEF ("_MTP",    "Memory Type", "Resource Descriptor field"),
195*bc36eafdSMike Gerdts     AH_PREDEF ("_NTT",    "Notification Temperature Threshold", "Returns a threshold for device temperature change that requires platform notification"),
196*bc36eafdSMike Gerdts     AH_PREDEF ("_OFF",    "Power Off", "Sets a power resource to the off state"),
197*bc36eafdSMike Gerdts     AH_PREDEF ("_ON_",    "Power On", "Sets a power resource to the on state"),
198*bc36eafdSMike Gerdts     AH_PREDEF ("_OS_",    "Operating System", "Returns a string that identifies the operating system"),
199*bc36eafdSMike Gerdts     AH_PREDEF ("_OSC",    "Operating System Capabilities", "Inform AML of host features and capabilities"),
200*bc36eafdSMike Gerdts     AH_PREDEF ("_OSI",    "Operating System Interfaces", "Returns supported interfaces, behaviors, and features"),
201*bc36eafdSMike Gerdts     AH_PREDEF ("_OST",    "OSPM Status Indication", "Inform AML of event processing status"),
202*bc36eafdSMike Gerdts     AH_PREDEF ("_PAI",    "Power Averaging Interval", "Sets the averaging interval for a power meter"),
203*bc36eafdSMike Gerdts     AH_PREDEF ("_PAR",    "Parity", "Parity bits, Resource Descriptor field"),
204*bc36eafdSMike Gerdts     AH_PREDEF ("_PCL",    "Power Consumer List", "Returns a list of devices powered by a power source"),
205*bc36eafdSMike Gerdts     AH_PREDEF ("_PCT",    "Performance Control", "Returns processor performance control and status registers"),
206*bc36eafdSMike Gerdts     AH_PREDEF ("_PDC",    "Processor Driver Capabilities", "Inform AML of processor driver capabilities"),
207*bc36eafdSMike Gerdts     AH_PREDEF ("_PDL",    "P-state Depth Limit", "Returns the lowest available performance P-state"),
208*bc36eafdSMike Gerdts     AH_PREDEF ("_PHA",    "Clock Phase", "Clock phase, Resource Descriptor field"),
209*bc36eafdSMike Gerdts     AH_PREDEF ("_PIC",    "Interrupt Model", "Inform AML of the interrupt model in use"),
210*bc36eafdSMike Gerdts     AH_PREDEF ("_PIF",    "Power Source Information", "Returns a Power Source information block"),
211*bc36eafdSMike Gerdts     AH_PREDEF ("_PIN",    "Pin List", "Pin list, Resource Descriptor field"),
212*bc36eafdSMike Gerdts     AH_PREDEF ("_PLD",    "Physical Location of Device", "Returns a device's physical location information"),
213*bc36eafdSMike Gerdts     AH_PREDEF ("_PMC",    "Power Meter Capabilities", "Returns a list of Power Meter capabilities info"),
214*bc36eafdSMike Gerdts     AH_PREDEF ("_PMD",    "Power Metered Devices", "Returns a list of devices that are measured by the power meter device"),
215*bc36eafdSMike Gerdts     AH_PREDEF ("_PMM",    "Power Meter Measurement", "Returns the current value of the Power Meter"),
216*bc36eafdSMike Gerdts     AH_PREDEF ("_POL",    "Polarity", "Interrupt polarity, Resource Descriptor field"),
217*bc36eafdSMike Gerdts     AH_PREDEF ("_PPC",    "Performance Present Capabilities", "Returns a list of the performance states currently supported by the platform"),
218*bc36eafdSMike Gerdts     AH_PREDEF ("_PPE",    "Polling for Platform Error", "Returns the polling interval to retrieve Corrected Platform Error information"),
219*bc36eafdSMike Gerdts     AH_PREDEF ("_PPI",    "Pin Configuration", "Resource Descriptor field"),
220*bc36eafdSMike Gerdts     AH_PREDEF ("_PR",     "Processor", "Predefined scope for processor objects"),
221*bc36eafdSMike Gerdts     AH_PREDEF ("_PR0",    "Power Resources for D0", "Returns a list of dependent power resources to enter state D0 (fully on)"),
222*bc36eafdSMike Gerdts     AH_PREDEF ("_PR1",    "Power Resources for D1", "Returns a list of dependent power resources to enter state D1"),
223*bc36eafdSMike Gerdts     AH_PREDEF ("_PR2",    "Power Resources for D2", "Returns a list of dependent power resources to enter state D2"),
224*bc36eafdSMike Gerdts     AH_PREDEF ("_PR3",    "Power Resources for D3hot", "Returns a list of dependent power resources to enter state D3hot"),
225*bc36eafdSMike Gerdts     AH_PREDEF ("_PRE",    "Power Resources for Enumeration", "Returns a list of dependent power resources to enumerate devices on a bus"),
226*bc36eafdSMike Gerdts     AH_PREDEF ("_PRL",    "Power Source Redundancy List", "Returns a list of power source devices in the same redundancy grouping"),
227*bc36eafdSMike Gerdts     AH_PREDEF ("_PRR",    "Power Resource for Reset", "Execute a reset on a device"),
228*bc36eafdSMike Gerdts     AH_PREDEF ("_PRS",    "Possible Resource Settings", "Returns a list of a device's possible resource settings"),
229*bc36eafdSMike Gerdts     AH_PREDEF ("_PRT",    "PCI Routing Table", "Returns a list of PCI interrupt mappings"),
230*bc36eafdSMike Gerdts     AH_PREDEF ("_PRW",    "Power Resources for Wake", "Returns a list of dependent power resources for waking"),
231*bc36eafdSMike Gerdts     AH_PREDEF ("_PS0",    "Power State 0", "Sets a device's power state to D0 (device fully on)"),
232*bc36eafdSMike Gerdts     AH_PREDEF ("_PS1",    "Power State 1", "Sets a device's power state to D1"),
233*bc36eafdSMike Gerdts     AH_PREDEF ("_PS2",    "Power State 2", "Sets a device's power state to D2"),
234*bc36eafdSMike Gerdts     AH_PREDEF ("_PS3",    "Power State 3", "Sets a device's power state to D3 (device off)"),
235*bc36eafdSMike Gerdts     AH_PREDEF ("_PSC",    "Power State Current", "Returns a device's current power state"),
236*bc36eafdSMike Gerdts     AH_PREDEF ("_PSD",    "Power State Dependencies", "Returns processor P-State dependencies"),
237*bc36eafdSMike Gerdts     AH_PREDEF ("_PSE",    "Power State for Enumeration", "Put a bus into enumeration power mode"),
238*bc36eafdSMike Gerdts     AH_PREDEF ("_PSL",    "Passive List", "Returns a list of passive cooling device objects"),
239*bc36eafdSMike Gerdts     AH_PREDEF ("_PSR",    "Power Source", "Returns the power source device currently in use"),
240*bc36eafdSMike Gerdts     AH_PREDEF ("_PSS",    "Performance Supported States", "Returns a list of supported processor performance states"),
241*bc36eafdSMike Gerdts     AH_PREDEF ("_PSV",    "Passive Temperature", "Returns the passive trip point temperature"),
242*bc36eafdSMike Gerdts     AH_PREDEF ("_PSW",    "Power State Wake", "Sets a device's wake function"),
243*bc36eafdSMike Gerdts     AH_PREDEF ("_PTC",    "Processor Throttling Control", "Returns throttling control and status registers"),
244*bc36eafdSMike Gerdts     AH_PREDEF ("_PTP",    "Power Trip Points", "Sets trip points for the Power Meter device"),
245*bc36eafdSMike Gerdts     AH_PREDEF ("_PTS",    "Prepare To Sleep", "Inform the platform of an impending sleep transition"),
246*bc36eafdSMike Gerdts     AH_PREDEF ("_PUR",    "Processor Utilization Request", "Returns the number of processors that the platform would like to idle"),
247*bc36eafdSMike Gerdts     AH_PREDEF ("_PXM",    "Device Proximity", "Returns a device's proximity domain identifier"),
248*bc36eafdSMike Gerdts     AH_PREDEF ("_Qxx",    "EC Query", "Embedded Controller query and SMBus Alarm control method"),
249*bc36eafdSMike Gerdts     AH_PREDEF ("_RBO",    "Register Bit Offset", "Resource Descriptor field"),
250*bc36eafdSMike Gerdts     AH_PREDEF ("_RBW",    "Register Bit Width", "Resource Descriptor field"),
251*bc36eafdSMike Gerdts     AH_PREDEF ("_RDI",    "Resource Dependencies for Idle", "Returns a list of dependencies for idle states"),
252*bc36eafdSMike Gerdts     AH_PREDEF ("_REG",    "Region Availability", "Inform AML code of an operation region availability change"),
253*bc36eafdSMike Gerdts     AH_PREDEF ("_REV",    "Supported Integer Width", "Returns the supported integer width (<= 1: 32 bits only, >=2: both 32 and 64 bits"),
254*bc36eafdSMike Gerdts     AH_PREDEF ("_RMV",    "Removal Status", "Returns a device's removal ability status (docking)"),
255*bc36eafdSMike Gerdts     AH_PREDEF ("_RNG",    "Range", "Memory range type, Resource Descriptor field"),
256*bc36eafdSMike Gerdts     AH_PREDEF ("_RST",    "Device Reset", "Executes a reset on a device"),
257*bc36eafdSMike Gerdts     AH_PREDEF ("_ROM",    "Read-Only Memory", "Returns a copy of the ROM data for a display device"),
258*bc36eafdSMike Gerdts     AH_PREDEF ("_RT_",    "Resource Type", "Resource Descriptor field"),
259*bc36eafdSMike Gerdts     AH_PREDEF ("_RTV",    "Relative Temperature Values", "Returns temperature value information"),
260*bc36eafdSMike Gerdts     AH_PREDEF ("_RW_",    "Read-Write Status", "Resource Descriptor field"),
261*bc36eafdSMike Gerdts     AH_PREDEF ("_RXL",    "Receive Buffer Size", "Serial channel buffer, Resource Descriptor field"),
262*bc36eafdSMike Gerdts     AH_PREDEF ("_S0_",    "S0 System State", "Returns values to enter the system into the S0 state"),
263*bc36eafdSMike Gerdts     AH_PREDEF ("_S1_",    "S1 System State", "Returns values to enter the system into the S1 state"),
264*bc36eafdSMike Gerdts     AH_PREDEF ("_S2_",    "S2 System State", "Returns values to enter the system into the S2 state"),
265*bc36eafdSMike Gerdts     AH_PREDEF ("_S3_",    "S3 System State", "Returns values to enter the system into the S3 state"),
266*bc36eafdSMike Gerdts     AH_PREDEF ("_S4_",    "S4 System State", "Returns values to enter the system into the S4 state"),
267*bc36eafdSMike Gerdts     AH_PREDEF ("_S5_",    "S5 System State", "Returns values to enter the system into the S5 state"),
268*bc36eafdSMike Gerdts     AH_PREDEF ("_S1D",    "S1 Device State", "Returns the highest D-state supported by a device when in the S1 state"),
269*bc36eafdSMike Gerdts     AH_PREDEF ("_S2D",    "S2 Device State", "Returns the highest D-state supported by a device when in the S2 state"),
270*bc36eafdSMike Gerdts     AH_PREDEF ("_S3D",    "S3 Device State", "Returns the highest D-state supported by a device when in the S3 state"),
271*bc36eafdSMike Gerdts     AH_PREDEF ("_S4D",    "S4 Device State", "Returns the highest D-state supported by a device when in the S4 state"),
272*bc36eafdSMike Gerdts     AH_PREDEF ("_S0W",    "S0 Device Wake State", "Returns the lowest D-state that the device can wake itself from S0"),
273*bc36eafdSMike Gerdts     AH_PREDEF ("_S1W",    "S1 Device Wake State", "Returns the lowest D-state for this device that can wake the system from S1"),
274*bc36eafdSMike Gerdts     AH_PREDEF ("_S2W",    "S2 Device Wake State", "Returns the lowest D-state for this device that can wake the system from S2"),
275*bc36eafdSMike Gerdts     AH_PREDEF ("_S3W",    "S3 Device Wake State", "Returns the lowest D-state for this device that can wake the system from S3"),
276*bc36eafdSMike Gerdts     AH_PREDEF ("_S4W",    "S4 Device Wake State", "Returns the lowest D-state for this device that can wake the system from S4"),
277*bc36eafdSMike Gerdts     AH_PREDEF ("_SB_",    "System Bus", "Predefined scope for device and bus objects"),
278*bc36eafdSMike Gerdts     AH_PREDEF ("_SBS",    "Smart Battery Subsystem", "Returns the subsystem configuration"),
279*bc36eafdSMike Gerdts     AH_PREDEF ("_SCP",    "Set Cooling Policy", "Sets the cooling policy (active or passive)"),
280*bc36eafdSMike Gerdts     AH_PREDEF ("_SDD",    "Set Device Data", "Sets data for a SATA device"),
281*bc36eafdSMike Gerdts     AH_PREDEF ("_SEG",    "PCI Segment", "Returns a device's PCI Segment Group number"),
282*bc36eafdSMike Gerdts     AH_PREDEF ("_SHL",    "Set Hardware Limit", "Sets the hardware limit enforced by the Power Meter"),
283*bc36eafdSMike Gerdts     AH_PREDEF ("_SHR",    "Sharable", "Interrupt share status, Resource Descriptor field"),
284*bc36eafdSMike Gerdts     AH_PREDEF ("_SI_",    "System Indicators", "Predefined scope"),
285*bc36eafdSMike Gerdts     AH_PREDEF ("_SIZ",    "Size", "DMA transfer size, Resource Descriptor field"),
286*bc36eafdSMike Gerdts     AH_PREDEF ("_SLI",    "System Locality Information", "Returns a list of NUMA system localities"),
287*bc36eafdSMike Gerdts     AH_PREDEF ("_SLV",    "Slave Mode", "Mode setting, Resource Descriptor field"),
288*bc36eafdSMike Gerdts     AH_PREDEF ("_SPD",    "Set Post Device", "Sets which video device will be posted at boot"),
289*bc36eafdSMike Gerdts     AH_PREDEF ("_SPE",    "Speed", "Connection speed, Resource Descriptor field"),
290*bc36eafdSMike Gerdts     AH_PREDEF ("_SRS",    "Set Resource Settings", "Sets a device's resource allocation"),
291*bc36eafdSMike Gerdts     AH_PREDEF ("_SRT",    "Set Real Time", "Sets the current time for a time/alarm device"),
292*bc36eafdSMike Gerdts     AH_PREDEF ("_SRV",    "IPMI Spec Revision", "See the Intelligent Platform Management Interface Specification"),
293*bc36eafdSMike Gerdts     AH_PREDEF ("_SST",    "System Status", "Sets the system status indicator"),
294*bc36eafdSMike Gerdts     AH_PREDEF ("_STA",    "Status", "Returns the current status of a Device or Power Resource"),
295*bc36eafdSMike Gerdts     AH_PREDEF ("_STB",    "Stop Bits", "Serial channel stop bits, Resource Descriptor field"),
296*bc36eafdSMike Gerdts     AH_PREDEF ("_STM",    "Set Timing Mode", "Sets an IDE controller transfer timings"),
297*bc36eafdSMike Gerdts     AH_PREDEF ("_STP",    "Set Expired Timer Wake Policy", "Sets expired timer policies of the wake alarm device"),
298*bc36eafdSMike Gerdts     AH_PREDEF ("_STR",    "Description String", "Returns a device's description string"),
299*bc36eafdSMike Gerdts     AH_PREDEF ("_STV",    "Set Timer Value", "Set timer values of the wake alarm device"),
300*bc36eafdSMike Gerdts     AH_PREDEF ("_SUB",    "Subsystem ID", "Returns the subsystem ID for a device"),
301*bc36eafdSMike Gerdts     AH_PREDEF ("_SUN",    "Slot User Number", "Returns the slot unique ID number"),
302*bc36eafdSMike Gerdts     AH_PREDEF ("_SWS",    "System Wake Source", "Returns the source event that caused the system to wake"),
303*bc36eafdSMike Gerdts     AH_PREDEF ("_T_x",    "Emitted by ASL Compiler", "Reserved for use by ASL compilers"),
304*bc36eafdSMike Gerdts     AH_PREDEF ("_TC1",    "Thermal Constant 1", "Returns TC1 for the passive cooling formula"),
305*bc36eafdSMike Gerdts     AH_PREDEF ("_TC2",    "Thermal Constant 2", "Returns TC2 for the passive cooling formula"),
306*bc36eafdSMike Gerdts     AH_PREDEF ("_TDL",    "T-State Depth Limit", "Returns the _TSS entry number of the lowest power throttling state"),
307*bc36eafdSMike Gerdts     AH_PREDEF ("_TFP",    "Thermal Fast Sampling Period", "Returns the sampling period for passive cooling"),
308*bc36eafdSMike Gerdts     AH_PREDEF ("_TIP",    "Expired Timer Wake Policy", "Returns timer policies of the wake alarm device"),
309*bc36eafdSMike Gerdts     AH_PREDEF ("_TIV",    "Timer Values", "Returns remaining time of the wake alarm device"),
310*bc36eafdSMike Gerdts     AH_PREDEF ("_TMP",    "Temperature", "Returns a thermal zone's current temperature"),
311*bc36eafdSMike Gerdts     AH_PREDEF ("_TPC",    "Throttling Present Capabilities", "Returns the current number of supported throttling states"),
312*bc36eafdSMike Gerdts     AH_PREDEF ("_TPT",    "Trip Point Temperature", "Inform AML that a device's embedded temperature sensor has crossed a temperature trip point"),
313*bc36eafdSMike Gerdts     AH_PREDEF ("_TRA",    "Translation", "Address translation offset, Resource Descriptor field"),
314*bc36eafdSMike Gerdts     AH_PREDEF ("_TRS",    "Translation Sparse", "Sparse/dense flag, Resource Descriptor field"),
315*bc36eafdSMike Gerdts     AH_PREDEF ("_TRT",    "Thermal Relationship Table", "Returns thermal relationships between platform devices"),
316*bc36eafdSMike Gerdts     AH_PREDEF ("_TSD",    "Throttling State Dependencies", "Returns a list of T-state dependencies"),
317*bc36eafdSMike Gerdts     AH_PREDEF ("_TSF",    "Type-Specific Flags", "Resource Descriptor field"),
318*bc36eafdSMike Gerdts     AH_PREDEF ("_TSN",    "Thermal Sensor Device", "Returns a reference to a thermal sensor"),
319*bc36eafdSMike Gerdts     AH_PREDEF ("_TSP",    "Thermal Sampling Period", "Returns the thermal sampling period for passive cooling"),
320*bc36eafdSMike Gerdts     AH_PREDEF ("_TSS",    "Throttling Supported States", "Returns supported throttling state information"),
321*bc36eafdSMike Gerdts     AH_PREDEF ("_TST",    "Temperature Sensor Threshold", "Returns the minimum separation for a device's temperature trip points"),
322*bc36eafdSMike Gerdts     AH_PREDEF ("_TTP",    "Translation Type", "Translation/static flag, Resource Descriptor field"),
323*bc36eafdSMike Gerdts     AH_PREDEF ("_TTS",    "Transition To State", "Inform AML of an S-state transition"),
324*bc36eafdSMike Gerdts     AH_PREDEF ("_TXL",    "Transmit Buffer Size", "Serial Channel buffer, Resource Descriptor field"),
325*bc36eafdSMike Gerdts     AH_PREDEF ("_TYP",    "Type", "DMA channel type (speed), Resource Descriptor field"),
326*bc36eafdSMike Gerdts     AH_PREDEF ("_TZ_",    "Thermal Zone", "Predefined scope: ACPI 1.0"),
327*bc36eafdSMike Gerdts     AH_PREDEF ("_TZD",    "Thermal Zone Devices", "Returns a list of device names associated with a Thermal Zone"),
328*bc36eafdSMike Gerdts     AH_PREDEF ("_TZM",    "Thermal Zone Member", "Returns a reference to the thermal zone of which a device is a member"),
329*bc36eafdSMike Gerdts     AH_PREDEF ("_TZP",    "Thermal Zone Polling", "Returns a Thermal zone's polling frequency"),
330*bc36eafdSMike Gerdts     AH_PREDEF ("_UID",    "Unique ID", "Return a device's unique persistent ID"),
331*bc36eafdSMike Gerdts     AH_PREDEF ("_UPC",    "USB Port Capabilities", "Returns a list of USB port capabilities"),
332*bc36eafdSMike Gerdts     AH_PREDEF ("_UPD",    "User Presence Detect", "Returns user detection information"),
333*bc36eafdSMike Gerdts     AH_PREDEF ("_UPP",    "User Presence Polling", "Returns the recommended user presence polling interval"),
334*bc36eafdSMike Gerdts     AH_PREDEF ("_VEN",    "Vendor Data", "Resource Descriptor field"),
335*bc36eafdSMike Gerdts     AH_PREDEF ("_VPO",    "Video Post Options", "Returns the implemented video post options"),
336*bc36eafdSMike Gerdts     AH_PREDEF ("_Wxx",    "Wake Event", "Method executed as a result of a wake event"),
337*bc36eafdSMike Gerdts     AH_PREDEF ("_WAK",    "Wake", "Inform AML that the system has just awakened"),
338*bc36eafdSMike Gerdts     AH_PREDEF ("_WPC",    "Wireless Power Calibration", "Calibrate power and notify wireless device"),
339*bc36eafdSMike Gerdts     AH_PREDEF ("_WPP",    "Wireless Power Polling", "Get recommended polling interval"),
340*bc36eafdSMike Gerdts     AH_PREDEF (NULL,      NULL, NULL)
341*bc36eafdSMike Gerdts };
342*bc36eafdSMike Gerdts 
343*bc36eafdSMike Gerdts 
344*bc36eafdSMike Gerdts /*******************************************************************************
345*bc36eafdSMike Gerdts  *
346*bc36eafdSMike Gerdts  * FUNCTION:    AcpiAhMatchPredefinedName
347*bc36eafdSMike Gerdts  *
348*bc36eafdSMike Gerdts  * PARAMETERS:  Nameseg                 - Predefined name string
349*bc36eafdSMike Gerdts  *
350*bc36eafdSMike Gerdts  * RETURN:      ID info struct. NULL if Nameseg not found
351*bc36eafdSMike Gerdts  *
352*bc36eafdSMike Gerdts  * DESCRIPTION: Lookup a predefined name.
353*bc36eafdSMike Gerdts  *
354*bc36eafdSMike Gerdts  ******************************************************************************/
355*bc36eafdSMike Gerdts 
356*bc36eafdSMike Gerdts const AH_PREDEFINED_NAME *
357*bc36eafdSMike Gerdts AcpiAhMatchPredefinedName (
358*bc36eafdSMike Gerdts     char                        *Nameseg)
359*bc36eafdSMike Gerdts {
360*bc36eafdSMike Gerdts     const AH_PREDEFINED_NAME    *Info;
361*bc36eafdSMike Gerdts 
362*bc36eafdSMike Gerdts 
363*bc36eafdSMike Gerdts     for (Info = AslPredefinedInfo; Info->Name; Info++)
364*bc36eafdSMike Gerdts     {
365*bc36eafdSMike Gerdts         if (ACPI_COMPARE_NAME (Nameseg, Info->Name))
366*bc36eafdSMike Gerdts         {
367*bc36eafdSMike Gerdts             return (Info);
368*bc36eafdSMike Gerdts         }
369*bc36eafdSMike Gerdts     }
370*bc36eafdSMike Gerdts 
371*bc36eafdSMike Gerdts     return (NULL);
372*bc36eafdSMike Gerdts }
373