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