Path: blob/main/sys/contrib/dev/acpica/common/ahpredef.c
48375 views
/******************************************************************************1*2* Module Name: ahpredef - Table of all known ACPI predefined names3*4*****************************************************************************/56/******************************************************************************7*8* 1. Copyright Notice9*10* Some or all of this work - Copyright (c) 1999 - 2025, Intel Corp.11* All rights reserved.12*13* 2. License14*15* 2.1. This is your license from Intel Corp. under its intellectual property16* rights. You may have additional license terms from the party that provided17* you this software, covering your right to use that party's intellectual18* property rights.19*20* 2.2. Intel grants, free of charge, to any person ("Licensee") obtaining a21* copy of the source code appearing in this file ("Covered Code") an22* irrevocable, perpetual, worldwide license under Intel's copyrights in the23* base code distributed originally by Intel ("Original Intel Code") to copy,24* make derivatives, distribute, use and display any portion of the Covered25* Code in any form, with the right to sublicense such rights; and26*27* 2.3. Intel grants Licensee a non-exclusive and non-transferable patent28* license (with the right to sublicense), under only those claims of Intel29* patents that are infringed by the Original Intel Code, to make, use, sell,30* offer to sell, and import the Covered Code and derivative works thereof31* solely to the minimum extent necessary to exercise the above copyright32* license, and in no event shall the patent license extend to any additions33* to or modifications of the Original Intel Code. No other license or right34* is granted directly or by implication, estoppel or otherwise;35*36* The above copyright and patent license is granted only if the following37* conditions are met:38*39* 3. Conditions40*41* 3.1. Redistribution of Source with Rights to Further Distribute Source.42* Redistribution of source code of any substantial portion of the Covered43* Code or modification with rights to further distribute source must include44* the above Copyright Notice, the above License, this list of Conditions,45* and the following Disclaimer and Export Compliance provision. In addition,46* Licensee must cause all Covered Code to which Licensee contributes to47* contain a file documenting the changes Licensee made to create that Covered48* Code and the date of any change. Licensee must include in that file the49* documentation of any changes made by any predecessor Licensee. Licensee50* must include a prominent statement that the modification is derived,51* directly or indirectly, from Original Intel Code.52*53* 3.2. Redistribution of Source with no Rights to Further Distribute Source.54* Redistribution of source code of any substantial portion of the Covered55* Code or modification without rights to further distribute source must56* include the following Disclaimer and Export Compliance provision in the57* documentation and/or other materials provided with distribution. In58* addition, Licensee may not authorize further sublicense of source of any59* portion of the Covered Code, and must include terms to the effect that the60* license from Licensee to its licensee is limited to the intellectual61* property embodied in the software Licensee provides to its licensee, and62* not to intellectual property embodied in modifications its licensee may63* make.64*65* 3.3. Redistribution of Executable. Redistribution in executable form of any66* substantial portion of the Covered Code or modification must reproduce the67* above Copyright Notice, and the following Disclaimer and Export Compliance68* provision in the documentation and/or other materials provided with the69* distribution.70*71* 3.4. Intel retains all right, title, and interest in and to the Original72* Intel Code.73*74* 3.5. Neither the name Intel nor any other trademark owned or controlled by75* Intel shall be used in advertising or otherwise to promote the sale, use or76* other dealings in products derived from or relating to the Covered Code77* without prior written authorization from Intel.78*79* 4. Disclaimer and Export Compliance80*81* 4.1. INTEL MAKES NO WARRANTY OF ANY KIND REGARDING ANY SOFTWARE PROVIDED82* HERE. ANY SOFTWARE ORIGINATING FROM INTEL OR DERIVED FROM INTEL SOFTWARE83* IS PROVIDED "AS IS," AND INTEL WILL NOT PROVIDE ANY SUPPORT, ASSISTANCE,84* INSTALLATION, TRAINING OR OTHER SERVICES. INTEL WILL NOT PROVIDE ANY85* UPDATES, ENHANCEMENTS OR EXTENSIONS. INTEL SPECIFICALLY DISCLAIMS ANY86* IMPLIED WARRANTIES OF MERCHANTABILITY, NONINFRINGEMENT AND FITNESS FOR A87* PARTICULAR PURPOSE.88*89* 4.2. IN NO EVENT SHALL INTEL HAVE ANY LIABILITY TO LICENSEE, ITS LICENSEES90* OR ANY OTHER THIRD PARTY, FOR ANY LOST PROFITS, LOST DATA, LOSS OF USE OR91* COSTS OF PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES, OR FOR ANY INDIRECT,92* SPECIAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THIS AGREEMENT, UNDER ANY93* CAUSE OF ACTION OR THEORY OF LIABILITY, AND IRRESPECTIVE OF WHETHER INTEL94* HAS ADVANCE NOTICE OF THE POSSIBILITY OF SUCH DAMAGES. THESE LIMITATIONS95* SHALL APPLY NOTWITHSTANDING THE FAILURE OF THE ESSENTIAL PURPOSE OF ANY96* LIMITED REMEDY.97*98* 4.3. Licensee shall not export, either directly or indirectly, any of this99* software or system incorporating such software without first obtaining any100* required license or other approval from the U. S. Department of Commerce or101* any other agency or department of the United States Government. In the102* event Licensee exports any such software from the United States or103* re-exports any such software from a foreign destination, Licensee shall104* ensure that the distribution and export/re-export of the software is in105* compliance with all laws, regulations, orders, or other restrictions of the106* U.S. Export Administration Regulations. Licensee agrees that neither it nor107* any of its subsidiaries will export/re-export any technical data, process,108* software, or service, directly or indirectly, to any country for which the109* United States government or any agency thereof requires an export license,110* other governmental approval, or letter of assurance, without first obtaining111* such license, approval or letter.112*113*****************************************************************************114*115* Alternatively, you may choose to be licensed under the terms of the116* following license:117*118* Redistribution and use in source and binary forms, with or without119* modification, are permitted provided that the following conditions120* are met:121* 1. Redistributions of source code must retain the above copyright122* notice, this list of conditions, and the following disclaimer,123* without modification.124* 2. Redistributions in binary form must reproduce at minimum a disclaimer125* substantially similar to the "NO WARRANTY" disclaimer below126* ("Disclaimer") and any redistribution must be conditioned upon127* including a substantially similar Disclaimer requirement for further128* binary redistribution.129* 3. Neither the names of the above-listed copyright holders nor the names130* of any contributors may be used to endorse or promote products derived131* from this software without specific prior written permission.132*133* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS134* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT135* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR136* A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT137* OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,138* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT139* LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,140* DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY141* THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT142* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE143* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.144*145* Alternatively, you may choose to be licensed under the terms of the146* GNU General Public License ("GPL") version 2 as published by the Free147* Software Foundation.148*149*****************************************************************************/150151#include <contrib/dev/acpica/include/acpi.h>152#include <contrib/dev/acpica/include/accommon.h>153154#define _COMPONENT ACPI_UTILITIES155ACPI_MODULE_NAME ("ahpredef")156157/*158* iASL only needs a partial table (short descriptions only).159* AcpiHelp needs the full table.160*/161#ifdef ACPI_ASL_COMPILER162#define AH_PREDEF(Name, ShortDesc, LongDesc) {Name, ShortDesc}163#else164#define AH_PREDEF(Name, ShortDesc, LongDesc) {Name, ShortDesc, LongDesc}165#endif166167/*168* Predefined ACPI names, with short description and return value.169* This table was extracted directly from the ACPI specification.170*/171const AH_PREDEFINED_NAME AslPredefinedInfo[] =172{173AH_PREDEF ("_ACx", "Active Cooling, x=0-9", "Returns the active cooling policy threshold values"),174AH_PREDEF ("_ADR", "Address", "Returns address of a device on parent bus, and resource field"),175AH_PREDEF ("_AEI", "ACPI Event Interrupts", "Returns a list of GPIO events to be used as ACPI events"),176AH_PREDEF ("_ALC", "Ambient Light Chromaticity", "Returns the ambient light color chromaticity"),177AH_PREDEF ("_ALI", "Ambient Light Illuminance", "Returns the ambient light brightness"),178AH_PREDEF ("_ALN", "Alignment", "Base alignment, Resource Descriptor field"),179AH_PREDEF ("_ALP", "Ambient Light Polling", "Returns the ambient light sensor polling frequency"),180AH_PREDEF ("_ALR", "Ambient Light Response", "Returns the ambient light brightness to display brightness mappings"),181AH_PREDEF ("_ALT", "Ambient Light Temperature", "Returns the ambient light color temperature"),182AH_PREDEF ("_ALx", "Active List, x=0-9", "Returns a list of active cooling device objects"),183AH_PREDEF ("_ART", "Active Cooling Relationship Table", "Returns thermal relationship information between platform devices and fan devices"),184AH_PREDEF ("_ASI", "Address Space Id", "Resource Descriptor field"),185AH_PREDEF ("_ASZ", "Access Size", "Resource Descriptor field"),186AH_PREDEF ("_ATT", "Type-Specific Attribute", "Resource Descriptor field"),187AH_PREDEF ("_BAS", "Base Address", "Range base address, Resource Descriptor field"),188AH_PREDEF ("_BBN", "BIOS Bus Number", "Returns the PCI bus number returned by the BIOS"),189AH_PREDEF ("_BCL", "Brightness Control Levels", "Returns a list of supported brightness control levels"),190AH_PREDEF ("_BCM", "Brightness Control Method", "Sets the brightness level of the display device"),191AH_PREDEF ("_BCT", "Battery Charge Time", "Returns time remaining to complete charging battery"),192AH_PREDEF ("_BDN", "BIOS Dock Name", "Returns the Dock ID returned by the BIOS"),193AH_PREDEF ("_BFS", "Back From Sleep", "Inform AML of a wake event"),194AH_PREDEF ("_BIF", "Battery Information", "Returns a Control Method Battery information block"),195AH_PREDEF ("_BIX", "Battery Information Extended", "Returns a Control Method Battery extended information block"),196AH_PREDEF ("_BLT", "Battery Level Threshold", "Set battery level threshold preferences"),197AH_PREDEF ("_BM_", "Bus Master", "Resource Descriptor field"),198AH_PREDEF ("_BMA", "Battery Measurement Averaging Interval", "Sets battery measurement averaging interval"),199AH_PREDEF ("_BMC", "Battery Maintenance Control", "Sets battery maintenance and control features"),200AH_PREDEF ("_BMD", "Battery Maintenance Data", "Returns battery maintenance, control, and state data"),201AH_PREDEF ("_BMS", "Battery Measurement Sampling Time", "Sets the battery measurement sampling time"),202AH_PREDEF ("_BPC", "Battery Power Characteristics", "Returns static values used to configure power threshold support in the platform firmware"),203AH_PREDEF ("_BPS", "Battery Power State", "Returns the power delivery capabilities of the battery at the present time"),204AH_PREDEF ("_BPT", "Battery Power Threshold", "Set a relative battery peak power capability change threshold"),205AH_PREDEF ("_BQC", "Brightness Query Current", "Returns the current display brightness level"),206AH_PREDEF ("_BST", "Battery Status", "Returns a Control Method Battery status block"),207AH_PREDEF ("_BTH", "Battery Throttle Limit", "Thermal limit for charging and discharging"),208AH_PREDEF ("_BTM", "Battery Time", "Returns the battery runtime"),209AH_PREDEF ("_BTP", "Battery Trip Point", "Sets a Control Method Battery trip point"),210AH_PREDEF ("_CBA", "Configuration Base Address", "Sets the base address for a PCI Express host bridge"),211AH_PREDEF ("_CBR", "CXL Host Bridge Register Info", "Get the memory location of CXL Host Bridge Registers"),212AH_PREDEF ("_CCA", "Cache Coherency Attribute", "Returns a device's support level for cache coherency"),213AH_PREDEF ("_CDM", "Clock Domain", "Returns a logical processor's clock domain identifier"),214AH_PREDEF ("_CID", "Compatible ID", "Returns a device's Plug and Play Compatible ID list"),215AH_PREDEF ("_CLS", "Class Code", "Returns PCI class code and subclass"),216AH_PREDEF ("_CPC", "Continuous Performance Control", "Returns a list of performance control interfaces"),217AH_PREDEF ("_CR3", "Warm/Standby Temperature", "Temperature for a fast low power state"),218AH_PREDEF ("_CRS", "Current Resource Settings", "Returns the current resource settings for a device"),219AH_PREDEF ("_CRT", "Critical Temperature", "Returns the shutdown critical temperature"),220AH_PREDEF ("_CSD", "C-State Dependencies", "Returns a list of C-state dependencies"),221AH_PREDEF ("_CST", "C-States", "Returns a list of supported C-states"),222AH_PREDEF ("_CWS", "Clear Wake Alarm Status", "Clear the status of wake alarms"),223AH_PREDEF ("_DBT", "Debounce Timeout", "Timeout value, Resource Descriptor field"),224AH_PREDEF ("_DCK", "Dock Present", "Sets docking isolation. Presence indicates device is a docking station"),225AH_PREDEF ("_DCS", "Display Current Status", "Returns status of the display output device"),226AH_PREDEF ("_DDC", "Display Data Current", "Returns the EDID for the display output device"),227AH_PREDEF ("_DDN", "DOS Device Name", "Returns a device logical name"),228AH_PREDEF ("_DEC", "Decode", "Device decoding type, Resource Descriptor field"),229AH_PREDEF ("_DEP", "Dependencies", "Returns a list of operation region dependencies"),230AH_PREDEF ("_DGS", "Display Graphics State", "Return the current state of the output device"),231AH_PREDEF ("_DIS", "Disable Device", "Disables a device"),232AH_PREDEF ("_DLM", "Device Lock Mutex", "Defines mutex for OS/AML sharing"),233AH_PREDEF ("_DMA", "Direct Memory Access", "Returns device current resources for DMA transactions, and resource field"),234AH_PREDEF ("_DOD", "Display Output Devices", "Enumerate all devices attached to the display adapter"),235AH_PREDEF ("_DOS", "Disable Output Switching", "Sets the display output switching mode"),236AH_PREDEF ("_DSC", "Deepest State for Configuration", "Returns the deepest D-state of the device to the OSPM"),237AH_PREDEF ("_DPL", "Device Selection Polarity", "Polarity of Device Selection signal, Resource Descriptor field"),238AH_PREDEF ("_DRS", "Drive Strength", "Drive Strength setting for GPIO connection, Resource Descriptor field"),239AH_PREDEF ("_DSD", "Device-Specific Data", "Returns a list of device property information"),240AH_PREDEF ("_DSM", "Device-Specific Method", "Executes device-specific functions"),241AH_PREDEF ("_DSS", "Device Set State", "Sets the display device state"),242AH_PREDEF ("_DSW", "Device Sleep Wake", "Sets the sleep and wake transition states for a device"),243AH_PREDEF ("_DTI", "Device Temperature Indication", "Conveys native device temperature to the platform"),244AH_PREDEF ("_Exx", "Edge-Triggered GPE, xx=0x00-0xFF", "Method executed as a result of a general-purpose event"),245AH_PREDEF ("_EC_", "Embedded Controller", "returns EC offset and query information"),246AH_PREDEF ("_EDL", "Eject Device List", "Returns a list of devices that are dependent on a device (docking)"),247AH_PREDEF ("_EJD", "Ejection Dependent Device", "Returns the name of dependent (parent) device (docking)"),248AH_PREDEF ("_EJx", "Eject Device, x=0-9", "Begin or cancel a device ejection request (docking)"),249AH_PREDEF ("_END", "Endianness", "Endian orientation, Resource Descriptor field"),250AH_PREDEF ("_EVT", "Event", "Event method for GPIO events"),251AH_PREDEF ("_FDE", "Floppy Disk Enumerate", "Returns floppy disk configuration information"),252AH_PREDEF ("_FDI", "Floppy Drive Information", "Returns a floppy drive information block"),253AH_PREDEF ("_FDM", "Floppy Drive Mode", "Sets a floppy drive speed"),254AH_PREDEF ("_FIF", "Fan Information", "Returns fan device information"),255AH_PREDEF ("_FIT", "Firmware Interface Table", "Returns a list of NFIT structures"),256AH_PREDEF ("_FIX", "Fixed Register Resource Provider", "Returns a list of devices that implement FADT register blocks"),257AH_PREDEF ("_FLC", "Flow Control", "Flow control, Resource Descriptor field"),258AH_PREDEF ("_FPS", "Fan Performance States", "Returns a list of supported fan performance states"),259AH_PREDEF ("_FSL", "Fan Set Level", "Control method that sets the fan device's speed level (performance state)"),260AH_PREDEF ("_FST", "Fan Status", "Returns current status information for a fan device"),261AH_PREDEF ("_FUN", "Function Number", "Resource descriptor field"),262AH_PREDEF ("_GAI", "Get Averaging Interval", "Returns the power meter averaging interval"),263AH_PREDEF ("_GCP", "Get Capabilities", "Get device time capabilities"),264AH_PREDEF ("_GHL", "Get Hardware Limit", "Returns the hardware limit enforced by the power meter"),265AH_PREDEF ("_GL_", "Global Lock", "OS-defined Global Lock mutex object"),266AH_PREDEF ("_GLK", "Get Global Lock Requirement", "Returns a device's Global Lock requirement for device access"),267AH_PREDEF ("_GPD", "Get Post Data", "Returns the value of the VGA device that will be posted at boot"),268AH_PREDEF ("_GPE", "General Purpose Events", "Predefined scope (\\_GPE) or SCI number for EC"),269AH_PREDEF ("_GRA", "Granularity", "Address space granularity, Resource Descriptor field"),270AH_PREDEF ("_GRT", "Get Real Time", "Returns current time-of-day from a time/alarm device"),271AH_PREDEF ("_GSB", "Global System Interrupt Base", "Returns the GSB for a I/O APIC device"),272AH_PREDEF ("_GTF", "Get Task File", "Returns a list of ATA commands to restore a drive to default state"),273AH_PREDEF ("_GTM", "Get Timing Mode", "Returns a list of IDE controller timing information"),274AH_PREDEF ("_GTS", "Going To Sleep", "Inform AML of pending sleep"),275AH_PREDEF ("_GWS", "Get Wake Status", "Return status of wake alarms"),276AH_PREDEF ("_HE_", "High-Edge", "Interrupt triggering, Resource Descriptor field"),277AH_PREDEF ("_HID", "Hardware ID", "Returns a device's Plug and Play Hardware ID"),278AH_PREDEF ("_HMA", "Heterogeneous Memory Attributes", "Returns a list of HMAT structures."),279AH_PREDEF ("_HOT", "Hot Temperature", "Returns the critical temperature for sleep (entry to S4)"),280AH_PREDEF ("_HPP", "Hot Plug Parameters", "Returns a list of hot-plug information for a PCI device"),281AH_PREDEF ("_HPX", "Hot Plug Parameter Extensions", "Returns a list of hot-plug information for a PCI device. Supersedes _HPP"),282AH_PREDEF ("_HRV", "Hardware Revision", "Returns a hardware revision value"),283AH_PREDEF ("_IFT", "IPMI Interface Type", "See the Intelligent Platform Management Interface Specification"),284AH_PREDEF ("_INI", "Initialize", "Performs device specific initialization"),285AH_PREDEF ("_INT", "Interrupts", "Interrupt mask bits, Resource Descriptor field"),286AH_PREDEF ("_IOR", "I/O Restriction", "Restriction type, Resource Descriptor field"),287AH_PREDEF ("_IRC", "Inrush Current", "Presence indicates that a device has a significant inrush current draw"),288AH_PREDEF ("_Lxx", "Level-Triggered GPE, xx=0x00-0xFF", "Control method executed as a result of a general-purpose event"),289AH_PREDEF ("_LCK", "Lock Device", "Locks or unlocks a device (docking)"),290AH_PREDEF ("_LEN", "Length", "Range length, Resource Descriptor field"),291AH_PREDEF ("_LID", "Lid Status", "Returns the open/closed status of the lid on a mobile system"),292AH_PREDEF ("_LIN", "Lines In Use", "Handshake lines, Resource Descriptor field"),293AH_PREDEF ("_LL_", "Low Level", "Interrupt polarity, Resource Descriptor field"),294AH_PREDEF ("_LPD", "Low Power Dependencies", "Returns a list of dependencies for low power idle entry"),295AH_PREDEF ("_LPI", "Low Power Idle States", "Returns a list of supported low power idle states"),296AH_PREDEF ("_LSI", "Label Storage Information", "Returns information about the Label Storage Area associated with the NVDIMM object."),297AH_PREDEF ("_LSR", "Label Storage Read", "Returns label data from the Label Storage Area of the NVDIMM object."),298AH_PREDEF ("_LSW", "Label Storage Write", "Writes label data in to the Label Storage Area of the NVDIMM object."),299AH_PREDEF ("_MAF", "Maximum Address Fixed", "Resource Descriptor field"),300AH_PREDEF ("_MAT", "Multiple APIC Table Entry", "Returns a list of MADT APIC structure entries"),301AH_PREDEF ("_MAX", "Maximum Base Address", "Resource Descriptor field"),302AH_PREDEF ("_MBM", "Memory Bandwidth Monitoring Data", "Returns bandwidth monitoring data for a memory device"),303AH_PREDEF ("_MEM", "Memory Attributes", "Resource Descriptor field"),304AH_PREDEF ("_MIF", "Minimum Address Fixed", "Resource Descriptor field"),305AH_PREDEF ("_MIN", "Minimum Base Address", "Resource Descriptor field"),306AH_PREDEF ("_MLS", "Multiple Language String", "Returns a device description in multiple languages"),307AH_PREDEF ("_MOD", "Mode", "Interrupt mode, Resource Descriptor field"),308AH_PREDEF ("_MSG", "Message", "Sets the system message waiting status indicator"),309AH_PREDEF ("_MSM", "Memory Set Monitoring", "Sets bandwidth monitoring parameters for a memory device"),310AH_PREDEF ("_MTL", "Minimum Throttle Limit", "Returns the minimum throttle limit for a thermal zone"),311AH_PREDEF ("_MTP", "Memory Type", "Resource Descriptor field"),312AH_PREDEF ("_NBS", "NVDIMM Boot Status", "Returns information about NVDIMM device’s status at boot time"),313AH_PREDEF ("_NCH", "NVDIMM Current Health Information", "Returns current health information of the NVDIMM device"),314AH_PREDEF ("_NIC", "NVDIMM Health Error Injection Capabilities", "Returns health error injection capabilities that are supported by the platform"),315AH_PREDEF ("_NIG", "NVDIMM Inject Health Error Status","Returns currently active health errors and their error attributes that are injected by _NIH"),316AH_PREDEF ("_NIH", "NVDIMM Inject/Clear Health Errors", "Returns the status of injecting or clearing Health Errors"),317AH_PREDEF ("_NTT", "Notification Temperature Threshold", "Returns a threshold for device temperature change that requires platform notification"),318AH_PREDEF ("_OFF", "Power Off", "Sets a power resource to the off state"),319AH_PREDEF ("_ON_", "Power On", "Sets a power resource to the on state"),320AH_PREDEF ("_OS_", "Operating System", "Returns a string that identifies the operating system"),321AH_PREDEF ("_OSC", "Operating System Capabilities", "Inform AML of host features and capabilities"),322AH_PREDEF ("_OSI", "Operating System Interfaces", "Returns supported interfaces, behaviors, and features"),323AH_PREDEF ("_OST", "OSPM Status Indication", "Inform AML of event processing status"),324AH_PREDEF ("_PAI", "Power Averaging Interval", "Sets the averaging interval for a power meter"),325AH_PREDEF ("_PAR", "Parity", "Parity bits, Resource Descriptor field"),326AH_PREDEF ("_PCL", "Power Consumer List", "Returns a list of devices powered by a power source"),327AH_PREDEF ("_PCT", "Performance Control", "Returns processor performance control and status registers"),328AH_PREDEF ("_PDC", "Processor Driver Capabilities", "Inform AML of processor driver capabilities"),329AH_PREDEF ("_PDL", "P-state Depth Limit", "Returns the lowest available performance P-state"),330AH_PREDEF ("_PHA", "Clock Phase", "Clock phase, Resource Descriptor field"),331AH_PREDEF ("_PIC", "Interrupt Model", "Inform AML of the interrupt model in use"),332AH_PREDEF ("_PIF", "Power Source Information", "Returns a Power Source information block"),333AH_PREDEF ("_PIN", "Pin List", "Pin list, Resource Descriptor field"),334AH_PREDEF ("_PLD", "Physical Location of Device", "Returns a device's physical location information"),335AH_PREDEF ("_PMC", "Power Meter Capabilities", "Returns a list of Power Meter capabilities info"),336AH_PREDEF ("_PMD", "Power Metered Devices", "Returns a list of devices that are measured by the power meter device"),337AH_PREDEF ("_PMM", "Power Meter Measurement", "Returns the current value of the Power Meter"),338AH_PREDEF ("_POL", "Polarity", "Interrupt polarity, Resource Descriptor field"),339AH_PREDEF ("_PPC", "Performance Present Capabilities", "Returns a list of the performance states currently supported by the platform"),340AH_PREDEF ("_PPE", "Polling for Platform Error", "Returns the polling interval to retrieve Corrected Platform Error information"),341AH_PREDEF ("_PPI", "Pin Configuration", "Resource Descriptor field"),342AH_PREDEF ("_PR", "Processor", "Predefined scope for processor objects"),343AH_PREDEF ("_PR0", "Power Resources for D0", "Returns a list of dependent power resources to enter state D0 (fully on)"),344AH_PREDEF ("_PR1", "Power Resources for D1", "Returns a list of dependent power resources to enter state D1"),345AH_PREDEF ("_PR2", "Power Resources for D2", "Returns a list of dependent power resources to enter state D2"),346AH_PREDEF ("_PR3", "Power Resources for D3hot", "Returns a list of dependent power resources to enter state D3hot"),347AH_PREDEF ("_PRE", "Power Resources for Enumeration", "Returns a list of dependent power resources to enumerate devices on a bus"),348AH_PREDEF ("_PRL", "Power Source Redundancy List", "Returns a list of power source devices in the same redundancy grouping"),349AH_PREDEF ("_PRR", "Power Resource for Reset", "Execute a reset on a device"),350AH_PREDEF ("_PRS", "Possible Resource Settings", "Returns a list of a device's possible resource settings"),351AH_PREDEF ("_PRT", "PCI Routing Table", "Returns a list of PCI interrupt mappings"),352AH_PREDEF ("_PRW", "Power Resources for Wake", "Returns a list of dependent power resources for waking"),353AH_PREDEF ("_PS0", "Power State 0", "Sets a device's power state to D0 (device fully on)"),354AH_PREDEF ("_PS1", "Power State 1", "Sets a device's power state to D1"),355AH_PREDEF ("_PS2", "Power State 2", "Sets a device's power state to D2"),356AH_PREDEF ("_PS3", "Power State 3", "Sets a device's power state to D3 (device off)"),357AH_PREDEF ("_PSC", "Power State Current", "Returns a device's current power state"),358AH_PREDEF ("_PSD", "Power State Dependencies", "Returns processor P-State dependencies"),359AH_PREDEF ("_PSE", "Power State for Enumeration", "Put a bus into enumeration power mode"),360AH_PREDEF ("_PSL", "Passive List", "Returns a list of passive cooling device objects"),361AH_PREDEF ("_PSR", "Power Source", "Returns the power source device currently in use"),362AH_PREDEF ("_PSS", "Performance Supported States", "Returns a list of supported processor performance states"),363AH_PREDEF ("_PSV", "Passive Temperature", "Returns the passive trip point temperature"),364AH_PREDEF ("_PSW", "Power State Wake", "Sets a device's wake function"),365AH_PREDEF ("_PTC", "Processor Throttling Control", "Returns throttling control and status registers"),366AH_PREDEF ("_PTP", "Power Trip Points", "Sets trip points for the Power Meter device"),367AH_PREDEF ("_PTS", "Prepare To Sleep", "Inform the platform of an impending sleep transition"),368AH_PREDEF ("_PUR", "Processor Utilization Request", "Returns the number of processors that the platform would like to idle"),369AH_PREDEF ("_PXM", "Device Proximity", "Returns a device's proximity domain identifier"),370AH_PREDEF ("_Qxx", "EC Query, xx=0x00-0xFF", "Embedded Controller query and SMBus Alarm control method"),371AH_PREDEF ("_RBO", "Register Bit Offset", "Resource Descriptor field"),372AH_PREDEF ("_RBW", "Register Bit Width", "Resource Descriptor field"),373AH_PREDEF ("_RDI", "Resource Dependencies for Idle", "Returns a list of dependencies for idle states"),374AH_PREDEF ("_REG", "Region Availability", "Inform AML code of an operation region availability change"),375AH_PREDEF ("_REV", "Supported Integer Width", "Returns the supported integer width (<= 1: 32 bits only, >=2: both 32 and 64 bits"),376AH_PREDEF ("_RMV", "Removal Status", "Returns a device's removal ability status (docking)"),377AH_PREDEF ("_RNG", "Range", "Memory range type, Resource Descriptor field"),378AH_PREDEF ("_RST", "Device Reset", "Executes a reset on a device"),379AH_PREDEF ("_ROM", "Read-Only Memory", "Returns a copy of the ROM data for a display device"),380AH_PREDEF ("_RT_", "Resource Type", "Resource Descriptor field"),381AH_PREDEF ("_RTV", "Relative Temperature Values", "Returns temperature value information"),382AH_PREDEF ("_RW_", "Read-Write Status", "Resource Descriptor field"),383AH_PREDEF ("_RXL", "Receive Buffer Size", "Serial channel buffer, Resource Descriptor field"),384AH_PREDEF ("_S0_", "S0 System State", "Returns values to enter the system into the S0 state"),385AH_PREDEF ("_S1_", "S1 System State", "Returns values to enter the system into the S1 state"),386AH_PREDEF ("_S2_", "S2 System State", "Returns values to enter the system into the S2 state"),387AH_PREDEF ("_S3_", "S3 System State", "Returns values to enter the system into the S3 state"),388AH_PREDEF ("_S4_", "S4 System State", "Returns values to enter the system into the S4 state"),389AH_PREDEF ("_S5_", "S5 System State", "Returns values to enter the system into the S5 state"),390AH_PREDEF ("_S1D", "S1 Device State", "Returns the highest D-state supported by a device when in the S1 state"),391AH_PREDEF ("_S2D", "S2 Device State", "Returns the highest D-state supported by a device when in the S2 state"),392AH_PREDEF ("_S3D", "S3 Device State", "Returns the highest D-state supported by a device when in the S3 state"),393AH_PREDEF ("_S4D", "S4 Device State", "Returns the highest D-state supported by a device when in the S4 state"),394AH_PREDEF ("_S0W", "S0 Device Wake State", "Returns the lowest D-state that the device can wake itself from S0"),395AH_PREDEF ("_S1W", "S1 Device Wake State", "Returns the lowest D-state for this device that can wake the system from S1"),396AH_PREDEF ("_S2W", "S2 Device Wake State", "Returns the lowest D-state for this device that can wake the system from S2"),397AH_PREDEF ("_S3W", "S3 Device Wake State", "Returns the lowest D-state for this device that can wake the system from S3"),398AH_PREDEF ("_S4W", "S4 Device Wake State", "Returns the lowest D-state for this device that can wake the system from S4"),399AH_PREDEF ("_SB_", "System Bus", "Predefined scope for device and bus objects"),400AH_PREDEF ("_SBA", "SM Bus Alert information", "Returns info on an SMBus alert"),401AH_PREDEF ("_SBI", "SM Bus General information", "Returns info on an SMBus segment"),402AH_PREDEF ("_SBR", "SM Bus Data read", "Reads Byte, Word, or Block data from an SMBus segment"),403AH_PREDEF ("_SBT", "SM Bus Data transfer", "Performs data transfer to/from an SMBus segment. Implements ProcessCall protocol"),404AH_PREDEF ("_SBW", "SM Bus Data write", "Writes Byte, Word, or Block data to an SMBus segment"),405AH_PREDEF ("_SBS", "Smart Battery Subsystem", "Returns the subsystem configuration"),406AH_PREDEF ("_SCP", "Set Cooling Policy", "Sets the cooling policy (active or passive)"),407AH_PREDEF ("_SDD", "Set Device Data", "Sets data for a SATA device"),408AH_PREDEF ("_SEG", "PCI Segment", "Returns a device's PCI Segment Group number"),409AH_PREDEF ("_SHL", "Set Hardware Limit", "Sets the hardware limit enforced by the Power Meter"),410AH_PREDEF ("_SHR", "Shareable", "Interrupt share status, Resource Descriptor field"),411AH_PREDEF ("_SI_", "System Indicators", "Predefined scope"),412AH_PREDEF ("_SIZ", "Size", "DMA transfer size, Resource Descriptor field"),413AH_PREDEF ("_SLI", "System Locality Information", "Returns a list of NUMA system localities"),414AH_PREDEF ("_SLV", "Slave Mode", "Mode setting, Resource Descriptor field"),415AH_PREDEF ("_SPD", "Set Post Device", "Sets which video device will be posted at boot"),416AH_PREDEF ("_SPE", "Speed", "Connection speed, Resource Descriptor field"),417AH_PREDEF ("_SRS", "Set Resource Settings", "Sets a device's resource allocation"),418AH_PREDEF ("_SRT", "Set Real Time", "Sets the current time for a time/alarm device"),419AH_PREDEF ("_SRV", "IPMI Spec Revision", "See the Intelligent Platform Management Interface Specification"),420AH_PREDEF ("_SST", "System Status", "Sets the system status indicator"),421AH_PREDEF ("_STA", "Status", "Returns the current status of a Device or Power Resource"),422AH_PREDEF ("_STB", "Stop Bits", "Serial channel stop bits, Resource Descriptor field"),423AH_PREDEF ("_STM", "Set Timing Mode", "Sets an IDE controller transfer timings"),424AH_PREDEF ("_STP", "Set Expired Timer Wake Policy", "Sets expired timer policies of the wake alarm device"),425AH_PREDEF ("_STR", "Description String", "Returns a device's description string"),426AH_PREDEF ("_STV", "Set Timer Value", "Set timer values of the wake alarm device"),427AH_PREDEF ("_SUB", "Subsystem ID", "Returns the subsystem ID for a device"),428AH_PREDEF ("_SUN", "Slot User Number", "Returns the slot unique ID number"),429AH_PREDEF ("_SWS", "System Wake Source", "Returns the source event that caused the system to wake"),430AH_PREDEF ("_T_x", "Emitted by ASL Compiler, x=0-9, A-Z", "Reserved for use by ASL compilers"),431AH_PREDEF ("_TC1", "Thermal Constant 1", "Returns TC1 for the passive cooling formula"),432AH_PREDEF ("_TC2", "Thermal Constant 2", "Returns TC2 for the passive cooling formula"),433AH_PREDEF ("_TDL", "T-State Depth Limit", "Returns the _TSS entry number of the lowest power throttling state"),434AH_PREDEF ("_TFP", "Thermal Fast Sampling Period", "Returns the sampling period for passive cooling"),435AH_PREDEF ("_TIP", "Expired Timer Wake Policy", "Returns timer policies of the wake alarm device"),436AH_PREDEF ("_TIV", "Timer Values", "Returns remaining time of the wake alarm device"),437AH_PREDEF ("_TMP", "Temperature", "Returns a thermal zone's current temperature"),438AH_PREDEF ("_TPC", "Throttling Present Capabilities", "Returns the current number of supported throttling states"),439AH_PREDEF ("_TPT", "Trip Point Temperature", "Inform AML that a device's embedded temperature sensor has crossed a temperature trip point"),440AH_PREDEF ("_TRA", "Translation", "Address translation offset, Resource Descriptor field"),441AH_PREDEF ("_TRS", "Translation Sparse", "Sparse/dense flag, Resource Descriptor field"),442AH_PREDEF ("_TRT", "Thermal Relationship Table", "Returns thermal relationships between platform devices"),443AH_PREDEF ("_TSD", "Throttling State Dependencies", "Returns a list of T-state dependencies"),444AH_PREDEF ("_TSF", "Type-Specific Flags", "Resource Descriptor field"),445AH_PREDEF ("_TSN", "Thermal Sensor Device", "Returns a reference to a thermal sensor"),446AH_PREDEF ("_TSP", "Thermal Sampling Period", "Returns the thermal sampling period for passive cooling"),447AH_PREDEF ("_TSS", "Throttling Supported States", "Returns supported throttling state information"),448AH_PREDEF ("_TST", "Temperature Sensor Threshold", "Returns the minimum separation for a device's temperature trip points"),449AH_PREDEF ("_TTP", "Translation Type", "Translation/static flag, Resource Descriptor field"),450AH_PREDEF ("_TTS", "Transition To State", "Inform AML of an S-state transition"),451AH_PREDEF ("_TXL", "Transmit Buffer Size", "Serial Channel buffer, Resource Descriptor field"),452AH_PREDEF ("_TYP", "Type", "DMA channel type (speed), Resource Descriptor field"),453AH_PREDEF ("_TZ_", "Thermal Zone", "Predefined scope: ACPI 1.0"),454AH_PREDEF ("_TZD", "Thermal Zone Devices", "Returns a list of device names associated with a Thermal Zone"),455AH_PREDEF ("_TZM", "Thermal Zone Member", "Returns a reference to the thermal zone of which a device is a member"),456AH_PREDEF ("_TZP", "Thermal Zone Polling", "Returns a Thermal zone's polling frequency"),457AH_PREDEF ("_UID", "Unique ID", "Return a device's unique persistent ID"),458AH_PREDEF ("_UPC", "USB Port Capabilities", "Returns a list of USB port capabilities"),459AH_PREDEF ("_UPD", "User Presence Detect", "Returns user detection information"),460AH_PREDEF ("_UPP", "User Presence Polling", "Returns the recommended user presence polling interval"),461AH_PREDEF ("_VAL", "Pin Configuration Value", "Resource Descriptor field"),462AH_PREDEF ("_VEN", "Vendor Data", "Resource Descriptor field"),463AH_PREDEF ("_VPO", "Video Post Options", "Returns the implemented video post options"),464AH_PREDEF ("_Wxx", "Wake Event, xx=0x00-0xFF", "Method executed as a result of a wake event"),465AH_PREDEF ("_WAK", "Wake", "Inform AML that the system has just awakened"),466AH_PREDEF ("_WPC", "Wireless Power Calibration", "Calibrate power and notify wireless device"),467AH_PREDEF ("_WPP", "Wireless Power Polling", "Get recommended polling interval"),468AH_PREDEF (NULL, NULL, NULL)469};470471472/*******************************************************************************473*474* FUNCTION: AcpiAhMatchPredefinedName475*476* PARAMETERS: Nameseg - Predefined name string477*478* RETURN: ID info struct. NULL if Nameseg not found479*480* DESCRIPTION: Lookup a predefined name.481*482******************************************************************************/483484const AH_PREDEFINED_NAME *485AcpiAhMatchPredefinedName (486char *Nameseg)487{488const AH_PREDEFINED_NAME *Info;489490491/* Nameseg must start with an underscore */492493if (*Nameseg != '_')494{495return (NULL);496}497498/* Search for a match in the predefined name table */499500for (Info = AslPredefinedInfo; Info->Name; Info++)501{502if (ACPI_COMPARE_NAMESEG (Nameseg, Info->Name))503{504return (Info);505}506}507508return (NULL);509}510511512