1 1.1 jruoho /****************************************************************************** 2 1.1 jruoho * 3 1.1 jruoho * Module Name: aslcompiler.h - common include file for iASL 4 1.1 jruoho * 5 1.1 jruoho *****************************************************************************/ 6 1.1 jruoho 7 1.23 christos /****************************************************************************** 8 1.23 christos * 9 1.23 christos * 1. Copyright Notice 10 1.23 christos * 11 1.24 christos * Some or all of this work - Copyright (c) 1999 - 2025, Intel Corp. 12 1.1 jruoho * All rights reserved. 13 1.1 jruoho * 14 1.23 christos * 2. License 15 1.23 christos * 16 1.23 christos * 2.1. This is your license from Intel Corp. under its intellectual property 17 1.23 christos * rights. You may have additional license terms from the party that provided 18 1.23 christos * you this software, covering your right to use that party's intellectual 19 1.23 christos * property rights. 20 1.23 christos * 21 1.23 christos * 2.2. Intel grants, free of charge, to any person ("Licensee") obtaining a 22 1.23 christos * copy of the source code appearing in this file ("Covered Code") an 23 1.23 christos * irrevocable, perpetual, worldwide license under Intel's copyrights in the 24 1.23 christos * base code distributed originally by Intel ("Original Intel Code") to copy, 25 1.23 christos * make derivatives, distribute, use and display any portion of the Covered 26 1.23 christos * Code in any form, with the right to sublicense such rights; and 27 1.23 christos * 28 1.23 christos * 2.3. Intel grants Licensee a non-exclusive and non-transferable patent 29 1.23 christos * license (with the right to sublicense), under only those claims of Intel 30 1.23 christos * patents that are infringed by the Original Intel Code, to make, use, sell, 31 1.23 christos * offer to sell, and import the Covered Code and derivative works thereof 32 1.23 christos * solely to the minimum extent necessary to exercise the above copyright 33 1.23 christos * license, and in no event shall the patent license extend to any additions 34 1.23 christos * to or modifications of the Original Intel Code. No other license or right 35 1.23 christos * is granted directly or by implication, estoppel or otherwise; 36 1.23 christos * 37 1.23 christos * The above copyright and patent license is granted only if the following 38 1.23 christos * conditions are met: 39 1.23 christos * 40 1.23 christos * 3. Conditions 41 1.23 christos * 42 1.23 christos * 3.1. Redistribution of Source with Rights to Further Distribute Source. 43 1.23 christos * Redistribution of source code of any substantial portion of the Covered 44 1.23 christos * Code or modification with rights to further distribute source must include 45 1.23 christos * the above Copyright Notice, the above License, this list of Conditions, 46 1.23 christos * and the following Disclaimer and Export Compliance provision. In addition, 47 1.23 christos * Licensee must cause all Covered Code to which Licensee contributes to 48 1.23 christos * contain a file documenting the changes Licensee made to create that Covered 49 1.23 christos * Code and the date of any change. Licensee must include in that file the 50 1.23 christos * documentation of any changes made by any predecessor Licensee. Licensee 51 1.23 christos * must include a prominent statement that the modification is derived, 52 1.23 christos * directly or indirectly, from Original Intel Code. 53 1.23 christos * 54 1.23 christos * 3.2. Redistribution of Source with no Rights to Further Distribute Source. 55 1.23 christos * Redistribution of source code of any substantial portion of the Covered 56 1.23 christos * Code or modification without rights to further distribute source must 57 1.23 christos * include the following Disclaimer and Export Compliance provision in the 58 1.23 christos * documentation and/or other materials provided with distribution. In 59 1.23 christos * addition, Licensee may not authorize further sublicense of source of any 60 1.23 christos * portion of the Covered Code, and must include terms to the effect that the 61 1.23 christos * license from Licensee to its licensee is limited to the intellectual 62 1.23 christos * property embodied in the software Licensee provides to its licensee, and 63 1.23 christos * not to intellectual property embodied in modifications its licensee may 64 1.23 christos * make. 65 1.23 christos * 66 1.23 christos * 3.3. Redistribution of Executable. Redistribution in executable form of any 67 1.23 christos * substantial portion of the Covered Code or modification must reproduce the 68 1.23 christos * above Copyright Notice, and the following Disclaimer and Export Compliance 69 1.23 christos * provision in the documentation and/or other materials provided with the 70 1.23 christos * distribution. 71 1.23 christos * 72 1.23 christos * 3.4. Intel retains all right, title, and interest in and to the Original 73 1.23 christos * Intel Code. 74 1.23 christos * 75 1.23 christos * 3.5. Neither the name Intel nor any other trademark owned or controlled by 76 1.23 christos * Intel shall be used in advertising or otherwise to promote the sale, use or 77 1.23 christos * other dealings in products derived from or relating to the Covered Code 78 1.23 christos * without prior written authorization from Intel. 79 1.23 christos * 80 1.23 christos * 4. Disclaimer and Export Compliance 81 1.23 christos * 82 1.23 christos * 4.1. INTEL MAKES NO WARRANTY OF ANY KIND REGARDING ANY SOFTWARE PROVIDED 83 1.23 christos * HERE. ANY SOFTWARE ORIGINATING FROM INTEL OR DERIVED FROM INTEL SOFTWARE 84 1.23 christos * IS PROVIDED "AS IS," AND INTEL WILL NOT PROVIDE ANY SUPPORT, ASSISTANCE, 85 1.23 christos * INSTALLATION, TRAINING OR OTHER SERVICES. INTEL WILL NOT PROVIDE ANY 86 1.23 christos * UPDATES, ENHANCEMENTS OR EXTENSIONS. INTEL SPECIFICALLY DISCLAIMS ANY 87 1.23 christos * IMPLIED WARRANTIES OF MERCHANTABILITY, NONINFRINGEMENT AND FITNESS FOR A 88 1.23 christos * PARTICULAR PURPOSE. 89 1.23 christos * 90 1.23 christos * 4.2. IN NO EVENT SHALL INTEL HAVE ANY LIABILITY TO LICENSEE, ITS LICENSEES 91 1.23 christos * OR ANY OTHER THIRD PARTY, FOR ANY LOST PROFITS, LOST DATA, LOSS OF USE OR 92 1.23 christos * COSTS OF PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES, OR FOR ANY INDIRECT, 93 1.23 christos * SPECIAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THIS AGREEMENT, UNDER ANY 94 1.23 christos * CAUSE OF ACTION OR THEORY OF LIABILITY, AND IRRESPECTIVE OF WHETHER INTEL 95 1.23 christos * HAS ADVANCE NOTICE OF THE POSSIBILITY OF SUCH DAMAGES. THESE LIMITATIONS 96 1.23 christos * SHALL APPLY NOTWITHSTANDING THE FAILURE OF THE ESSENTIAL PURPOSE OF ANY 97 1.23 christos * LIMITED REMEDY. 98 1.23 christos * 99 1.23 christos * 4.3. Licensee shall not export, either directly or indirectly, any of this 100 1.23 christos * software or system incorporating such software without first obtaining any 101 1.23 christos * required license or other approval from the U. S. Department of Commerce or 102 1.23 christos * any other agency or department of the United States Government. In the 103 1.23 christos * event Licensee exports any such software from the United States or 104 1.23 christos * re-exports any such software from a foreign destination, Licensee shall 105 1.23 christos * ensure that the distribution and export/re-export of the software is in 106 1.23 christos * compliance with all laws, regulations, orders, or other restrictions of the 107 1.23 christos * U.S. Export Administration Regulations. Licensee agrees that neither it nor 108 1.23 christos * any of its subsidiaries will export/re-export any technical data, process, 109 1.23 christos * software, or service, directly or indirectly, to any country for which the 110 1.23 christos * United States government or any agency thereof requires an export license, 111 1.23 christos * other governmental approval, or letter of assurance, without first obtaining 112 1.23 christos * such license, approval or letter. 113 1.23 christos * 114 1.23 christos ***************************************************************************** 115 1.23 christos * 116 1.23 christos * Alternatively, you may choose to be licensed under the terms of the 117 1.23 christos * following license: 118 1.23 christos * 119 1.2 christos * Redistribution and use in source and binary forms, with or without 120 1.2 christos * modification, are permitted provided that the following conditions 121 1.2 christos * are met: 122 1.2 christos * 1. Redistributions of source code must retain the above copyright 123 1.2 christos * notice, this list of conditions, and the following disclaimer, 124 1.2 christos * without modification. 125 1.2 christos * 2. Redistributions in binary form must reproduce at minimum a disclaimer 126 1.2 christos * substantially similar to the "NO WARRANTY" disclaimer below 127 1.2 christos * ("Disclaimer") and any redistribution must be conditioned upon 128 1.2 christos * including a substantially similar Disclaimer requirement for further 129 1.2 christos * binary redistribution. 130 1.2 christos * 3. Neither the names of the above-listed copyright holders nor the names 131 1.2 christos * of any contributors may be used to endorse or promote products derived 132 1.2 christos * from this software without specific prior written permission. 133 1.2 christos * 134 1.2 christos * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 135 1.2 christos * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 136 1.18 christos * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 137 1.2 christos * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 138 1.23 christos * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 139 1.23 christos * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 140 1.23 christos * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 141 1.23 christos * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 142 1.23 christos * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 143 1.23 christos * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 144 1.23 christos * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 145 1.23 christos * 146 1.23 christos * Alternatively, you may choose to be licensed under the terms of the 147 1.23 christos * GNU General Public License ("GPL") version 2 as published by the Free 148 1.23 christos * Software Foundation. 149 1.23 christos * 150 1.23 christos *****************************************************************************/ 151 1.1 jruoho 152 1.1 jruoho #ifndef __ASLCOMPILER_H 153 1.1 jruoho #define __ASLCOMPILER_H 154 1.1 jruoho 155 1.2 christos #include "acpi.h" 156 1.2 christos #include "accommon.h" 157 1.2 christos #include "amlresrc.h" 158 1.2 christos #include "acdebug.h" 159 1.1 jruoho 160 1.1 jruoho /* Microsoft-specific */ 161 1.1 jruoho 162 1.1 jruoho #if (defined WIN32 || defined WIN64) 163 1.1 jruoho 164 1.1 jruoho /* warn : used #pragma pack */ 165 1.1 jruoho #pragma warning(disable:4103) 166 1.1 jruoho 167 1.1 jruoho /* warn : named type definition in parentheses */ 168 1.1 jruoho #pragma warning(disable:4115) 169 1.1 jruoho #endif 170 1.1 jruoho 171 1.1 jruoho #include <stdio.h> 172 1.1 jruoho #include <stdlib.h> 173 1.1 jruoho #include <string.h> 174 1.1 jruoho #include <errno.h> 175 1.1 jruoho #include <ctype.h> 176 1.1 jruoho 177 1.1 jruoho /* Compiler headers */ 178 1.1 jruoho 179 1.1 jruoho #include "asldefine.h" 180 1.1 jruoho #include "asltypes.h" 181 1.2 christos #include "aslmessages.h" 182 1.1 jruoho #include "aslglobal.h" 183 1.2 christos #include "preprocess.h" 184 1.10 christos #include "dtcompiler.h" 185 1.1 jruoho 186 1.1 jruoho 187 1.1 jruoho /******************************************************************************* 188 1.1 jruoho * 189 1.1 jruoho * Compiler prototypes 190 1.1 jruoho * 191 1.1 jruoho ******************************************************************************/ 192 1.1 jruoho 193 1.1 jruoho /* 194 1.2 christos * Main ASL parser - generated from flex/bison, lex/yacc, etc. 195 1.1 jruoho */ 196 1.1 jruoho ACPI_PARSE_OBJECT * 197 1.1 jruoho AslDoError ( 198 1.1 jruoho void); 199 1.1 jruoho 200 1.1 jruoho int 201 1.1 jruoho AslCompilerlex( 202 1.1 jruoho void); 203 1.1 jruoho 204 1.1 jruoho void 205 1.2 christos AslResetCurrentLineBuffer ( 206 1.1 jruoho void); 207 1.1 jruoho 208 1.1 jruoho void 209 1.2 christos AslInsertLineBuffer ( 210 1.1 jruoho int SourceChar); 211 1.1 jruoho 212 1.1 jruoho int 213 1.1 jruoho AslPopInputFileStack ( 214 1.1 jruoho void); 215 1.1 jruoho 216 1.1 jruoho void 217 1.1 jruoho AslPushInputFileStack ( 218 1.1 jruoho FILE *InputFile, 219 1.1 jruoho char *Filename); 220 1.1 jruoho 221 1.2 christos void 222 1.2 christos AslParserCleanup ( 223 1.2 christos void); 224 1.2 christos 225 1.2 christos 226 1.1 jruoho /* 227 1.2 christos * aslstartup - entered from main() 228 1.1 jruoho */ 229 1.2 christos void 230 1.2 christos AslInitializeGlobals ( 231 1.2 christos void); 232 1.2 christos 233 1.2 christos typedef 234 1.2 christos ACPI_STATUS (*ASL_PATHNAME_CALLBACK) ( 235 1.2 christos char *); 236 1.1 jruoho 237 1.1 jruoho ACPI_STATUS 238 1.1 jruoho AslDoOneFile ( 239 1.1 jruoho char *Filename); 240 1.1 jruoho 241 1.2 christos ACPI_STATUS 242 1.2 christos AslCheckForErrorExit ( 243 1.2 christos void); 244 1.2 christos 245 1.2 christos 246 1.1 jruoho /* 247 1.1 jruoho * aslcompile - compile mainline 248 1.1 jruoho */ 249 1.1 jruoho void 250 1.1 jruoho AslCompilerSignon ( 251 1.1 jruoho UINT32 FileId); 252 1.1 jruoho 253 1.1 jruoho void 254 1.1 jruoho AslCompilerFileHeader ( 255 1.1 jruoho UINT32 FileId); 256 1.1 jruoho 257 1.14 christos ACPI_STATUS 258 1.14 christos CmDoCompile ( 259 1.14 christos void); 260 1.14 christos 261 1.1 jruoho int 262 1.14 christos CmDoAslMiddleAndBackEnd ( 263 1.1 jruoho void); 264 1.1 jruoho 265 1.1 jruoho void 266 1.1 jruoho CmDoOutputFiles ( 267 1.1 jruoho void); 268 1.1 jruoho 269 1.15 christos int 270 1.1 jruoho CmCleanupAndExit ( 271 1.1 jruoho void); 272 1.1 jruoho 273 1.14 christos ACPI_STATUS 274 1.14 christos AslDoDisassembly ( 275 1.14 christos void); 276 1.14 christos 277 1.10 christos 278 1.10 christos /* 279 1.10 christos * aslallocate - memory allocation 280 1.10 christos */ 281 1.10 christos void * 282 1.10 christos UtLocalCalloc ( 283 1.10 christos UINT32 Size); 284 1.10 christos 285 1.10 christos void 286 1.10 christos UtExpandLineBuffers ( 287 1.10 christos void); 288 1.10 christos 289 1.10 christos void 290 1.10 christos UtReallocLineBuffers ( 291 1.10 christos char **Buffer, 292 1.10 christos UINT32 OldSize, 293 1.10 christos UINT32 NewSize); 294 1.10 christos 295 1.10 christos void 296 1.10 christos UtFreeLineBuffers ( 297 1.10 christos void); 298 1.10 christos 299 1.10 christos 300 1.10 christos /* 301 1.10 christos * aslcache - local cache support 302 1.10 christos */ 303 1.10 christos char * 304 1.10 christos UtLocalCacheCalloc ( 305 1.10 christos UINT32 Length); 306 1.10 christos 307 1.10 christos ACPI_PARSE_OBJECT * 308 1.10 christos UtParseOpCacheCalloc ( 309 1.10 christos void); 310 1.10 christos 311 1.10 christos DT_SUBTABLE * 312 1.10 christos UtSubtableCacheCalloc ( 313 1.10 christos void); 314 1.10 christos 315 1.10 christos DT_FIELD * 316 1.10 christos UtFieldCacheCalloc ( 317 1.10 christos void); 318 1.10 christos 319 1.2 christos void 320 1.10 christos UtDeleteLocalCaches ( 321 1.2 christos void); 322 1.2 christos 323 1.2 christos 324 1.2 christos /* 325 1.2 christos * aslascii - ascii support 326 1.2 christos */ 327 1.2 christos ACPI_STATUS 328 1.4 christos FlIsFileAsciiSource ( 329 1.2 christos char *Filename, 330 1.2 christos BOOLEAN DisplayErrors); 331 1.1 jruoho 332 1.1 jruoho 333 1.1 jruoho /* 334 1.2 christos * aslwalks - semantic analysis and parse tree walks 335 1.1 jruoho */ 336 1.1 jruoho ACPI_STATUS 337 1.1 jruoho AnOtherSemanticAnalysisWalkBegin ( 338 1.1 jruoho ACPI_PARSE_OBJECT *Op, 339 1.1 jruoho UINT32 Level, 340 1.1 jruoho void *Context); 341 1.1 jruoho 342 1.1 jruoho ACPI_STATUS 343 1.1 jruoho AnOtherSemanticAnalysisWalkEnd ( 344 1.1 jruoho ACPI_PARSE_OBJECT *Op, 345 1.1 jruoho UINT32 Level, 346 1.1 jruoho void *Context); 347 1.1 jruoho 348 1.1 jruoho ACPI_STATUS 349 1.2 christos AnOperandTypecheckWalkEnd ( 350 1.1 jruoho ACPI_PARSE_OBJECT *Op, 351 1.1 jruoho UINT32 Level, 352 1.1 jruoho void *Context); 353 1.1 jruoho 354 1.1 jruoho ACPI_STATUS 355 1.2 christos AnMethodTypingWalkEnd ( 356 1.1 jruoho ACPI_PARSE_OBJECT *Op, 357 1.1 jruoho UINT32 Level, 358 1.1 jruoho void *Context); 359 1.1 jruoho 360 1.2 christos 361 1.2 christos /* 362 1.2 christos * aslmethod - Control method analysis walk 363 1.2 christos */ 364 1.1 jruoho ACPI_STATUS 365 1.2 christos MtMethodAnalysisWalkBegin ( 366 1.1 jruoho ACPI_PARSE_OBJECT *Op, 367 1.1 jruoho UINT32 Level, 368 1.1 jruoho void *Context); 369 1.1 jruoho 370 1.1 jruoho ACPI_STATUS 371 1.2 christos MtMethodAnalysisWalkEnd ( 372 1.1 jruoho ACPI_PARSE_OBJECT *Op, 373 1.1 jruoho UINT32 Level, 374 1.1 jruoho void *Context); 375 1.1 jruoho 376 1.16 christos UINT32 377 1.16 christos MtProcessTypeOp ( 378 1.16 christos ACPI_PARSE_OBJECT *TypeOp); 379 1.16 christos 380 1.16 christos UINT8 381 1.16 christos MtProcessParameterTypeList ( 382 1.16 christos ACPI_PARSE_OBJECT *ParamTypeOp, 383 1.16 christos UINT32 *TypeList); 384 1.16 christos 385 1.2 christos 386 1.2 christos /* 387 1.2 christos * aslbtypes - bitfield data types 388 1.2 christos */ 389 1.2 christos UINT32 390 1.2 christos AnMapObjTypeToBtype ( 391 1.2 christos ACPI_PARSE_OBJECT *Op); 392 1.2 christos 393 1.2 christos UINT32 394 1.2 christos AnMapArgTypeToBtype ( 395 1.2 christos UINT32 ArgType); 396 1.2 christos 397 1.2 christos UINT32 398 1.2 christos AnGetBtype ( 399 1.2 christos ACPI_PARSE_OBJECT *Op); 400 1.2 christos 401 1.2 christos void 402 1.2 christos AnFormatBtype ( 403 1.2 christos char *Buffer, 404 1.2 christos UINT32 Btype); 405 1.2 christos 406 1.2 christos 407 1.2 christos /* 408 1.2 christos * aslanalyze - Support functions for parse tree walks 409 1.2 christos */ 410 1.2 christos void 411 1.2 christos AnCheckId ( 412 1.1 jruoho ACPI_PARSE_OBJECT *Op, 413 1.2 christos ACPI_NAME Type); 414 1.2 christos 415 1.2 christos /* Values for Type argument above */ 416 1.2 christos 417 1.2 christos #define ASL_TYPE_HID 0 418 1.2 christos #define ASL_TYPE_CID 1 419 1.2 christos 420 1.2 christos BOOLEAN 421 1.2 christos AnIsInternalMethod ( 422 1.2 christos ACPI_PARSE_OBJECT *Op); 423 1.2 christos 424 1.2 christos UINT32 425 1.2 christos AnGetInternalMethodReturnType ( 426 1.2 christos ACPI_PARSE_OBJECT *Op); 427 1.2 christos 428 1.2 christos BOOLEAN 429 1.2 christos AnLastStatementIsReturn ( 430 1.2 christos ACPI_PARSE_OBJECT *Op); 431 1.1 jruoho 432 1.2 christos void 433 1.2 christos AnCheckMethodReturnValue ( 434 1.1 jruoho ACPI_PARSE_OBJECT *Op, 435 1.2 christos const ACPI_OPCODE_INFO *OpInfo, 436 1.2 christos ACPI_PARSE_OBJECT *ArgOp, 437 1.2 christos UINT32 RequiredBtypes, 438 1.2 christos UINT32 ThisNodeBtype); 439 1.2 christos 440 1.2 christos BOOLEAN 441 1.2 christos AnIsResultUsed ( 442 1.2 christos ACPI_PARSE_OBJECT *Op); 443 1.2 christos 444 1.2 christos void 445 1.2 christos ApCheckForGpeNameConflict ( 446 1.2 christos ACPI_PARSE_OBJECT *Op); 447 1.2 christos 448 1.2 christos void 449 1.2 christos ApCheckRegMethod ( 450 1.2 christos ACPI_PARSE_OBJECT *Op); 451 1.2 christos 452 1.2 christos BOOLEAN 453 1.2 christos ApFindNameInScope ( 454 1.2 christos char *Name, 455 1.2 christos ACPI_PARSE_OBJECT *Op); 456 1.1 jruoho 457 1.5 christos BOOLEAN 458 1.5 christos ApFindNameInDeviceTree ( 459 1.5 christos char *Name, 460 1.5 christos ACPI_PARSE_OBJECT *Op); 461 1.1 jruoho 462 1.1 jruoho /* 463 1.1 jruoho * aslerror - error handling/reporting 464 1.1 jruoho */ 465 1.1 jruoho void 466 1.2 christos AslAbort ( 467 1.2 christos void); 468 1.2 christos 469 1.2 christos void 470 1.10 christos AslDualParseOpError ( 471 1.10 christos UINT8 Level, 472 1.10 christos UINT16 MainMessageId, 473 1.10 christos ACPI_PARSE_OBJECT *MainOp, 474 1.10 christos char *MainMessage, 475 1.10 christos UINT16 SecondMessageId, 476 1.10 christos ACPI_PARSE_OBJECT *SecondOp, 477 1.10 christos char *SecondaryMessage); 478 1.10 christos 479 1.10 christos void 480 1.1 jruoho AslError ( 481 1.1 jruoho UINT8 Level, 482 1.2 christos UINT16 MessageId, 483 1.1 jruoho ACPI_PARSE_OBJECT *Op, 484 1.1 jruoho char *ExtraMessage); 485 1.1 jruoho 486 1.9 christos void 487 1.9 christos AslCheckExpectedExceptions ( 488 1.9 christos void); 489 1.9 christos 490 1.9 christos ACPI_STATUS 491 1.16 christos AslLogExpectedException ( 492 1.9 christos char *MessageIdString); 493 1.9 christos 494 1.2 christos ACPI_STATUS 495 1.13 christos AslElevateException ( 496 1.13 christos char *MessageIdString); 497 1.13 christos 498 1.13 christos ACPI_STATUS 499 1.2 christos AslDisableException ( 500 1.2 christos char *MessageIdString); 501 1.2 christos 502 1.2 christos BOOLEAN 503 1.9 christos AslIsExceptionIgnored ( 504 1.16 christos char *Filename, 505 1.16 christos UINT32 LineNumber, 506 1.2 christos UINT8 Level, 507 1.2 christos UINT16 MessageId); 508 1.2 christos 509 1.1 jruoho void 510 1.16 christos AslLogExpectedExceptionByLine ( 511 1.16 christos char *MessageIdString); 512 1.16 christos 513 1.16 christos void 514 1.1 jruoho AslCoreSubsystemError ( 515 1.1 jruoho ACPI_PARSE_OBJECT *Op, 516 1.1 jruoho ACPI_STATUS Status, 517 1.1 jruoho char *ExtraMessage, 518 1.1 jruoho BOOLEAN Abort); 519 1.1 jruoho 520 1.1 jruoho int 521 1.1 jruoho AslCompilererror( 522 1.2 christos const char *s); 523 1.1 jruoho 524 1.1 jruoho void 525 1.1 jruoho AslCommonError ( 526 1.1 jruoho UINT8 Level, 527 1.2 christos UINT16 MessageId, 528 1.1 jruoho UINT32 CurrentLineNumber, 529 1.1 jruoho UINT32 LogicalLineNumber, 530 1.1 jruoho UINT32 LogicalByteOffset, 531 1.1 jruoho UINT32 Column, 532 1.1 jruoho char *Filename, 533 1.1 jruoho char *ExtraMessage); 534 1.1 jruoho 535 1.1 jruoho void 536 1.2 christos AslCommonError2 ( 537 1.2 christos UINT8 Level, 538 1.2 christos UINT16 MessageId, 539 1.2 christos UINT32 LineNumber, 540 1.2 christos UINT32 Column, 541 1.2 christos char *SourceLine, 542 1.2 christos char *Filename, 543 1.2 christos char *ExtraMessage); 544 1.2 christos 545 1.2 christos void 546 1.1 jruoho AePrintException ( 547 1.1 jruoho UINT32 FileId, 548 1.1 jruoho ASL_ERROR_MSG *Enode, 549 1.1 jruoho char *Header); 550 1.1 jruoho 551 1.1 jruoho void 552 1.1 jruoho AePrintErrorLog ( 553 1.1 jruoho UINT32 FileId); 554 1.1 jruoho 555 1.1 jruoho void 556 1.1 jruoho AeClearErrorLog ( 557 1.1 jruoho void); 558 1.1 jruoho 559 1.1 jruoho 560 1.1 jruoho /* 561 1.1 jruoho * asllisting - generate all "listing" type files 562 1.1 jruoho */ 563 1.1 jruoho void 564 1.1 jruoho LsDoListings ( 565 1.1 jruoho void); 566 1.1 jruoho 567 1.1 jruoho void 568 1.1 jruoho LsWriteNodeToAsmListing ( 569 1.1 jruoho ACPI_PARSE_OBJECT *Op); 570 1.1 jruoho 571 1.1 jruoho void 572 1.1 jruoho LsWriteNode ( 573 1.1 jruoho ACPI_PARSE_OBJECT *Op, 574 1.1 jruoho UINT32 FileId); 575 1.1 jruoho 576 1.1 jruoho void 577 1.2 christos LsDumpParseTree ( 578 1.2 christos void); 579 1.2 christos 580 1.2 christos 581 1.2 christos /* 582 1.2 christos * asllistsup - Listing file support utilities 583 1.2 christos */ 584 1.2 christos void 585 1.2 christos LsDumpAscii ( 586 1.2 christos UINT32 FileId, 587 1.2 christos UINT32 Count, 588 1.2 christos UINT8 *Buffer); 589 1.2 christos 590 1.2 christos void 591 1.2 christos LsDumpAsciiInComment ( 592 1.2 christos UINT32 FileId, 593 1.2 christos UINT32 Count, 594 1.2 christos UINT8 *Buffer); 595 1.2 christos 596 1.2 christos void 597 1.2 christos LsCheckException ( 598 1.2 christos UINT32 LineNumber, 599 1.2 christos UINT32 FileId); 600 1.2 christos 601 1.2 christos void 602 1.2 christos LsFlushListingBuffer ( 603 1.2 christos UINT32 FileId); 604 1.2 christos 605 1.2 christos void 606 1.2 christos LsWriteListingHexBytes ( 607 1.2 christos UINT8 *Buffer, 608 1.2 christos UINT32 Length, 609 1.2 christos UINT32 FileId); 610 1.2 christos 611 1.2 christos void 612 1.2 christos LsWriteSourceLines ( 613 1.2 christos UINT32 ToLineNumber, 614 1.2 christos UINT32 ToLogicalLineNumber, 615 1.2 christos UINT32 FileId); 616 1.2 christos 617 1.2 christos UINT32 618 1.2 christos LsWriteOneSourceLine ( 619 1.2 christos UINT32 FileId); 620 1.2 christos 621 1.2 christos void 622 1.2 christos LsPushNode ( 623 1.2 christos char *Filename); 624 1.2 christos 625 1.2 christos ASL_LISTING_NODE * 626 1.2 christos LsPopNode ( 627 1.1 jruoho void); 628 1.1 jruoho 629 1.2 christos 630 1.2 christos /* 631 1.2 christos * aslhex - generate all "hex" output files (C, ASM, ASL) 632 1.2 christos */ 633 1.1 jruoho void 634 1.2 christos HxDoHexOutput ( 635 1.1 jruoho void); 636 1.1 jruoho 637 1.2 christos 638 1.1 jruoho /* 639 1.1 jruoho * aslfold - constant folding 640 1.1 jruoho */ 641 1.1 jruoho ACPI_STATUS 642 1.1 jruoho OpcAmlConstantWalk ( 643 1.1 jruoho ACPI_PARSE_OBJECT *Op, 644 1.1 jruoho UINT32 Level, 645 1.1 jruoho void *Context); 646 1.1 jruoho 647 1.1 jruoho 648 1.1 jruoho /* 649 1.2 christos * aslmessages - exception strings 650 1.2 christos */ 651 1.2 christos const char * 652 1.2 christos AeDecodeMessageId ( 653 1.2 christos UINT16 MessageId); 654 1.2 christos 655 1.2 christos const char * 656 1.2 christos AeDecodeExceptionLevel ( 657 1.2 christos UINT8 Level); 658 1.2 christos 659 1.2 christos UINT16 660 1.2 christos AeBuildFullExceptionCode ( 661 1.2 christos UINT8 Level, 662 1.2 christos UINT16 MessageId); 663 1.2 christos 664 1.2 christos /* 665 1.2 christos * asloffset - generate C offset file for BIOS support 666 1.2 christos */ 667 1.2 christos ACPI_STATUS 668 1.2 christos LsAmlOffsetWalk ( 669 1.2 christos ACPI_PARSE_OBJECT *Op, 670 1.2 christos UINT32 Level, 671 1.2 christos void *Context); 672 1.2 christos 673 1.2 christos void 674 1.2 christos LsDoOffsetTableHeader ( 675 1.2 christos UINT32 FileId); 676 1.2 christos 677 1.2 christos void 678 1.2 christos LsDoOffsetTableFooter ( 679 1.2 christos UINT32 FileId); 680 1.2 christos 681 1.2 christos 682 1.2 christos /* 683 1.1 jruoho * aslopcodes - generate AML opcodes 684 1.1 jruoho */ 685 1.1 jruoho ACPI_STATUS 686 1.1 jruoho OpcAmlOpcodeWalk ( 687 1.1 jruoho ACPI_PARSE_OBJECT *Op, 688 1.1 jruoho UINT32 Level, 689 1.1 jruoho void *Context); 690 1.1 jruoho 691 1.1 jruoho ACPI_STATUS 692 1.1 jruoho OpcAmlOpcodeUpdateWalk ( 693 1.1 jruoho ACPI_PARSE_OBJECT *Op, 694 1.1 jruoho UINT32 Level, 695 1.1 jruoho void *Context); 696 1.1 jruoho 697 1.1 jruoho void 698 1.1 jruoho OpcGenerateAmlOpcode ( 699 1.1 jruoho ACPI_PARSE_OBJECT *Op); 700 1.1 jruoho 701 1.1 jruoho UINT32 702 1.1 jruoho OpcSetOptimalIntegerSize ( 703 1.1 jruoho ACPI_PARSE_OBJECT *Op); 704 1.1 jruoho 705 1.1 jruoho void 706 1.1 jruoho OpcGetIntegerWidth ( 707 1.1 jruoho ACPI_PARSE_OBJECT *Op); 708 1.1 jruoho 709 1.1 jruoho 710 1.1 jruoho /* 711 1.1 jruoho * asloperands - generate AML operands for the AML opcodes 712 1.1 jruoho */ 713 1.1 jruoho ACPI_PARSE_OBJECT * 714 1.1 jruoho UtGetArg ( 715 1.1 jruoho ACPI_PARSE_OBJECT *Op, 716 1.1 jruoho UINT32 Argn); 717 1.1 jruoho 718 1.1 jruoho void 719 1.1 jruoho OpnGenerateAmlOperands ( 720 1.1 jruoho ACPI_PARSE_OBJECT *Op); 721 1.1 jruoho 722 1.1 jruoho void 723 1.1 jruoho OpnDoPackage ( 724 1.1 jruoho ACPI_PARSE_OBJECT *Op); 725 1.1 jruoho 726 1.1 jruoho 727 1.1 jruoho /* 728 1.14 christos * aslopt - optimization 729 1.1 jruoho */ 730 1.1 jruoho void 731 1.1 jruoho OptOptimizeNamePath ( 732 1.1 jruoho ACPI_PARSE_OBJECT *Op, 733 1.1 jruoho UINT32 Flags, 734 1.1 jruoho ACPI_WALK_STATE *WalkState, 735 1.1 jruoho char *AmlNameString, 736 1.1 jruoho ACPI_NAMESPACE_NODE *TargetNode); 737 1.1 jruoho 738 1.1 jruoho 739 1.1 jruoho /* 740 1.5 christos * aslpld - ToPLD macro support 741 1.5 christos */ 742 1.5 christos void 743 1.5 christos OpcDoPld ( 744 1.5 christos ACPI_PARSE_OBJECT *Op); 745 1.5 christos 746 1.5 christos 747 1.5 christos /* 748 1.2 christos * aslprintf - Printf/Fprintf macros 749 1.2 christos */ 750 1.2 christos void 751 1.2 christos OpcDoPrintf ( 752 1.2 christos ACPI_PARSE_OBJECT *Op); 753 1.2 christos 754 1.2 christos void 755 1.2 christos OpcDoFprintf ( 756 1.2 christos ACPI_PARSE_OBJECT *Op); 757 1.2 christos 758 1.2 christos 759 1.2 christos /* 760 1.2 christos * aslprune - parse tree pruner 761 1.2 christos */ 762 1.2 christos void 763 1.2 christos AslPruneParseTree ( 764 1.2 christos UINT32 PruneDepth, 765 1.2 christos UINT32 Type); 766 1.2 christos 767 1.2 christos 768 1.2 christos /* 769 1.1 jruoho * aslcodegen - code generation 770 1.1 jruoho */ 771 1.1 jruoho void 772 1.1 jruoho CgGenerateAmlOutput ( 773 1.1 jruoho void); 774 1.1 jruoho 775 1.8 christos void 776 1.8 christos CgLocalWriteAmlData ( 777 1.8 christos ACPI_PARSE_OBJECT *Op, 778 1.8 christos void *Buffer, 779 1.8 christos UINT32 Length); 780 1.8 christos 781 1.1 jruoho 782 1.1 jruoho /* 783 1.1 jruoho * aslfile 784 1.1 jruoho */ 785 1.1 jruoho void 786 1.1 jruoho FlOpenFile ( 787 1.1 jruoho UINT32 FileId, 788 1.1 jruoho char *Filename, 789 1.1 jruoho char *Mode); 790 1.1 jruoho 791 1.1 jruoho 792 1.1 jruoho /* 793 1.1 jruoho * asllength - calculate/adjust AML package lengths 794 1.1 jruoho */ 795 1.1 jruoho ACPI_STATUS 796 1.1 jruoho LnPackageLengthWalk ( 797 1.1 jruoho ACPI_PARSE_OBJECT *Op, 798 1.1 jruoho UINT32 Level, 799 1.1 jruoho void *Context); 800 1.1 jruoho 801 1.1 jruoho ACPI_STATUS 802 1.1 jruoho LnInitLengthsWalk ( 803 1.1 jruoho ACPI_PARSE_OBJECT *Op, 804 1.1 jruoho UINT32 Level, 805 1.1 jruoho void *Context); 806 1.1 jruoho 807 1.1 jruoho void 808 1.1 jruoho CgGenerateAmlLengths ( 809 1.1 jruoho ACPI_PARSE_OBJECT *Op); 810 1.1 jruoho 811 1.1 jruoho 812 1.1 jruoho /* 813 1.1 jruoho * aslmap - opcode mappings and reserved method names 814 1.1 jruoho */ 815 1.1 jruoho ACPI_OBJECT_TYPE 816 1.1 jruoho AslMapNamedOpcodeToDataType ( 817 1.1 jruoho UINT16 Opcode); 818 1.1 jruoho 819 1.1 jruoho 820 1.1 jruoho /* 821 1.1 jruoho * aslpredef - ACPI predefined names support 822 1.1 jruoho */ 823 1.2 christos BOOLEAN 824 1.1 jruoho ApCheckForPredefinedMethod ( 825 1.1 jruoho ACPI_PARSE_OBJECT *Op, 826 1.1 jruoho ASL_METHOD_INFO *MethodInfo); 827 1.1 jruoho 828 1.1 jruoho void 829 1.1 jruoho ApCheckPredefinedReturnValue ( 830 1.1 jruoho ACPI_PARSE_OBJECT *Op, 831 1.1 jruoho ASL_METHOD_INFO *MethodInfo); 832 1.1 jruoho 833 1.1 jruoho UINT32 834 1.1 jruoho ApCheckForPredefinedName ( 835 1.1 jruoho ACPI_PARSE_OBJECT *Op, 836 1.1 jruoho char *Name); 837 1.1 jruoho 838 1.1 jruoho void 839 1.1 jruoho ApCheckForPredefinedObject ( 840 1.1 jruoho ACPI_PARSE_OBJECT *Op, 841 1.1 jruoho char *Name); 842 1.1 jruoho 843 1.2 christos ACPI_STATUS 844 1.2 christos ApCheckObjectType ( 845 1.2 christos const char *PredefinedName, 846 1.2 christos ACPI_PARSE_OBJECT *Op, 847 1.2 christos UINT32 ExpectedBtypes, 848 1.2 christos UINT32 PackageIndex); 849 1.2 christos 850 1.1 jruoho void 851 1.1 jruoho ApDisplayReservedNames ( 852 1.1 jruoho void); 853 1.1 jruoho 854 1.1 jruoho 855 1.1 jruoho /* 856 1.2 christos * aslprepkg - ACPI predefined names support for packages 857 1.2 christos */ 858 1.2 christos void 859 1.2 christos ApCheckPackage ( 860 1.2 christos ACPI_PARSE_OBJECT *ParentOp, 861 1.2 christos const ACPI_PREDEFINED_INFO *Predefined); 862 1.2 christos 863 1.2 christos 864 1.2 christos /* 865 1.1 jruoho * asltransform - parse tree transformations 866 1.1 jruoho */ 867 1.1 jruoho ACPI_STATUS 868 1.5 christos TrAmlTransformWalkBegin ( 869 1.5 christos ACPI_PARSE_OBJECT *Op, 870 1.5 christos UINT32 Level, 871 1.5 christos void *Context); 872 1.5 christos 873 1.5 christos ACPI_STATUS 874 1.5 christos TrAmlTransformWalkEnd ( 875 1.1 jruoho ACPI_PARSE_OBJECT *Op, 876 1.1 jruoho UINT32 Level, 877 1.1 jruoho void *Context); 878 1.1 jruoho 879 1.1 jruoho 880 1.1 jruoho /* 881 1.5 christos * aslexternal - External opcode support 882 1.5 christos */ 883 1.5 christos ACPI_STATUS 884 1.5 christos ExAmlExternalWalkBegin ( 885 1.5 christos ACPI_PARSE_OBJECT *Op, 886 1.5 christos UINT32 Level, 887 1.5 christos void *Context); 888 1.5 christos 889 1.5 christos ACPI_STATUS 890 1.5 christos ExAmlExternalWalkEnd ( 891 1.5 christos ACPI_PARSE_OBJECT *Op, 892 1.5 christos UINT32 Level, 893 1.5 christos void *Context); 894 1.5 christos 895 1.5 christos void 896 1.5 christos ExDoExternal ( 897 1.5 christos ACPI_PARSE_OBJECT *Op); 898 1.5 christos 899 1.1 jruoho /* Values for "Visitation" parameter above */ 900 1.1 jruoho 901 1.14 christos #define ASL_WALK_VISIT_DOWNWARD 0x01 902 1.14 christos #define ASL_WALK_VISIT_UPWARD 0x02 903 1.14 christos #define ASL_WALK_VISIT_DB_SEPARATELY 0x04 904 1.14 christos #define ASL_WALK_VISIT_TWICE (ASL_WALK_VISIT_DOWNWARD | ASL_WALK_VISIT_UPWARD) 905 1.1 jruoho 906 1.1 jruoho 907 1.9 christos /* 908 1.9 christos * aslparseop.c - Parse op create/allocate/cache 909 1.9 christos */ 910 1.1 jruoho ACPI_PARSE_OBJECT * 911 1.9 christos TrCreateOp ( 912 1.1 jruoho UINT32 ParseOpcode, 913 1.1 jruoho UINT32 NumChildren, 914 1.1 jruoho ...); 915 1.1 jruoho 916 1.1 jruoho ACPI_PARSE_OBJECT * 917 1.9 christos TrCreateLeafOp ( 918 1.1 jruoho UINT32 ParseOpcode); 919 1.1 jruoho 920 1.1 jruoho ACPI_PARSE_OBJECT * 921 1.9 christos TrCreateNullTargetOp ( 922 1.2 christos void); 923 1.2 christos 924 1.2 christos ACPI_PARSE_OBJECT * 925 1.9 christos TrCreateAssignmentOp ( 926 1.2 christos ACPI_PARSE_OBJECT *Target, 927 1.2 christos ACPI_PARSE_OBJECT *Source); 928 1.2 christos 929 1.2 christos ACPI_PARSE_OBJECT * 930 1.9 christos TrCreateTargetOp ( 931 1.2 christos ACPI_PARSE_OBJECT *OriginalOp, 932 1.2 christos ACPI_PARSE_OBJECT *ParentOp); 933 1.2 christos 934 1.2 christos ACPI_PARSE_OBJECT * 935 1.9 christos TrCreateValuedLeafOp ( 936 1.1 jruoho UINT32 ParseOpcode, 937 1.1 jruoho UINT64 Value); 938 1.1 jruoho 939 1.1 jruoho ACPI_PARSE_OBJECT * 940 1.9 christos TrCreateConstantLeafOp ( 941 1.2 christos UINT32 ParseOpcode); 942 1.2 christos 943 1.2 christos ACPI_PARSE_OBJECT * 944 1.9 christos TrAllocateOp ( 945 1.9 christos UINT32 ParseOpcode); 946 1.9 christos 947 1.9 christos void 948 1.9 christos TrPrintOpFlags ( 949 1.9 christos UINT32 Flags, 950 1.9 christos UINT32 OutputLevel); 951 1.9 christos 952 1.9 christos 953 1.9 christos /* 954 1.9 christos * asltree.c - Parse tree management 955 1.9 christos */ 956 1.9 christos void 957 1.9 christos TrSetOpParent ( 958 1.1 jruoho ACPI_PARSE_OBJECT *Op, 959 1.9 christos ACPI_PARSE_OBJECT *ParentOp); 960 1.9 christos 961 1.9 christos ACPI_PARSE_OBJECT * 962 1.9 christos TrSetOpIntegerValue ( 963 1.9 christos UINT32 ParseOpcode, 964 1.9 christos ACPI_PARSE_OBJECT *Op); 965 1.1 jruoho 966 1.1 jruoho void 967 1.9 christos TrSetOpEndLineNumber ( 968 1.1 jruoho ACPI_PARSE_OBJECT *Op); 969 1.1 jruoho 970 1.1 jruoho void 971 1.9 christos TrSetOpCurrentFilename ( 972 1.4 christos ACPI_PARSE_OBJECT *Op); 973 1.4 christos 974 1.4 christos void 975 1.9 christos TrSetOpIntegerWidth ( 976 1.9 christos ACPI_PARSE_OBJECT *TableSignature, 977 1.9 christos ACPI_PARSE_OBJECT *Revision); 978 1.9 christos 979 1.9 christos ACPI_PARSE_OBJECT * 980 1.9 christos TrLinkOpChildren ( 981 1.9 christos ACPI_PARSE_OBJECT *Op, 982 1.9 christos UINT32 NumChildren, 983 1.9 christos ...); 984 1.1 jruoho 985 1.1 jruoho ACPI_PARSE_OBJECT * 986 1.9 christos TrLinkPeerOp ( 987 1.1 jruoho ACPI_PARSE_OBJECT *Op1, 988 1.1 jruoho ACPI_PARSE_OBJECT *Op2); 989 1.1 jruoho 990 1.1 jruoho ACPI_PARSE_OBJECT * 991 1.9 christos TrLinkChildOp ( 992 1.1 jruoho ACPI_PARSE_OBJECT *Op1, 993 1.1 jruoho ACPI_PARSE_OBJECT *Op2); 994 1.1 jruoho 995 1.1 jruoho ACPI_PARSE_OBJECT * 996 1.9 christos TrSetOpFlags ( 997 1.1 jruoho ACPI_PARSE_OBJECT *Op, 998 1.1 jruoho UINT32 Flags); 999 1.1 jruoho 1000 1.1 jruoho ACPI_PARSE_OBJECT * 1001 1.9 christos TrSetOpAmlLength ( 1002 1.2 christos ACPI_PARSE_OBJECT *Op, 1003 1.2 christos UINT32 Length); 1004 1.2 christos 1005 1.2 christos ACPI_PARSE_OBJECT * 1006 1.9 christos TrLinkPeerOps ( 1007 1.1 jruoho UINT32 NumPeers, 1008 1.1 jruoho ...); 1009 1.1 jruoho 1010 1.9 christos ACPI_STATUS 1011 1.9 christos TrWalkParseTree ( 1012 1.9 christos ACPI_PARSE_OBJECT *Op, 1013 1.9 christos UINT32 Visitation, 1014 1.9 christos ASL_WALK_CALLBACK DescendingCallback, 1015 1.9 christos ASL_WALK_CALLBACK AscendingCallback, 1016 1.9 christos void *Context); 1017 1.9 christos 1018 1.1 jruoho 1019 1.1 jruoho /* 1020 1.1 jruoho * aslfiles - File I/O support 1021 1.1 jruoho */ 1022 1.1 jruoho void 1023 1.1 jruoho FlAddIncludeDirectory ( 1024 1.1 jruoho char *Dir); 1025 1.1 jruoho 1026 1.2 christos char * 1027 1.2 christos FlMergePathnames ( 1028 1.2 christos char *PrefixDir, 1029 1.2 christos char *FilePathname); 1030 1.2 christos 1031 1.1 jruoho void 1032 1.1 jruoho FlOpenIncludeFile ( 1033 1.1 jruoho ACPI_PARSE_OBJECT *Op); 1034 1.1 jruoho 1035 1.1 jruoho void 1036 1.1 jruoho FlFileError ( 1037 1.1 jruoho UINT32 FileId, 1038 1.1 jruoho UINT8 ErrorId); 1039 1.1 jruoho 1040 1.1 jruoho UINT32 1041 1.1 jruoho FlGetFileSize ( 1042 1.1 jruoho UINT32 FileId); 1043 1.1 jruoho 1044 1.1 jruoho ACPI_STATUS 1045 1.1 jruoho FlReadFile ( 1046 1.1 jruoho UINT32 FileId, 1047 1.1 jruoho void *Buffer, 1048 1.1 jruoho UINT32 Length); 1049 1.1 jruoho 1050 1.1 jruoho void 1051 1.1 jruoho FlWriteFile ( 1052 1.1 jruoho UINT32 FileId, 1053 1.1 jruoho void *Buffer, 1054 1.1 jruoho UINT32 Length); 1055 1.1 jruoho 1056 1.1 jruoho void 1057 1.1 jruoho FlSeekFile ( 1058 1.1 jruoho UINT32 FileId, 1059 1.1 jruoho long Offset); 1060 1.1 jruoho 1061 1.1 jruoho void 1062 1.14 christos FlSeekFileSet ( 1063 1.14 christos UINT32 FileId, 1064 1.14 christos long Offset); 1065 1.14 christos 1066 1.14 christos void 1067 1.1 jruoho FlCloseFile ( 1068 1.1 jruoho UINT32 FileId); 1069 1.1 jruoho 1070 1.15 christos ACPI_PRINTF_LIKE (2) 1071 1.1 jruoho void 1072 1.1 jruoho FlPrintFile ( 1073 1.1 jruoho UINT32 FileId, 1074 1.1 jruoho char *Format, 1075 1.1 jruoho ...); 1076 1.1 jruoho 1077 1.1 jruoho void 1078 1.2 christos FlDeleteFile ( 1079 1.2 christos UINT32 FileId); 1080 1.2 christos 1081 1.2 christos void 1082 1.1 jruoho FlSetLineNumber ( 1083 1.2 christos UINT32 LineNumber); 1084 1.2 christos 1085 1.2 christos void 1086 1.2 christos FlSetFilename ( 1087 1.2 christos char *Filename); 1088 1.1 jruoho 1089 1.1 jruoho ACPI_STATUS 1090 1.1 jruoho FlOpenInputFile ( 1091 1.1 jruoho char *InputFilename); 1092 1.1 jruoho 1093 1.1 jruoho ACPI_STATUS 1094 1.1 jruoho FlOpenAmlOutputFile ( 1095 1.1 jruoho char *InputFilename); 1096 1.1 jruoho 1097 1.1 jruoho ACPI_STATUS 1098 1.1 jruoho FlOpenMiscOutputFiles ( 1099 1.1 jruoho char *InputFilename); 1100 1.1 jruoho 1101 1.14 christos ACPI_STATUS 1102 1.14 christos FlInitOneFile ( 1103 1.14 christos char *InputFilename); 1104 1.14 christos 1105 1.14 christos ASL_FILE_SWITCH_STATUS 1106 1.14 christos FlSwitchFileSet ( 1107 1.14 christos char *InputFilename); 1108 1.14 christos 1109 1.14 christos FILE * 1110 1.14 christos FlGetFileHandle ( 1111 1.14 christos UINT32 OutFileId, 1112 1.14 christos UINT32 InFileId, 1113 1.14 christos char *Filename); 1114 1.14 christos 1115 1.14 christos ASL_GLOBAL_FILE_NODE * 1116 1.14 christos FlGetFileNode ( 1117 1.14 christos UINT32 FileId, 1118 1.14 christos char *Filename); 1119 1.14 christos 1120 1.14 christos ASL_GLOBAL_FILE_NODE * 1121 1.14 christos FlGetCurrentFileNode ( 1122 1.14 christos void); 1123 1.14 christos 1124 1.14 christos 1125 1.2 christos /* 1126 1.2 christos * aslhwmap - hardware map summary 1127 1.2 christos */ 1128 1.2 christos void 1129 1.2 christos MpEmitMappingInfo ( 1130 1.2 christos void); 1131 1.2 christos 1132 1.1 jruoho 1133 1.1 jruoho /* 1134 1.1 jruoho * asload - load namespace in prep for cross reference 1135 1.1 jruoho */ 1136 1.1 jruoho ACPI_STATUS 1137 1.1 jruoho LdLoadNamespace ( 1138 1.1 jruoho ACPI_PARSE_OBJECT *RootOp); 1139 1.1 jruoho 1140 1.1 jruoho /* 1141 1.2 christos * asllookup - namespace lookup functions 1142 1.2 christos */ 1143 1.2 christos void 1144 1.2 christos LkFindUnreferencedObjects ( 1145 1.2 christos void); 1146 1.2 christos 1147 1.14 christos 1148 1.2 christos /* 1149 1.6 christos * aslhelp - help screens 1150 1.2 christos */ 1151 1.2 christos void 1152 1.2 christos Usage ( 1153 1.2 christos void); 1154 1.2 christos 1155 1.2 christos void 1156 1.2 christos AslFilenameHelp ( 1157 1.2 christos void); 1158 1.2 christos 1159 1.6 christos void 1160 1.6 christos AslDisassemblyHelp ( 1161 1.6 christos void); 1162 1.6 christos 1163 1.2 christos 1164 1.2 christos /* 1165 1.2 christos * aslnamesp - namespace output file generation 1166 1.1 jruoho */ 1167 1.1 jruoho ACPI_STATUS 1168 1.2 christos NsDisplayNamespace ( 1169 1.1 jruoho void); 1170 1.1 jruoho 1171 1.1 jruoho void 1172 1.2 christos NsSetupNamespaceListing ( 1173 1.2 christos void *Handle); 1174 1.2 christos 1175 1.14 christos 1176 1.2 christos /* 1177 1.2 christos * asloptions - command line processing 1178 1.2 christos */ 1179 1.2 christos int 1180 1.2 christos AslCommandLine ( 1181 1.2 christos int argc, 1182 1.2 christos char **argv); 1183 1.1 jruoho 1184 1.14 christos 1185 1.2 christos /* 1186 1.2 christos * aslxref - namespace cross reference 1187 1.2 christos */ 1188 1.1 jruoho ACPI_STATUS 1189 1.2 christos XfCrossReferenceNamespace ( 1190 1.1 jruoho void); 1191 1.1 jruoho 1192 1.1 jruoho 1193 1.1 jruoho /* 1194 1.5 christos * aslxrefout 1195 1.5 christos */ 1196 1.5 christos void 1197 1.5 christos OtPrintHeaders ( 1198 1.5 christos char *Message); 1199 1.5 christos 1200 1.5 christos void 1201 1.5 christos OtCreateXrefFile ( 1202 1.5 christos void); 1203 1.5 christos 1204 1.5 christos void 1205 1.5 christos OtXrefWalkPart1 ( 1206 1.5 christos ACPI_PARSE_OBJECT *Op, 1207 1.5 christos UINT32 Level, 1208 1.5 christos ASL_METHOD_INFO *MethodInfo); 1209 1.5 christos 1210 1.5 christos 1211 1.5 christos /* 1212 1.14 christos * aslutils - common compiler utilities 1213 1.1 jruoho */ 1214 1.15 christos ACPI_PRINTF_LIKE(2) 1215 1.1 jruoho void 1216 1.1 jruoho DbgPrint ( 1217 1.1 jruoho UINT32 Type, 1218 1.1 jruoho char *Format, 1219 1.1 jruoho ...); 1220 1.1 jruoho 1221 1.1 jruoho /* Type values for above */ 1222 1.1 jruoho 1223 1.1 jruoho #define ASL_DEBUG_OUTPUT 0 1224 1.1 jruoho #define ASL_PARSE_OUTPUT 1 1225 1.1 jruoho #define ASL_TREE_OUTPUT 2 1226 1.1 jruoho 1227 1.19 christos BOOLEAN 1228 1.19 christos UtIsIdInteger ( 1229 1.19 christos UINT8 *Target); 1230 1.19 christos 1231 1.5 christos UINT8 1232 1.5 christos UtIsBigEndianMachine ( 1233 1.5 christos void); 1234 1.5 christos 1235 1.4 christos BOOLEAN 1236 1.4 christos UtQueryForOverwrite ( 1237 1.4 christos char *Pathname); 1238 1.4 christos 1239 1.1 jruoho void 1240 1.5 christos UtDumpStringOp ( 1241 1.5 christos ACPI_PARSE_OBJECT *Op, 1242 1.5 christos UINT32 Level); 1243 1.5 christos 1244 1.5 christos void 1245 1.5 christos UtDumpIntegerOp ( 1246 1.5 christos ACPI_PARSE_OBJECT *Op, 1247 1.5 christos UINT32 Level, 1248 1.5 christos UINT32 IntegerLength); 1249 1.5 christos 1250 1.5 christos void 1251 1.5 christos UtDumpBasicOp ( 1252 1.5 christos ACPI_PARSE_OBJECT *Op, 1253 1.5 christos UINT32 Level); 1254 1.5 christos 1255 1.16 christos ACPI_NAMESPACE_NODE * 1256 1.16 christos UtGetParentMethodNode ( 1257 1.12 christos ACPI_NAMESPACE_NODE *Node); 1258 1.12 christos 1259 1.16 christos ACPI_PARSE_OBJECT * 1260 1.16 christos UtGetParentMethodOp ( 1261 1.16 christos ACPI_PARSE_OBJECT *Op); 1262 1.16 christos 1263 1.12 christos BOOLEAN 1264 1.12 christos UtNodeIsDescendantOf ( 1265 1.12 christos ACPI_NAMESPACE_NODE *Node1, 1266 1.12 christos ACPI_NAMESPACE_NODE *Node2); 1267 1.12 christos 1268 1.5 christos void 1269 1.2 christos UtDisplaySupportedTables ( 1270 1.2 christos void); 1271 1.2 christos 1272 1.2 christos void 1273 1.1 jruoho UtDisplayConstantOpcodes ( 1274 1.1 jruoho void); 1275 1.1 jruoho 1276 1.1 jruoho UINT8 1277 1.1 jruoho UtBeginEvent ( 1278 1.1 jruoho char *Name); 1279 1.1 jruoho 1280 1.1 jruoho void 1281 1.1 jruoho UtEndEvent ( 1282 1.1 jruoho UINT8 Event); 1283 1.1 jruoho 1284 1.1 jruoho void 1285 1.1 jruoho UtDisplaySummary ( 1286 1.1 jruoho UINT32 FileId); 1287 1.1 jruoho 1288 1.1 jruoho void 1289 1.14 christos UtDisplayOneSummary ( 1290 1.14 christos UINT32 FileId, 1291 1.14 christos BOOLEAN DisplayErrorSummary); 1292 1.14 christos 1293 1.14 christos void 1294 1.1 jruoho UtConvertByteToHex ( 1295 1.1 jruoho UINT8 RawByte, 1296 1.1 jruoho UINT8 *Buffer); 1297 1.1 jruoho 1298 1.1 jruoho void 1299 1.1 jruoho UtConvertByteToAsmHex ( 1300 1.1 jruoho UINT8 RawByte, 1301 1.1 jruoho UINT8 *Buffer); 1302 1.1 jruoho 1303 1.1 jruoho char * 1304 1.1 jruoho UtGetOpName ( 1305 1.1 jruoho UINT32 ParseOpcode); 1306 1.1 jruoho 1307 1.1 jruoho void 1308 1.1 jruoho UtSetParseOpName ( 1309 1.1 jruoho ACPI_PARSE_OBJECT *Op); 1310 1.1 jruoho 1311 1.1 jruoho ACPI_STATUS 1312 1.1 jruoho UtInternalizeName ( 1313 1.1 jruoho char *ExternalName, 1314 1.1 jruoho char **ConvertedName); 1315 1.1 jruoho 1316 1.15 christos BOOLEAN 1317 1.15 christos UtNameContainsAllPrefix ( 1318 1.15 christos ACPI_PARSE_OBJECT *Op); 1319 1.15 christos 1320 1.1 jruoho void 1321 1.1 jruoho UtAttachNamepathToOwner ( 1322 1.1 jruoho ACPI_PARSE_OBJECT *Op, 1323 1.1 jruoho ACPI_PARSE_OBJECT *NameNode); 1324 1.1 jruoho 1325 1.1 jruoho ACPI_PARSE_OBJECT * 1326 1.1 jruoho UtCheckIntegerRange ( 1327 1.1 jruoho ACPI_PARSE_OBJECT *Op, 1328 1.1 jruoho UINT32 LowValue, 1329 1.1 jruoho UINT32 HighValue); 1330 1.1 jruoho 1331 1.1 jruoho UINT64 1332 1.1 jruoho UtDoConstant ( 1333 1.1 jruoho char *String); 1334 1.1 jruoho 1335 1.15 christos char * 1336 1.15 christos AcpiUtStrdup ( 1337 1.15 christos char *String); 1338 1.15 christos 1339 1.15 christos char * 1340 1.15 christos AcpiUtStrcat ( 1341 1.15 christos char *String1, 1342 1.15 christos char *String2); 1343 1.15 christos 1344 1.2 christos 1345 1.2 christos /* 1346 1.2 christos * asluuid - UUID support 1347 1.2 christos */ 1348 1.2 christos ACPI_STATUS 1349 1.2 christos AuValidateUuid ( 1350 1.2 christos char *InString); 1351 1.2 christos 1352 1.2 christos ACPI_STATUS 1353 1.2 christos AuConvertUuidToString ( 1354 1.2 christos char *UuIdBuffer, 1355 1.2 christos char *OutString); 1356 1.1 jruoho 1357 1.14 christos 1358 1.1 jruoho /* 1359 1.1 jruoho * aslresource - Resource template generation utilities 1360 1.1 jruoho */ 1361 1.1 jruoho void 1362 1.1 jruoho RsSmallAddressCheck ( 1363 1.1 jruoho UINT8 Type, 1364 1.1 jruoho UINT32 Minimum, 1365 1.1 jruoho UINT32 Maximum, 1366 1.1 jruoho UINT32 Length, 1367 1.1 jruoho UINT32 Alignment, 1368 1.1 jruoho ACPI_PARSE_OBJECT *MinOp, 1369 1.1 jruoho ACPI_PARSE_OBJECT *MaxOp, 1370 1.1 jruoho ACPI_PARSE_OBJECT *LengthOp, 1371 1.2 christos ACPI_PARSE_OBJECT *AlignOp, 1372 1.2 christos ACPI_PARSE_OBJECT *Op); 1373 1.1 jruoho 1374 1.1 jruoho void 1375 1.1 jruoho RsLargeAddressCheck ( 1376 1.1 jruoho UINT64 Minimum, 1377 1.1 jruoho UINT64 Maximum, 1378 1.1 jruoho UINT64 Length, 1379 1.1 jruoho UINT64 Granularity, 1380 1.1 jruoho UINT8 Flags, 1381 1.1 jruoho ACPI_PARSE_OBJECT *MinOp, 1382 1.1 jruoho ACPI_PARSE_OBJECT *MaxOp, 1383 1.1 jruoho ACPI_PARSE_OBJECT *LengthOp, 1384 1.2 christos ACPI_PARSE_OBJECT *GranOp, 1385 1.2 christos ACPI_PARSE_OBJECT *Op); 1386 1.1 jruoho 1387 1.1 jruoho UINT16 1388 1.1 jruoho RsGetStringDataLength ( 1389 1.1 jruoho ACPI_PARSE_OBJECT *InitializerOp); 1390 1.1 jruoho 1391 1.1 jruoho ASL_RESOURCE_NODE * 1392 1.1 jruoho RsAllocateResourceNode ( 1393 1.1 jruoho UINT32 Size); 1394 1.1 jruoho 1395 1.1 jruoho void 1396 1.2 christos RsCreateResourceField ( 1397 1.1 jruoho ACPI_PARSE_OBJECT *Op, 1398 1.1 jruoho char *Name, 1399 1.1 jruoho UINT32 ByteOffset, 1400 1.2 christos UINT32 BitOffset, 1401 1.2 christos UINT32 BitLength); 1402 1.1 jruoho 1403 1.1 jruoho void 1404 1.2 christos RsSetFlagBits ( 1405 1.2 christos UINT8 *Flags, 1406 1.1 jruoho ACPI_PARSE_OBJECT *Op, 1407 1.2 christos UINT8 Position, 1408 1.2 christos UINT8 DefaultBit); 1409 1.1 jruoho 1410 1.1 jruoho void 1411 1.2 christos RsSetFlagBits16 ( 1412 1.2 christos UINT16 *Flags, 1413 1.1 jruoho ACPI_PARSE_OBJECT *Op, 1414 1.1 jruoho UINT8 Position, 1415 1.1 jruoho UINT8 DefaultBit); 1416 1.1 jruoho 1417 1.1 jruoho ACPI_PARSE_OBJECT * 1418 1.1 jruoho RsCompleteNodeAndGetNext ( 1419 1.1 jruoho ACPI_PARSE_OBJECT *Op); 1420 1.1 jruoho 1421 1.1 jruoho void 1422 1.1 jruoho RsCheckListForDuplicates ( 1423 1.1 jruoho ACPI_PARSE_OBJECT *Op); 1424 1.1 jruoho 1425 1.1 jruoho ASL_RESOURCE_NODE * 1426 1.1 jruoho RsDoOneResourceDescriptor ( 1427 1.2 christos ASL_RESOURCE_INFO *Info, 1428 1.1 jruoho UINT8 *State); 1429 1.1 jruoho 1430 1.1 jruoho /* Values for State above */ 1431 1.1 jruoho 1432 1.1 jruoho #define ACPI_RSTATE_NORMAL 0 1433 1.1 jruoho #define ACPI_RSTATE_START_DEPENDENT 1 1434 1.1 jruoho #define ACPI_RSTATE_DEPENDENT_LIST 2 1435 1.1 jruoho 1436 1.1 jruoho UINT32 1437 1.1 jruoho RsLinkDescriptorChain ( 1438 1.1 jruoho ASL_RESOURCE_NODE **PreviousRnode, 1439 1.1 jruoho ASL_RESOURCE_NODE *Rnode); 1440 1.1 jruoho 1441 1.1 jruoho void 1442 1.1 jruoho RsDoResourceTemplate ( 1443 1.1 jruoho ACPI_PARSE_OBJECT *Op); 1444 1.1 jruoho 1445 1.1 jruoho 1446 1.1 jruoho /* 1447 1.1 jruoho * aslrestype1 - Miscellaneous Small descriptors 1448 1.1 jruoho */ 1449 1.1 jruoho ASL_RESOURCE_NODE * 1450 1.1 jruoho RsDoEndTagDescriptor ( 1451 1.2 christos ASL_RESOURCE_INFO *Info); 1452 1.1 jruoho 1453 1.1 jruoho ASL_RESOURCE_NODE * 1454 1.1 jruoho RsDoEndDependentDescriptor ( 1455 1.2 christos ASL_RESOURCE_INFO *Info); 1456 1.1 jruoho 1457 1.1 jruoho ASL_RESOURCE_NODE * 1458 1.1 jruoho RsDoMemory24Descriptor ( 1459 1.2 christos ASL_RESOURCE_INFO *Info); 1460 1.1 jruoho 1461 1.1 jruoho ASL_RESOURCE_NODE * 1462 1.1 jruoho RsDoMemory32Descriptor ( 1463 1.2 christos ASL_RESOURCE_INFO *Info); 1464 1.1 jruoho 1465 1.1 jruoho ASL_RESOURCE_NODE * 1466 1.1 jruoho RsDoMemory32FixedDescriptor ( 1467 1.2 christos ASL_RESOURCE_INFO *Info); 1468 1.1 jruoho 1469 1.1 jruoho ASL_RESOURCE_NODE * 1470 1.1 jruoho RsDoStartDependentDescriptor ( 1471 1.2 christos ASL_RESOURCE_INFO *Info); 1472 1.1 jruoho 1473 1.1 jruoho ASL_RESOURCE_NODE * 1474 1.1 jruoho RsDoStartDependentNoPriDescriptor ( 1475 1.2 christos ASL_RESOURCE_INFO *Info); 1476 1.1 jruoho 1477 1.1 jruoho ASL_RESOURCE_NODE * 1478 1.1 jruoho RsDoVendorSmallDescriptor ( 1479 1.2 christos ASL_RESOURCE_INFO *Info); 1480 1.1 jruoho 1481 1.1 jruoho 1482 1.1 jruoho /* 1483 1.1 jruoho * aslrestype1i - I/O-related Small descriptors 1484 1.1 jruoho */ 1485 1.1 jruoho ASL_RESOURCE_NODE * 1486 1.1 jruoho RsDoDmaDescriptor ( 1487 1.2 christos ASL_RESOURCE_INFO *Info); 1488 1.2 christos 1489 1.2 christos ASL_RESOURCE_NODE * 1490 1.2 christos RsDoFixedDmaDescriptor ( 1491 1.2 christos ASL_RESOURCE_INFO *Info); 1492 1.1 jruoho 1493 1.1 jruoho ASL_RESOURCE_NODE * 1494 1.1 jruoho RsDoFixedIoDescriptor ( 1495 1.2 christos ASL_RESOURCE_INFO *Info); 1496 1.1 jruoho 1497 1.1 jruoho ASL_RESOURCE_NODE * 1498 1.1 jruoho RsDoIoDescriptor ( 1499 1.2 christos ASL_RESOURCE_INFO *Info); 1500 1.1 jruoho 1501 1.1 jruoho ASL_RESOURCE_NODE * 1502 1.1 jruoho RsDoIrqDescriptor ( 1503 1.2 christos ASL_RESOURCE_INFO *Info); 1504 1.1 jruoho 1505 1.1 jruoho ASL_RESOURCE_NODE * 1506 1.1 jruoho RsDoIrqNoFlagsDescriptor ( 1507 1.2 christos ASL_RESOURCE_INFO *Info); 1508 1.1 jruoho 1509 1.1 jruoho 1510 1.1 jruoho /* 1511 1.1 jruoho * aslrestype2 - Large resource descriptors 1512 1.1 jruoho */ 1513 1.1 jruoho ASL_RESOURCE_NODE * 1514 1.1 jruoho RsDoInterruptDescriptor ( 1515 1.2 christos ASL_RESOURCE_INFO *Info); 1516 1.1 jruoho 1517 1.1 jruoho ASL_RESOURCE_NODE * 1518 1.1 jruoho RsDoVendorLargeDescriptor ( 1519 1.2 christos ASL_RESOURCE_INFO *Info); 1520 1.1 jruoho 1521 1.1 jruoho ASL_RESOURCE_NODE * 1522 1.1 jruoho RsDoGeneralRegisterDescriptor ( 1523 1.2 christos ASL_RESOURCE_INFO *Info); 1524 1.2 christos 1525 1.2 christos ASL_RESOURCE_NODE * 1526 1.2 christos RsDoGpioIntDescriptor ( 1527 1.2 christos ASL_RESOURCE_INFO *Info); 1528 1.2 christos 1529 1.2 christos ASL_RESOURCE_NODE * 1530 1.2 christos RsDoGpioIoDescriptor ( 1531 1.2 christos ASL_RESOURCE_INFO *Info); 1532 1.2 christos 1533 1.2 christos ASL_RESOURCE_NODE * 1534 1.2 christos RsDoI2cSerialBusDescriptor ( 1535 1.2 christos ASL_RESOURCE_INFO *Info); 1536 1.2 christos 1537 1.2 christos ASL_RESOURCE_NODE * 1538 1.2 christos RsDoSpiSerialBusDescriptor ( 1539 1.2 christos ASL_RESOURCE_INFO *Info); 1540 1.1 jruoho 1541 1.2 christos ASL_RESOURCE_NODE * 1542 1.2 christos RsDoUartSerialBusDescriptor ( 1543 1.2 christos ASL_RESOURCE_INFO *Info); 1544 1.1 jruoho 1545 1.9 christos ASL_RESOURCE_NODE * 1546 1.18 christos RsDoCsi2SerialBusDescriptor ( 1547 1.18 christos ASL_RESOURCE_INFO *Info); 1548 1.18 christos 1549 1.18 christos ASL_RESOURCE_NODE * 1550 1.9 christos RsDoPinFunctionDescriptor ( 1551 1.9 christos ASL_RESOURCE_INFO *Info); 1552 1.9 christos 1553 1.9 christos ASL_RESOURCE_NODE * 1554 1.9 christos RsDoPinConfigDescriptor ( 1555 1.9 christos ASL_RESOURCE_INFO *Info); 1556 1.9 christos 1557 1.9 christos ASL_RESOURCE_NODE * 1558 1.9 christos RsDoPinGroupDescriptor ( 1559 1.9 christos ASL_RESOURCE_INFO *Info); 1560 1.9 christos 1561 1.9 christos ASL_RESOURCE_NODE * 1562 1.9 christos RsDoPinGroupFunctionDescriptor ( 1563 1.9 christos ASL_RESOURCE_INFO *Info); 1564 1.9 christos 1565 1.9 christos ASL_RESOURCE_NODE * 1566 1.9 christos RsDoPinGroupConfigDescriptor ( 1567 1.9 christos ASL_RESOURCE_INFO *Info); 1568 1.9 christos 1569 1.21 christos ASL_RESOURCE_NODE * 1570 1.21 christos RsDoClockInputDescriptor ( 1571 1.21 christos ASL_RESOURCE_INFO *Info); 1572 1.14 christos 1573 1.1 jruoho /* 1574 1.1 jruoho * aslrestype2d - DWord address descriptors 1575 1.1 jruoho */ 1576 1.1 jruoho ASL_RESOURCE_NODE * 1577 1.1 jruoho RsDoDwordIoDescriptor ( 1578 1.2 christos ASL_RESOURCE_INFO *Info); 1579 1.1 jruoho 1580 1.1 jruoho ASL_RESOURCE_NODE * 1581 1.1 jruoho RsDoDwordMemoryDescriptor ( 1582 1.2 christos ASL_RESOURCE_INFO *Info); 1583 1.1 jruoho 1584 1.1 jruoho ASL_RESOURCE_NODE * 1585 1.22 christos RsDoDwordPccDescriptor ( 1586 1.22 christos ASL_RESOURCE_INFO *Info); 1587 1.22 christos 1588 1.22 christos ASL_RESOURCE_NODE * 1589 1.1 jruoho RsDoDwordSpaceDescriptor ( 1590 1.2 christos ASL_RESOURCE_INFO *Info); 1591 1.1 jruoho 1592 1.1 jruoho /* 1593 1.1 jruoho * aslrestype2e - Extended address descriptors 1594 1.1 jruoho */ 1595 1.1 jruoho ASL_RESOURCE_NODE * 1596 1.1 jruoho RsDoExtendedIoDescriptor ( 1597 1.2 christos ASL_RESOURCE_INFO *Info); 1598 1.1 jruoho 1599 1.1 jruoho ASL_RESOURCE_NODE * 1600 1.1 jruoho RsDoExtendedMemoryDescriptor ( 1601 1.2 christos ASL_RESOURCE_INFO *Info); 1602 1.1 jruoho 1603 1.1 jruoho ASL_RESOURCE_NODE * 1604 1.1 jruoho RsDoExtendedSpaceDescriptor ( 1605 1.2 christos ASL_RESOURCE_INFO *Info); 1606 1.1 jruoho 1607 1.1 jruoho 1608 1.1 jruoho /* 1609 1.1 jruoho * aslrestype2q - QWord address descriptors 1610 1.1 jruoho */ 1611 1.1 jruoho ASL_RESOURCE_NODE * 1612 1.1 jruoho RsDoQwordIoDescriptor ( 1613 1.2 christos ASL_RESOURCE_INFO *Info); 1614 1.1 jruoho 1615 1.1 jruoho ASL_RESOURCE_NODE * 1616 1.1 jruoho RsDoQwordMemoryDescriptor ( 1617 1.2 christos ASL_RESOURCE_INFO *Info); 1618 1.1 jruoho 1619 1.1 jruoho ASL_RESOURCE_NODE * 1620 1.22 christos RsDoQwordPccDescriptor ( 1621 1.22 christos ASL_RESOURCE_INFO *Info); 1622 1.22 christos 1623 1.22 christos ASL_RESOURCE_NODE * 1624 1.1 jruoho RsDoQwordSpaceDescriptor ( 1625 1.2 christos ASL_RESOURCE_INFO *Info); 1626 1.1 jruoho 1627 1.1 jruoho 1628 1.1 jruoho /* 1629 1.1 jruoho * aslrestype2w - Word address descriptors 1630 1.1 jruoho */ 1631 1.1 jruoho ASL_RESOURCE_NODE * 1632 1.1 jruoho RsDoWordIoDescriptor ( 1633 1.2 christos ASL_RESOURCE_INFO *Info); 1634 1.1 jruoho 1635 1.1 jruoho ASL_RESOURCE_NODE * 1636 1.22 christos RsDoWordPccDescriptor ( 1637 1.22 christos ASL_RESOURCE_INFO *Info); 1638 1.22 christos 1639 1.22 christos ASL_RESOURCE_NODE * 1640 1.1 jruoho RsDoWordSpaceDescriptor ( 1641 1.2 christos ASL_RESOURCE_INFO *Info); 1642 1.1 jruoho 1643 1.1 jruoho ASL_RESOURCE_NODE * 1644 1.1 jruoho RsDoWordBusNumberDescriptor ( 1645 1.2 christos ASL_RESOURCE_INFO *Info); 1646 1.2 christos 1647 1.1 jruoho 1648 1.1 jruoho /* 1649 1.1 jruoho * Entry to data table compiler subsystem 1650 1.1 jruoho */ 1651 1.1 jruoho ACPI_STATUS 1652 1.1 jruoho DtDoCompile( 1653 1.1 jruoho void); 1654 1.1 jruoho 1655 1.2 christos ACPI_STATUS 1656 1.2 christos DtCreateTemplates ( 1657 1.4 christos char **argv); 1658 1.2 christos 1659 1.8 christos 1660 1.8 christos /* 1661 1.8 christos * ASL/ASL+ converter debug 1662 1.8 christos */ 1663 1.15 christos ACPI_PRINTF_LIKE (1) 1664 1.8 christos void 1665 1.8 christos CvDbgPrint ( 1666 1.8 christos char *Fmt, 1667 1.8 christos ...); 1668 1.8 christos 1669 1.8 christos 1670 1.1 jruoho #endif /* __ASLCOMPILER_H */ 1671