1 NoEcho(' 2 /****************************************************************************** 3 * 4 * Module Name: asltokens.y - Bison/Yacc token types 5 * 6 *****************************************************************************/ 7 8 /****************************************************************************** 9 * 10 * 1. Copyright Notice 11 * 12 * Some or all of this work - Copyright (c) 1999 - 2020, Intel Corp. 13 * All rights reserved. 14 * 15 * 2. License 16 * 17 * 2.1. This is your license from Intel Corp. under its intellectual property 18 * rights. You may have additional license terms from the party that provided 19 * you this software, covering your right to use that party's intellectual 20 * property rights. 21 * 22 * 2.2. Intel grants, free of charge, to any person ("Licensee") obtaining a 23 * copy of the source code appearing in this file ("Covered Code") an 24 * irrevocable, perpetual, worldwide license under Intel's copyrights in the 25 * base code distributed originally by Intel ("Original Intel Code") to copy, 26 * make derivatives, distribute, use and display any portion of the Covered 27 * Code in any form, with the right to sublicense such rights; and 28 * 29 * 2.3. Intel grants Licensee a non-exclusive and non-transferable patent 30 * license (with the right to sublicense), under only those claims of Intel 31 * patents that are infringed by the Original Intel Code, to make, use, sell, 32 * offer to sell, and import the Covered Code and derivative works thereof 33 * solely to the minimum extent necessary to exercise the above copyright 34 * license, and in no event shall the patent license extend to any additions 35 * to or modifications of the Original Intel Code. No other license or right 36 * is granted directly or by implication, estoppel or otherwise; 37 * 38 * The above copyright and patent license is granted only if the following 39 * conditions are met: 40 * 41 * 3. Conditions 42 * 43 * 3.1. Redistribution of Source with Rights to Further Distribute Source. 44 * Redistribution of source code of any substantial portion of the Covered 45 * Code or modification with rights to further distribute source must include 46 * the above Copyright Notice, the above License, this list of Conditions, 47 * and the following Disclaimer and Export Compliance provision. In addition, 48 * Licensee must cause all Covered Code to which Licensee contributes to 49 * contain a file documenting the changes Licensee made to create that Covered 50 * Code and the date of any change. Licensee must include in that file the 51 * documentation of any changes made by any predecessor Licensee. Licensee 52 * must include a prominent statement that the modification is derived, 53 * directly or indirectly, from Original Intel Code. 54 * 55 * 3.2. Redistribution of Source with no Rights to Further Distribute Source. 56 * Redistribution of source code of any substantial portion of the Covered 57 * Code or modification without rights to further distribute source must 58 * include the following Disclaimer and Export Compliance provision in the 59 * documentation and/or other materials provided with distribution. In 60 * addition, Licensee may not authorize further sublicense of source of any 61 * portion of the Covered Code, and must include terms to the effect that the 62 * license from Licensee to its licensee is limited to the intellectual 63 * property embodied in the software Licensee provides to its licensee, and 64 * not to intellectual property embodied in modifications its licensee may 65 * make. 66 * 67 * 3.3. Redistribution of Executable. Redistribution in executable form of any 68 * substantial portion of the Covered Code or modification must reproduce the 69 * above Copyright Notice, and the following Disclaimer and Export Compliance 70 * provision in the documentation and/or other materials provided with the 71 * distribution. 72 * 73 * 3.4. Intel retains all right, title, and interest in and to the Original 74 * Intel Code. 75 * 76 * 3.5. Neither the name Intel nor any other trademark owned or controlled by 77 * Intel shall be used in advertising or otherwise to promote the sale, use or 78 * other dealings in products derived from or relating to the Covered Code 79 * without prior written authorization from Intel. 80 * 81 * 4. Disclaimer and Export Compliance 82 * 83 * 4.1. INTEL MAKES NO WARRANTY OF ANY KIND REGARDING ANY SOFTWARE PROVIDED 84 * HERE. ANY SOFTWARE ORIGINATING FROM INTEL OR DERIVED FROM INTEL SOFTWARE 85 * IS PROVIDED "AS IS," AND INTEL WILL NOT PROVIDE ANY SUPPORT, ASSISTANCE, 86 * INSTALLATION, TRAINING OR OTHER SERVICES. INTEL WILL NOT PROVIDE ANY 87 * UPDATES, ENHANCEMENTS OR EXTENSIONS. INTEL SPECIFICALLY DISCLAIMS ANY 88 * IMPLIED WARRANTIES OF MERCHANTABILITY, NONINFRINGEMENT AND FITNESS FOR A 89 * PARTICULAR PURPOSE. 90 * 91 * 4.2. IN NO EVENT SHALL INTEL HAVE ANY LIABILITY TO LICENSEE, ITS LICENSEES 92 * OR ANY OTHER THIRD PARTY, FOR ANY LOST PROFITS, LOST DATA, LOSS OF USE OR 93 * COSTS OF PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES, OR FOR ANY INDIRECT, 94 * SPECIAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THIS AGREEMENT, UNDER ANY 95 * CAUSE OF ACTION OR THEORY OF LIABILITY, AND IRRESPECTIVE OF WHETHER INTEL 96 * HAS ADVANCE NOTICE OF THE POSSIBILITY OF SUCH DAMAGES. THESE LIMITATIONS 97 * SHALL APPLY NOTWITHSTANDING THE FAILURE OF THE ESSENTIAL PURPOSE OF ANY 98 * LIMITED REMEDY. 99 * 100 * 4.3. Licensee shall not export, either directly or indirectly, any of this 101 * software or system incorporating such software without first obtaining any 102 * required license or other approval from the U. S. Department of Commerce or 103 * any other agency or department of the United States Government. In the 104 * event Licensee exports any such software from the United States or 105 * re-exports any such software from a foreign destination, Licensee shall 106 * ensure that the distribution and export/re-export of the software is in 107 * compliance with all laws, regulations, orders, or other restrictions of the 108 * U.S. Export Administration Regulations. Licensee agrees that neither it nor 109 * any of its subsidiaries will export/re-export any technical data, process, 110 * software, or service, directly or indirectly, to any country for which the 111 * United States government or any agency thereof requires an export license, 112 * other governmental approval, or letter of assurance, without first obtaining 113 * such license, approval or letter. 114 * 115 ***************************************************************************** 116 * 117 * Alternatively, you may choose to be licensed under the terms of the 118 * following license: 119 * 120 * Redistribution and use in source and binary forms, with or without 121 * modification, are permitted provided that the following conditions 122 * are met: 123 * 1. Redistributions of source code must retain the above copyright 124 * notice, this list of conditions, and the following disclaimer, 125 * without modification. 126 * 2. Redistributions in binary form must reproduce at minimum a disclaimer 127 * substantially similar to the "NO WARRANTY" disclaimer below 128 * ("Disclaimer") and any redistribution must be conditioned upon 129 * including a substantially similar Disclaimer requirement for further 130 * binary redistribution. 131 * 3. Neither the names of the above-listed copyright holders nor the names 132 * of any contributors may be used to endorse or promote products derived 133 * from this software without specific prior written permission. 134 * 135 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 136 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 137 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 138 * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 139 * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 140 * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 141 * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 142 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 143 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 144 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 145 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 146 * 147 * Alternatively, you may choose to be licensed under the terms of the 148 * GNU General Public License ("GPL") version 2 as published by the Free 149 * Software Foundation. 150 * 151 *****************************************************************************/ 152 153 ') 154 155 /****************************************************************************** 156 * 157 * Token types: These are returned by the lexer 158 * 159 * NOTE: This list MUST match the AslKeywordMapping table found 160 * in aslmap.c EXACTLY! Double check any changes! 161 * 162 *****************************************************************************/ 163 164 /* 165 * Most tokens are defined to return <i>, which is a UINT64. 166 * 167 * These tokens return <s>, a pointer to the associated lexed string: 168 * 169 * PARSEOP_NAMESEG 170 * PARSEOP_NAMESTRING 171 * PARSEOP_STRING_LITERAL 172 * PARSEOP_STRUCTURE_NAMESTRING 173 */ 174 %token <i> PARSEOP_ACCESSAS 175 %token <i> PARSEOP_ACCESSATTRIB_BLOCK 176 %token <i> PARSEOP_ACCESSATTRIB_BLOCK_CALL 177 %token <i> PARSEOP_ACCESSATTRIB_BYTE 178 %token <i> PARSEOP_ACCESSATTRIB_BYTES 179 %token <i> PARSEOP_ACCESSATTRIB_QUICK 180 %token <i> PARSEOP_ACCESSATTRIB_RAW_BYTES 181 %token <i> PARSEOP_ACCESSATTRIB_RAW_PROCESS 182 %token <i> PARSEOP_ACCESSATTRIB_SND_RCV 183 %token <i> PARSEOP_ACCESSATTRIB_WORD 184 %token <i> PARSEOP_ACCESSATTRIB_WORD_CALL 185 %token <i> PARSEOP_ACCESSTYPE_ANY 186 %token <i> PARSEOP_ACCESSTYPE_BUF 187 %token <i> PARSEOP_ACCESSTYPE_BYTE 188 %token <i> PARSEOP_ACCESSTYPE_DWORD 189 %token <i> PARSEOP_ACCESSTYPE_QWORD 190 %token <i> PARSEOP_ACCESSTYPE_WORD 191 %token <i> PARSEOP_ACQUIRE 192 %token <i> PARSEOP_ADD 193 %token <i> PARSEOP_ADDRESSINGMODE_7BIT 194 %token <i> PARSEOP_ADDRESSINGMODE_10BIT 195 %token <i> PARSEOP_ADDRESSTYPE_ACPI 196 %token <i> PARSEOP_ADDRESSTYPE_MEMORY 197 %token <i> PARSEOP_ADDRESSTYPE_NVS 198 %token <i> PARSEOP_ADDRESSTYPE_RESERVED 199 %token <i> PARSEOP_ALIAS 200 %token <i> PARSEOP_AND 201 %token <i> PARSEOP_ARG0 202 %token <i> PARSEOP_ARG1 203 %token <i> PARSEOP_ARG2 204 %token <i> PARSEOP_ARG3 205 %token <i> PARSEOP_ARG4 206 %token <i> PARSEOP_ARG5 207 %token <i> PARSEOP_ARG6 208 %token <i> PARSEOP_BANKFIELD 209 %token <i> PARSEOP_BITSPERBYTE_EIGHT 210 %token <i> PARSEOP_BITSPERBYTE_FIVE 211 %token <i> PARSEOP_BITSPERBYTE_NINE 212 %token <i> PARSEOP_BITSPERBYTE_SEVEN 213 %token <i> PARSEOP_BITSPERBYTE_SIX 214 %token <i> PARSEOP_BREAK 215 %token <i> PARSEOP_BREAKPOINT 216 %token <i> PARSEOP_BUFFER 217 %token <i> PARSEOP_BUSMASTERTYPE_MASTER 218 %token <i> PARSEOP_BUSMASTERTYPE_NOTMASTER 219 %token <i> PARSEOP_BYTECONST 220 %token <i> PARSEOP_CASE 221 %token <i> PARSEOP_CLOCKPHASE_FIRST 222 %token <i> PARSEOP_CLOCKPHASE_SECOND 223 %token <i> PARSEOP_CLOCKPOLARITY_HIGH 224 %token <i> PARSEOP_CLOCKPOLARITY_LOW 225 %token <i> PARSEOP_CONCATENATE 226 %token <i> PARSEOP_CONCATENATERESTEMPLATE 227 %token <i> PARSEOP_CONDREFOF 228 %token <i> PARSEOP_CONNECTION 229 %token <i> PARSEOP_CONTINUE 230 %token <i> PARSEOP_COPYOBJECT 231 %token <i> PARSEOP_CREATEBITFIELD 232 %token <i> PARSEOP_CREATEBYTEFIELD 233 %token <i> PARSEOP_CREATEDWORDFIELD 234 %token <i> PARSEOP_CREATEFIELD 235 %token <i> PARSEOP_CREATEQWORDFIELD 236 %token <i> PARSEOP_CREATEWORDFIELD 237 %token <i> PARSEOP_DATABUFFER 238 %token <i> PARSEOP_DATATABLEREGION 239 %token <i> PARSEOP_DEBUG 240 %token <i> PARSEOP_DECODETYPE_POS 241 %token <i> PARSEOP_DECODETYPE_SUB 242 %token <i> PARSEOP_DECREMENT 243 %token <i> PARSEOP_DEFAULT 244 %token <i> PARSEOP_DEFAULT_ARG 245 %token <i> PARSEOP_DEFINITION_BLOCK 246 %token <i> PARSEOP_DEREFOF 247 %token <i> PARSEOP_DEVICE 248 %token <i> PARSEOP_DEVICEPOLARITY_HIGH 249 %token <i> PARSEOP_DEVICEPOLARITY_LOW 250 %token <i> PARSEOP_DIVIDE 251 %token <i> PARSEOP_DMA 252 %token <i> PARSEOP_DMATYPE_A 253 %token <i> PARSEOP_DMATYPE_COMPATIBILITY 254 %token <i> PARSEOP_DMATYPE_B 255 %token <i> PARSEOP_DMATYPE_F 256 %token <i> PARSEOP_DWORDCONST 257 %token <i> PARSEOP_DWORDIO 258 %token <i> PARSEOP_DWORDMEMORY 259 %token <i> PARSEOP_DWORDSPACE 260 %token <i> PARSEOP_EISAID 261 %token <i> PARSEOP_ELSE 262 %token <i> PARSEOP_ELSEIF 263 %token <i> PARSEOP_ENDDEPENDENTFN 264 %token <i> PARSEOP_ENDIAN_BIG 265 %token <i> PARSEOP_ENDIAN_LITTLE 266 %token <i> PARSEOP_ENDTAG 267 %token <i> PARSEOP_ERRORNODE 268 %token <i> PARSEOP_EVENT 269 %token <i> PARSEOP_EXTENDEDIO 270 %token <i> PARSEOP_EXTENDEDMEMORY 271 %token <i> PARSEOP_EXTENDEDSPACE 272 %token <i> PARSEOP_EXTERNAL 273 %token <i> PARSEOP_FATAL 274 %token <i> PARSEOP_FIELD 275 %token <i> PARSEOP_FINDSETLEFTBIT 276 %token <i> PARSEOP_FINDSETRIGHTBIT 277 %token <i> PARSEOP_FIXEDDMA 278 %token <i> PARSEOP_FIXEDIO 279 %token <i> PARSEOP_FLOWCONTROL_HW 280 %token <i> PARSEOP_FLOWCONTROL_NONE 281 %token <i> PARSEOP_FLOWCONTROL_SW 282 %token <i> PARSEOP_FROMBCD 283 %token <i> PARSEOP_FUNCTION 284 %token <i> PARSEOP_GPIO_INT 285 %token <i> PARSEOP_GPIO_IO 286 %token <i> PARSEOP_I2C_SERIALBUS 287 %token <i> PARSEOP_I2C_SERIALBUS_V2 288 %token <i> PARSEOP_IF 289 %token <i> PARSEOP_INCLUDE 290 %token <i> PARSEOP_INCLUDE_END 291 %token <i> PARSEOP_INCREMENT 292 %token <i> PARSEOP_INDEX 293 %token <i> PARSEOP_INDEXFIELD 294 %token <i> PARSEOP_INTEGER 295 %token <i> PARSEOP_INTERRUPT 296 %token <i> PARSEOP_INTLEVEL_ACTIVEBOTH 297 %token <i> PARSEOP_INTLEVEL_ACTIVEHIGH 298 %token <i> PARSEOP_INTLEVEL_ACTIVELOW 299 %token <i> PARSEOP_INTTYPE_EDGE 300 %token <i> PARSEOP_INTTYPE_LEVEL 301 %token <i> PARSEOP_IO 302 %token <i> PARSEOP_IODECODETYPE_10 303 %token <i> PARSEOP_IODECODETYPE_16 304 %token <i> PARSEOP_IORESTRICT_IN 305 %token <i> PARSEOP_IORESTRICT_NONE 306 %token <i> PARSEOP_IORESTRICT_OUT 307 %token <i> PARSEOP_IORESTRICT_PRESERVE 308 %token <i> PARSEOP_IRQ 309 %token <i> PARSEOP_IRQNOFLAGS 310 %token <i> PARSEOP_LAND 311 %token <i> PARSEOP_LEQUAL 312 %token <i> PARSEOP_LGREATER 313 %token <i> PARSEOP_LGREATEREQUAL 314 %token <i> PARSEOP_LLESS 315 %token <i> PARSEOP_LLESSEQUAL 316 %token <i> PARSEOP_LNOT 317 %token <i> PARSEOP_LNOTEQUAL 318 %token <i> PARSEOP_LOAD 319 %token <i> PARSEOP_LOADTABLE 320 %token <i> PARSEOP_LOCAL0 321 %token <i> PARSEOP_LOCAL1 322 %token <i> PARSEOP_LOCAL2 323 %token <i> PARSEOP_LOCAL3 324 %token <i> PARSEOP_LOCAL4 325 %token <i> PARSEOP_LOCAL5 326 %token <i> PARSEOP_LOCAL6 327 %token <i> PARSEOP_LOCAL7 328 %token <i> PARSEOP_LOCKRULE_LOCK 329 %token <i> PARSEOP_LOCKRULE_NOLOCK 330 %token <i> PARSEOP_LOR 331 %token <i> PARSEOP_MATCH 332 %token <i> PARSEOP_MATCHTYPE_MEQ 333 %token <i> PARSEOP_MATCHTYPE_MGE 334 %token <i> PARSEOP_MATCHTYPE_MGT 335 %token <i> PARSEOP_MATCHTYPE_MLE 336 %token <i> PARSEOP_MATCHTYPE_MLT 337 %token <i> PARSEOP_MATCHTYPE_MTR 338 %token <i> PARSEOP_MAXTYPE_FIXED 339 %token <i> PARSEOP_MAXTYPE_NOTFIXED 340 %token <i> PARSEOP_MEMORY24 341 %token <i> PARSEOP_MEMORY32 342 %token <i> PARSEOP_MEMORY32FIXED 343 %token <i> PARSEOP_MEMTYPE_CACHEABLE 344 %token <i> PARSEOP_MEMTYPE_NONCACHEABLE 345 %token <i> PARSEOP_MEMTYPE_PREFETCHABLE 346 %token <i> PARSEOP_MEMTYPE_WRITECOMBINING 347 %token <i> PARSEOP_METHOD 348 %token <i> PARSEOP_METHODCALL 349 %token <i> PARSEOP_MID 350 %token <i> PARSEOP_MINTYPE_FIXED 351 %token <i> PARSEOP_MINTYPE_NOTFIXED 352 %token <i> PARSEOP_MOD 353 %token <i> PARSEOP_MULTIPLY 354 %token <i> PARSEOP_MUTEX 355 %token <i> PARSEOP_NAME 356 %token <s> PARSEOP_NAMESEG 357 %token <s> PARSEOP_NAMESTRING 358 %token <i> PARSEOP_NAND 359 %token <i> PARSEOP_NOOP 360 %token <i> PARSEOP_NOR 361 %token <i> PARSEOP_NOT 362 %token <i> PARSEOP_NOTIFY 363 %token <i> PARSEOP_OBJECTTYPE 364 %token <i> PARSEOP_OBJECTTYPE_BFF 365 %token <i> PARSEOP_OBJECTTYPE_BUF 366 %token <i> PARSEOP_OBJECTTYPE_DDB 367 %token <i> PARSEOP_OBJECTTYPE_DEV 368 %token <i> PARSEOP_OBJECTTYPE_EVT 369 %token <i> PARSEOP_OBJECTTYPE_FLD 370 %token <i> PARSEOP_OBJECTTYPE_INT 371 %token <i> PARSEOP_OBJECTTYPE_MTH 372 %token <i> PARSEOP_OBJECTTYPE_MTX 373 %token <i> PARSEOP_OBJECTTYPE_OPR 374 %token <i> PARSEOP_OBJECTTYPE_PKG 375 %token <i> PARSEOP_OBJECTTYPE_POW 376 %token <i> PARSEOP_OBJECTTYPE_PRO 377 %token <i> PARSEOP_OBJECTTYPE_STR 378 %token <i> PARSEOP_OBJECTTYPE_THZ 379 %token <i> PARSEOP_OBJECTTYPE_UNK 380 %token <i> PARSEOP_OFFSET 381 %token <i> PARSEOP_ONE 382 %token <i> PARSEOP_ONES 383 %token <i> PARSEOP_OPERATIONREGION 384 %token <i> PARSEOP_OR 385 %token <i> PARSEOP_PACKAGE 386 %token <i> PARSEOP_PACKAGE_LENGTH 387 %token <i> PARSEOP_PARITYTYPE_EVEN 388 %token <i> PARSEOP_PARITYTYPE_MARK 389 %token <i> PARSEOP_PARITYTYPE_NONE 390 %token <i> PARSEOP_PARITYTYPE_ODD 391 %token <i> PARSEOP_PARITYTYPE_SPACE 392 %token <i> PARSEOP_PINCONFIG 393 %token <i> PARSEOP_PINFUNCTION 394 %token <i> PARSEOP_PINGROUP 395 %token <i> PARSEOP_PINGROUPCONFIG 396 %token <i> PARSEOP_PINGROUPFUNCTION 397 %token <i> PARSEOP_PIN_NOPULL 398 %token <i> PARSEOP_PIN_PULLDEFAULT 399 %token <i> PARSEOP_PIN_PULLDOWN 400 %token <i> PARSEOP_PIN_PULLUP 401 %token <i> PARSEOP_POWERRESOURCE 402 %token <i> PARSEOP_PROCESSOR 403 %token <i> PARSEOP_QWORDCONST 404 %token <i> PARSEOP_QWORDIO 405 %token <i> PARSEOP_QWORDMEMORY 406 %token <i> PARSEOP_QWORDSPACE 407 %token <i> PARSEOP_RANGETYPE_ENTIRE 408 %token <i> PARSEOP_RANGETYPE_ISAONLY 409 %token <i> PARSEOP_RANGETYPE_NONISAONLY 410 %token <i> PARSEOP_RAW_DATA 411 %token <i> PARSEOP_READWRITETYPE_BOTH 412 %token <i> PARSEOP_READWRITETYPE_READONLY 413 %token <i> PARSEOP_REFOF 414 %token <i> PARSEOP_REGIONSPACE_CMOS 415 %token <i> PARSEOP_REGIONSPACE_EC 416 %token <i> PARSEOP_REGIONSPACE_FFIXEDHW 417 %token <i> PARSEOP_REGIONSPACE_GPIO 418 %token <i> PARSEOP_REGIONSPACE_GSBUS 419 %token <i> PARSEOP_REGIONSPACE_IO 420 %token <i> PARSEOP_REGIONSPACE_IPMI 421 %token <i> PARSEOP_REGIONSPACE_MEM 422 %token <i> PARSEOP_REGIONSPACE_PCC 423 %token <i> PARSEOP_REGIONSPACE_PCI 424 %token <i> PARSEOP_REGIONSPACE_PCIBAR 425 %token <i> PARSEOP_REGIONSPACE_SMBUS 426 %token <i> PARSEOP_REGISTER 427 %token <i> PARSEOP_RELEASE 428 %token <i> PARSEOP_RESERVED_BYTES 429 %token <i> PARSEOP_RESET 430 %token <i> PARSEOP_RESOURCETEMPLATE 431 %token <i> PARSEOP_RESOURCETYPE_CONSUMER 432 %token <i> PARSEOP_RESOURCETYPE_PRODUCER 433 %token <i> PARSEOP_RETURN 434 %token <i> PARSEOP_REVISION 435 %token <i> PARSEOP_SCOPE 436 %token <i> PARSEOP_SERIALIZERULE_NOTSERIAL 437 %token <i> PARSEOP_SERIALIZERULE_SERIAL 438 %token <i> PARSEOP_SHARETYPE_EXCLUSIVE 439 %token <i> PARSEOP_SHARETYPE_EXCLUSIVEWAKE 440 %token <i> PARSEOP_SHARETYPE_SHARED 441 %token <i> PARSEOP_SHARETYPE_SHAREDWAKE 442 %token <i> PARSEOP_SHIFTLEFT 443 %token <i> PARSEOP_SHIFTRIGHT 444 %token <i> PARSEOP_SIGNAL 445 %token <i> PARSEOP_SIZEOF 446 %token <i> PARSEOP_SLAVEMODE_CONTROLLERINIT 447 %token <i> PARSEOP_SLAVEMODE_DEVICEINIT 448 %token <i> PARSEOP_SLEEP 449 %token <i> PARSEOP_SPI_SERIALBUS 450 %token <i> PARSEOP_SPI_SERIALBUS_V2 451 %token <i> PARSEOP_STALL 452 %token <i> PARSEOP_STARTDEPENDENTFN 453 %token <i> PARSEOP_STARTDEPENDENTFN_NOPRI 454 %token <i> PARSEOP_STOPBITS_ONE 455 %token <i> PARSEOP_STOPBITS_ONEPLUSHALF 456 %token <i> PARSEOP_STOPBITS_TWO 457 %token <i> PARSEOP_STOPBITS_ZERO 458 %token <i> PARSEOP_STORE 459 %token <s> PARSEOP_STRING_LITERAL 460 %token <i> PARSEOP_SUBTRACT 461 %token <i> PARSEOP_SWITCH 462 %token <i> PARSEOP_THERMALZONE 463 %token <i> PARSEOP_TIMER 464 %token <i> PARSEOP_TOBCD 465 %token <i> PARSEOP_TOBUFFER 466 %token <i> PARSEOP_TODECIMALSTRING 467 %token <i> PARSEOP_TOHEXSTRING 468 %token <i> PARSEOP_TOINTEGER 469 %token <i> PARSEOP_TOSTRING 470 %token <i> PARSEOP_TOUUID 471 %token <i> PARSEOP_TRANSLATIONTYPE_DENSE 472 %token <i> PARSEOP_TRANSLATIONTYPE_SPARSE 473 %token <i> PARSEOP_TYPE_STATIC 474 %token <i> PARSEOP_TYPE_TRANSLATION 475 %token <i> PARSEOP_UART_SERIALBUS 476 %token <i> PARSEOP_UART_SERIALBUS_V2 477 %token <i> PARSEOP_UNICODE 478 %token <i> PARSEOP_UNLOAD 479 %token <i> PARSEOP_UPDATERULE_ONES 480 %token <i> PARSEOP_UPDATERULE_PRESERVE 481 %token <i> PARSEOP_UPDATERULE_ZEROS 482 %token <i> PARSEOP_VAR_PACKAGE 483 %token <i> PARSEOP_VENDORLONG 484 %token <i> PARSEOP_VENDORSHORT 485 %token <i> PARSEOP_WAIT 486 %token <i> PARSEOP_WHILE 487 %token <i> PARSEOP_WIREMODE_FOUR 488 %token <i> PARSEOP_WIREMODE_THREE 489 %token <i> PARSEOP_WORDBUSNUMBER 490 %token <i> PARSEOP_WORDCONST 491 %token <i> PARSEOP_WORDIO 492 %token <i> PARSEOP_WORDSPACE 493 %token <i> PARSEOP_XFERSIZE_8 494 %token <i> PARSEOP_XFERSIZE_16 495 %token <i> PARSEOP_XFERSIZE_32 496 %token <i> PARSEOP_XFERSIZE_64 497 %token <i> PARSEOP_XFERSIZE_128 498 %token <i> PARSEOP_XFERSIZE_256 499 %token <i> PARSEOP_XFERTYPE_8 500 %token <i> PARSEOP_XFERTYPE_8_16 501 %token <i> PARSEOP_XFERTYPE_16 502 %token <i> PARSEOP_XOR 503 %token <i> PARSEOP_ZERO 504 505 /* ToPld macro */ 506 507 %token <i> PARSEOP_TOPLD 508 %token <i> PARSEOP_PLD_REVISION 509 %token <i> PARSEOP_PLD_IGNORECOLOR 510 %token <i> PARSEOP_PLD_RED 511 %token <i> PARSEOP_PLD_GREEN 512 %token <i> PARSEOP_PLD_BLUE 513 %token <i> PARSEOP_PLD_WIDTH 514 %token <i> PARSEOP_PLD_HEIGHT 515 %token <i> PARSEOP_PLD_USERVISIBLE 516 %token <i> PARSEOP_PLD_DOCK 517 %token <i> PARSEOP_PLD_LID 518 %token <i> PARSEOP_PLD_PANEL 519 %token <i> PARSEOP_PLD_VERTICALPOSITION 520 %token <i> PARSEOP_PLD_HORIZONTALPOSITION 521 %token <i> PARSEOP_PLD_SHAPE 522 %token <i> PARSEOP_PLD_GROUPORIENTATION 523 %token <i> PARSEOP_PLD_GROUPTOKEN 524 %token <i> PARSEOP_PLD_GROUPPOSITION 525 %token <i> PARSEOP_PLD_BAY 526 %token <i> PARSEOP_PLD_EJECTABLE 527 %token <i> PARSEOP_PLD_EJECTREQUIRED 528 %token <i> PARSEOP_PLD_CABINETNUMBER 529 %token <i> PARSEOP_PLD_CARDCAGENUMBER 530 %token <i> PARSEOP_PLD_REFERENCE 531 %token <i> PARSEOP_PLD_ROTATION 532 %token <i> PARSEOP_PLD_ORDER 533 %token <i> PARSEOP_PLD_RESERVED 534 %token <i> PARSEOP_PLD_VERTICALOFFSET 535 %token <i> PARSEOP_PLD_HORIZONTALOFFSET 536 537 /* 538 * C-style expression parser. These must appear after all of the 539 * standard ASL operators and keywords. 540 * 541 * Note: The order of these tokens implements the precedence rules 542 * (low precedence to high). See aslrules.y for an exhaustive list. 543 */ 544 %right <i> PARSEOP_EXP_EQUALS 545 PARSEOP_EXP_ADD_EQ 546 PARSEOP_EXP_SUB_EQ 547 PARSEOP_EXP_MUL_EQ 548 PARSEOP_EXP_DIV_EQ 549 PARSEOP_EXP_MOD_EQ 550 PARSEOP_EXP_SHL_EQ 551 PARSEOP_EXP_SHR_EQ 552 PARSEOP_EXP_AND_EQ 553 PARSEOP_EXP_XOR_EQ 554 PARSEOP_EXP_OR_EQ 555 556 %left <i> PARSEOP_EXP_LOGICAL_OR 557 %left <i> PARSEOP_EXP_LOGICAL_AND 558 %left <i> PARSEOP_EXP_OR 559 %left <i> PARSEOP_EXP_XOR 560 %left <i> PARSEOP_EXP_AND 561 %left <i> PARSEOP_EXP_EQUAL 562 PARSEOP_EXP_NOT_EQUAL 563 %left <i> PARSEOP_EXP_GREATER 564 PARSEOP_EXP_LESS 565 PARSEOP_EXP_GREATER_EQUAL 566 PARSEOP_EXP_LESS_EQUAL 567 %left <i> PARSEOP_EXP_SHIFT_RIGHT 568 PARSEOP_EXP_SHIFT_LEFT 569 %left <i> PARSEOP_EXP_ADD 570 PARSEOP_EXP_SUBTRACT 571 %left <i> PARSEOP_EXP_MULTIPLY 572 PARSEOP_EXP_DIVIDE 573 PARSEOP_EXP_MODULO 574 575 %right <i> PARSEOP_EXP_NOT 576 PARSEOP_EXP_LOGICAL_NOT 577 578 %left <i> PARSEOP_EXP_INCREMENT 579 PARSEOP_EXP_DECREMENT 580 581 %left <i> PARSEOP_OPEN_PAREN 582 PARSEOP_CLOSE_PAREN 583 584 /* Brackets for Index() support */ 585 586 %left <i> PARSEOP_EXP_INDEX_LEFT 587 %right <i> PARSEOP_EXP_INDEX_RIGHT 588 589 /* Macros */ 590 591 %token <i> PARSEOP_PRINTF 592 %token <i> PARSEOP_FPRINTF 593 %token <i> PARSEOP_FOR 594 595 /* Structures */ 596 597 %token <i> PARSEOP_STRUCTURE 598 %token <s> PARSEOP_STRUCTURE_NAMESTRING 599 %token <i> PARSEOP_STRUCTURE_TAG 600 %token <i> PARSEOP_STRUCTURE_ELEMENT 601 %token <i> PARSEOP_STRUCTURE_INSTANCE 602 %token <i> PARSEOP_STRUCTURE_REFERENCE 603 %token <i> PARSEOP_STRUCTURE_POINTER 604 605 /* Top level */ 606 607 %token <i> PARSEOP_ASL_CODE 608 609 610 /******************************************************************************* 611 * 612 * Tokens below are not in the aslmap.c file 613 * 614 ******************************************************************************/ 615 616 617 /* Tokens below this are not in the aslmap.c file */ 618 619 /* Specific parentheses tokens are not used at this time */ 620 /* PARSEOP_EXP_PAREN_OPEN */ 621 /* PARSEOP_EXP_PAREN_CLOSE */ 622 623 /* ASL+ variable creation */ 624 625 %token <i> PARSEOP_INTEGER_TYPE 626 %token <i> PARSEOP_STRING_TYPE 627 %token <i> PARSEOP_BUFFER_TYPE 628 %token <i> PARSEOP_PACKAGE_TYPE 629 %token <i> PARSEOP_REFERENCE_TYPE 630 631 632 /* 633 * Special functions. These should probably stay at the end of this 634 * table. 635 */ 636 %token <i> PARSEOP___DATE__ 637 %token <i> PARSEOP___FILE__ 638 %token <i> PARSEOP___LINE__ 639 %token <i> PARSEOP___PATH__ 640 %token <i> PARSEOP___METHOD__ 641