brintos

brintos / linux-shallow public Read only

0
0
Text · 38.2 KiB · ef068f4 Raw
1197 lines · c
1/* SPDX-License-Identifier: BSD-3-Clause OR GPL-2.0 */2/******************************************************************************3 *4 * Name: acpredef - Information table for ACPI predefined methods and objects5 *6 * Copyright (C) 2000 - 2023, Intel Corp.7 *8 *****************************************************************************/9 10#ifndef __ACPREDEF_H__11#define __ACPREDEF_H__12 13/******************************************************************************14 *15 * Return Package types16 *17 * 1) PTYPE1 packages do not contain subpackages.18 *19 * ACPI_PTYPE1_FIXED: Fixed-length length, 1 or 2 object types:20 *      object type21 *      count22 *      object type23 *      count24 *25 * ACPI_PTYPE1_VAR: Variable-length length. Zero-length package is allowed:26 *      object type (Int/Buf/Ref)27 *28 * ACPI_PTYPE1_OPTION: Package has some required and some optional elements29 *      (Used for _PRW)30 *31 *32 * 2) PTYPE2 packages contain a Variable-length number of subpackages. Each33 *    of the different types describe the contents of each of the subpackages.34 *35 * ACPI_PTYPE2: Each subpackage contains 1 or 2 object types. Zero-length36 *      parent package is allowed:37 *      object type38 *      count39 *      object type40 *      count41 *      (Used for _ALR,_MLS,_PSS,_TRT,_TSS)42 *43 * ACPI_PTYPE2_COUNT: Each subpackage has a count as first element.44 *      Zero-length parent package is allowed:45 *      object type46 *      (Used for _CSD,_PSD,_TSD)47 *48 * ACPI_PTYPE2_PKG_COUNT: Count of subpackages at start, 1 or 2 object types:49 *      object type50 *      count51 *      object type52 *      count53 *      (Used for _CST)54 *55 * ACPI_PTYPE2_FIXED: Each subpackage is of Fixed-length. Zero-length56 *      parent package is allowed.57 *      (Used for _PRT)58 *59 * ACPI_PTYPE2_MIN: Each subpackage has a Variable-length but minimum length.60 *      Zero-length parent package is allowed:61 *      (Used for _HPX)62 *63 * ACPI_PTYPE2_REV_FIXED: Revision at start, each subpackage is Fixed-length64 *      (Used for _ART, _FPS)65 *66 * ACPI_PTYPE2_FIX_VAR: Each subpackage consists of some fixed-length elements67 *      followed by an optional element. Zero-length parent package is allowed.68 *      object type69 *      count70 *      object type71 *      count = 0 (optional)72 *      (Used for _DLM)73 *74 * ACPI_PTYPE2_VAR_VAR: Variable number of subpackages, each of either a75 *      constant or variable length. The subpackages are preceded by a76 *      constant number of objects.77 *      (Used for _LPI, _RDI)78 *79 * ACPI_PTYPE2_UUID_PAIR: Each subpackage is preceded by a UUID Buffer. The UUID80 *      defines the format of the package. Zero-length parent package is81 *      allowed.82 *      (Used for _DSD)83 *84 *****************************************************************************/85 86enum acpi_return_package_types {87	ACPI_PTYPE1_FIXED = 1,88	ACPI_PTYPE1_VAR = 2,89	ACPI_PTYPE1_OPTION = 3,90	ACPI_PTYPE2 = 4,91	ACPI_PTYPE2_COUNT = 5,92	ACPI_PTYPE2_PKG_COUNT = 6,93	ACPI_PTYPE2_FIXED = 7,94	ACPI_PTYPE2_MIN = 8,95	ACPI_PTYPE2_REV_FIXED = 9,96	ACPI_PTYPE2_FIX_VAR = 10,97	ACPI_PTYPE2_VAR_VAR = 11,98	ACPI_PTYPE2_UUID_PAIR = 12,99	ACPI_PTYPE_CUSTOM = 13100};101 102/* Support macros for users of the predefined info table */103 104#define METHOD_PREDEF_ARGS_MAX          5105#define METHOD_ARG_BIT_WIDTH            3106#define METHOD_ARG_MASK                 0x0007107#define ARG_COUNT_IS_MINIMUM            0x8000108#define METHOD_MAX_ARG_TYPE             ACPI_TYPE_PACKAGE109 110#define METHOD_GET_ARG_COUNT(arg_list)  ((arg_list) & METHOD_ARG_MASK)111#define METHOD_GET_NEXT_TYPE(arg_list)  (((arg_list) >>= METHOD_ARG_BIT_WIDTH) & METHOD_ARG_MASK)112 113/* Macros used to build the predefined info table */114 115#define METHOD_0ARGS                    0116#define METHOD_1ARGS(a1)                (1 | (a1 << 3))117#define METHOD_2ARGS(a1,a2)             (2 | (a1 << 3) | (a2 << 6))118#define METHOD_3ARGS(a1,a2,a3)          (3 | (a1 << 3) | (a2 << 6) | (a3 << 9))119#define METHOD_4ARGS(a1,a2,a3,a4)       (4 | (a1 << 3) | (a2 << 6) | (a3 << 9) | (a4 << 12))120#define METHOD_5ARGS(a1,a2,a3,a4,a5)    (5 | (a1 << 3) | (a2 << 6) | (a3 << 9) | (a4 << 12) | (a5 << 15))121 122#define METHOD_RETURNS(type)            (type)123#define METHOD_NO_RETURN_VALUE          0124 125#define PACKAGE_INFO(a,b,c,d,e,f)       {{{(a),(b),(c),(d)}, ((((u16)(f)) << 8) | (e)), 0}}126 127/* Support macros for the resource descriptor info table */128 129#define WIDTH_1                         0x0001130#define WIDTH_2                         0x0002131#define WIDTH_3                         0x0004132#define WIDTH_8                         0x0008133#define WIDTH_16                        0x0010134#define WIDTH_32                        0x0020135#define WIDTH_64                        0x0040136#define VARIABLE_DATA                   0x0080137#define NUM_RESOURCE_WIDTHS             8138 139#define WIDTH_ADDRESS                   WIDTH_16 | WIDTH_32 | WIDTH_64140 141#ifdef ACPI_CREATE_PREDEFINED_TABLE142/******************************************************************************143 *144 * Predefined method/object information table.145 *146 * These are the names that can actually be evaluated via acpi_evaluate_object.147 * Not present in this table are the following:148 *149 *      1) Predefined/Reserved names that are not usually evaluated via150 *         acpi_evaluate_object:151 *              _Lxx and _Exx GPE methods152 *              _Qxx EC methods153 *              _T_x compiler temporary variables154 *              _Wxx wake events155 *156 *      2) Predefined names that never actually exist within the AML code:157 *              Predefined resource descriptor field names158 *159 *      3) Predefined names that are implemented within ACPICA:160 *              _OSI161 *162 * The main entries in the table each contain the following items:163 *164 * name                 - The ACPI reserved name165 * argument_list        - Contains (in 16 bits), the number of required166 *                        arguments to the method (3 bits), and a 3-bit type167 *                        field for each argument (up to 4 arguments). The168 *                        METHOD_?ARGS macros generate the correct packed data.169 * expected_btypes      - Allowed type(s) for the return value.170 *                        0 means that no return value is expected.171 *172 * For methods that return packages, the next entry in the table contains173 * information about the expected structure of the package. This information174 * is saved here (rather than in a separate table) in order to minimize the175 * overall size of the stored data.176 *177 * Note: The additional braces are intended to promote portability.178 *179 * Note2: Table is used by the kernel-resident subsystem, the iASL compiler,180 * and the acpi_help utility.181 *182 * TBD: _PRT - currently ignore reversed entries. Attempt to fix in nsrepair.183 * Possibly fixing package elements like _BIF, etc.184 *185 *****************************************************************************/186 187const union acpi_predefined_info acpi_gbl_predefined_methods[] = {188	{{"_AC0", METHOD_0ARGS,189	  METHOD_RETURNS(ACPI_RTYPE_INTEGER)}},190 191	{{"_AC1", METHOD_0ARGS,192	  METHOD_RETURNS(ACPI_RTYPE_INTEGER)}},193 194	{{"_AC2", METHOD_0ARGS,195	  METHOD_RETURNS(ACPI_RTYPE_INTEGER)}},196 197	{{"_AC3", METHOD_0ARGS,198	  METHOD_RETURNS(ACPI_RTYPE_INTEGER)}},199 200	{{"_AC4", METHOD_0ARGS,201	  METHOD_RETURNS(ACPI_RTYPE_INTEGER)}},202 203	{{"_AC5", METHOD_0ARGS,204	  METHOD_RETURNS(ACPI_RTYPE_INTEGER)}},205 206	{{"_AC6", METHOD_0ARGS,207	  METHOD_RETURNS(ACPI_RTYPE_INTEGER)}},208 209	{{"_AC7", METHOD_0ARGS,210	  METHOD_RETURNS(ACPI_RTYPE_INTEGER)}},211 212	{{"_AC8", METHOD_0ARGS,213	  METHOD_RETURNS(ACPI_RTYPE_INTEGER)}},214 215	{{"_AC9", METHOD_0ARGS,216	  METHOD_RETURNS(ACPI_RTYPE_INTEGER)}},217 218	{{"_ADR", METHOD_0ARGS,219	  METHOD_RETURNS(ACPI_RTYPE_INTEGER)}},220 221	{{"_AEI", METHOD_0ARGS,222	  METHOD_RETURNS(ACPI_RTYPE_BUFFER)}},223 224	{{"_AL0", METHOD_0ARGS,225	  METHOD_RETURNS(ACPI_RTYPE_PACKAGE)}},	/* Variable-length (Refs) */226	PACKAGE_INFO(ACPI_PTYPE1_VAR, ACPI_RTYPE_REFERENCE, 0, 0, 0, 0),227 228	{{"_AL1", METHOD_0ARGS,229	  METHOD_RETURNS(ACPI_RTYPE_PACKAGE)}},	/* Variable-length (Refs) */230	PACKAGE_INFO(ACPI_PTYPE1_VAR, ACPI_RTYPE_REFERENCE, 0, 0, 0, 0),231 232	{{"_AL2", METHOD_0ARGS,233	  METHOD_RETURNS(ACPI_RTYPE_PACKAGE)}},	/* Variable-length (Refs) */234	PACKAGE_INFO(ACPI_PTYPE1_VAR, ACPI_RTYPE_REFERENCE, 0, 0, 0, 0),235 236	{{"_AL3", METHOD_0ARGS,237	  METHOD_RETURNS(ACPI_RTYPE_PACKAGE)}},	/* Variable-length (Refs) */238	PACKAGE_INFO(ACPI_PTYPE1_VAR, ACPI_RTYPE_REFERENCE, 0, 0, 0, 0),239 240	{{"_AL4", METHOD_0ARGS,241	  METHOD_RETURNS(ACPI_RTYPE_PACKAGE)}},	/* Variable-length (Refs) */242	PACKAGE_INFO(ACPI_PTYPE1_VAR, ACPI_RTYPE_REFERENCE, 0, 0, 0, 0),243 244	{{"_AL5", METHOD_0ARGS,245	  METHOD_RETURNS(ACPI_RTYPE_PACKAGE)}},	/* Variable-length (Refs) */246	PACKAGE_INFO(ACPI_PTYPE1_VAR, ACPI_RTYPE_REFERENCE, 0, 0, 0, 0),247 248	{{"_AL6", METHOD_0ARGS,249	  METHOD_RETURNS(ACPI_RTYPE_PACKAGE)}},	/* Variable-length (Refs) */250	PACKAGE_INFO(ACPI_PTYPE1_VAR, ACPI_RTYPE_REFERENCE, 0, 0, 0, 0),251 252	{{"_AL7", METHOD_0ARGS,253	  METHOD_RETURNS(ACPI_RTYPE_PACKAGE)}},	/* Variable-length (Refs) */254	PACKAGE_INFO(ACPI_PTYPE1_VAR, ACPI_RTYPE_REFERENCE, 0, 0, 0, 0),255 256	{{"_AL8", METHOD_0ARGS,257	  METHOD_RETURNS(ACPI_RTYPE_PACKAGE)}},	/* Variable-length (Refs) */258	PACKAGE_INFO(ACPI_PTYPE1_VAR, ACPI_RTYPE_REFERENCE, 0, 0, 0, 0),259 260	{{"_AL9", METHOD_0ARGS,261	  METHOD_RETURNS(ACPI_RTYPE_PACKAGE)}},	/* Variable-length (Refs) */262	PACKAGE_INFO(ACPI_PTYPE1_VAR, ACPI_RTYPE_REFERENCE, 0, 0, 0, 0),263 264	{{"_ALC", METHOD_0ARGS,265	  METHOD_RETURNS(ACPI_RTYPE_INTEGER)}},266 267	{{"_ALI", METHOD_0ARGS,268	  METHOD_RETURNS(ACPI_RTYPE_INTEGER)}},269 270	{{"_ALP", METHOD_0ARGS,271	  METHOD_RETURNS(ACPI_RTYPE_INTEGER)}},272 273	{{"_ALR", METHOD_0ARGS,274	  METHOD_RETURNS(ACPI_RTYPE_PACKAGE)}},	/* Variable-length (Pkgs) each 2 (Ints) */275	PACKAGE_INFO(ACPI_PTYPE2, ACPI_RTYPE_INTEGER, 2, 0, 0, 0),276 277	{{"_ALT", METHOD_0ARGS,278	  METHOD_RETURNS(ACPI_RTYPE_INTEGER)}},279 280	{{"_ART", METHOD_0ARGS,281	  METHOD_RETURNS(ACPI_RTYPE_PACKAGE)}},	/* Variable-length (1 Int(rev), n Pkg (2 Ref/11 Int) */282	PACKAGE_INFO(ACPI_PTYPE2_REV_FIXED, ACPI_RTYPE_REFERENCE, 2,283		     ACPI_RTYPE_INTEGER, 11, 0),284 285	{{"_BBN", METHOD_0ARGS,286	  METHOD_RETURNS(ACPI_RTYPE_INTEGER)}},287 288	{{"_BCL", METHOD_0ARGS,289	  METHOD_RETURNS(ACPI_RTYPE_PACKAGE)}},	/* Variable-length (Ints) */290	PACKAGE_INFO(ACPI_PTYPE1_VAR, ACPI_RTYPE_INTEGER, 0, 0, 0, 0),291 292	{{"_BCM", METHOD_1ARGS(ACPI_TYPE_INTEGER),293	  METHOD_NO_RETURN_VALUE}},294 295	{{"_BCT", METHOD_1ARGS(ACPI_TYPE_INTEGER),296	  METHOD_RETURNS(ACPI_RTYPE_INTEGER)}},297 298	{{"_BDN", METHOD_0ARGS,299	  METHOD_RETURNS(ACPI_RTYPE_INTEGER)}},300 301	{{"_BFS", METHOD_1ARGS(ACPI_TYPE_INTEGER),302	  METHOD_NO_RETURN_VALUE}},303 304	{{"_BIF", METHOD_0ARGS,305	  METHOD_RETURNS(ACPI_RTYPE_PACKAGE)}},	/* Fixed-length (9 Int),(4 Str) */306	PACKAGE_INFO(ACPI_PTYPE1_FIXED, ACPI_RTYPE_INTEGER, 9,307		     ACPI_RTYPE_STRING, 4, 0),308 309	{{"_BIX", METHOD_0ARGS,310	  METHOD_RETURNS(ACPI_RTYPE_PACKAGE)}},	/* Fixed-length (16 Int),(4 Str) */311	PACKAGE_INFO(ACPI_PTYPE_CUSTOM, ACPI_RTYPE_INTEGER, 16,312		     ACPI_RTYPE_STRING, 4, 0),313 314	{{"_BLT",315	  METHOD_3ARGS(ACPI_TYPE_INTEGER, ACPI_TYPE_INTEGER, ACPI_TYPE_INTEGER),316	  METHOD_NO_RETURN_VALUE}},317 318	{{"_BMA", METHOD_1ARGS(ACPI_TYPE_INTEGER),319	  METHOD_RETURNS(ACPI_RTYPE_INTEGER)}},320 321	{{"_BMC", METHOD_1ARGS(ACPI_TYPE_INTEGER),322	  METHOD_NO_RETURN_VALUE}},323 324	{{"_BMD", METHOD_0ARGS,325	  METHOD_RETURNS(ACPI_RTYPE_PACKAGE)}},	/* Fixed-length (5 Int) */326	PACKAGE_INFO(ACPI_PTYPE1_FIXED, ACPI_RTYPE_INTEGER, 5, 0, 0, 0),327 328	{{"_BMS", METHOD_1ARGS(ACPI_TYPE_INTEGER),329	  METHOD_RETURNS(ACPI_RTYPE_INTEGER)}},330 331	{{"_BPC", METHOD_0ARGS,332	  METHOD_RETURNS(ACPI_RTYPE_PACKAGE)}},	/* Fixed-length (4 Int) */333	PACKAGE_INFO(ACPI_PTYPE1_FIXED, ACPI_RTYPE_INTEGER, 4, 0, 0, 0),334 335	{{"_BPS", METHOD_0ARGS,336	  METHOD_RETURNS(ACPI_RTYPE_PACKAGE)}},	/* Fixed-length (5 Int) */337	PACKAGE_INFO(ACPI_PTYPE1_FIXED, ACPI_RTYPE_INTEGER, 5, 0, 0, 0),338 339	{{"_BPT", METHOD_1ARGS(ACPI_TYPE_PACKAGE),340	  METHOD_RETURNS(ACPI_RTYPE_INTEGER)}},341 342	{{"_BQC", METHOD_0ARGS,343	  METHOD_RETURNS(ACPI_RTYPE_INTEGER)}},344 345	{{"_BST", METHOD_0ARGS,346	  METHOD_RETURNS(ACPI_RTYPE_PACKAGE)}},	/* Fixed-length (4 Int) */347	PACKAGE_INFO(ACPI_PTYPE1_FIXED, ACPI_RTYPE_INTEGER, 4, 0, 0, 0),348 349	{{"_BTH", METHOD_1ARGS(ACPI_TYPE_INTEGER),	/* ACPI 6.0 */350	  METHOD_NO_RETURN_VALUE}},351 352	{{"_BTM", METHOD_1ARGS(ACPI_TYPE_INTEGER),353	  METHOD_RETURNS(ACPI_RTYPE_INTEGER)}},354 355	{{"_BTP", METHOD_1ARGS(ACPI_TYPE_INTEGER),356	  METHOD_NO_RETURN_VALUE}},357 358	{{"_CBA", METHOD_0ARGS,359	  METHOD_RETURNS(ACPI_RTYPE_INTEGER)}},	/* See PCI firmware spec 3.0 */360 361	{{"_CBR", METHOD_0ARGS,362	  METHOD_RETURNS(ACPI_RTYPE_PACKAGE)}},	/* Fixed-length (3 Int) */363	PACKAGE_INFO(ACPI_PTYPE1_FIXED, ACPI_RTYPE_INTEGER, 3, 0, 0, 0),364 365	{{"_CCA", METHOD_0ARGS,366	  METHOD_RETURNS(ACPI_RTYPE_INTEGER)}},	/* ACPI 5.1 */367 368	{{"_CDM", METHOD_0ARGS,369	  METHOD_RETURNS(ACPI_RTYPE_INTEGER)}},370 371	{{"_CID", METHOD_0ARGS,372	  METHOD_RETURNS(ACPI_RTYPE_INTEGER | ACPI_RTYPE_STRING | ACPI_RTYPE_PACKAGE)}},	/* Variable-length (Ints/Strs) */373	PACKAGE_INFO(ACPI_PTYPE1_VAR, ACPI_RTYPE_INTEGER | ACPI_RTYPE_STRING, 0,374		     0, 0, 0),375 376	{{"_CLS", METHOD_0ARGS,377	  METHOD_RETURNS(ACPI_RTYPE_PACKAGE)}},	/* Fixed-length (3 Int) */378	PACKAGE_INFO(ACPI_PTYPE1_FIXED, ACPI_RTYPE_INTEGER, 3, 0, 0, 0),379 380	{{"_CPC", METHOD_0ARGS,381	  METHOD_RETURNS(ACPI_RTYPE_PACKAGE)}},	/* Variable-length (Ints/Bufs) */382	PACKAGE_INFO(ACPI_PTYPE1_VAR, ACPI_RTYPE_INTEGER | ACPI_RTYPE_BUFFER, 0,383		     0, 0, 0),384 385	{{"_CR3", METHOD_0ARGS,	/* ACPI 6.0 */386	  METHOD_RETURNS(ACPI_RTYPE_INTEGER)}},387 388	{{"_CRS", METHOD_0ARGS,389	  METHOD_RETURNS(ACPI_RTYPE_BUFFER)}},390 391	{{"_CRT", METHOD_0ARGS,392	  METHOD_RETURNS(ACPI_RTYPE_INTEGER)}},393 394	{{"_CSD", METHOD_0ARGS,395	  METHOD_RETURNS(ACPI_RTYPE_PACKAGE)}},	/* Variable-length (1 Int(n), n-1 Int) */396	PACKAGE_INFO(ACPI_PTYPE2_COUNT, ACPI_RTYPE_INTEGER, 0, 0, 0, 0),397 398	{{"_CST", METHOD_0ARGS,399	  METHOD_RETURNS(ACPI_RTYPE_PACKAGE)}},	/* Variable-length (1 Int(n), n Pkg (1 Buf/3 Int) */400	PACKAGE_INFO(ACPI_PTYPE2_PKG_COUNT, ACPI_RTYPE_BUFFER, 1,401		     ACPI_RTYPE_INTEGER, 3, 0),402 403	{{"_CWS", METHOD_1ARGS(ACPI_TYPE_INTEGER),404	  METHOD_RETURNS(ACPI_RTYPE_INTEGER)}},405 406	{{"_DCK", METHOD_1ARGS(ACPI_TYPE_INTEGER),407	  METHOD_RETURNS(ACPI_RTYPE_INTEGER)}},408 409	{{"_DCS", METHOD_0ARGS,410	  METHOD_RETURNS(ACPI_RTYPE_INTEGER)}},411 412	{{"_DDC", METHOD_1ARGS(ACPI_TYPE_INTEGER),413	  METHOD_RETURNS(ACPI_RTYPE_INTEGER | ACPI_RTYPE_BUFFER)}},414 415	{{"_DDN", METHOD_0ARGS,416	  METHOD_RETURNS(ACPI_RTYPE_STRING)}},417 418	{{"_DEP", METHOD_0ARGS,419	  METHOD_RETURNS(ACPI_RTYPE_PACKAGE)}},	/* Variable-length (Refs) */420	PACKAGE_INFO(ACPI_PTYPE1_VAR, ACPI_RTYPE_REFERENCE, 0, 0, 0, 0),421 422	{{"_DGS", METHOD_0ARGS,423	  METHOD_RETURNS(ACPI_RTYPE_INTEGER)}},424 425	{{"_DIS", METHOD_0ARGS,426	  METHOD_NO_RETURN_VALUE}},427 428	{{"_DLM", METHOD_0ARGS,429	  METHOD_RETURNS(ACPI_RTYPE_PACKAGE)}},	/* Variable-length (Pkgs) each (1 Ref, 0/1 Optional Buf/Ref) */430	PACKAGE_INFO(ACPI_PTYPE2_FIX_VAR, ACPI_RTYPE_REFERENCE, 1,431		     ACPI_RTYPE_REFERENCE | ACPI_RTYPE_BUFFER, 0, 0),432 433	{{"_DMA", METHOD_0ARGS,434	  METHOD_RETURNS(ACPI_RTYPE_BUFFER)}},435 436	{{"_DOD", METHOD_0ARGS,437	  METHOD_RETURNS(ACPI_RTYPE_PACKAGE)}},	/* Variable-length (Ints) */438	PACKAGE_INFO(ACPI_PTYPE1_VAR, ACPI_RTYPE_INTEGER, 0, 0, 0, 0),439 440	{{"_DOS", METHOD_1ARGS(ACPI_TYPE_INTEGER),441	  METHOD_NO_RETURN_VALUE}},442 443	{{"_DSC", METHOD_0ARGS,444	  METHOD_RETURNS(ACPI_RTYPE_INTEGER)}},445 446	{{"_DSD", METHOD_0ARGS,	/* ACPI 6.0 */447	  METHOD_RETURNS(ACPI_RTYPE_PACKAGE)}},	/* Variable-length (Pkgs) each: 1 Buf, 1 Pkg */448	PACKAGE_INFO(ACPI_PTYPE2_UUID_PAIR, ACPI_RTYPE_BUFFER, 1,449		     ACPI_RTYPE_PACKAGE, 1, 0),450 451	{{"_DSM",452	  METHOD_4ARGS(ACPI_TYPE_BUFFER, ACPI_TYPE_INTEGER, ACPI_TYPE_INTEGER,453		       ACPI_TYPE_ANY) | ARG_COUNT_IS_MINIMUM,454	  METHOD_RETURNS(ACPI_RTYPE_ALL)}},	/* Must return a value, but it can be of any type */455 456	{{"_DSS", METHOD_1ARGS(ACPI_TYPE_INTEGER),457	  METHOD_NO_RETURN_VALUE}},458 459	{{"_DSW",460	  METHOD_3ARGS(ACPI_TYPE_INTEGER, ACPI_TYPE_INTEGER, ACPI_TYPE_INTEGER),461	  METHOD_NO_RETURN_VALUE}},462 463	{{"_DTI", METHOD_1ARGS(ACPI_TYPE_INTEGER),464	  METHOD_NO_RETURN_VALUE}},465 466	{{"_EC_", METHOD_0ARGS,467	  METHOD_RETURNS(ACPI_RTYPE_INTEGER)}},468 469	{{"_EDL", METHOD_0ARGS,470	  METHOD_RETURNS(ACPI_RTYPE_PACKAGE)}},	/* Variable-length (Refs) */471	PACKAGE_INFO(ACPI_PTYPE1_VAR, ACPI_RTYPE_REFERENCE, 0, 0, 0, 0),472 473	{{"_EJ0", METHOD_1ARGS(ACPI_TYPE_INTEGER),474	  METHOD_NO_RETURN_VALUE}},475 476	{{"_EJ1", METHOD_1ARGS(ACPI_TYPE_INTEGER),477	  METHOD_NO_RETURN_VALUE}},478 479	{{"_EJ2", METHOD_1ARGS(ACPI_TYPE_INTEGER),480	  METHOD_NO_RETURN_VALUE}},481 482	{{"_EJ3", METHOD_1ARGS(ACPI_TYPE_INTEGER),483	  METHOD_NO_RETURN_VALUE}},484 485	{{"_EJ4", METHOD_1ARGS(ACPI_TYPE_INTEGER),486	  METHOD_NO_RETURN_VALUE}},487 488	{{"_EJD", METHOD_0ARGS,489	  METHOD_RETURNS(ACPI_RTYPE_STRING)}},490 491	{{"_ERR",492	  METHOD_3ARGS(ACPI_TYPE_INTEGER, ACPI_TYPE_STRING, ACPI_TYPE_INTEGER),493	  METHOD_RETURNS(ACPI_RTYPE_INTEGER)}},	/* Internal use only, used by ACPICA test suites */494 495	{{"_EVT", METHOD_1ARGS(ACPI_TYPE_INTEGER),496	  METHOD_NO_RETURN_VALUE}},497 498	{{"_FDE", METHOD_0ARGS,499	  METHOD_RETURNS(ACPI_RTYPE_BUFFER)}},500 501	{{"_FDI", METHOD_0ARGS,502	  METHOD_RETURNS(ACPI_RTYPE_PACKAGE)}},	/* Fixed-length (16 Int) */503	PACKAGE_INFO(ACPI_PTYPE1_FIXED, ACPI_RTYPE_INTEGER, 16, 0, 0, 0),504 505	{{"_FDM", METHOD_1ARGS(ACPI_TYPE_INTEGER),506	  METHOD_NO_RETURN_VALUE}},507 508	{{"_FIF", METHOD_0ARGS,509	  METHOD_RETURNS(ACPI_RTYPE_PACKAGE)}},	/* Fixed-length (4 Int) */510	PACKAGE_INFO(ACPI_PTYPE1_FIXED, ACPI_RTYPE_INTEGER, 4, 0, 0, 0),511 512	{{"_FIT", METHOD_0ARGS,513	  METHOD_RETURNS(ACPI_RTYPE_BUFFER)}},	/* ACPI 6.0 */514 515	{{"_FIX", METHOD_0ARGS,516	  METHOD_RETURNS(ACPI_RTYPE_PACKAGE)}},	/* Variable-length (Ints) */517	PACKAGE_INFO(ACPI_PTYPE1_VAR, ACPI_RTYPE_INTEGER, 0, 0, 0, 0),518 519	{{"_FPS", METHOD_0ARGS,520	  METHOD_RETURNS(ACPI_RTYPE_PACKAGE)}},	/* Variable-length (1 Int(rev), n Pkg (5 Int) */521	PACKAGE_INFO(ACPI_PTYPE2_REV_FIXED, ACPI_RTYPE_INTEGER, 5, 0, 0, 0),522 523	{{"_FSL", METHOD_1ARGS(ACPI_TYPE_INTEGER),524	  METHOD_NO_RETURN_VALUE}},525 526	{{"_FST", METHOD_0ARGS,527	  METHOD_RETURNS(ACPI_RTYPE_PACKAGE)}},	/* Fixed-length (3 Int) */528	PACKAGE_INFO(ACPI_PTYPE1_FIXED, ACPI_RTYPE_INTEGER, 3, 0, 0, 0),529 530	{{"_GAI", METHOD_0ARGS,531	  METHOD_RETURNS(ACPI_RTYPE_INTEGER)}},532 533	{{"_GCP", METHOD_0ARGS,534	  METHOD_RETURNS(ACPI_RTYPE_INTEGER)}},535 536	{{"_GHL", METHOD_0ARGS,537	  METHOD_RETURNS(ACPI_RTYPE_INTEGER)}},538 539	{{"_GLK", METHOD_0ARGS,540	  METHOD_RETURNS(ACPI_RTYPE_INTEGER)}},541 542	{{"_GPD", METHOD_0ARGS,543	  METHOD_RETURNS(ACPI_RTYPE_INTEGER)}},544 545	{{"_GPE", METHOD_0ARGS,546	  METHOD_RETURNS(ACPI_RTYPE_INTEGER)}},	/* _GPE method, not _GPE scope */547 548	{{"_GRT", METHOD_0ARGS,549	  METHOD_RETURNS(ACPI_RTYPE_BUFFER)}},550 551	{{"_GSB", METHOD_0ARGS,552	  METHOD_RETURNS(ACPI_RTYPE_INTEGER)}},553 554	{{"_GTF", METHOD_0ARGS,555	  METHOD_RETURNS(ACPI_RTYPE_BUFFER)}},556 557	{{"_GTM", METHOD_0ARGS,558	  METHOD_RETURNS(ACPI_RTYPE_BUFFER)}},559 560	{{"_GTS", METHOD_1ARGS(ACPI_TYPE_INTEGER),561	  METHOD_NO_RETURN_VALUE}},562 563	{{"_GWS", METHOD_1ARGS(ACPI_TYPE_INTEGER),564	  METHOD_RETURNS(ACPI_RTYPE_INTEGER)}},565 566	{{"_HID", METHOD_0ARGS,567	  METHOD_RETURNS(ACPI_RTYPE_INTEGER | ACPI_RTYPE_STRING)}},568 569	{{"_HMA", METHOD_0ARGS,570	  METHOD_RETURNS(ACPI_RTYPE_BUFFER)}},571 572	{{"_HOT", METHOD_0ARGS,573	  METHOD_RETURNS(ACPI_RTYPE_INTEGER)}},574 575	{{"_HPP", METHOD_0ARGS,576	  METHOD_RETURNS(ACPI_RTYPE_PACKAGE)}},	/* Fixed-length (4 Int) */577	PACKAGE_INFO(ACPI_PTYPE1_FIXED, ACPI_RTYPE_INTEGER, 4, 0, 0, 0),578 579	/*580	 * For _HPX, a single package is returned, containing a variable-length number581	 * of subpackages. Each subpackage contains a PCI record setting.582	 * There are several different type of record settings, of different583	 * lengths, but all elements of all settings are Integers.584	 */585	{{"_HPX", METHOD_0ARGS,586	  METHOD_RETURNS(ACPI_RTYPE_PACKAGE)}},	/* Variable-length (Pkgs) each (var Ints) */587	PACKAGE_INFO(ACPI_PTYPE2_MIN, ACPI_RTYPE_INTEGER, 5, 0, 0, 0),588 589	{{"_HRV", METHOD_0ARGS,590	  METHOD_RETURNS(ACPI_RTYPE_INTEGER)}},591 592	{{"_IFT", METHOD_0ARGS,593	  METHOD_RETURNS(ACPI_RTYPE_INTEGER)}},	/* See IPMI spec */594 595	{{"_INI", METHOD_0ARGS,596	  METHOD_NO_RETURN_VALUE}},597 598	{{"_IRC", METHOD_0ARGS,599	  METHOD_NO_RETURN_VALUE}},600 601	{{"_LCK", METHOD_1ARGS(ACPI_TYPE_INTEGER),602	  METHOD_NO_RETURN_VALUE}},603 604	{{"_LID", METHOD_0ARGS,605	  METHOD_RETURNS(ACPI_RTYPE_INTEGER)}},606 607	{{"_LPD", METHOD_0ARGS,608	  METHOD_RETURNS(ACPI_RTYPE_PACKAGE)}},	/* Variable-length (1 Int(rev), n Pkg (2 Int) */609	PACKAGE_INFO(ACPI_PTYPE2_REV_FIXED, ACPI_RTYPE_INTEGER, 2, 0, 0, 0),610 611	{{"_LPI", METHOD_0ARGS,	/* ACPI 6.0 */612	  METHOD_RETURNS(ACPI_RTYPE_PACKAGE)}},	/* Variable-length (3 Int, n Pkg (10 Int/Buf) */613	PACKAGE_INFO(ACPI_PTYPE2_VAR_VAR, ACPI_RTYPE_INTEGER, 3,614		     ACPI_RTYPE_INTEGER | ACPI_RTYPE_BUFFER | ACPI_RTYPE_STRING,615		     10, 0),616 617	{{"_LSI", METHOD_0ARGS,618	  METHOD_RETURNS(ACPI_RTYPE_PACKAGE)}},619	PACKAGE_INFO(ACPI_PTYPE1_FIXED, ACPI_RTYPE_INTEGER, 3, 0, 0, 0),620 621	{{"_LSR", METHOD_2ARGS(ACPI_TYPE_INTEGER, ACPI_TYPE_INTEGER),622	  METHOD_RETURNS(ACPI_RTYPE_PACKAGE)}},623	PACKAGE_INFO(ACPI_PTYPE1_FIXED, ACPI_RTYPE_INTEGER, 1,624		     ACPI_RTYPE_BUFFER, 1, 0),625 626	{{"_LSW",627	  METHOD_3ARGS(ACPI_TYPE_INTEGER, ACPI_TYPE_INTEGER, ACPI_TYPE_BUFFER),628	  METHOD_RETURNS(ACPI_RTYPE_INTEGER)}},629 630	{{"_MAT", METHOD_0ARGS,631	  METHOD_RETURNS(ACPI_RTYPE_BUFFER)}},632 633	{{"_MBM", METHOD_0ARGS,634	  METHOD_RETURNS(ACPI_RTYPE_PACKAGE)}},	/* Fixed-length (8 Int) */635	PACKAGE_INFO(ACPI_PTYPE1_FIXED, ACPI_RTYPE_INTEGER, 8, 0, 0, 0),636 637	{{"_MLS", METHOD_0ARGS,638	  METHOD_RETURNS(ACPI_RTYPE_PACKAGE)}},	/* Variable-length (Pkgs) each (1 Str/1 Buf) */639	PACKAGE_INFO(ACPI_PTYPE2, ACPI_RTYPE_STRING, 1, ACPI_RTYPE_BUFFER, 1,640		     0),641 642	{{"_MSG", METHOD_1ARGS(ACPI_TYPE_INTEGER),643	  METHOD_NO_RETURN_VALUE}},644 645	{{"_MSM",646	  METHOD_4ARGS(ACPI_TYPE_INTEGER, ACPI_TYPE_INTEGER, ACPI_TYPE_INTEGER,647		       ACPI_TYPE_INTEGER),648	  METHOD_RETURNS(ACPI_RTYPE_INTEGER)}},649 650	{{"_MTL", METHOD_0ARGS,	/* ACPI 6.0 */651	  METHOD_RETURNS(ACPI_RTYPE_INTEGER)}},652 653	{{"_NBS", METHOD_0ARGS,	/* ACPI 6.3 */654	  METHOD_RETURNS(ACPI_RTYPE_BUFFER)}},655 656	{{"_NCH", METHOD_0ARGS,	/* ACPI 6.3 */657	  METHOD_RETURNS(ACPI_RTYPE_BUFFER)}},658 659	{{"_NIC", METHOD_0ARGS,	/* ACPI 6.3 */660	  METHOD_RETURNS(ACPI_RTYPE_BUFFER)}},661 662	{{"_NIG", METHOD_0ARGS, /* ACPI 6.3 */663	  METHOD_RETURNS(ACPI_RTYPE_BUFFER)}},664 665	{{"_NIH", METHOD_1ARGS(ACPI_TYPE_BUFFER), /* ACPI 6.3 */666	  METHOD_RETURNS(ACPI_RTYPE_BUFFER)}},667 668	{{"_NTT", METHOD_0ARGS,669	  METHOD_RETURNS(ACPI_RTYPE_INTEGER)}},670 671	{{"_OFF", METHOD_0ARGS,672	  METHOD_NO_RETURN_VALUE}},673 674	{{"_ON_", METHOD_0ARGS,675	  METHOD_NO_RETURN_VALUE}},676 677	{{"_OS_", METHOD_0ARGS,678	  METHOD_RETURNS(ACPI_RTYPE_STRING)}},679 680	{{"_OSC",681	  METHOD_4ARGS(ACPI_TYPE_BUFFER, ACPI_TYPE_INTEGER, ACPI_TYPE_INTEGER,682		       ACPI_TYPE_BUFFER),683	  METHOD_RETURNS(ACPI_RTYPE_BUFFER)}},684 685	{{"_OST",686	  METHOD_3ARGS(ACPI_TYPE_INTEGER, ACPI_TYPE_INTEGER, ACPI_TYPE_BUFFER),687	  METHOD_NO_RETURN_VALUE}},688 689	{{"_PAI", METHOD_1ARGS(ACPI_TYPE_INTEGER),690	  METHOD_RETURNS(ACPI_RTYPE_INTEGER)}},691 692	{{"_PCL", METHOD_0ARGS,693	  METHOD_RETURNS(ACPI_RTYPE_PACKAGE)}},	/* Variable-length (Refs) */694	PACKAGE_INFO(ACPI_PTYPE1_VAR, ACPI_RTYPE_REFERENCE, 0, 0, 0, 0),695 696	{{"_PCT", METHOD_0ARGS,697	  METHOD_RETURNS(ACPI_RTYPE_PACKAGE)}},	/* Fixed-length (2 Buf) */698	PACKAGE_INFO(ACPI_PTYPE1_FIXED, ACPI_RTYPE_BUFFER, 2, 0, 0, 0),699 700	{{"_PDC", METHOD_1ARGS(ACPI_TYPE_BUFFER),701	  METHOD_NO_RETURN_VALUE}},702 703	{{"_PDL", METHOD_0ARGS,704	  METHOD_RETURNS(ACPI_RTYPE_INTEGER)}},705 706	{{"_PIC", METHOD_1ARGS(ACPI_TYPE_INTEGER),707	  METHOD_NO_RETURN_VALUE}},708 709	{{"_PIF", METHOD_0ARGS,710	  METHOD_RETURNS(ACPI_RTYPE_PACKAGE)}},	/* Fixed-length (3 Int),(3 Str) */711	PACKAGE_INFO(ACPI_PTYPE1_FIXED, ACPI_RTYPE_INTEGER, 3,712		     ACPI_RTYPE_STRING, 3, 0),713 714	{{"_PLD", METHOD_0ARGS,715	  METHOD_RETURNS(ACPI_RTYPE_PACKAGE)}},	/* Variable-length (Bufs) */716	PACKAGE_INFO(ACPI_PTYPE1_VAR, ACPI_RTYPE_BUFFER, 0, 0, 0, 0),717 718	{{"_PMC", METHOD_0ARGS,719	  METHOD_RETURNS(ACPI_RTYPE_PACKAGE)}},	/* Fixed-length (11 Int),(3 Str) */720	PACKAGE_INFO(ACPI_PTYPE1_FIXED, ACPI_RTYPE_INTEGER, 11,721		     ACPI_RTYPE_STRING, 3, 0),722 723	{{"_PMD", METHOD_0ARGS,724	  METHOD_RETURNS(ACPI_RTYPE_PACKAGE)}},	/* Variable-length (Refs) */725	PACKAGE_INFO(ACPI_PTYPE1_VAR, ACPI_RTYPE_REFERENCE, 0, 0, 0, 0),726 727	{{"_PMM", METHOD_0ARGS,728	  METHOD_RETURNS(ACPI_RTYPE_INTEGER)}},729 730	{{"_PPC", METHOD_0ARGS,731	  METHOD_RETURNS(ACPI_RTYPE_INTEGER)}},732 733	{{"_PPE", METHOD_0ARGS,734	  METHOD_RETURNS(ACPI_RTYPE_INTEGER)}},	/* See dig64 spec */735 736	{{"_PR0", METHOD_0ARGS,737	  METHOD_RETURNS(ACPI_RTYPE_PACKAGE)}},	/* Variable-length (Refs) */738	PACKAGE_INFO(ACPI_PTYPE1_VAR, ACPI_RTYPE_REFERENCE, 0, 0, 0, 0),739 740	{{"_PR1", METHOD_0ARGS,741	  METHOD_RETURNS(ACPI_RTYPE_PACKAGE)}},	/* Variable-length (Refs) */742	PACKAGE_INFO(ACPI_PTYPE1_VAR, ACPI_RTYPE_REFERENCE, 0, 0, 0, 0),743 744	{{"_PR2", METHOD_0ARGS,745	  METHOD_RETURNS(ACPI_RTYPE_PACKAGE)}},	/* Variable-length (Refs) */746	PACKAGE_INFO(ACPI_PTYPE1_VAR, ACPI_RTYPE_REFERENCE, 0, 0, 0, 0),747 748	{{"_PR3", METHOD_0ARGS,749	  METHOD_RETURNS(ACPI_RTYPE_PACKAGE)}},	/* Variable-length (Refs) */750	PACKAGE_INFO(ACPI_PTYPE1_VAR, ACPI_RTYPE_REFERENCE, 0, 0, 0, 0),751 752	{{"_PRE", METHOD_0ARGS,753	  METHOD_RETURNS(ACPI_RTYPE_PACKAGE)}},	/* Variable-length (Refs) */754	PACKAGE_INFO(ACPI_PTYPE1_VAR, ACPI_RTYPE_REFERENCE, 0, 0, 0, 0),755 756	{{"_PRL", METHOD_0ARGS,757	  METHOD_RETURNS(ACPI_RTYPE_PACKAGE)}},	/* Variable-length (Refs) */758	PACKAGE_INFO(ACPI_PTYPE1_VAR, ACPI_RTYPE_REFERENCE, 0, 0, 0, 0),759 760	{{"_PRR", METHOD_0ARGS,	/* ACPI 6.0 */761	  METHOD_RETURNS(ACPI_RTYPE_PACKAGE)}},	/* Fixed-length (1 Ref) */762	PACKAGE_INFO(ACPI_PTYPE1_FIXED, ACPI_RTYPE_REFERENCE, 1, 0, 0, 0),763 764	{{"_PRS", METHOD_0ARGS,765	  METHOD_RETURNS(ACPI_RTYPE_BUFFER)}},766 767	/*768	 * For _PRT, many BIOSs reverse the 3rd and 4th Package elements (Source769	 * and source_index). This bug is so prevalent that there is code in the770	 * ACPICA Resource Manager to detect this and switch them back. For now,771	 * do not allow and issue a warning. To allow this and eliminate the772	 * warning, add the ACPI_RTYPE_REFERENCE type to the 4th element (index 3)773	 * in the statement below.774	 */775	{{"_PRT", METHOD_0ARGS,776	  METHOD_RETURNS(ACPI_RTYPE_PACKAGE)}},	/* Variable-length (Pkgs) each (4): Int,Int,Int/Ref,Int */777	PACKAGE_INFO(ACPI_PTYPE2_FIXED, 4, ACPI_RTYPE_INTEGER,778		     ACPI_RTYPE_INTEGER,779		     ACPI_RTYPE_INTEGER | ACPI_RTYPE_REFERENCE,780		     ACPI_RTYPE_INTEGER),781 782	{{"_PRW", METHOD_0ARGS,783	  METHOD_RETURNS(ACPI_RTYPE_PACKAGE)}},	/* Variable-length (Pkgs) each: Pkg/Int,Int,[Variable-length Refs] (Pkg is Ref/Int) */784	PACKAGE_INFO(ACPI_PTYPE1_OPTION, 2,785		     ACPI_RTYPE_INTEGER | ACPI_RTYPE_PACKAGE,786		     ACPI_RTYPE_INTEGER, ACPI_RTYPE_REFERENCE, 0),787 788	{{"_PS0", METHOD_0ARGS,789	  METHOD_NO_RETURN_VALUE}},790 791	{{"_PS1", METHOD_0ARGS,792	  METHOD_NO_RETURN_VALUE}},793 794	{{"_PS2", METHOD_0ARGS,795	  METHOD_NO_RETURN_VALUE}},796 797	{{"_PS3", METHOD_0ARGS,798	  METHOD_NO_RETURN_VALUE}},799 800	{{"_PSC", METHOD_0ARGS,801	  METHOD_RETURNS(ACPI_RTYPE_INTEGER)}},802 803	{{"_PSD", METHOD_0ARGS,804	  METHOD_RETURNS(ACPI_RTYPE_PACKAGE)}},	/* Variable-length (Pkgs) each (5 Int) with count */805	PACKAGE_INFO(ACPI_PTYPE2_COUNT, ACPI_RTYPE_INTEGER, 0, 0, 0, 0),806 807	{{"_PSE", METHOD_1ARGS(ACPI_TYPE_INTEGER),808	  METHOD_NO_RETURN_VALUE}},809 810	{{"_PSL", METHOD_0ARGS,811	  METHOD_RETURNS(ACPI_RTYPE_PACKAGE)}},	/* Variable-length (Refs) */812	PACKAGE_INFO(ACPI_PTYPE1_VAR, ACPI_RTYPE_REFERENCE, 0, 0, 0, 0),813 814	{{"_PSR", METHOD_0ARGS,815	  METHOD_RETURNS(ACPI_RTYPE_INTEGER)}},816 817	{{"_PSS", METHOD_0ARGS,818	  METHOD_RETURNS(ACPI_RTYPE_PACKAGE)}},	/* Variable-length (Pkgs) each (6 Int) */819	PACKAGE_INFO(ACPI_PTYPE2, ACPI_RTYPE_INTEGER, 6, 0, 0, 0),820 821	{{"_PSV", METHOD_0ARGS,822	  METHOD_RETURNS(ACPI_RTYPE_INTEGER)}},823 824	{{"_PSW", METHOD_1ARGS(ACPI_TYPE_INTEGER),825	  METHOD_NO_RETURN_VALUE}},826 827	{{"_PTC", METHOD_0ARGS,828	  METHOD_RETURNS(ACPI_RTYPE_PACKAGE)}},	/* Fixed-length (2 Buf) */829	PACKAGE_INFO(ACPI_PTYPE1_FIXED, ACPI_RTYPE_BUFFER, 2, 0, 0, 0),830 831	{{"_PTP", METHOD_2ARGS(ACPI_TYPE_INTEGER, ACPI_TYPE_INTEGER),832	  METHOD_RETURNS(ACPI_RTYPE_INTEGER)}},833 834	{{"_PTS", METHOD_1ARGS(ACPI_TYPE_INTEGER),835	  METHOD_NO_RETURN_VALUE}},836 837	{{"_PUR", METHOD_0ARGS,838	  METHOD_RETURNS(ACPI_RTYPE_PACKAGE)}},	/* Fixed-length (2 Int) */839	PACKAGE_INFO(ACPI_PTYPE1_FIXED, ACPI_RTYPE_INTEGER, 2, 0, 0, 0),840 841	{{"_PXM", METHOD_0ARGS,842	  METHOD_RETURNS(ACPI_RTYPE_INTEGER)}},843 844	{{"_RDI", METHOD_0ARGS,	/* ACPI 6.0 */845	  METHOD_RETURNS(ACPI_RTYPE_PACKAGE)}},	/* Variable-length (1 Int, n Pkg (m Ref)) */846	PACKAGE_INFO(ACPI_PTYPE2_VAR_VAR, ACPI_RTYPE_INTEGER, 1,847		     ACPI_RTYPE_REFERENCE, 0, 0),848 849	{{"_REG", METHOD_2ARGS(ACPI_TYPE_INTEGER, ACPI_TYPE_INTEGER),850	  METHOD_NO_RETURN_VALUE}},851 852	{{"_REV", METHOD_0ARGS,853	  METHOD_RETURNS(ACPI_RTYPE_INTEGER)}},854 855	{{"_RMV", METHOD_0ARGS,856	  METHOD_RETURNS(ACPI_RTYPE_INTEGER)}},857 858	{{"_ROM", METHOD_2ARGS(ACPI_TYPE_INTEGER, ACPI_TYPE_INTEGER),859	  METHOD_RETURNS(ACPI_RTYPE_BUFFER)}},860 861	{{"_RST", METHOD_0ARGS,	/* ACPI 6.0 */862	  METHOD_NO_RETURN_VALUE}},863 864	{{"_RTV", METHOD_0ARGS,865	  METHOD_RETURNS(ACPI_RTYPE_INTEGER)}},866 867	/*868	 * For _S0_ through _S5_, the ACPI spec defines a return Package869	 * containing 1 Integer, but most DSDTs have it wrong - 2,3, or 4 integers.870	 * Allow this by making the objects "Variable-length length", but all elements871	 * must be Integers.872	 */873	{{"_S0_", METHOD_0ARGS,874	  METHOD_RETURNS(ACPI_RTYPE_PACKAGE)}},	/* Fixed-length (1 Int) */875	PACKAGE_INFO(ACPI_PTYPE1_VAR, ACPI_RTYPE_INTEGER, 1, 0, 0, 0),876 877	{{"_S1_", METHOD_0ARGS,878	  METHOD_RETURNS(ACPI_RTYPE_PACKAGE)}},	/* Fixed-length (1 Int) */879	PACKAGE_INFO(ACPI_PTYPE1_VAR, ACPI_RTYPE_INTEGER, 1, 0, 0, 0),880 881	{{"_S2_", METHOD_0ARGS,882	  METHOD_RETURNS(ACPI_RTYPE_PACKAGE)}},	/* Fixed-length (1 Int) */883	PACKAGE_INFO(ACPI_PTYPE1_VAR, ACPI_RTYPE_INTEGER, 1, 0, 0, 0),884 885	{{"_S3_", METHOD_0ARGS,886	  METHOD_RETURNS(ACPI_RTYPE_PACKAGE)}},	/* Fixed-length (1 Int) */887	PACKAGE_INFO(ACPI_PTYPE1_VAR, ACPI_RTYPE_INTEGER, 1, 0, 0, 0),888 889	{{"_S4_", METHOD_0ARGS,890	  METHOD_RETURNS(ACPI_RTYPE_PACKAGE)}},	/* Fixed-length (1 Int) */891	PACKAGE_INFO(ACPI_PTYPE1_VAR, ACPI_RTYPE_INTEGER, 1, 0, 0, 0),892 893	{{"_S5_", METHOD_0ARGS,894	  METHOD_RETURNS(ACPI_RTYPE_PACKAGE)}},	/* Fixed-length (1 Int) */895	PACKAGE_INFO(ACPI_PTYPE1_VAR, ACPI_RTYPE_INTEGER, 1, 0, 0, 0),896 897	{{"_S1D", METHOD_0ARGS,898	  METHOD_RETURNS(ACPI_RTYPE_INTEGER)}},899 900	{{"_S2D", METHOD_0ARGS,901	  METHOD_RETURNS(ACPI_RTYPE_INTEGER)}},902 903	{{"_S3D", METHOD_0ARGS,904	  METHOD_RETURNS(ACPI_RTYPE_INTEGER)}},905 906	{{"_S4D", METHOD_0ARGS,907	  METHOD_RETURNS(ACPI_RTYPE_INTEGER)}},908 909	{{"_S0W", METHOD_0ARGS,910	  METHOD_RETURNS(ACPI_RTYPE_INTEGER)}},911 912	{{"_S1W", METHOD_0ARGS,913	  METHOD_RETURNS(ACPI_RTYPE_INTEGER)}},914 915	{{"_S2W", METHOD_0ARGS,916	  METHOD_RETURNS(ACPI_RTYPE_INTEGER)}},917 918	{{"_S3W", METHOD_0ARGS,919	  METHOD_RETURNS(ACPI_RTYPE_INTEGER)}},920 921	{{"_S4W", METHOD_0ARGS,922	  METHOD_RETURNS(ACPI_RTYPE_INTEGER)}},923 924	{{"_SBA", METHOD_0ARGS,925	  METHOD_RETURNS(ACPI_RTYPE_PACKAGE)}},	/* Fixed-length (4 Int) */926	PACKAGE_INFO(ACPI_PTYPE1_FIXED, ACPI_RTYPE_INTEGER, 4, 0, 0, 0),927 928	{{"_SBI", METHOD_0ARGS,929	  METHOD_RETURNS(ACPI_RTYPE_PACKAGE)}},	/* Fixed-length (1 Int, 1 Buf) */930	PACKAGE_INFO(ACPI_PTYPE1_FIXED, ACPI_RTYPE_INTEGER, 1,931		     ACPI_RTYPE_BUFFER, 1, 0),932 933	{{"_SBR",934	  METHOD_3ARGS(ACPI_TYPE_INTEGER, ACPI_TYPE_INTEGER,935			ACPI_TYPE_INTEGER),936	   METHOD_RETURNS(ACPI_RTYPE_PACKAGE)}},	/* Fixed-length (2 Int) */937	PACKAGE_INFO(ACPI_PTYPE1_FIXED, ACPI_RTYPE_INTEGER, 2,938		     ACPI_RTYPE_BUFFER | ACPI_RTYPE_INTEGER, 1, 0),939 940	{{"_SBS", METHOD_0ARGS,941	  METHOD_RETURNS(ACPI_RTYPE_INTEGER)}},942 943	{{"_SBT",944	  METHOD_4ARGS(ACPI_TYPE_INTEGER, ACPI_TYPE_INTEGER, ACPI_TYPE_INTEGER,945			ACPI_TYPE_ANY),946	   METHOD_RETURNS(ACPI_RTYPE_PACKAGE)}},	/* Fixed-length (2 Int, 1 Buf | Int) */947	PACKAGE_INFO(ACPI_PTYPE1_FIXED, ACPI_RTYPE_INTEGER, 2,948		     ACPI_RTYPE_BUFFER | ACPI_RTYPE_INTEGER, 1, 0),949 950	{{"_SBW",951	  METHOD_5ARGS(ACPI_TYPE_INTEGER, ACPI_TYPE_INTEGER, ACPI_TYPE_INTEGER,952			ACPI_TYPE_INTEGER, ACPI_TYPE_ANY),953	   METHOD_RETURNS(ACPI_RTYPE_PACKAGE)}},954	PACKAGE_INFO(ACPI_PTYPE1_FIXED, ACPI_RTYPE_BUFFER | ACPI_RTYPE_INTEGER,955		     1, 0, 0, 0),956 957	{{"_SCP", METHOD_1ARGS(ACPI_TYPE_INTEGER) | ARG_COUNT_IS_MINIMUM,958	  METHOD_NO_RETURN_VALUE}},	/* Acpi 1.0 allowed 1 integer arg. Acpi 3.0 expanded to 3 args. Allow both. */959 960	{{"_SDD", METHOD_1ARGS(ACPI_TYPE_BUFFER),961	  METHOD_NO_RETURN_VALUE}},962 963	{{"_SEG", METHOD_0ARGS,964	  METHOD_RETURNS(ACPI_RTYPE_INTEGER)}},965 966	{{"_SHL", METHOD_1ARGS(ACPI_TYPE_INTEGER),967	  METHOD_RETURNS(ACPI_RTYPE_INTEGER)}},968 969	{{"_SLI", METHOD_0ARGS,970	  METHOD_RETURNS(ACPI_RTYPE_BUFFER)}},971 972	{{"_SPD", METHOD_1ARGS(ACPI_TYPE_INTEGER),973	  METHOD_RETURNS(ACPI_RTYPE_INTEGER)}},974 975	{{"_SRS", METHOD_1ARGS(ACPI_TYPE_BUFFER),976	  METHOD_NO_RETURN_VALUE}},977 978	{{"_SRT", METHOD_1ARGS(ACPI_TYPE_BUFFER),979	  METHOD_RETURNS(ACPI_RTYPE_INTEGER)}},980 981	{{"_SRV", METHOD_0ARGS,982	  METHOD_RETURNS(ACPI_RTYPE_INTEGER)}},	/* See IPMI spec */983 984	{{"_SST", METHOD_1ARGS(ACPI_TYPE_INTEGER),985	  METHOD_NO_RETURN_VALUE}},986 987	{{"_STA", METHOD_0ARGS,988	  METHOD_RETURNS(ACPI_RTYPE_INTEGER)}},989 990	{{"_STM",991	  METHOD_3ARGS(ACPI_TYPE_BUFFER, ACPI_TYPE_BUFFER, ACPI_TYPE_BUFFER),992	  METHOD_NO_RETURN_VALUE}},993 994	{{"_STP", METHOD_2ARGS(ACPI_TYPE_INTEGER, ACPI_TYPE_INTEGER),995	  METHOD_RETURNS(ACPI_RTYPE_INTEGER)}},996 997	{{"_STR", METHOD_0ARGS,998	  METHOD_RETURNS(ACPI_RTYPE_BUFFER)}},999 1000	{{"_STV", METHOD_2ARGS(ACPI_TYPE_INTEGER, ACPI_TYPE_INTEGER),1001	  METHOD_RETURNS(ACPI_RTYPE_INTEGER)}},1002 1003	{{"_SUB", METHOD_0ARGS,1004	  METHOD_RETURNS(ACPI_RTYPE_STRING)}},1005 1006	{{"_SUN", METHOD_0ARGS,1007	  METHOD_RETURNS(ACPI_RTYPE_INTEGER)}},1008 1009	{{"_SWS", METHOD_0ARGS,1010	  METHOD_RETURNS(ACPI_RTYPE_INTEGER)}},1011 1012	{{"_TC1", METHOD_0ARGS,1013	  METHOD_RETURNS(ACPI_RTYPE_INTEGER)}},1014 1015	{{"_TC2", METHOD_0ARGS,1016	  METHOD_RETURNS(ACPI_RTYPE_INTEGER)}},1017 1018	{{"_TDL", METHOD_0ARGS,1019	  METHOD_RETURNS(ACPI_RTYPE_INTEGER)}},1020 1021	{{"_TFP", METHOD_0ARGS,	/* ACPI 6.0 */1022	  METHOD_RETURNS(ACPI_RTYPE_INTEGER)}},1023 1024	{{"_TIP", METHOD_1ARGS(ACPI_TYPE_INTEGER),1025	  METHOD_RETURNS(ACPI_RTYPE_INTEGER)}},1026 1027	{{"_TIV", METHOD_1ARGS(ACPI_TYPE_INTEGER),1028	  METHOD_RETURNS(ACPI_RTYPE_INTEGER)}},1029 1030	{{"_TMP", METHOD_0ARGS,1031	  METHOD_RETURNS(ACPI_RTYPE_INTEGER)}},1032 1033	{{"_TPC", METHOD_0ARGS,1034	  METHOD_RETURNS(ACPI_RTYPE_INTEGER)}},1035 1036	{{"_TPT", METHOD_1ARGS(ACPI_TYPE_INTEGER),1037	  METHOD_NO_RETURN_VALUE}},1038 1039	{{"_TRT", METHOD_0ARGS,1040	  METHOD_RETURNS(ACPI_RTYPE_PACKAGE)}},	/* Variable-length (Pkgs) each 2 Ref/6 Int */1041	PACKAGE_INFO(ACPI_PTYPE2, ACPI_RTYPE_REFERENCE, 2, ACPI_RTYPE_INTEGER,1042		     6, 0),1043 1044	{{"_TSD", METHOD_0ARGS,1045	  METHOD_RETURNS(ACPI_RTYPE_PACKAGE)}},	/* Variable-length (Pkgs) each 5 Int with count */1046	PACKAGE_INFO(ACPI_PTYPE2_COUNT, ACPI_RTYPE_INTEGER, 5, 0, 0, 0),1047 1048	{{"_TSN", METHOD_0ARGS,	/* ACPI 6.0 */1049	  METHOD_RETURNS(ACPI_RTYPE_REFERENCE)}},1050 1051	{{"_TSP", METHOD_0ARGS,1052	  METHOD_RETURNS(ACPI_RTYPE_INTEGER)}},1053 1054	{{"_TSS", METHOD_0ARGS,1055	  METHOD_RETURNS(ACPI_RTYPE_PACKAGE)}},	/* Variable-length (Pkgs) each 5 Int */1056	PACKAGE_INFO(ACPI_PTYPE2, ACPI_RTYPE_INTEGER, 5, 0, 0, 0),1057 1058	{{"_TST", METHOD_0ARGS,1059	  METHOD_RETURNS(ACPI_RTYPE_INTEGER)}},1060 1061	{{"_TTS", METHOD_1ARGS(ACPI_TYPE_INTEGER),1062	  METHOD_NO_RETURN_VALUE}},1063 1064	{{"_TZD", METHOD_0ARGS,1065	  METHOD_RETURNS(ACPI_RTYPE_PACKAGE)}},	/* Variable-length (Refs) */1066	PACKAGE_INFO(ACPI_PTYPE1_VAR, ACPI_RTYPE_REFERENCE, 0, 0, 0, 0),1067 1068	{{"_TZM", METHOD_0ARGS,1069	  METHOD_RETURNS(ACPI_RTYPE_REFERENCE)}},1070 1071	{{"_TZP", METHOD_0ARGS,1072	  METHOD_RETURNS(ACPI_RTYPE_INTEGER)}},1073 1074	{{"_UID", METHOD_0ARGS,1075	  METHOD_RETURNS(ACPI_RTYPE_INTEGER | ACPI_RTYPE_STRING)}},1076 1077	{{"_UPC", METHOD_0ARGS,1078	  METHOD_RETURNS(ACPI_RTYPE_PACKAGE)}},	/* Fixed-length (4 Int) */1079	PACKAGE_INFO(ACPI_PTYPE1_FIXED, ACPI_RTYPE_INTEGER, 4, 0, 0, 0),1080 1081	{{"_UPD", METHOD_0ARGS,1082	  METHOD_RETURNS(ACPI_RTYPE_INTEGER)}},1083 1084	{{"_UPP", METHOD_0ARGS,1085	  METHOD_RETURNS(ACPI_RTYPE_INTEGER)}},1086 1087	{{"_VPO", METHOD_0ARGS,1088	  METHOD_RETURNS(ACPI_RTYPE_INTEGER)}},1089 1090	/* Acpi 1.0 defined _WAK with no return value. Later, it was changed to return a package */1091 1092	{{"_WAK", METHOD_1ARGS(ACPI_TYPE_INTEGER),1093	  METHOD_RETURNS(ACPI_RTYPE_NONE | ACPI_RTYPE_INTEGER |1094			 ACPI_RTYPE_PACKAGE)}},1095	PACKAGE_INFO(ACPI_PTYPE1_FIXED, ACPI_RTYPE_INTEGER, 2, 0, 0, 0),	/* Fixed-length (2 Int), but is optional */1096 1097	/* _WDG/_WED are MS extensions defined by "Windows Instrumentation" */1098 1099	{{"_WDG", METHOD_0ARGS,1100	  METHOD_RETURNS(ACPI_RTYPE_BUFFER)}},1101 1102	{{"_WED", METHOD_1ARGS(ACPI_TYPE_INTEGER),1103	  METHOD_RETURNS(ACPI_RTYPE_INTEGER | ACPI_RTYPE_STRING |1104			 ACPI_RTYPE_BUFFER)}},1105 1106	{{"_WPC", METHOD_0ARGS,1107	  METHOD_RETURNS(ACPI_RTYPE_INTEGER)}},	/* ACPI 6.1 */1108 1109	{{"_WPP", METHOD_0ARGS,1110	  METHOD_RETURNS(ACPI_RTYPE_INTEGER)}},	/* ACPI 6.1 */1111 1112	PACKAGE_INFO(0, 0, 0, 0, 0, 0)	/* Table terminator */1113};1114#else1115extern const union acpi_predefined_info acpi_gbl_predefined_methods[];1116#endif1117 1118#if (defined ACPI_CREATE_RESOURCE_TABLE && defined ACPI_APPLICATION)1119/******************************************************************************1120 *1121 * Predefined names for use in Resource Descriptors. These names do not1122 * appear in the global Predefined Name table (since these names never1123 * appear in actual AML byte code, only in the original ASL)1124 *1125 * Note: Used by iASL compiler and acpi_help utility only.1126 *1127 *****************************************************************************/1128 1129const union acpi_predefined_info acpi_gbl_resource_names[] = {1130	{{"_ADR", WIDTH_16 | WIDTH_64, 0}},1131	{{"_ALN", WIDTH_8 | WIDTH_16 | WIDTH_32, 0}},1132	{{"_ASI", WIDTH_8, 0}},1133	{{"_ASZ", WIDTH_8, 0}},1134	{{"_ATT", WIDTH_64, 0}},1135	{{"_BAS", WIDTH_16 | WIDTH_32, 0}},1136	{{"_BM_", WIDTH_1, 0}},1137	{{"_DBT", WIDTH_16, 0}},	/* Acpi 5.0 */1138	{{"_DEC", WIDTH_1, 0}},1139	{{"_DMA", WIDTH_8, 0}},1140	{{"_DPL", WIDTH_1, 0}},	/* Acpi 5.0 */1141	{{"_DRS", WIDTH_16, 0}},	/* Acpi 5.0 */1142	{{"_END", WIDTH_1, 0}},	/* Acpi 5.0 */1143	{{"_FLC", WIDTH_2, 0}},	/* Acpi 5.0 */1144	{{"_GRA", WIDTH_ADDRESS, 0}},1145	{{"_HE_", WIDTH_1, 0}},1146	{{"_INT", WIDTH_16 | WIDTH_32, 0}},1147	{{"_IOR", WIDTH_2, 0}},	/* Acpi 5.0 */1148	{{"_LEN", WIDTH_8 | WIDTH_ADDRESS, 0}},1149	{{"_LIN", WIDTH_8, 0}},	/* Acpi 5.0 */1150	{{"_LL_", WIDTH_1, 0}},1151	{{"_MAF", WIDTH_1, 0}},1152	{{"_MAX", WIDTH_ADDRESS, 0}},1153	{{"_MEM", WIDTH_2, 0}},1154	{{"_MIF", WIDTH_1, 0}},1155	{{"_MIN", WIDTH_ADDRESS, 0}},1156	{{"_MOD", WIDTH_1, 0}},	/* Acpi 5.0 */1157	{{"_MTP", WIDTH_2, 0}},1158	{{"_PAR", WIDTH_8, 0}},	/* Acpi 5.0 */1159	{{"_PHA", WIDTH_1, 0}},	/* Acpi 5.0 */1160	{{"_PIN", WIDTH_16, 0}},	/* Acpi 5.0 */1161	{{"_PPI", WIDTH_8, 0}},	/* Acpi 5.0 */1162	{{"_POL", WIDTH_1 | WIDTH_2, 0}},	/* Acpi 5.0 */1163	{{"_RBO", WIDTH_8, 0}},1164	{{"_RBW", WIDTH_8, 0}},1165	{{"_RNG", WIDTH_1, 0}},1166	{{"_RT_", WIDTH_8, 0}},	/* Acpi 3.0 */1167	{{"_RW_", WIDTH_1, 0}},1168	{{"_RXL", WIDTH_16, 0}},	/* Acpi 5.0 */1169	{{"_SHR", WIDTH_2, 0}},1170	{{"_SIZ", WIDTH_2, 0}},1171	{{"_SLV", WIDTH_1, 0}},	/* Acpi 5.0 */1172	{{"_SPE", WIDTH_32, 0}},	/* Acpi 5.0 */1173	{{"_STB", WIDTH_2, 0}},	/* Acpi 5.0 */1174	{{"_TRA", WIDTH_ADDRESS, 0}},1175	{{"_TRS", WIDTH_1, 0}},1176	{{"_TSF", WIDTH_8, 0}},	/* Acpi 3.0 */1177	{{"_TTP", WIDTH_1, 0}},1178	{{"_TXL", WIDTH_16, 0}},	/* Acpi 5.0 */1179	{{"_TYP", WIDTH_2 | WIDTH_16, 0}},1180	{{"_VEN", VARIABLE_DATA, 0}},	/* Acpi 5.0 */1181	PACKAGE_INFO(0, 0, 0, 0, 0, 0)	/* Table terminator */1182};1183 1184const union acpi_predefined_info acpi_gbl_scope_names[] = {1185	{{"_GPE", 0, 0}},1186	{{"_PR_", 0, 0}},1187	{{"_SB_", 0, 0}},1188	{{"_SI_", 0, 0}},1189	{{"_TZ_", 0, 0}},1190	PACKAGE_INFO(0, 0, 0, 0, 0, 0)	/* Table terminator */1191};1192#else1193extern const union acpi_predefined_info acpi_gbl_resource_names[];1194#endif1195 1196#endif1197