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 - 2024, 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_DWORDPCC 260 %token <i> PARSEOP_DWORDSPACE 261 %token <i> PARSEOP_EISAID 262 %token <i> PARSEOP_ELSE 263 %token <i> PARSEOP_ELSEIF 264 %token <i> PARSEOP_ENDDEPENDENTFN 265 %token <i> PARSEOP_ENDIAN_BIG 266 %token <i> PARSEOP_ENDIAN_LITTLE 267 %token <i> PARSEOP_ENDTAG 268 %token <i> PARSEOP_ERRORNODE 269 %token <i> PARSEOP_EVENT 270 %token <i> PARSEOP_EXTENDEDIO 271 %token <i> PARSEOP_EXTENDEDMEMORY 272 %token <i> PARSEOP_EXTENDEDSPACE 273 %token <i> PARSEOP_EXTERNAL 274 %token <i> PARSEOP_FATAL 275 %token <i> PARSEOP_FIELD 276 %token <i> PARSEOP_FINDSETLEFTBIT 277 %token <i> PARSEOP_FINDSETRIGHTBIT 278 %token <i> PARSEOP_FIXEDDMA 279 %token <i> PARSEOP_FIXEDIO 280 %token <i> PARSEOP_FLOWCONTROL_HW 281 %token <i> PARSEOP_FLOWCONTROL_NONE 282 %token <i> PARSEOP_FLOWCONTROL_SW 283 %token <i> PARSEOP_FROMBCD 284 %token <i> PARSEOP_FUNCTION 285 %token <i> PARSEOP_GPIO_INT 286 %token <i> PARSEOP_GPIO_IO 287 %token <i> PARSEOP_CSI2_SERIALBUS 288 %token <i> PARSEOP_I2C_SERIALBUS 289 %token <i> PARSEOP_I2C_SERIALBUS_V2 290 %token <i> PARSEOP_IF 291 %token <i> PARSEOP_INCLUDE 292 %token <i> PARSEOP_INCLUDE_END 293 %token <i> PARSEOP_INCREMENT 294 %token <i> PARSEOP_INDEX 295 %token <i> PARSEOP_INDEXFIELD 296 %token <i> PARSEOP_INTEGER 297 %token <i> PARSEOP_INTERRUPT 298 %token <i> PARSEOP_INTLEVEL_ACTIVEBOTH 299 %token <i> PARSEOP_INTLEVEL_ACTIVEHIGH 300 %token <i> PARSEOP_INTLEVEL_ACTIVELOW 301 %token <i> PARSEOP_INTTYPE_EDGE 302 %token <i> PARSEOP_INTTYPE_LEVEL 303 %token <i> PARSEOP_IO 304 %token <i> PARSEOP_IODECODETYPE_10 305 %token <i> PARSEOP_IODECODETYPE_16 306 %token <i> PARSEOP_IORESTRICT_IN 307 %token <i> PARSEOP_IORESTRICT_NONE 308 %token <i> PARSEOP_IORESTRICT_OUT 309 %token <i> PARSEOP_IORESTRICT_PRESERVE 310 %token <i> PARSEOP_IRQ 311 %token <i> PARSEOP_IRQNOFLAGS 312 %token <i> PARSEOP_LAND 313 %token <i> PARSEOP_LEQUAL 314 %token <i> PARSEOP_LGREATER 315 %token <i> PARSEOP_LGREATEREQUAL 316 %token <i> PARSEOP_LLESS 317 %token <i> PARSEOP_LLESSEQUAL 318 %token <i> PARSEOP_LNOT 319 %token <i> PARSEOP_LNOTEQUAL 320 %token <i> PARSEOP_LOAD 321 %token <i> PARSEOP_LOADTABLE 322 %token <i> PARSEOP_LOCAL0 323 %token <i> PARSEOP_LOCAL1 324 %token <i> PARSEOP_LOCAL2 325 %token <i> PARSEOP_LOCAL3 326 %token <i> PARSEOP_LOCAL4 327 %token <i> PARSEOP_LOCAL5 328 %token <i> PARSEOP_LOCAL6 329 %token <i> PARSEOP_LOCAL7 330 %token <i> PARSEOP_LOCKRULE_LOCK 331 %token <i> PARSEOP_LOCKRULE_NOLOCK 332 %token <i> PARSEOP_LOR 333 %token <i> PARSEOP_MATCH 334 %token <i> PARSEOP_MATCHTYPE_MEQ 335 %token <i> PARSEOP_MATCHTYPE_MGE 336 %token <i> PARSEOP_MATCHTYPE_MGT 337 %token <i> PARSEOP_MATCHTYPE_MLE 338 %token <i> PARSEOP_MATCHTYPE_MLT 339 %token <i> PARSEOP_MATCHTYPE_MTR 340 %token <i> PARSEOP_MAXTYPE_FIXED 341 %token <i> PARSEOP_MAXTYPE_NOTFIXED 342 %token <i> PARSEOP_MEMORY24 343 %token <i> PARSEOP_MEMORY32 344 %token <i> PARSEOP_MEMORY32FIXED 345 %token <i> PARSEOP_MEMTYPE_CACHEABLE 346 %token <i> PARSEOP_MEMTYPE_NONCACHEABLE 347 %token <i> PARSEOP_MEMTYPE_PREFETCHABLE 348 %token <i> PARSEOP_MEMTYPE_WRITECOMBINING 349 %token <i> PARSEOP_METHOD 350 %token <i> PARSEOP_METHODCALL 351 %token <i> PARSEOP_MID 352 %token <i> PARSEOP_MINTYPE_FIXED 353 %token <i> PARSEOP_MINTYPE_NOTFIXED 354 %token <i> PARSEOP_MOD 355 %token <i> PARSEOP_MULTIPLY 356 %token <i> PARSEOP_MUTEX 357 %token <i> PARSEOP_NAME 358 %token <s> PARSEOP_NAMESEG 359 %token <s> PARSEOP_NAMESTRING 360 %token <i> PARSEOP_NAND 361 %token <i> PARSEOP_NOOP 362 %token <i> PARSEOP_NOR 363 %token <i> PARSEOP_NOT 364 %token <i> PARSEOP_NOTIFY 365 %token <i> PARSEOP_OBJECTTYPE 366 %token <i> PARSEOP_OBJECTTYPE_BFF 367 %token <i> PARSEOP_OBJECTTYPE_BUF 368 %token <i> PARSEOP_OBJECTTYPE_DDB 369 %token <i> PARSEOP_OBJECTTYPE_DEV 370 %token <i> PARSEOP_OBJECTTYPE_EVT 371 %token <i> PARSEOP_OBJECTTYPE_FLD 372 %token <i> PARSEOP_OBJECTTYPE_INT 373 %token <i> PARSEOP_OBJECTTYPE_MTH 374 %token <i> PARSEOP_OBJECTTYPE_MTX 375 %token <i> PARSEOP_OBJECTTYPE_OPR 376 %token <i> PARSEOP_OBJECTTYPE_PKG 377 %token <i> PARSEOP_OBJECTTYPE_POW 378 %token <i> PARSEOP_OBJECTTYPE_PRO 379 %token <i> PARSEOP_OBJECTTYPE_STR 380 %token <i> PARSEOP_OBJECTTYPE_THZ 381 %token <i> PARSEOP_OBJECTTYPE_UNK 382 %token <i> PARSEOP_OFFSET 383 %token <i> PARSEOP_ONE 384 %token <i> PARSEOP_ONES 385 %token <i> PARSEOP_OPERATIONREGION 386 %token <i> PARSEOP_OR 387 %token <i> PARSEOP_PACKAGE 388 %token <i> PARSEOP_PACKAGE_LENGTH 389 %token <i> PARSEOP_PARITYTYPE_EVEN 390 %token <i> PARSEOP_PARITYTYPE_MARK 391 %token <i> PARSEOP_PARITYTYPE_NONE 392 %token <i> PARSEOP_PARITYTYPE_ODD 393 %token <i> PARSEOP_PARITYTYPE_SPACE 394 %token <i> PARSEOP_PINCONFIG 395 %token <i> PARSEOP_PINFUNCTION 396 %token <i> PARSEOP_PINGROUP 397 %token <i> PARSEOP_PINGROUPCONFIG 398 %token <i> PARSEOP_PINGROUPFUNCTION 399 %token <i> PARSEOP_PIN_NOPULL 400 %token <i> PARSEOP_PIN_PULLDEFAULT 401 %token <i> PARSEOP_PIN_PULLDOWN 402 %token <i> PARSEOP_PIN_PULLUP 403 %token <i> PARSEOP_CLOCKINPUT 404 %token <i> PARSEOP_CLOCK_HZ 405 %token <i> PARSEOP_CLOCK_KHZ 406 %token <i> PARSEOP_CLOCK_MHZ 407 %token <i> PARSEOP_CLOCK_FIXED 408 %token <i> PARSEOP_CLOCK_VARIABLE 409 %token <i> PARSEOP_POWERRESOURCE 410 %token <i> PARSEOP_PROCESSOR 411 %token <i> PARSEOP_QWORDCONST 412 %token <i> PARSEOP_QWORDIO 413 %token <i> PARSEOP_QWORDMEMORY 414 %token <i> PARSEOP_QWORDPCC 415 %token <i> PARSEOP_QWORDSPACE 416 %token <i> PARSEOP_RANGETYPE_ENTIRE 417 %token <i> PARSEOP_RANGETYPE_ISAONLY 418 %token <i> PARSEOP_RANGETYPE_NONISAONLY 419 %token <i> PARSEOP_RAW_DATA 420 %token <i> PARSEOP_READWRITETYPE_BOTH 421 %token <i> PARSEOP_READWRITETYPE_READONLY 422 %token <i> PARSEOP_REFOF 423 %token <i> PARSEOP_REGIONSPACE_CMOS 424 %token <i> PARSEOP_REGIONSPACE_EC 425 %token <i> PARSEOP_REGIONSPACE_FFIXEDHW 426 %token <i> PARSEOP_REGIONSPACE_GPIO 427 %token <i> PARSEOP_REGIONSPACE_GSBUS 428 %token <i> PARSEOP_REGIONSPACE_IO 429 %token <i> PARSEOP_REGIONSPACE_IPMI 430 %token <i> PARSEOP_REGIONSPACE_MEM 431 %token <i> PARSEOP_REGIONSPACE_PCC 432 %token <i> PARSEOP_REGIONSPACE_PCI 433 %token <i> PARSEOP_REGIONSPACE_PCIBAR 434 %token <i> PARSEOP_REGIONSPACE_PRM 435 %token <i> PARSEOP_REGIONSPACE_SMBUS 436 %token <i> PARSEOP_REGISTER 437 %token <i> PARSEOP_RELEASE 438 %token <i> PARSEOP_RESERVED_BYTES 439 %token <i> PARSEOP_RESET 440 %token <i> PARSEOP_RESOURCETEMPLATE 441 %token <i> PARSEOP_RESOURCETYPE_CONSUMER 442 %token <i> PARSEOP_RESOURCETYPE_PRODUCER 443 %token <i> PARSEOP_RETURN 444 %token <i> PARSEOP_REVISION 445 %token <i> PARSEOP_SCOPE 446 %token <i> PARSEOP_SERIALIZERULE_NOTSERIAL 447 %token <i> PARSEOP_SERIALIZERULE_SERIAL 448 %token <i> PARSEOP_SHARETYPE_EXCLUSIVE 449 %token <i> PARSEOP_SHARETYPE_EXCLUSIVEWAKE 450 %token <i> PARSEOP_SHARETYPE_SHARED 451 %token <i> PARSEOP_SHARETYPE_SHAREDWAKE 452 %token <i> PARSEOP_SHIFTLEFT 453 %token <i> PARSEOP_SHIFTRIGHT 454 %token <i> PARSEOP_SIGNAL 455 %token <i> PARSEOP_SIZEOF 456 %token <i> PARSEOP_SLAVEMODE_CONTROLLERINIT 457 %token <i> PARSEOP_SLAVEMODE_DEVICEINIT 458 %token <i> PARSEOP_SLEEP 459 %token <i> PARSEOP_SPI_SERIALBUS 460 %token <i> PARSEOP_SPI_SERIALBUS_V2 461 %token <i> PARSEOP_STALL 462 %token <i> PARSEOP_STARTDEPENDENTFN 463 %token <i> PARSEOP_STARTDEPENDENTFN_NOPRI 464 %token <i> PARSEOP_STOPBITS_ONE 465 %token <i> PARSEOP_STOPBITS_ONEPLUSHALF 466 %token <i> PARSEOP_STOPBITS_TWO 467 %token <i> PARSEOP_STOPBITS_ZERO 468 %token <i> PARSEOP_STORE 469 %token <s> PARSEOP_STRING_LITERAL 470 %token <i> PARSEOP_SUBTRACT 471 %token <i> PARSEOP_SWITCH 472 %token <i> PARSEOP_THERMALZONE 473 %token <i> PARSEOP_TIMER 474 %token <i> PARSEOP_TOBCD 475 %token <i> PARSEOP_TOBUFFER 476 %token <i> PARSEOP_TODECIMALSTRING 477 %token <i> PARSEOP_TOHEXSTRING 478 %token <i> PARSEOP_TOINTEGER 479 %token <i> PARSEOP_TOSTRING 480 %token <i> PARSEOP_TOUUID 481 %token <i> PARSEOP_TRANSLATIONTYPE_DENSE 482 %token <i> PARSEOP_TRANSLATIONTYPE_SPARSE 483 %token <i> PARSEOP_TYPE_STATIC 484 %token <i> PARSEOP_TYPE_TRANSLATION 485 %token <i> PARSEOP_UART_SERIALBUS 486 %token <i> PARSEOP_UART_SERIALBUS_V2 487 %token <i> PARSEOP_UNICODE 488 %token <i> PARSEOP_UNLOAD 489 %token <i> PARSEOP_UPDATERULE_ONES 490 %token <i> PARSEOP_UPDATERULE_PRESERVE 491 %token <i> PARSEOP_UPDATERULE_ZEROS 492 %token <i> PARSEOP_VAR_PACKAGE 493 %token <i> PARSEOP_VENDORLONG 494 %token <i> PARSEOP_VENDORSHORT 495 %token <i> PARSEOP_WAIT 496 %token <i> PARSEOP_WHILE 497 %token <i> PARSEOP_WIREMODE_FOUR 498 %token <i> PARSEOP_WIREMODE_THREE 499 %token <i> PARSEOP_WORDBUSNUMBER 500 %token <i> PARSEOP_WORDCONST 501 %token <i> PARSEOP_WORDIO 502 %token <i> PARSEOP_WORDPCC 503 %token <i> PARSEOP_WORDSPACE 504 %token <i> PARSEOP_XFERSIZE_8 505 %token <i> PARSEOP_XFERSIZE_16 506 %token <i> PARSEOP_XFERSIZE_32 507 %token <i> PARSEOP_XFERSIZE_64 508 %token <i> PARSEOP_XFERSIZE_128 509 %token <i> PARSEOP_XFERSIZE_256 510 %token <i> PARSEOP_XFERTYPE_8 511 %token <i> PARSEOP_XFERTYPE_8_16 512 %token <i> PARSEOP_XFERTYPE_16 513 %token <i> PARSEOP_XOR 514 %token <i> PARSEOP_ZERO 515 516 /* ToPld macro */ 517 518 %token <i> PARSEOP_TOPLD 519 %token <i> PARSEOP_PLD_REVISION 520 %token <i> PARSEOP_PLD_IGNORECOLOR 521 %token <i> PARSEOP_PLD_RED 522 %token <i> PARSEOP_PLD_GREEN 523 %token <i> PARSEOP_PLD_BLUE 524 %token <i> PARSEOP_PLD_WIDTH 525 %token <i> PARSEOP_PLD_HEIGHT 526 %token <i> PARSEOP_PLD_USERVISIBLE 527 %token <i> PARSEOP_PLD_DOCK 528 %token <i> PARSEOP_PLD_LID 529 %token <i> PARSEOP_PLD_PANEL 530 %token <i> PARSEOP_PLD_VERTICALPOSITION 531 %token <i> PARSEOP_PLD_HORIZONTALPOSITION 532 %token <i> PARSEOP_PLD_SHAPE 533 %token <i> PARSEOP_PLD_GROUPORIENTATION 534 %token <i> PARSEOP_PLD_GROUPTOKEN 535 %token <i> PARSEOP_PLD_GROUPPOSITION 536 %token <i> PARSEOP_PLD_BAY 537 %token <i> PARSEOP_PLD_EJECTABLE 538 %token <i> PARSEOP_PLD_EJECTREQUIRED 539 %token <i> PARSEOP_PLD_CABINETNUMBER 540 %token <i> PARSEOP_PLD_CARDCAGENUMBER 541 %token <i> PARSEOP_PLD_REFERENCE 542 %token <i> PARSEOP_PLD_ROTATION 543 %token <i> PARSEOP_PLD_ORDER 544 %token <i> PARSEOP_PLD_RESERVED 545 %token <i> PARSEOP_PLD_VERTICALOFFSET 546 %token <i> PARSEOP_PLD_HORIZONTALOFFSET 547 548 /* 549 * C-style expression parser. These must appear after all of the 550 * standard ASL operators and keywords. 551 * 552 * Note: The order of these tokens implements the precedence rules 553 * (low precedence to high). See aslrules.y for an exhaustive list. 554 */ 555 %right <i> PARSEOP_EXP_EQUALS 556 PARSEOP_EXP_ADD_EQ 557 PARSEOP_EXP_SUB_EQ 558 PARSEOP_EXP_MUL_EQ 559 PARSEOP_EXP_DIV_EQ 560 PARSEOP_EXP_MOD_EQ 561 PARSEOP_EXP_SHL_EQ 562 PARSEOP_EXP_SHR_EQ 563 PARSEOP_EXP_AND_EQ 564 PARSEOP_EXP_XOR_EQ 565 PARSEOP_EXP_OR_EQ 566 567 %left <i> PARSEOP_EXP_LOGICAL_OR 568 %left <i> PARSEOP_EXP_LOGICAL_AND 569 %left <i> PARSEOP_EXP_OR 570 %left <i> PARSEOP_EXP_XOR 571 %left <i> PARSEOP_EXP_AND 572 %left <i> PARSEOP_EXP_EQUAL 573 PARSEOP_EXP_NOT_EQUAL 574 %left <i> PARSEOP_EXP_GREATER 575 PARSEOP_EXP_LESS 576 PARSEOP_EXP_GREATER_EQUAL 577 PARSEOP_EXP_LESS_EQUAL 578 %left <i> PARSEOP_EXP_SHIFT_RIGHT 579 PARSEOP_EXP_SHIFT_LEFT 580 %left <i> PARSEOP_EXP_ADD 581 PARSEOP_EXP_SUBTRACT 582 %left <i> PARSEOP_EXP_MULTIPLY 583 PARSEOP_EXP_DIVIDE 584 PARSEOP_EXP_MODULO 585 586 %right <i> PARSEOP_EXP_NOT 587 PARSEOP_EXP_LOGICAL_NOT 588 589 %left <i> PARSEOP_EXP_INCREMENT 590 PARSEOP_EXP_DECREMENT 591 592 %left <i> PARSEOP_OPEN_PAREN 593 PARSEOP_CLOSE_PAREN 594 595 /* Brackets for Index() support */ 596 597 %left <i> PARSEOP_EXP_INDEX_LEFT 598 %right <i> PARSEOP_EXP_INDEX_RIGHT 599 600 /* Macros */ 601 602 %token <i> PARSEOP_PRINTF 603 %token <i> PARSEOP_FPRINTF 604 %token <i> PARSEOP_FOR 605 606 /* Structures */ 607 608 %token <i> PARSEOP_STRUCTURE 609 %token <s> PARSEOP_STRUCTURE_NAMESTRING 610 %token <i> PARSEOP_STRUCTURE_TAG 611 %token <i> PARSEOP_STRUCTURE_ELEMENT 612 %token <i> PARSEOP_STRUCTURE_INSTANCE 613 %token <i> PARSEOP_STRUCTURE_REFERENCE 614 %token <i> PARSEOP_STRUCTURE_POINTER 615 616 /* Top level */ 617 618 %token <i> PARSEOP_ASL_CODE 619 620 621 /******************************************************************************* 622 * 623 * Tokens below are not in the aslmap.c file 624 * 625 ******************************************************************************/ 626 627 628 /* Tokens below this are not in the aslmap.c file */ 629 630 /* Specific parentheses tokens are not used at this time */ 631 /* PARSEOP_EXP_PAREN_OPEN */ 632 /* PARSEOP_EXP_PAREN_CLOSE */ 633 634 /* ASL+ variable creation */ 635 636 %token <i> PARSEOP_INTEGER_TYPE 637 %token <i> PARSEOP_STRING_TYPE 638 %token <i> PARSEOP_BUFFER_TYPE 639 %token <i> PARSEOP_PACKAGE_TYPE 640 %token <i> PARSEOP_REFERENCE_TYPE 641 642 643 /* 644 * Special functions. These should probably stay at the end of this 645 * table. 646 */ 647 %token <i> PARSEOP___DATE__ 648 %token <i> PARSEOP___FILE__ 649 %token <i> PARSEOP___LINE__ 650 %token <i> PARSEOP___PATH__ 651 %token <i> PARSEOP___METHOD__ 652