ahaslkey.c revision 1.1 1 /******************************************************************************
2 *
3 * Module Name: ahaslkey - Table of all known ASL non-operator keywords
4 *
5 *****************************************************************************/
6
7 /*
8 * Copyright (C) 2000 - 2011, Intel Corp.
9 * All rights reserved.
10 *
11 * Redistribution and use in source and binary forms, with or without
12 * modification, are permitted provided that the following conditions
13 * are met:
14 * 1. Redistributions of source code must retain the above copyright
15 * notice, this list of conditions, and the following disclaimer,
16 * without modification.
17 * 2. Redistributions in binary form must reproduce at minimum a disclaimer
18 * substantially similar to the "NO WARRANTY" disclaimer below
19 * ("Disclaimer") and any redistribution must be conditioned upon
20 * including a substantially similar Disclaimer requirement for further
21 * binary redistribution.
22 * 3. Neither the names of the above-listed copyright holders nor the names
23 * of any contributors may be used to endorse or promote products derived
24 * from this software without specific prior written permission.
25 *
26 * Alternatively, this software may be distributed under the terms of the
27 * GNU General Public License ("GPL") version 2 as published by the Free
28 * Software Foundation.
29 *
30 * NO WARRANTY
31 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
32 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
33 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR
34 * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
35 * HOLDERS OR CONTRIBUTORS BE LIABLE FOR SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
36 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
37 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
38 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
39 * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
40 * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
41 * POSSIBILITY OF SUCH DAMAGES.
42 */
43
44 #include "acpihelp.h"
45
46 /*
47 * ASL Keyword types and associated actual keywords.
48 * This table was extracted from the ACPI specification.
49 */
50 const AH_ASL_KEYWORD AslKeywordInfo[] =
51 {
52 {"AccessAttribKeyword", "SMBus Attributes",
53 ":= SMBQuick | SMBSendReceive | SMBByte | SMBWord | "
54 "SMBBlock | SMBProcessCall | SMBBlockProcessCall"},
55 {"AccessTypeKeyword", "Field Access Types",
56 ":= AnyAcc | ByteAcc | WordAcc | DWordAcc | QWordAcc | BufferAcc"},
57 {"AddressKeyword", "ACPI memory range types",
58 ":= AddressRangeMemory | AddressRangeReserved | "
59 "AddressRangeNVS | AddressRangeACPI"},
60 {"AddressSpaceKeyword", "Operation Region Address Space Types",
61 ":= RegionSpaceKeyword | FFixedHW"},
62 {"BusMasterKeyword", "DMA Bus Mastering",
63 ":= BusMaster | NotBusMaster"},
64 {"DecodeKeyword", "Type of Memory Decoding - Resource Descriptors",
65 ":= SubDecode | PosDecode"},
66 {"DMATypeKeyword", "DMA Types - DMA Resource Descriptor",
67 ":= Compatibility | TypeA | TypeB | TypeF"},
68 {"InterruptTypeKeyword", "Interrupt Types",
69 ":= Edge | Level"},
70 {"InterruptLevel", "Interrupt Active Types",
71 ":= ActiveHigh | ActiveLow"},
72 {"IODecodeKeyword", "I/O Decoding - IO Resource Descriptor",
73 ":= Decode16 | Decode10"},
74 {"LockRuleKeyword", "Global Lock use for Field Operator",
75 ":= Lock | NoLock"},
76 {"MatchOpKeyword", "Types for Match Operator",
77 ":= MTR | MEQ | MLE | MLT | MGE | MGT"},
78 {"MaxKeyword", "Max Range Type - Resource Descriptors",
79 ":= MaxFixed | MaxNotFixed"},
80 {"MemTypeKeyword", "Memory Types - Resource Descriptors",
81 ":= Cacheable | WriteCombining | Prefetchable | NonCacheable"},
82 {"MinKeyword", "Min Range Type - Resource Descriptors",
83 ":= MinFixed | MinNotFixed"},
84 {"ObjectTypeKeyword", "ACPI Object Types",
85 ":= UnknownObj | IntObj | StrObj | BuffObj | PkgObj | FieldUnitObj | "
86 "DeviceObj | EventObj | MethodObj | MutexObj | OpRegionObj | PowerResObj | "
87 "ProcessorObj | ThermalZoneObj | BuffFieldObj | DDBHandleObj"},
88 {"RangeTypeKeyword", "I/O Range Types - Resource Descriptors",
89 ":= ISAOnlyRanges | NonISAOnlyRanges | EntireRange"},
90 {"ReadWriteKeyword", "Memory Access Types - Resource Descriptors",
91 ":= ReadWrite | ReadOnly"},
92 {"RegionSpaceKeyword", "Operation Region Address Space Types",
93 ":= UserDefRegionSpace | SystemIO | SystemMemory | PCI_Config | "
94 "EmbeddedControl | SMBus | SystemCMOS | PciBarTarget | IPMI"},
95 {"ResourceTypeKeyword", "Resource Usage - Resource Descriptors",
96 ":= ResourceConsumer | ResourceProducer"},
97 {"SerializeRuleKeyword", "Control Method Serialization",
98 ":= Serialized | NotSerialized"},
99 {"ShareTypeKeyword", "Interrupt Sharing - Resource Descriptors",
100 ":= Shared | Exclusive"},
101 {"TranslationKeyword", "Translation Density Types - Resource Descriptors",
102 ":= SparseTranslation | DenseTranslation"},
103 {"TypeKeyword", "Translation Types - Resource Descriptors",
104 ":= TypeTranslation | TypeStatic"},
105 {"UpdateRuleKeyword", "Field Update Rules",
106 ":= Preserve | WriteAsOnes | WriteAsZeros"},
107 {"UserDefRegionSpace", "User defined address spaces",
108 ":= IntegerData => 0x80 - 0xFF"},
109 {"XferTypeKeyword", "DMA Transfer Types",
110 ":= Transfer8 | Transfer16 | Transfer8_16"},
111 {NULL, NULL, NULL}
112 };
113