xref: /netbsd-src/sys/external/bsd/acpica/dist/compiler/asltokens.y (revision c7960b37466ae0fd417c32e6acbb4b956ac7a121)
1460301d4Schristos NoEcho('
2460301d4Schristos /******************************************************************************
3460301d4Schristos  *
4460301d4Schristos  * Module Name: asltokens.y - Bison/Yacc token types
5460301d4Schristos  *
6460301d4Schristos  *****************************************************************************/
7460301d4Schristos 
8460301d4Schristos /*
9046a2985Schristos  * Copyright (C) 2000 - 2023, Intel Corp.
10460301d4Schristos  * All rights reserved.
11460301d4Schristos  *
12460301d4Schristos  * Redistribution and use in source and binary forms, with or without
13460301d4Schristos  * modification, are permitted provided that the following conditions
14460301d4Schristos  * are met:
15460301d4Schristos  * 1. Redistributions of source code must retain the above copyright
16460301d4Schristos  *    notice, this list of conditions, and the following disclaimer,
17460301d4Schristos  *    without modification.
18460301d4Schristos  * 2. Redistributions in binary form must reproduce at minimum a disclaimer
19460301d4Schristos  *    substantially similar to the "NO WARRANTY" disclaimer below
20460301d4Schristos  *    ("Disclaimer") and any redistribution must be conditioned upon
21460301d4Schristos  *    including a substantially similar Disclaimer requirement for further
22460301d4Schristos  *    binary redistribution.
23460301d4Schristos  * 3. Neither the names of the above-listed copyright holders nor the names
24460301d4Schristos  *    of any contributors may be used to endorse or promote products derived
25460301d4Schristos  *    from this software without specific prior written permission.
26460301d4Schristos  *
27460301d4Schristos  * Alternatively, this software may be distributed under the terms of the
28460301d4Schristos  * GNU General Public License ("GPL") version 2 as published by the Free
29460301d4Schristos  * Software Foundation.
30460301d4Schristos  *
31460301d4Schristos  * NO WARRANTY
32460301d4Schristos  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
33460301d4Schristos  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
3446a330b4Schristos  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
35460301d4Schristos  * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
36460301d4Schristos  * HOLDERS OR CONTRIBUTORS BE LIABLE FOR SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
37460301d4Schristos  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
38460301d4Schristos  * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
39460301d4Schristos  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
40460301d4Schristos  * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
41460301d4Schristos  * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
42460301d4Schristos  * POSSIBILITY OF SUCH DAMAGES.
43460301d4Schristos  */
44460301d4Schristos 
45460301d4Schristos ')
46460301d4Schristos 
47460301d4Schristos /******************************************************************************
48460301d4Schristos  *
49460301d4Schristos  * Token types: These are returned by the lexer
50460301d4Schristos  *
51460301d4Schristos  * NOTE: This list MUST match the AslKeywordMapping table found
52460301d4Schristos  *       in aslmap.c EXACTLY!  Double check any changes!
53460301d4Schristos  *
54460301d4Schristos  *****************************************************************************/
55460301d4Schristos 
56d0e1da26Schristos /*
57d0e1da26Schristos  * Most tokens are defined to return <i>, which is a UINT64.
58d0e1da26Schristos  *
59d0e1da26Schristos  * These tokens return <s>, a pointer to the associated lexed string:
60d0e1da26Schristos  *
61d0e1da26Schristos  *  PARSEOP_NAMESEG
62d0e1da26Schristos  *  PARSEOP_NAMESTRING
63d0e1da26Schristos  *  PARSEOP_STRING_LITERAL
64d0e1da26Schristos  *  PARSEOP_STRUCTURE_NAMESTRING
65d0e1da26Schristos  */
66460301d4Schristos %token <i> PARSEOP_ACCESSAS
67460301d4Schristos %token <i> PARSEOP_ACCESSATTRIB_BLOCK
68460301d4Schristos %token <i> PARSEOP_ACCESSATTRIB_BLOCK_CALL
69460301d4Schristos %token <i> PARSEOP_ACCESSATTRIB_BYTE
704c4e8184Schristos %token <i> PARSEOP_ACCESSATTRIB_BYTES
71460301d4Schristos %token <i> PARSEOP_ACCESSATTRIB_QUICK
72460301d4Schristos %token <i> PARSEOP_ACCESSATTRIB_RAW_BYTES
73460301d4Schristos %token <i> PARSEOP_ACCESSATTRIB_RAW_PROCESS
74460301d4Schristos %token <i> PARSEOP_ACCESSATTRIB_SND_RCV
75460301d4Schristos %token <i> PARSEOP_ACCESSATTRIB_WORD
76460301d4Schristos %token <i> PARSEOP_ACCESSATTRIB_WORD_CALL
77460301d4Schristos %token <i> PARSEOP_ACCESSTYPE_ANY
78460301d4Schristos %token <i> PARSEOP_ACCESSTYPE_BUF
79460301d4Schristos %token <i> PARSEOP_ACCESSTYPE_BYTE
80460301d4Schristos %token <i> PARSEOP_ACCESSTYPE_DWORD
81460301d4Schristos %token <i> PARSEOP_ACCESSTYPE_QWORD
82460301d4Schristos %token <i> PARSEOP_ACCESSTYPE_WORD
83460301d4Schristos %token <i> PARSEOP_ACQUIRE
84460301d4Schristos %token <i> PARSEOP_ADD
85460301d4Schristos %token <i> PARSEOP_ADDRESSINGMODE_7BIT
86460301d4Schristos %token <i> PARSEOP_ADDRESSINGMODE_10BIT
87460301d4Schristos %token <i> PARSEOP_ADDRESSTYPE_ACPI
88460301d4Schristos %token <i> PARSEOP_ADDRESSTYPE_MEMORY
89460301d4Schristos %token <i> PARSEOP_ADDRESSTYPE_NVS
90460301d4Schristos %token <i> PARSEOP_ADDRESSTYPE_RESERVED
91460301d4Schristos %token <i> PARSEOP_ALIAS
92460301d4Schristos %token <i> PARSEOP_AND
93460301d4Schristos %token <i> PARSEOP_ARG0
94460301d4Schristos %token <i> PARSEOP_ARG1
95460301d4Schristos %token <i> PARSEOP_ARG2
96460301d4Schristos %token <i> PARSEOP_ARG3
97460301d4Schristos %token <i> PARSEOP_ARG4
98460301d4Schristos %token <i> PARSEOP_ARG5
99460301d4Schristos %token <i> PARSEOP_ARG6
100460301d4Schristos %token <i> PARSEOP_BANKFIELD
101460301d4Schristos %token <i> PARSEOP_BITSPERBYTE_EIGHT
102460301d4Schristos %token <i> PARSEOP_BITSPERBYTE_FIVE
103460301d4Schristos %token <i> PARSEOP_BITSPERBYTE_NINE
104460301d4Schristos %token <i> PARSEOP_BITSPERBYTE_SEVEN
105460301d4Schristos %token <i> PARSEOP_BITSPERBYTE_SIX
106460301d4Schristos %token <i> PARSEOP_BREAK
107460301d4Schristos %token <i> PARSEOP_BREAKPOINT
108460301d4Schristos %token <i> PARSEOP_BUFFER
109460301d4Schristos %token <i> PARSEOP_BUSMASTERTYPE_MASTER
110460301d4Schristos %token <i> PARSEOP_BUSMASTERTYPE_NOTMASTER
111460301d4Schristos %token <i> PARSEOP_BYTECONST
112460301d4Schristos %token <i> PARSEOP_CASE
113460301d4Schristos %token <i> PARSEOP_CLOCKPHASE_FIRST
114460301d4Schristos %token <i> PARSEOP_CLOCKPHASE_SECOND
115460301d4Schristos %token <i> PARSEOP_CLOCKPOLARITY_HIGH
116460301d4Schristos %token <i> PARSEOP_CLOCKPOLARITY_LOW
117460301d4Schristos %token <i> PARSEOP_CONCATENATE
118460301d4Schristos %token <i> PARSEOP_CONCATENATERESTEMPLATE
119460301d4Schristos %token <i> PARSEOP_CONDREFOF
120460301d4Schristos %token <i> PARSEOP_CONNECTION
121460301d4Schristos %token <i> PARSEOP_CONTINUE
122460301d4Schristos %token <i> PARSEOP_COPYOBJECT
123460301d4Schristos %token <i> PARSEOP_CREATEBITFIELD
124460301d4Schristos %token <i> PARSEOP_CREATEBYTEFIELD
125460301d4Schristos %token <i> PARSEOP_CREATEDWORDFIELD
126460301d4Schristos %token <i> PARSEOP_CREATEFIELD
127460301d4Schristos %token <i> PARSEOP_CREATEQWORDFIELD
128460301d4Schristos %token <i> PARSEOP_CREATEWORDFIELD
129460301d4Schristos %token <i> PARSEOP_DATABUFFER
130460301d4Schristos %token <i> PARSEOP_DATATABLEREGION
131460301d4Schristos %token <i> PARSEOP_DEBUG
132460301d4Schristos %token <i> PARSEOP_DECODETYPE_POS
133460301d4Schristos %token <i> PARSEOP_DECODETYPE_SUB
134460301d4Schristos %token <i> PARSEOP_DECREMENT
135460301d4Schristos %token <i> PARSEOP_DEFAULT
136460301d4Schristos %token <i> PARSEOP_DEFAULT_ARG
13771e38f1dSchristos %token <i> PARSEOP_DEFINITION_BLOCK
138460301d4Schristos %token <i> PARSEOP_DEREFOF
139460301d4Schristos %token <i> PARSEOP_DEVICE
140460301d4Schristos %token <i> PARSEOP_DEVICEPOLARITY_HIGH
141460301d4Schristos %token <i> PARSEOP_DEVICEPOLARITY_LOW
142460301d4Schristos %token <i> PARSEOP_DIVIDE
143460301d4Schristos %token <i> PARSEOP_DMA
144460301d4Schristos %token <i> PARSEOP_DMATYPE_A
145460301d4Schristos %token <i> PARSEOP_DMATYPE_COMPATIBILITY
146460301d4Schristos %token <i> PARSEOP_DMATYPE_B
147460301d4Schristos %token <i> PARSEOP_DMATYPE_F
148460301d4Schristos %token <i> PARSEOP_DWORDCONST
149460301d4Schristos %token <i> PARSEOP_DWORDIO
150460301d4Schristos %token <i> PARSEOP_DWORDMEMORY
151*c7960b37Schristos %token <i> PARSEOP_DWORDPCC
152460301d4Schristos %token <i> PARSEOP_DWORDSPACE
153460301d4Schristos %token <i> PARSEOP_EISAID
154460301d4Schristos %token <i> PARSEOP_ELSE
155460301d4Schristos %token <i> PARSEOP_ELSEIF
156460301d4Schristos %token <i> PARSEOP_ENDDEPENDENTFN
157460301d4Schristos %token <i> PARSEOP_ENDIAN_BIG
158460301d4Schristos %token <i> PARSEOP_ENDIAN_LITTLE
159460301d4Schristos %token <i> PARSEOP_ENDTAG
160460301d4Schristos %token <i> PARSEOP_ERRORNODE
161460301d4Schristos %token <i> PARSEOP_EVENT
162460301d4Schristos %token <i> PARSEOP_EXTENDEDIO
163460301d4Schristos %token <i> PARSEOP_EXTENDEDMEMORY
164460301d4Schristos %token <i> PARSEOP_EXTENDEDSPACE
165460301d4Schristos %token <i> PARSEOP_EXTERNAL
166460301d4Schristos %token <i> PARSEOP_FATAL
167460301d4Schristos %token <i> PARSEOP_FIELD
168460301d4Schristos %token <i> PARSEOP_FINDSETLEFTBIT
169460301d4Schristos %token <i> PARSEOP_FINDSETRIGHTBIT
170460301d4Schristos %token <i> PARSEOP_FIXEDDMA
171460301d4Schristos %token <i> PARSEOP_FIXEDIO
172460301d4Schristos %token <i> PARSEOP_FLOWCONTROL_HW
173460301d4Schristos %token <i> PARSEOP_FLOWCONTROL_NONE
174460301d4Schristos %token <i> PARSEOP_FLOWCONTROL_SW
175460301d4Schristos %token <i> PARSEOP_FROMBCD
176460301d4Schristos %token <i> PARSEOP_FUNCTION
177460301d4Schristos %token <i> PARSEOP_GPIO_INT
178460301d4Schristos %token <i> PARSEOP_GPIO_IO
17946a330b4Schristos %token <i> PARSEOP_CSI2_SERIALBUS
180460301d4Schristos %token <i> PARSEOP_I2C_SERIALBUS
181cfbb7280Schristos %token <i> PARSEOP_I2C_SERIALBUS_V2
182460301d4Schristos %token <i> PARSEOP_IF
183460301d4Schristos %token <i> PARSEOP_INCLUDE
184460301d4Schristos %token <i> PARSEOP_INCLUDE_END
185460301d4Schristos %token <i> PARSEOP_INCREMENT
186460301d4Schristos %token <i> PARSEOP_INDEX
187460301d4Schristos %token <i> PARSEOP_INDEXFIELD
188460301d4Schristos %token <i> PARSEOP_INTEGER
189460301d4Schristos %token <i> PARSEOP_INTERRUPT
190460301d4Schristos %token <i> PARSEOP_INTLEVEL_ACTIVEBOTH
191460301d4Schristos %token <i> PARSEOP_INTLEVEL_ACTIVEHIGH
192460301d4Schristos %token <i> PARSEOP_INTLEVEL_ACTIVELOW
193460301d4Schristos %token <i> PARSEOP_INTTYPE_EDGE
194460301d4Schristos %token <i> PARSEOP_INTTYPE_LEVEL
195460301d4Schristos %token <i> PARSEOP_IO
196460301d4Schristos %token <i> PARSEOP_IODECODETYPE_10
197460301d4Schristos %token <i> PARSEOP_IODECODETYPE_16
198460301d4Schristos %token <i> PARSEOP_IORESTRICT_IN
199460301d4Schristos %token <i> PARSEOP_IORESTRICT_NONE
200460301d4Schristos %token <i> PARSEOP_IORESTRICT_OUT
201460301d4Schristos %token <i> PARSEOP_IORESTRICT_PRESERVE
202460301d4Schristos %token <i> PARSEOP_IRQ
203460301d4Schristos %token <i> PARSEOP_IRQNOFLAGS
204460301d4Schristos %token <i> PARSEOP_LAND
205460301d4Schristos %token <i> PARSEOP_LEQUAL
206460301d4Schristos %token <i> PARSEOP_LGREATER
207460301d4Schristos %token <i> PARSEOP_LGREATEREQUAL
208460301d4Schristos %token <i> PARSEOP_LLESS
209460301d4Schristos %token <i> PARSEOP_LLESSEQUAL
210460301d4Schristos %token <i> PARSEOP_LNOT
211460301d4Schristos %token <i> PARSEOP_LNOTEQUAL
212460301d4Schristos %token <i> PARSEOP_LOAD
213460301d4Schristos %token <i> PARSEOP_LOADTABLE
214460301d4Schristos %token <i> PARSEOP_LOCAL0
215460301d4Schristos %token <i> PARSEOP_LOCAL1
216460301d4Schristos %token <i> PARSEOP_LOCAL2
217460301d4Schristos %token <i> PARSEOP_LOCAL3
218460301d4Schristos %token <i> PARSEOP_LOCAL4
219460301d4Schristos %token <i> PARSEOP_LOCAL5
220460301d4Schristos %token <i> PARSEOP_LOCAL6
221460301d4Schristos %token <i> PARSEOP_LOCAL7
222460301d4Schristos %token <i> PARSEOP_LOCKRULE_LOCK
223460301d4Schristos %token <i> PARSEOP_LOCKRULE_NOLOCK
224460301d4Schristos %token <i> PARSEOP_LOR
225460301d4Schristos %token <i> PARSEOP_MATCH
226460301d4Schristos %token <i> PARSEOP_MATCHTYPE_MEQ
227460301d4Schristos %token <i> PARSEOP_MATCHTYPE_MGE
228460301d4Schristos %token <i> PARSEOP_MATCHTYPE_MGT
229460301d4Schristos %token <i> PARSEOP_MATCHTYPE_MLE
230460301d4Schristos %token <i> PARSEOP_MATCHTYPE_MLT
231460301d4Schristos %token <i> PARSEOP_MATCHTYPE_MTR
232460301d4Schristos %token <i> PARSEOP_MAXTYPE_FIXED
233460301d4Schristos %token <i> PARSEOP_MAXTYPE_NOTFIXED
234460301d4Schristos %token <i> PARSEOP_MEMORY24
235460301d4Schristos %token <i> PARSEOP_MEMORY32
236460301d4Schristos %token <i> PARSEOP_MEMORY32FIXED
237460301d4Schristos %token <i> PARSEOP_MEMTYPE_CACHEABLE
238460301d4Schristos %token <i> PARSEOP_MEMTYPE_NONCACHEABLE
239460301d4Schristos %token <i> PARSEOP_MEMTYPE_PREFETCHABLE
240460301d4Schristos %token <i> PARSEOP_MEMTYPE_WRITECOMBINING
241460301d4Schristos %token <i> PARSEOP_METHOD
242460301d4Schristos %token <i> PARSEOP_METHODCALL
243460301d4Schristos %token <i> PARSEOP_MID
244460301d4Schristos %token <i> PARSEOP_MINTYPE_FIXED
245460301d4Schristos %token <i> PARSEOP_MINTYPE_NOTFIXED
246460301d4Schristos %token <i> PARSEOP_MOD
247460301d4Schristos %token <i> PARSEOP_MULTIPLY
248460301d4Schristos %token <i> PARSEOP_MUTEX
249460301d4Schristos %token <i> PARSEOP_NAME
250460301d4Schristos %token <s> PARSEOP_NAMESEG
251460301d4Schristos %token <s> PARSEOP_NAMESTRING
252460301d4Schristos %token <i> PARSEOP_NAND
253460301d4Schristos %token <i> PARSEOP_NOOP
254460301d4Schristos %token <i> PARSEOP_NOR
255460301d4Schristos %token <i> PARSEOP_NOT
256460301d4Schristos %token <i> PARSEOP_NOTIFY
257460301d4Schristos %token <i> PARSEOP_OBJECTTYPE
258460301d4Schristos %token <i> PARSEOP_OBJECTTYPE_BFF
259460301d4Schristos %token <i> PARSEOP_OBJECTTYPE_BUF
260460301d4Schristos %token <i> PARSEOP_OBJECTTYPE_DDB
261460301d4Schristos %token <i> PARSEOP_OBJECTTYPE_DEV
262460301d4Schristos %token <i> PARSEOP_OBJECTTYPE_EVT
263460301d4Schristos %token <i> PARSEOP_OBJECTTYPE_FLD
264460301d4Schristos %token <i> PARSEOP_OBJECTTYPE_INT
265460301d4Schristos %token <i> PARSEOP_OBJECTTYPE_MTH
266460301d4Schristos %token <i> PARSEOP_OBJECTTYPE_MTX
267460301d4Schristos %token <i> PARSEOP_OBJECTTYPE_OPR
268460301d4Schristos %token <i> PARSEOP_OBJECTTYPE_PKG
269460301d4Schristos %token <i> PARSEOP_OBJECTTYPE_POW
270460301d4Schristos %token <i> PARSEOP_OBJECTTYPE_PRO
271460301d4Schristos %token <i> PARSEOP_OBJECTTYPE_STR
272460301d4Schristos %token <i> PARSEOP_OBJECTTYPE_THZ
273460301d4Schristos %token <i> PARSEOP_OBJECTTYPE_UNK
274460301d4Schristos %token <i> PARSEOP_OFFSET
275460301d4Schristos %token <i> PARSEOP_ONE
276460301d4Schristos %token <i> PARSEOP_ONES
277460301d4Schristos %token <i> PARSEOP_OPERATIONREGION
278460301d4Schristos %token <i> PARSEOP_OR
279460301d4Schristos %token <i> PARSEOP_PACKAGE
280460301d4Schristos %token <i> PARSEOP_PACKAGE_LENGTH
281460301d4Schristos %token <i> PARSEOP_PARITYTYPE_EVEN
282460301d4Schristos %token <i> PARSEOP_PARITYTYPE_MARK
283460301d4Schristos %token <i> PARSEOP_PARITYTYPE_NONE
284460301d4Schristos %token <i> PARSEOP_PARITYTYPE_ODD
285460301d4Schristos %token <i> PARSEOP_PARITYTYPE_SPACE
28689b8eb6cSchristos %token <i> PARSEOP_PINCONFIG
28789b8eb6cSchristos %token <i> PARSEOP_PINFUNCTION
28889b8eb6cSchristos %token <i> PARSEOP_PINGROUP
28989b8eb6cSchristos %token <i> PARSEOP_PINGROUPCONFIG
29089b8eb6cSchristos %token <i> PARSEOP_PINGROUPFUNCTION
291460301d4Schristos %token <i> PARSEOP_PIN_NOPULL
292460301d4Schristos %token <i> PARSEOP_PIN_PULLDEFAULT
293460301d4Schristos %token <i> PARSEOP_PIN_PULLDOWN
294460301d4Schristos %token <i> PARSEOP_PIN_PULLUP
295046a2985Schristos %token <i> PARSEOP_CLOCKINPUT
296046a2985Schristos %token <i> PARSEOP_CLOCK_HZ
297046a2985Schristos %token <i> PARSEOP_CLOCK_KHZ
298046a2985Schristos %token <i> PARSEOP_CLOCK_MHZ
299046a2985Schristos %token <i> PARSEOP_CLOCK_FIXED
300046a2985Schristos %token <i> PARSEOP_CLOCK_VARIABLE
301460301d4Schristos %token <i> PARSEOP_POWERRESOURCE
302460301d4Schristos %token <i> PARSEOP_PROCESSOR
303460301d4Schristos %token <i> PARSEOP_QWORDCONST
304460301d4Schristos %token <i> PARSEOP_QWORDIO
305460301d4Schristos %token <i> PARSEOP_QWORDMEMORY
306*c7960b37Schristos %token <i> PARSEOP_QWORDPCC
307460301d4Schristos %token <i> PARSEOP_QWORDSPACE
308460301d4Schristos %token <i> PARSEOP_RANGETYPE_ENTIRE
309460301d4Schristos %token <i> PARSEOP_RANGETYPE_ISAONLY
310460301d4Schristos %token <i> PARSEOP_RANGETYPE_NONISAONLY
311460301d4Schristos %token <i> PARSEOP_RAW_DATA
312460301d4Schristos %token <i> PARSEOP_READWRITETYPE_BOTH
313460301d4Schristos %token <i> PARSEOP_READWRITETYPE_READONLY
314460301d4Schristos %token <i> PARSEOP_REFOF
315460301d4Schristos %token <i> PARSEOP_REGIONSPACE_CMOS
316460301d4Schristos %token <i> PARSEOP_REGIONSPACE_EC
317460301d4Schristos %token <i> PARSEOP_REGIONSPACE_FFIXEDHW
318460301d4Schristos %token <i> PARSEOP_REGIONSPACE_GPIO
319460301d4Schristos %token <i> PARSEOP_REGIONSPACE_GSBUS
320460301d4Schristos %token <i> PARSEOP_REGIONSPACE_IO
321460301d4Schristos %token <i> PARSEOP_REGIONSPACE_IPMI
322460301d4Schristos %token <i> PARSEOP_REGIONSPACE_MEM
323460301d4Schristos %token <i> PARSEOP_REGIONSPACE_PCC
324460301d4Schristos %token <i> PARSEOP_REGIONSPACE_PCI
325460301d4Schristos %token <i> PARSEOP_REGIONSPACE_PCIBAR
32667c34082Schristos %token <i> PARSEOP_REGIONSPACE_PRM
327460301d4Schristos %token <i> PARSEOP_REGIONSPACE_SMBUS
328460301d4Schristos %token <i> PARSEOP_REGISTER
329460301d4Schristos %token <i> PARSEOP_RELEASE
330460301d4Schristos %token <i> PARSEOP_RESERVED_BYTES
331460301d4Schristos %token <i> PARSEOP_RESET
332460301d4Schristos %token <i> PARSEOP_RESOURCETEMPLATE
333460301d4Schristos %token <i> PARSEOP_RESOURCETYPE_CONSUMER
334460301d4Schristos %token <i> PARSEOP_RESOURCETYPE_PRODUCER
335460301d4Schristos %token <i> PARSEOP_RETURN
336460301d4Schristos %token <i> PARSEOP_REVISION
337460301d4Schristos %token <i> PARSEOP_SCOPE
338460301d4Schristos %token <i> PARSEOP_SERIALIZERULE_NOTSERIAL
339460301d4Schristos %token <i> PARSEOP_SERIALIZERULE_SERIAL
340460301d4Schristos %token <i> PARSEOP_SHARETYPE_EXCLUSIVE
341460301d4Schristos %token <i> PARSEOP_SHARETYPE_EXCLUSIVEWAKE
342460301d4Schristos %token <i> PARSEOP_SHARETYPE_SHARED
343460301d4Schristos %token <i> PARSEOP_SHARETYPE_SHAREDWAKE
344460301d4Schristos %token <i> PARSEOP_SHIFTLEFT
345460301d4Schristos %token <i> PARSEOP_SHIFTRIGHT
346460301d4Schristos %token <i> PARSEOP_SIGNAL
347460301d4Schristos %token <i> PARSEOP_SIZEOF
348460301d4Schristos %token <i> PARSEOP_SLAVEMODE_CONTROLLERINIT
349460301d4Schristos %token <i> PARSEOP_SLAVEMODE_DEVICEINIT
350460301d4Schristos %token <i> PARSEOP_SLEEP
351460301d4Schristos %token <i> PARSEOP_SPI_SERIALBUS
352cfbb7280Schristos %token <i> PARSEOP_SPI_SERIALBUS_V2
353460301d4Schristos %token <i> PARSEOP_STALL
354460301d4Schristos %token <i> PARSEOP_STARTDEPENDENTFN
355460301d4Schristos %token <i> PARSEOP_STARTDEPENDENTFN_NOPRI
356460301d4Schristos %token <i> PARSEOP_STOPBITS_ONE
357460301d4Schristos %token <i> PARSEOP_STOPBITS_ONEPLUSHALF
358460301d4Schristos %token <i> PARSEOP_STOPBITS_TWO
359460301d4Schristos %token <i> PARSEOP_STOPBITS_ZERO
360460301d4Schristos %token <i> PARSEOP_STORE
361460301d4Schristos %token <s> PARSEOP_STRING_LITERAL
362460301d4Schristos %token <i> PARSEOP_SUBTRACT
363460301d4Schristos %token <i> PARSEOP_SWITCH
364460301d4Schristos %token <i> PARSEOP_THERMALZONE
365460301d4Schristos %token <i> PARSEOP_TIMER
366460301d4Schristos %token <i> PARSEOP_TOBCD
367460301d4Schristos %token <i> PARSEOP_TOBUFFER
368460301d4Schristos %token <i> PARSEOP_TODECIMALSTRING
369460301d4Schristos %token <i> PARSEOP_TOHEXSTRING
370460301d4Schristos %token <i> PARSEOP_TOINTEGER
371460301d4Schristos %token <i> PARSEOP_TOSTRING
372460301d4Schristos %token <i> PARSEOP_TOUUID
373460301d4Schristos %token <i> PARSEOP_TRANSLATIONTYPE_DENSE
374460301d4Schristos %token <i> PARSEOP_TRANSLATIONTYPE_SPARSE
375460301d4Schristos %token <i> PARSEOP_TYPE_STATIC
376460301d4Schristos %token <i> PARSEOP_TYPE_TRANSLATION
377460301d4Schristos %token <i> PARSEOP_UART_SERIALBUS
378cfbb7280Schristos %token <i> PARSEOP_UART_SERIALBUS_V2
379460301d4Schristos %token <i> PARSEOP_UNICODE
380460301d4Schristos %token <i> PARSEOP_UNLOAD
381460301d4Schristos %token <i> PARSEOP_UPDATERULE_ONES
382460301d4Schristos %token <i> PARSEOP_UPDATERULE_PRESERVE
383460301d4Schristos %token <i> PARSEOP_UPDATERULE_ZEROS
384460301d4Schristos %token <i> PARSEOP_VAR_PACKAGE
385460301d4Schristos %token <i> PARSEOP_VENDORLONG
386460301d4Schristos %token <i> PARSEOP_VENDORSHORT
387460301d4Schristos %token <i> PARSEOP_WAIT
388460301d4Schristos %token <i> PARSEOP_WHILE
389460301d4Schristos %token <i> PARSEOP_WIREMODE_FOUR
390460301d4Schristos %token <i> PARSEOP_WIREMODE_THREE
391460301d4Schristos %token <i> PARSEOP_WORDBUSNUMBER
392460301d4Schristos %token <i> PARSEOP_WORDCONST
393460301d4Schristos %token <i> PARSEOP_WORDIO
394*c7960b37Schristos %token <i> PARSEOP_WORDPCC
395460301d4Schristos %token <i> PARSEOP_WORDSPACE
396460301d4Schristos %token <i> PARSEOP_XFERSIZE_8
397460301d4Schristos %token <i> PARSEOP_XFERSIZE_16
398460301d4Schristos %token <i> PARSEOP_XFERSIZE_32
399460301d4Schristos %token <i> PARSEOP_XFERSIZE_64
400460301d4Schristos %token <i> PARSEOP_XFERSIZE_128
401460301d4Schristos %token <i> PARSEOP_XFERSIZE_256
402460301d4Schristos %token <i> PARSEOP_XFERTYPE_8
403460301d4Schristos %token <i> PARSEOP_XFERTYPE_8_16
404460301d4Schristos %token <i> PARSEOP_XFERTYPE_16
405460301d4Schristos %token <i> PARSEOP_XOR
406460301d4Schristos %token <i> PARSEOP_ZERO
407460301d4Schristos 
408679c17fdSchristos /* ToPld macro */
409679c17fdSchristos 
410679c17fdSchristos %token <i> PARSEOP_TOPLD
411679c17fdSchristos %token <i> PARSEOP_PLD_REVISION
412679c17fdSchristos %token <i> PARSEOP_PLD_IGNORECOLOR
413679c17fdSchristos %token <i> PARSEOP_PLD_RED
414679c17fdSchristos %token <i> PARSEOP_PLD_GREEN
415679c17fdSchristos %token <i> PARSEOP_PLD_BLUE
416679c17fdSchristos %token <i> PARSEOP_PLD_WIDTH
417679c17fdSchristos %token <i> PARSEOP_PLD_HEIGHT
418679c17fdSchristos %token <i> PARSEOP_PLD_USERVISIBLE
419679c17fdSchristos %token <i> PARSEOP_PLD_DOCK
420679c17fdSchristos %token <i> PARSEOP_PLD_LID
421679c17fdSchristos %token <i> PARSEOP_PLD_PANEL
422679c17fdSchristos %token <i> PARSEOP_PLD_VERTICALPOSITION
423679c17fdSchristos %token <i> PARSEOP_PLD_HORIZONTALPOSITION
424679c17fdSchristos %token <i> PARSEOP_PLD_SHAPE
425679c17fdSchristos %token <i> PARSEOP_PLD_GROUPORIENTATION
426679c17fdSchristos %token <i> PARSEOP_PLD_GROUPTOKEN
427679c17fdSchristos %token <i> PARSEOP_PLD_GROUPPOSITION
428679c17fdSchristos %token <i> PARSEOP_PLD_BAY
429679c17fdSchristos %token <i> PARSEOP_PLD_EJECTABLE
430679c17fdSchristos %token <i> PARSEOP_PLD_EJECTREQUIRED
431679c17fdSchristos %token <i> PARSEOP_PLD_CABINETNUMBER
432679c17fdSchristos %token <i> PARSEOP_PLD_CARDCAGENUMBER
433679c17fdSchristos %token <i> PARSEOP_PLD_REFERENCE
434679c17fdSchristos %token <i> PARSEOP_PLD_ROTATION
435679c17fdSchristos %token <i> PARSEOP_PLD_ORDER
436679c17fdSchristos %token <i> PARSEOP_PLD_RESERVED
437679c17fdSchristos %token <i> PARSEOP_PLD_VERTICALOFFSET
438679c17fdSchristos %token <i> PARSEOP_PLD_HORIZONTALOFFSET
439679c17fdSchristos 
440679c17fdSchristos /*
441679c17fdSchristos  * C-style expression parser. These must appear after all of the
442679c17fdSchristos  * standard ASL operators and keywords.
443679c17fdSchristos  *
444679c17fdSchristos  * Note: The order of these tokens implements the precedence rules
445679c17fdSchristos  * (low precedence to high). See aslrules.y for an exhaustive list.
446679c17fdSchristos  */
447679c17fdSchristos %right <i> PARSEOP_EXP_EQUALS
448679c17fdSchristos            PARSEOP_EXP_ADD_EQ
449679c17fdSchristos            PARSEOP_EXP_SUB_EQ
450679c17fdSchristos            PARSEOP_EXP_MUL_EQ
451679c17fdSchristos            PARSEOP_EXP_DIV_EQ
452679c17fdSchristos            PARSEOP_EXP_MOD_EQ
453679c17fdSchristos            PARSEOP_EXP_SHL_EQ
454679c17fdSchristos            PARSEOP_EXP_SHR_EQ
455679c17fdSchristos            PARSEOP_EXP_AND_EQ
456679c17fdSchristos            PARSEOP_EXP_XOR_EQ
457679c17fdSchristos            PARSEOP_EXP_OR_EQ
458679c17fdSchristos 
459679c17fdSchristos %left <i>  PARSEOP_EXP_LOGICAL_OR
460679c17fdSchristos %left <i>  PARSEOP_EXP_LOGICAL_AND
461679c17fdSchristos %left <i>  PARSEOP_EXP_OR
462679c17fdSchristos %left <i>  PARSEOP_EXP_XOR
463679c17fdSchristos %left <i>  PARSEOP_EXP_AND
464679c17fdSchristos %left <i>  PARSEOP_EXP_EQUAL
465679c17fdSchristos            PARSEOP_EXP_NOT_EQUAL
466679c17fdSchristos %left <i>  PARSEOP_EXP_GREATER
467679c17fdSchristos            PARSEOP_EXP_LESS
468679c17fdSchristos            PARSEOP_EXP_GREATER_EQUAL
469679c17fdSchristos            PARSEOP_EXP_LESS_EQUAL
470679c17fdSchristos %left <i>  PARSEOP_EXP_SHIFT_RIGHT
471679c17fdSchristos            PARSEOP_EXP_SHIFT_LEFT
472679c17fdSchristos %left <i>  PARSEOP_EXP_ADD
473679c17fdSchristos            PARSEOP_EXP_SUBTRACT
474679c17fdSchristos %left <i>  PARSEOP_EXP_MULTIPLY
475679c17fdSchristos            PARSEOP_EXP_DIVIDE
476679c17fdSchristos            PARSEOP_EXP_MODULO
477679c17fdSchristos 
478679c17fdSchristos %right <i> PARSEOP_EXP_NOT
479679c17fdSchristos            PARSEOP_EXP_LOGICAL_NOT
480679c17fdSchristos 
481679c17fdSchristos %left <i>  PARSEOP_EXP_INCREMENT
482679c17fdSchristos            PARSEOP_EXP_DECREMENT
483679c17fdSchristos 
4840b89cdedSchristos %left <i>  PARSEOP_OPEN_PAREN
4850b89cdedSchristos            PARSEOP_CLOSE_PAREN
4860b89cdedSchristos 
48771e38f1dSchristos /* Brackets for Index() support */
48871e38f1dSchristos 
48971e38f1dSchristos %left <i>  PARSEOP_EXP_INDEX_LEFT
49071e38f1dSchristos %right <i> PARSEOP_EXP_INDEX_RIGHT
49171e38f1dSchristos 
492cfbb7280Schristos /* Macros */
493cfbb7280Schristos 
494679c17fdSchristos %token <i> PARSEOP_PRINTF
495679c17fdSchristos %token <i> PARSEOP_FPRINTF
496cfbb7280Schristos %token <i> PARSEOP_FOR
49771e38f1dSchristos 
498d0e1da26Schristos /* Structures */
499d0e1da26Schristos 
500d0e1da26Schristos %token <i> PARSEOP_STRUCTURE
501d0e1da26Schristos %token <s> PARSEOP_STRUCTURE_NAMESTRING
502d0e1da26Schristos %token <i> PARSEOP_STRUCTURE_TAG
503d0e1da26Schristos %token <i> PARSEOP_STRUCTURE_ELEMENT
504d0e1da26Schristos %token <i> PARSEOP_STRUCTURE_INSTANCE
505d0e1da26Schristos %token <i> PARSEOP_STRUCTURE_REFERENCE
506d0e1da26Schristos %token <i> PARSEOP_STRUCTURE_POINTER
507d0e1da26Schristos 
508d0e1da26Schristos /* Top level */
509d0e1da26Schristos 
510d0e1da26Schristos %token <i> PARSEOP_ASL_CODE
511d0e1da26Schristos 
512d0e1da26Schristos 
513d0e1da26Schristos /*******************************************************************************
514d0e1da26Schristos  *
515d0e1da26Schristos  * Tokens below are not in the aslmap.c file
516d0e1da26Schristos  *
517d0e1da26Schristos  ******************************************************************************/
518d0e1da26Schristos 
519d0e1da26Schristos 
520d0e1da26Schristos /* Tokens below this are not in the aslmap.c file */
521d0e1da26Schristos 
522679c17fdSchristos /* Specific parentheses tokens are not used at this time */
523679c17fdSchristos            /* PARSEOP_EXP_PAREN_OPEN */
524679c17fdSchristos            /* PARSEOP_EXP_PAREN_CLOSE */
525679c17fdSchristos 
526d0e1da26Schristos /* ASL+ variable creation */
52771e38f1dSchristos 
528d0e1da26Schristos %token <i> PARSEOP_INTEGER_TYPE
529d0e1da26Schristos %token <i> PARSEOP_STRING_TYPE
530d0e1da26Schristos %token <i> PARSEOP_BUFFER_TYPE
531d0e1da26Schristos %token <i> PARSEOP_PACKAGE_TYPE
532d0e1da26Schristos %token <i> PARSEOP_REFERENCE_TYPE
533d0e1da26Schristos 
53471e38f1dSchristos 
535460301d4Schristos /*
536460301d4Schristos  * Special functions. These should probably stay at the end of this
537460301d4Schristos  * table.
538460301d4Schristos  */
539460301d4Schristos %token <i> PARSEOP___DATE__
540460301d4Schristos %token <i> PARSEOP___FILE__
541460301d4Schristos %token <i> PARSEOP___LINE__
542460301d4Schristos %token <i> PARSEOP___PATH__
54389b8eb6cSchristos %token <i> PARSEOP___METHOD__
544