1 NoEcho(' 2 /****************************************************************************** 3 * 4 * Module Name: asltokens.y - Bison/Yacc token types 5 * 6 *****************************************************************************/ 7 8 /* 9 * Copyright (C) 2000 - 2023, Intel Corp. 10 * All rights reserved. 11 * 12 * Redistribution and use in source and binary forms, with or without 13 * modification, are permitted provided that the following conditions 14 * are met: 15 * 1. Redistributions of source code must retain the above copyright 16 * notice, this list of conditions, and the following disclaimer, 17 * without modification. 18 * 2. Redistributions in binary form must reproduce at minimum a disclaimer 19 * substantially similar to the "NO WARRANTY" disclaimer below 20 * ("Disclaimer") and any redistribution must be conditioned upon 21 * including a substantially similar Disclaimer requirement for further 22 * binary redistribution. 23 * 3. Neither the names of the above-listed copyright holders nor the names 24 * of any contributors may be used to endorse or promote products derived 25 * from this software without specific prior written permission. 26 * 27 * Alternatively, this software may be distributed under the terms of the 28 * GNU General Public License ("GPL") version 2 as published by the Free 29 * Software Foundation. 30 * 31 * NO WARRANTY 32 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 33 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 34 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 35 * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 36 * HOLDERS OR CONTRIBUTORS BE LIABLE FOR SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 37 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 38 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 39 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, 40 * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING 41 * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 42 * POSSIBILITY OF SUCH DAMAGES. 43 */ 44 45 ') 46 47 /****************************************************************************** 48 * 49 * Token types: These are returned by the lexer 50 * 51 * NOTE: This list MUST match the AslKeywordMapping table found 52 * in aslmap.c EXACTLY! Double check any changes! 53 * 54 *****************************************************************************/ 55 56 /* 57 * Most tokens are defined to return <i>, which is a UINT64. 58 * 59 * These tokens return <s>, a pointer to the associated lexed string: 60 * 61 * PARSEOP_NAMESEG 62 * PARSEOP_NAMESTRING 63 * PARSEOP_STRING_LITERAL 64 * PARSEOP_STRUCTURE_NAMESTRING 65 */ 66 %token <i> PARSEOP_ACCESSAS 67 %token <i> PARSEOP_ACCESSATTRIB_BLOCK 68 %token <i> PARSEOP_ACCESSATTRIB_BLOCK_CALL 69 %token <i> PARSEOP_ACCESSATTRIB_BYTE 70 %token <i> PARSEOP_ACCESSATTRIB_BYTES 71 %token <i> PARSEOP_ACCESSATTRIB_QUICK 72 %token <i> PARSEOP_ACCESSATTRIB_RAW_BYTES 73 %token <i> PARSEOP_ACCESSATTRIB_RAW_PROCESS 74 %token <i> PARSEOP_ACCESSATTRIB_SND_RCV 75 %token <i> PARSEOP_ACCESSATTRIB_WORD 76 %token <i> PARSEOP_ACCESSATTRIB_WORD_CALL 77 %token <i> PARSEOP_ACCESSTYPE_ANY 78 %token <i> PARSEOP_ACCESSTYPE_BUF 79 %token <i> PARSEOP_ACCESSTYPE_BYTE 80 %token <i> PARSEOP_ACCESSTYPE_DWORD 81 %token <i> PARSEOP_ACCESSTYPE_QWORD 82 %token <i> PARSEOP_ACCESSTYPE_WORD 83 %token <i> PARSEOP_ACQUIRE 84 %token <i> PARSEOP_ADD 85 %token <i> PARSEOP_ADDRESSINGMODE_7BIT 86 %token <i> PARSEOP_ADDRESSINGMODE_10BIT 87 %token <i> PARSEOP_ADDRESSTYPE_ACPI 88 %token <i> PARSEOP_ADDRESSTYPE_MEMORY 89 %token <i> PARSEOP_ADDRESSTYPE_NVS 90 %token <i> PARSEOP_ADDRESSTYPE_RESERVED 91 %token <i> PARSEOP_ALIAS 92 %token <i> PARSEOP_AND 93 %token <i> PARSEOP_ARG0 94 %token <i> PARSEOP_ARG1 95 %token <i> PARSEOP_ARG2 96 %token <i> PARSEOP_ARG3 97 %token <i> PARSEOP_ARG4 98 %token <i> PARSEOP_ARG5 99 %token <i> PARSEOP_ARG6 100 %token <i> PARSEOP_BANKFIELD 101 %token <i> PARSEOP_BITSPERBYTE_EIGHT 102 %token <i> PARSEOP_BITSPERBYTE_FIVE 103 %token <i> PARSEOP_BITSPERBYTE_NINE 104 %token <i> PARSEOP_BITSPERBYTE_SEVEN 105 %token <i> PARSEOP_BITSPERBYTE_SIX 106 %token <i> PARSEOP_BREAK 107 %token <i> PARSEOP_BREAKPOINT 108 %token <i> PARSEOP_BUFFER 109 %token <i> PARSEOP_BUSMASTERTYPE_MASTER 110 %token <i> PARSEOP_BUSMASTERTYPE_NOTMASTER 111 %token <i> PARSEOP_BYTECONST 112 %token <i> PARSEOP_CASE 113 %token <i> PARSEOP_CLOCKPHASE_FIRST 114 %token <i> PARSEOP_CLOCKPHASE_SECOND 115 %token <i> PARSEOP_CLOCKPOLARITY_HIGH 116 %token <i> PARSEOP_CLOCKPOLARITY_LOW 117 %token <i> PARSEOP_CONCATENATE 118 %token <i> PARSEOP_CONCATENATERESTEMPLATE 119 %token <i> PARSEOP_CONDREFOF 120 %token <i> PARSEOP_CONNECTION 121 %token <i> PARSEOP_CONTINUE 122 %token <i> PARSEOP_COPYOBJECT 123 %token <i> PARSEOP_CREATEBITFIELD 124 %token <i> PARSEOP_CREATEBYTEFIELD 125 %token <i> PARSEOP_CREATEDWORDFIELD 126 %token <i> PARSEOP_CREATEFIELD 127 %token <i> PARSEOP_CREATEQWORDFIELD 128 %token <i> PARSEOP_CREATEWORDFIELD 129 %token <i> PARSEOP_DATABUFFER 130 %token <i> PARSEOP_DATATABLEREGION 131 %token <i> PARSEOP_DEBUG 132 %token <i> PARSEOP_DECODETYPE_POS 133 %token <i> PARSEOP_DECODETYPE_SUB 134 %token <i> PARSEOP_DECREMENT 135 %token <i> PARSEOP_DEFAULT 136 %token <i> PARSEOP_DEFAULT_ARG 137 %token <i> PARSEOP_DEFINITION_BLOCK 138 %token <i> PARSEOP_DEREFOF 139 %token <i> PARSEOP_DEVICE 140 %token <i> PARSEOP_DEVICEPOLARITY_HIGH 141 %token <i> PARSEOP_DEVICEPOLARITY_LOW 142 %token <i> PARSEOP_DIVIDE 143 %token <i> PARSEOP_DMA 144 %token <i> PARSEOP_DMATYPE_A 145 %token <i> PARSEOP_DMATYPE_COMPATIBILITY 146 %token <i> PARSEOP_DMATYPE_B 147 %token <i> PARSEOP_DMATYPE_F 148 %token <i> PARSEOP_DWORDCONST 149 %token <i> PARSEOP_DWORDIO 150 %token <i> PARSEOP_DWORDMEMORY 151 %token <i> PARSEOP_DWORDPCC 152 %token <i> PARSEOP_DWORDSPACE 153 %token <i> PARSEOP_EISAID 154 %token <i> PARSEOP_ELSE 155 %token <i> PARSEOP_ELSEIF 156 %token <i> PARSEOP_ENDDEPENDENTFN 157 %token <i> PARSEOP_ENDIAN_BIG 158 %token <i> PARSEOP_ENDIAN_LITTLE 159 %token <i> PARSEOP_ENDTAG 160 %token <i> PARSEOP_ERRORNODE 161 %token <i> PARSEOP_EVENT 162 %token <i> PARSEOP_EXTENDEDIO 163 %token <i> PARSEOP_EXTENDEDMEMORY 164 %token <i> PARSEOP_EXTENDEDSPACE 165 %token <i> PARSEOP_EXTERNAL 166 %token <i> PARSEOP_FATAL 167 %token <i> PARSEOP_FIELD 168 %token <i> PARSEOP_FINDSETLEFTBIT 169 %token <i> PARSEOP_FINDSETRIGHTBIT 170 %token <i> PARSEOP_FIXEDDMA 171 %token <i> PARSEOP_FIXEDIO 172 %token <i> PARSEOP_FLOWCONTROL_HW 173 %token <i> PARSEOP_FLOWCONTROL_NONE 174 %token <i> PARSEOP_FLOWCONTROL_SW 175 %token <i> PARSEOP_FROMBCD 176 %token <i> PARSEOP_FUNCTION 177 %token <i> PARSEOP_GPIO_INT 178 %token <i> PARSEOP_GPIO_IO 179 %token <i> PARSEOP_CSI2_SERIALBUS 180 %token <i> PARSEOP_I2C_SERIALBUS 181 %token <i> PARSEOP_I2C_SERIALBUS_V2 182 %token <i> PARSEOP_IF 183 %token <i> PARSEOP_INCLUDE 184 %token <i> PARSEOP_INCLUDE_END 185 %token <i> PARSEOP_INCREMENT 186 %token <i> PARSEOP_INDEX 187 %token <i> PARSEOP_INDEXFIELD 188 %token <i> PARSEOP_INTEGER 189 %token <i> PARSEOP_INTERRUPT 190 %token <i> PARSEOP_INTLEVEL_ACTIVEBOTH 191 %token <i> PARSEOP_INTLEVEL_ACTIVEHIGH 192 %token <i> PARSEOP_INTLEVEL_ACTIVELOW 193 %token <i> PARSEOP_INTTYPE_EDGE 194 %token <i> PARSEOP_INTTYPE_LEVEL 195 %token <i> PARSEOP_IO 196 %token <i> PARSEOP_IODECODETYPE_10 197 %token <i> PARSEOP_IODECODETYPE_16 198 %token <i> PARSEOP_IORESTRICT_IN 199 %token <i> PARSEOP_IORESTRICT_NONE 200 %token <i> PARSEOP_IORESTRICT_OUT 201 %token <i> PARSEOP_IORESTRICT_PRESERVE 202 %token <i> PARSEOP_IRQ 203 %token <i> PARSEOP_IRQNOFLAGS 204 %token <i> PARSEOP_LAND 205 %token <i> PARSEOP_LEQUAL 206 %token <i> PARSEOP_LGREATER 207 %token <i> PARSEOP_LGREATEREQUAL 208 %token <i> PARSEOP_LLESS 209 %token <i> PARSEOP_LLESSEQUAL 210 %token <i> PARSEOP_LNOT 211 %token <i> PARSEOP_LNOTEQUAL 212 %token <i> PARSEOP_LOAD 213 %token <i> PARSEOP_LOADTABLE 214 %token <i> PARSEOP_LOCAL0 215 %token <i> PARSEOP_LOCAL1 216 %token <i> PARSEOP_LOCAL2 217 %token <i> PARSEOP_LOCAL3 218 %token <i> PARSEOP_LOCAL4 219 %token <i> PARSEOP_LOCAL5 220 %token <i> PARSEOP_LOCAL6 221 %token <i> PARSEOP_LOCAL7 222 %token <i> PARSEOP_LOCKRULE_LOCK 223 %token <i> PARSEOP_LOCKRULE_NOLOCK 224 %token <i> PARSEOP_LOR 225 %token <i> PARSEOP_MATCH 226 %token <i> PARSEOP_MATCHTYPE_MEQ 227 %token <i> PARSEOP_MATCHTYPE_MGE 228 %token <i> PARSEOP_MATCHTYPE_MGT 229 %token <i> PARSEOP_MATCHTYPE_MLE 230 %token <i> PARSEOP_MATCHTYPE_MLT 231 %token <i> PARSEOP_MATCHTYPE_MTR 232 %token <i> PARSEOP_MAXTYPE_FIXED 233 %token <i> PARSEOP_MAXTYPE_NOTFIXED 234 %token <i> PARSEOP_MEMORY24 235 %token <i> PARSEOP_MEMORY32 236 %token <i> PARSEOP_MEMORY32FIXED 237 %token <i> PARSEOP_MEMTYPE_CACHEABLE 238 %token <i> PARSEOP_MEMTYPE_NONCACHEABLE 239 %token <i> PARSEOP_MEMTYPE_PREFETCHABLE 240 %token <i> PARSEOP_MEMTYPE_WRITECOMBINING 241 %token <i> PARSEOP_METHOD 242 %token <i> PARSEOP_METHODCALL 243 %token <i> PARSEOP_MID 244 %token <i> PARSEOP_MINTYPE_FIXED 245 %token <i> PARSEOP_MINTYPE_NOTFIXED 246 %token <i> PARSEOP_MOD 247 %token <i> PARSEOP_MULTIPLY 248 %token <i> PARSEOP_MUTEX 249 %token <i> PARSEOP_NAME 250 %token <s> PARSEOP_NAMESEG 251 %token <s> PARSEOP_NAMESTRING 252 %token <i> PARSEOP_NAND 253 %token <i> PARSEOP_NOOP 254 %token <i> PARSEOP_NOR 255 %token <i> PARSEOP_NOT 256 %token <i> PARSEOP_NOTIFY 257 %token <i> PARSEOP_OBJECTTYPE 258 %token <i> PARSEOP_OBJECTTYPE_BFF 259 %token <i> PARSEOP_OBJECTTYPE_BUF 260 %token <i> PARSEOP_OBJECTTYPE_DDB 261 %token <i> PARSEOP_OBJECTTYPE_DEV 262 %token <i> PARSEOP_OBJECTTYPE_EVT 263 %token <i> PARSEOP_OBJECTTYPE_FLD 264 %token <i> PARSEOP_OBJECTTYPE_INT 265 %token <i> PARSEOP_OBJECTTYPE_MTH 266 %token <i> PARSEOP_OBJECTTYPE_MTX 267 %token <i> PARSEOP_OBJECTTYPE_OPR 268 %token <i> PARSEOP_OBJECTTYPE_PKG 269 %token <i> PARSEOP_OBJECTTYPE_POW 270 %token <i> PARSEOP_OBJECTTYPE_PRO 271 %token <i> PARSEOP_OBJECTTYPE_STR 272 %token <i> PARSEOP_OBJECTTYPE_THZ 273 %token <i> PARSEOP_OBJECTTYPE_UNK 274 %token <i> PARSEOP_OFFSET 275 %token <i> PARSEOP_ONE 276 %token <i> PARSEOP_ONES 277 %token <i> PARSEOP_OPERATIONREGION 278 %token <i> PARSEOP_OR 279 %token <i> PARSEOP_PACKAGE 280 %token <i> PARSEOP_PACKAGE_LENGTH 281 %token <i> PARSEOP_PARITYTYPE_EVEN 282 %token <i> PARSEOP_PARITYTYPE_MARK 283 %token <i> PARSEOP_PARITYTYPE_NONE 284 %token <i> PARSEOP_PARITYTYPE_ODD 285 %token <i> PARSEOP_PARITYTYPE_SPACE 286 %token <i> PARSEOP_PINCONFIG 287 %token <i> PARSEOP_PINFUNCTION 288 %token <i> PARSEOP_PINGROUP 289 %token <i> PARSEOP_PINGROUPCONFIG 290 %token <i> PARSEOP_PINGROUPFUNCTION 291 %token <i> PARSEOP_PIN_NOPULL 292 %token <i> PARSEOP_PIN_PULLDEFAULT 293 %token <i> PARSEOP_PIN_PULLDOWN 294 %token <i> PARSEOP_PIN_PULLUP 295 %token <i> PARSEOP_CLOCKINPUT 296 %token <i> PARSEOP_CLOCK_HZ 297 %token <i> PARSEOP_CLOCK_KHZ 298 %token <i> PARSEOP_CLOCK_MHZ 299 %token <i> PARSEOP_CLOCK_FIXED 300 %token <i> PARSEOP_CLOCK_VARIABLE 301 %token <i> PARSEOP_POWERRESOURCE 302 %token <i> PARSEOP_PROCESSOR 303 %token <i> PARSEOP_QWORDCONST 304 %token <i> PARSEOP_QWORDIO 305 %token <i> PARSEOP_QWORDMEMORY 306 %token <i> PARSEOP_QWORDPCC 307 %token <i> PARSEOP_QWORDSPACE 308 %token <i> PARSEOP_RANGETYPE_ENTIRE 309 %token <i> PARSEOP_RANGETYPE_ISAONLY 310 %token <i> PARSEOP_RANGETYPE_NONISAONLY 311 %token <i> PARSEOP_RAW_DATA 312 %token <i> PARSEOP_READWRITETYPE_BOTH 313 %token <i> PARSEOP_READWRITETYPE_READONLY 314 %token <i> PARSEOP_REFOF 315 %token <i> PARSEOP_REGIONSPACE_CMOS 316 %token <i> PARSEOP_REGIONSPACE_EC 317 %token <i> PARSEOP_REGIONSPACE_FFIXEDHW 318 %token <i> PARSEOP_REGIONSPACE_GPIO 319 %token <i> PARSEOP_REGIONSPACE_GSBUS 320 %token <i> PARSEOP_REGIONSPACE_IO 321 %token <i> PARSEOP_REGIONSPACE_IPMI 322 %token <i> PARSEOP_REGIONSPACE_MEM 323 %token <i> PARSEOP_REGIONSPACE_PCC 324 %token <i> PARSEOP_REGIONSPACE_PCI 325 %token <i> PARSEOP_REGIONSPACE_PCIBAR 326 %token <i> PARSEOP_REGIONSPACE_PRM 327 %token <i> PARSEOP_REGIONSPACE_SMBUS 328 %token <i> PARSEOP_REGISTER 329 %token <i> PARSEOP_RELEASE 330 %token <i> PARSEOP_RESERVED_BYTES 331 %token <i> PARSEOP_RESET 332 %token <i> PARSEOP_RESOURCETEMPLATE 333 %token <i> PARSEOP_RESOURCETYPE_CONSUMER 334 %token <i> PARSEOP_RESOURCETYPE_PRODUCER 335 %token <i> PARSEOP_RETURN 336 %token <i> PARSEOP_REVISION 337 %token <i> PARSEOP_SCOPE 338 %token <i> PARSEOP_SERIALIZERULE_NOTSERIAL 339 %token <i> PARSEOP_SERIALIZERULE_SERIAL 340 %token <i> PARSEOP_SHARETYPE_EXCLUSIVE 341 %token <i> PARSEOP_SHARETYPE_EXCLUSIVEWAKE 342 %token <i> PARSEOP_SHARETYPE_SHARED 343 %token <i> PARSEOP_SHARETYPE_SHAREDWAKE 344 %token <i> PARSEOP_SHIFTLEFT 345 %token <i> PARSEOP_SHIFTRIGHT 346 %token <i> PARSEOP_SIGNAL 347 %token <i> PARSEOP_SIZEOF 348 %token <i> PARSEOP_SLAVEMODE_CONTROLLERINIT 349 %token <i> PARSEOP_SLAVEMODE_DEVICEINIT 350 %token <i> PARSEOP_SLEEP 351 %token <i> PARSEOP_SPI_SERIALBUS 352 %token <i> PARSEOP_SPI_SERIALBUS_V2 353 %token <i> PARSEOP_STALL 354 %token <i> PARSEOP_STARTDEPENDENTFN 355 %token <i> PARSEOP_STARTDEPENDENTFN_NOPRI 356 %token <i> PARSEOP_STOPBITS_ONE 357 %token <i> PARSEOP_STOPBITS_ONEPLUSHALF 358 %token <i> PARSEOP_STOPBITS_TWO 359 %token <i> PARSEOP_STOPBITS_ZERO 360 %token <i> PARSEOP_STORE 361 %token <s> PARSEOP_STRING_LITERAL 362 %token <i> PARSEOP_SUBTRACT 363 %token <i> PARSEOP_SWITCH 364 %token <i> PARSEOP_THERMALZONE 365 %token <i> PARSEOP_TIMER 366 %token <i> PARSEOP_TOBCD 367 %token <i> PARSEOP_TOBUFFER 368 %token <i> PARSEOP_TODECIMALSTRING 369 %token <i> PARSEOP_TOHEXSTRING 370 %token <i> PARSEOP_TOINTEGER 371 %token <i> PARSEOP_TOSTRING 372 %token <i> PARSEOP_TOUUID 373 %token <i> PARSEOP_TRANSLATIONTYPE_DENSE 374 %token <i> PARSEOP_TRANSLATIONTYPE_SPARSE 375 %token <i> PARSEOP_TYPE_STATIC 376 %token <i> PARSEOP_TYPE_TRANSLATION 377 %token <i> PARSEOP_UART_SERIALBUS 378 %token <i> PARSEOP_UART_SERIALBUS_V2 379 %token <i> PARSEOP_UNICODE 380 %token <i> PARSEOP_UNLOAD 381 %token <i> PARSEOP_UPDATERULE_ONES 382 %token <i> PARSEOP_UPDATERULE_PRESERVE 383 %token <i> PARSEOP_UPDATERULE_ZEROS 384 %token <i> PARSEOP_VAR_PACKAGE 385 %token <i> PARSEOP_VENDORLONG 386 %token <i> PARSEOP_VENDORSHORT 387 %token <i> PARSEOP_WAIT 388 %token <i> PARSEOP_WHILE 389 %token <i> PARSEOP_WIREMODE_FOUR 390 %token <i> PARSEOP_WIREMODE_THREE 391 %token <i> PARSEOP_WORDBUSNUMBER 392 %token <i> PARSEOP_WORDCONST 393 %token <i> PARSEOP_WORDIO 394 %token <i> PARSEOP_WORDPCC 395 %token <i> PARSEOP_WORDSPACE 396 %token <i> PARSEOP_XFERSIZE_8 397 %token <i> PARSEOP_XFERSIZE_16 398 %token <i> PARSEOP_XFERSIZE_32 399 %token <i> PARSEOP_XFERSIZE_64 400 %token <i> PARSEOP_XFERSIZE_128 401 %token <i> PARSEOP_XFERSIZE_256 402 %token <i> PARSEOP_XFERTYPE_8 403 %token <i> PARSEOP_XFERTYPE_8_16 404 %token <i> PARSEOP_XFERTYPE_16 405 %token <i> PARSEOP_XOR 406 %token <i> PARSEOP_ZERO 407 408 /* ToPld macro */ 409 410 %token <i> PARSEOP_TOPLD 411 %token <i> PARSEOP_PLD_REVISION 412 %token <i> PARSEOP_PLD_IGNORECOLOR 413 %token <i> PARSEOP_PLD_RED 414 %token <i> PARSEOP_PLD_GREEN 415 %token <i> PARSEOP_PLD_BLUE 416 %token <i> PARSEOP_PLD_WIDTH 417 %token <i> PARSEOP_PLD_HEIGHT 418 %token <i> PARSEOP_PLD_USERVISIBLE 419 %token <i> PARSEOP_PLD_DOCK 420 %token <i> PARSEOP_PLD_LID 421 %token <i> PARSEOP_PLD_PANEL 422 %token <i> PARSEOP_PLD_VERTICALPOSITION 423 %token <i> PARSEOP_PLD_HORIZONTALPOSITION 424 %token <i> PARSEOP_PLD_SHAPE 425 %token <i> PARSEOP_PLD_GROUPORIENTATION 426 %token <i> PARSEOP_PLD_GROUPTOKEN 427 %token <i> PARSEOP_PLD_GROUPPOSITION 428 %token <i> PARSEOP_PLD_BAY 429 %token <i> PARSEOP_PLD_EJECTABLE 430 %token <i> PARSEOP_PLD_EJECTREQUIRED 431 %token <i> PARSEOP_PLD_CABINETNUMBER 432 %token <i> PARSEOP_PLD_CARDCAGENUMBER 433 %token <i> PARSEOP_PLD_REFERENCE 434 %token <i> PARSEOP_PLD_ROTATION 435 %token <i> PARSEOP_PLD_ORDER 436 %token <i> PARSEOP_PLD_RESERVED 437 %token <i> PARSEOP_PLD_VERTICALOFFSET 438 %token <i> PARSEOP_PLD_HORIZONTALOFFSET 439 440 /* 441 * C-style expression parser. These must appear after all of the 442 * standard ASL operators and keywords. 443 * 444 * Note: The order of these tokens implements the precedence rules 445 * (low precedence to high). See aslrules.y for an exhaustive list. 446 */ 447 %right <i> PARSEOP_EXP_EQUALS 448 PARSEOP_EXP_ADD_EQ 449 PARSEOP_EXP_SUB_EQ 450 PARSEOP_EXP_MUL_EQ 451 PARSEOP_EXP_DIV_EQ 452 PARSEOP_EXP_MOD_EQ 453 PARSEOP_EXP_SHL_EQ 454 PARSEOP_EXP_SHR_EQ 455 PARSEOP_EXP_AND_EQ 456 PARSEOP_EXP_XOR_EQ 457 PARSEOP_EXP_OR_EQ 458 459 %left <i> PARSEOP_EXP_LOGICAL_OR 460 %left <i> PARSEOP_EXP_LOGICAL_AND 461 %left <i> PARSEOP_EXP_OR 462 %left <i> PARSEOP_EXP_XOR 463 %left <i> PARSEOP_EXP_AND 464 %left <i> PARSEOP_EXP_EQUAL 465 PARSEOP_EXP_NOT_EQUAL 466 %left <i> PARSEOP_EXP_GREATER 467 PARSEOP_EXP_LESS 468 PARSEOP_EXP_GREATER_EQUAL 469 PARSEOP_EXP_LESS_EQUAL 470 %left <i> PARSEOP_EXP_SHIFT_RIGHT 471 PARSEOP_EXP_SHIFT_LEFT 472 %left <i> PARSEOP_EXP_ADD 473 PARSEOP_EXP_SUBTRACT 474 %left <i> PARSEOP_EXP_MULTIPLY 475 PARSEOP_EXP_DIVIDE 476 PARSEOP_EXP_MODULO 477 478 %right <i> PARSEOP_EXP_NOT 479 PARSEOP_EXP_LOGICAL_NOT 480 481 %left <i> PARSEOP_EXP_INCREMENT 482 PARSEOP_EXP_DECREMENT 483 484 %left <i> PARSEOP_OPEN_PAREN 485 PARSEOP_CLOSE_PAREN 486 487 /* Brackets for Index() support */ 488 489 %left <i> PARSEOP_EXP_INDEX_LEFT 490 %right <i> PARSEOP_EXP_INDEX_RIGHT 491 492 /* Macros */ 493 494 %token <i> PARSEOP_PRINTF 495 %token <i> PARSEOP_FPRINTF 496 %token <i> PARSEOP_FOR 497 498 /* Structures */ 499 500 %token <i> PARSEOP_STRUCTURE 501 %token <s> PARSEOP_STRUCTURE_NAMESTRING 502 %token <i> PARSEOP_STRUCTURE_TAG 503 %token <i> PARSEOP_STRUCTURE_ELEMENT 504 %token <i> PARSEOP_STRUCTURE_INSTANCE 505 %token <i> PARSEOP_STRUCTURE_REFERENCE 506 %token <i> PARSEOP_STRUCTURE_POINTER 507 508 /* Top level */ 509 510 %token <i> PARSEOP_ASL_CODE 511 512 513 /******************************************************************************* 514 * 515 * Tokens below are not in the aslmap.c file 516 * 517 ******************************************************************************/ 518 519 520 /* Tokens below this are not in the aslmap.c file */ 521 522 /* Specific parentheses tokens are not used at this time */ 523 /* PARSEOP_EXP_PAREN_OPEN */ 524 /* PARSEOP_EXP_PAREN_CLOSE */ 525 526 /* ASL+ variable creation */ 527 528 %token <i> PARSEOP_INTEGER_TYPE 529 %token <i> PARSEOP_STRING_TYPE 530 %token <i> PARSEOP_BUFFER_TYPE 531 %token <i> PARSEOP_PACKAGE_TYPE 532 %token <i> PARSEOP_REFERENCE_TYPE 533 534 535 /* 536 * Special functions. These should probably stay at the end of this 537 * table. 538 */ 539 %token <i> PARSEOP___DATE__ 540 %token <i> PARSEOP___FILE__ 541 %token <i> PARSEOP___LINE__ 542 %token <i> PARSEOP___PATH__ 543 %token <i> PARSEOP___METHOD__ 544