153289f6aSNate Lawson /****************************************************************************** 253289f6aSNate Lawson * 3fba7fc7eSJung-uk Kim * Module Name: aslcompiler.h - common include file for iASL 453289f6aSNate Lawson * 553289f6aSNate Lawson *****************************************************************************/ 653289f6aSNate Lawson 7d244b227SJung-uk Kim /* 8*f8146b88SJung-uk Kim * Copyright (C) 2000 - 2016, Intel Corp. 953289f6aSNate Lawson * All rights reserved. 1053289f6aSNate Lawson * 11d244b227SJung-uk Kim * Redistribution and use in source and binary forms, with or without 12d244b227SJung-uk Kim * modification, are permitted provided that the following conditions 13d244b227SJung-uk Kim * are met: 14d244b227SJung-uk Kim * 1. Redistributions of source code must retain the above copyright 15d244b227SJung-uk Kim * notice, this list of conditions, and the following disclaimer, 16d244b227SJung-uk Kim * without modification. 17d244b227SJung-uk Kim * 2. Redistributions in binary form must reproduce at minimum a disclaimer 18d244b227SJung-uk Kim * substantially similar to the "NO WARRANTY" disclaimer below 19d244b227SJung-uk Kim * ("Disclaimer") and any redistribution must be conditioned upon 20d244b227SJung-uk Kim * including a substantially similar Disclaimer requirement for further 21d244b227SJung-uk Kim * binary redistribution. 22d244b227SJung-uk Kim * 3. Neither the names of the above-listed copyright holders nor the names 23d244b227SJung-uk Kim * of any contributors may be used to endorse or promote products derived 24d244b227SJung-uk Kim * from this software without specific prior written permission. 2553289f6aSNate Lawson * 26d244b227SJung-uk Kim * Alternatively, this software may be distributed under the terms of the 27d244b227SJung-uk Kim * GNU General Public License ("GPL") version 2 as published by the Free 28d244b227SJung-uk Kim * Software Foundation. 2953289f6aSNate Lawson * 30d244b227SJung-uk Kim * NO WARRANTY 31d244b227SJung-uk Kim * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 32d244b227SJung-uk Kim * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 33d244b227SJung-uk Kim * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR 34d244b227SJung-uk Kim * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 35d244b227SJung-uk Kim * HOLDERS OR CONTRIBUTORS BE LIABLE FOR SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 36d244b227SJung-uk Kim * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 37d244b227SJung-uk Kim * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 38d244b227SJung-uk Kim * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, 39d244b227SJung-uk Kim * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING 40d244b227SJung-uk Kim * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 41d244b227SJung-uk Kim * POSSIBILITY OF SUCH DAMAGES. 42d244b227SJung-uk Kim */ 4353289f6aSNate Lawson 4453289f6aSNate Lawson #ifndef __ASLCOMPILER_H 4553289f6aSNate Lawson #define __ASLCOMPILER_H 4653289f6aSNate Lawson 47d244b227SJung-uk Kim #include <contrib/dev/acpica/include/acpi.h> 48d244b227SJung-uk Kim #include <contrib/dev/acpica/include/accommon.h> 49d244b227SJung-uk Kim #include <contrib/dev/acpica/include/amlresrc.h> 50d244b227SJung-uk Kim #include <contrib/dev/acpica/include/acdebug.h> 5153289f6aSNate Lawson 5253289f6aSNate Lawson /* Microsoft-specific */ 5353289f6aSNate Lawson 5453289f6aSNate Lawson #if (defined WIN32 || defined WIN64) 5553289f6aSNate Lawson 5653289f6aSNate Lawson /* warn : used #pragma pack */ 5753289f6aSNate Lawson #pragma warning(disable:4103) 5853289f6aSNate Lawson 5953289f6aSNate Lawson /* warn : named type definition in parentheses */ 6053289f6aSNate Lawson #pragma warning(disable:4115) 6153289f6aSNate Lawson #endif 6253289f6aSNate Lawson 6353289f6aSNate Lawson #include <stdio.h> 6453289f6aSNate Lawson #include <stdlib.h> 6553289f6aSNate Lawson #include <stdarg.h> 6653289f6aSNate Lawson #include <string.h> 6753289f6aSNate Lawson #include <errno.h> 6853289f6aSNate Lawson #include <ctype.h> 6953289f6aSNate Lawson 70fba7fc7eSJung-uk Kim /* Compiler headers */ 7153289f6aSNate Lawson 72ab6f3bf9SJung-uk Kim #include <contrib/dev/acpica/compiler/asldefine.h> 73ab6f3bf9SJung-uk Kim #include <contrib/dev/acpica/compiler/asltypes.h> 743c1812acSJung-uk Kim #include <contrib/dev/acpica/compiler/aslmessages.h> 75ab6f3bf9SJung-uk Kim #include <contrib/dev/acpica/compiler/aslglobal.h> 764c52cad2SJung-uk Kim #include <contrib/dev/acpica/compiler/preprocess.h> 7753289f6aSNate Lawson 7853289f6aSNate Lawson 7953289f6aSNate Lawson /******************************************************************************* 8053289f6aSNate Lawson * 8153289f6aSNate Lawson * Compiler prototypes 8253289f6aSNate Lawson * 8353289f6aSNate Lawson ******************************************************************************/ 8453289f6aSNate Lawson 85fba7fc7eSJung-uk Kim /* 864c52cad2SJung-uk Kim * Main ASL parser - generated from flex/bison, lex/yacc, etc. 87fba7fc7eSJung-uk Kim */ 8853289f6aSNate Lawson ACPI_PARSE_OBJECT * 8953289f6aSNate Lawson AslDoError ( 9053289f6aSNate Lawson void); 9153289f6aSNate Lawson 9253289f6aSNate Lawson int 9353289f6aSNate Lawson AslCompilerlex( 9453289f6aSNate Lawson void); 9553289f6aSNate Lawson 9653289f6aSNate Lawson void 97eef1b955SJung-uk Kim AslResetCurrentLineBuffer ( 9853289f6aSNate Lawson void); 9953289f6aSNate Lawson 10053289f6aSNate Lawson void 101eef1b955SJung-uk Kim AslInsertLineBuffer ( 10253289f6aSNate Lawson int SourceChar); 10353289f6aSNate Lawson 10453289f6aSNate Lawson int 10553289f6aSNate Lawson AslPopInputFileStack ( 10653289f6aSNate Lawson void); 10753289f6aSNate Lawson 10853289f6aSNate Lawson void 10953289f6aSNate Lawson AslPushInputFileStack ( 11053289f6aSNate Lawson FILE *InputFile, 11153289f6aSNate Lawson char *Filename); 11253289f6aSNate Lawson 113313a0c13SJung-uk Kim void 114313a0c13SJung-uk Kim AslParserCleanup ( 115313a0c13SJung-uk Kim void); 116313a0c13SJung-uk Kim 117313a0c13SJung-uk Kim 118a9f12690SJung-uk Kim /* 119a88e22b7SJung-uk Kim * aslstartup - entered from main() 120a9f12690SJung-uk Kim */ 121a88e22b7SJung-uk Kim void 122a88e22b7SJung-uk Kim AslInitializeGlobals ( 123a88e22b7SJung-uk Kim void); 124a88e22b7SJung-uk Kim 125709fac06SJung-uk Kim typedef 126709fac06SJung-uk Kim ACPI_STATUS (*ASL_PATHNAME_CALLBACK) ( 127709fac06SJung-uk Kim char *); 128709fac06SJung-uk Kim 129a9f12690SJung-uk Kim ACPI_STATUS 130a9f12690SJung-uk Kim AslDoOneFile ( 131a9f12690SJung-uk Kim char *Filename); 13253289f6aSNate Lawson 133eef1b955SJung-uk Kim ACPI_STATUS 134eef1b955SJung-uk Kim AslCheckForErrorExit ( 135eef1b955SJung-uk Kim void); 136eef1b955SJung-uk Kim 137eef1b955SJung-uk Kim 138fba7fc7eSJung-uk Kim /* 139fba7fc7eSJung-uk Kim * aslcompile - compile mainline 140fba7fc7eSJung-uk Kim */ 14153289f6aSNate Lawson void 14253289f6aSNate Lawson AslCompilerSignon ( 14353289f6aSNate Lawson UINT32 FileId); 14453289f6aSNate Lawson 14553289f6aSNate Lawson void 14653289f6aSNate Lawson AslCompilerFileHeader ( 14753289f6aSNate Lawson UINT32 FileId); 14853289f6aSNate Lawson 14953289f6aSNate Lawson int 150fba7fc7eSJung-uk Kim CmDoCompile ( 15153289f6aSNate Lawson void); 15253289f6aSNate Lawson 15353289f6aSNate Lawson void 154fba7fc7eSJung-uk Kim CmDoOutputFiles ( 15553289f6aSNate Lawson void); 15653289f6aSNate Lawson 15753289f6aSNate Lawson void 158fba7fc7eSJung-uk Kim CmCleanupAndExit ( 15953289f6aSNate Lawson void); 16053289f6aSNate Lawson 161313a0c13SJung-uk Kim void 162313a0c13SJung-uk Kim CmDeleteCaches ( 163313a0c13SJung-uk Kim void); 164313a0c13SJung-uk Kim 165313a0c13SJung-uk Kim 166313a0c13SJung-uk Kim /* 167313a0c13SJung-uk Kim * aslascii - ascii support 168313a0c13SJung-uk Kim */ 169a88e22b7SJung-uk Kim ACPI_STATUS 170*f8146b88SJung-uk Kim FlIsFileAsciiSource ( 171a7a3b383SJung-uk Kim char *Filename, 172a7a3b383SJung-uk Kim BOOLEAN DisplayErrors); 173a88e22b7SJung-uk Kim 17453289f6aSNate Lawson 17553289f6aSNate Lawson /* 1760b94ba42SJung-uk Kim * aslwalks - semantic analysis and parse tree walks 17753289f6aSNate Lawson */ 17853289f6aSNate Lawson ACPI_STATUS 17953289f6aSNate Lawson AnOtherSemanticAnalysisWalkBegin ( 18053289f6aSNate Lawson ACPI_PARSE_OBJECT *Op, 18153289f6aSNate Lawson UINT32 Level, 18253289f6aSNate Lawson void *Context); 18353289f6aSNate Lawson 18453289f6aSNate Lawson ACPI_STATUS 18553289f6aSNate Lawson AnOtherSemanticAnalysisWalkEnd ( 18653289f6aSNate Lawson ACPI_PARSE_OBJECT *Op, 18753289f6aSNate Lawson UINT32 Level, 18853289f6aSNate Lawson void *Context); 18953289f6aSNate Lawson 19053289f6aSNate Lawson ACPI_STATUS 19153289f6aSNate Lawson AnOperandTypecheckWalkEnd ( 19253289f6aSNate Lawson ACPI_PARSE_OBJECT *Op, 19353289f6aSNate Lawson UINT32 Level, 19453289f6aSNate Lawson void *Context); 19553289f6aSNate Lawson 19653289f6aSNate Lawson ACPI_STATUS 19753289f6aSNate Lawson AnMethodTypingWalkEnd ( 19853289f6aSNate Lawson ACPI_PARSE_OBJECT *Op, 19953289f6aSNate Lawson UINT32 Level, 20053289f6aSNate Lawson void *Context); 20153289f6aSNate Lawson 20253289f6aSNate Lawson 20353289f6aSNate Lawson /* 204efcc2a30SJung-uk Kim * aslmethod - Control method analysis walk 205efcc2a30SJung-uk Kim */ 206efcc2a30SJung-uk Kim ACPI_STATUS 207efcc2a30SJung-uk Kim MtMethodAnalysisWalkBegin ( 208efcc2a30SJung-uk Kim ACPI_PARSE_OBJECT *Op, 209efcc2a30SJung-uk Kim UINT32 Level, 210efcc2a30SJung-uk Kim void *Context); 211efcc2a30SJung-uk Kim 212efcc2a30SJung-uk Kim ACPI_STATUS 213efcc2a30SJung-uk Kim MtMethodAnalysisWalkEnd ( 214efcc2a30SJung-uk Kim ACPI_PARSE_OBJECT *Op, 215efcc2a30SJung-uk Kim UINT32 Level, 216efcc2a30SJung-uk Kim void *Context); 217efcc2a30SJung-uk Kim 218efcc2a30SJung-uk Kim 219efcc2a30SJung-uk Kim /* 2200b94ba42SJung-uk Kim * aslbtypes - bitfield data types 2210b94ba42SJung-uk Kim */ 2220b94ba42SJung-uk Kim UINT32 2230b94ba42SJung-uk Kim AnMapObjTypeToBtype ( 2240b94ba42SJung-uk Kim ACPI_PARSE_OBJECT *Op); 2250b94ba42SJung-uk Kim 2260b94ba42SJung-uk Kim UINT32 2270b94ba42SJung-uk Kim AnMapArgTypeToBtype ( 2280b94ba42SJung-uk Kim UINT32 ArgType); 2290b94ba42SJung-uk Kim 2300b94ba42SJung-uk Kim UINT32 2310b94ba42SJung-uk Kim AnGetBtype ( 2320b94ba42SJung-uk Kim ACPI_PARSE_OBJECT *Op); 2330b94ba42SJung-uk Kim 2340b94ba42SJung-uk Kim void 2350b94ba42SJung-uk Kim AnFormatBtype ( 2360b94ba42SJung-uk Kim char *Buffer, 2370b94ba42SJung-uk Kim UINT32 Btype); 2380b94ba42SJung-uk Kim 2390b94ba42SJung-uk Kim 2400b94ba42SJung-uk Kim /* 2410b94ba42SJung-uk Kim * aslanalyze - Support functions for parse tree walks 2420b94ba42SJung-uk Kim */ 2430b94ba42SJung-uk Kim void 2440b94ba42SJung-uk Kim AnCheckId ( 2450b94ba42SJung-uk Kim ACPI_PARSE_OBJECT *Op, 2460b94ba42SJung-uk Kim ACPI_NAME Type); 2470b94ba42SJung-uk Kim 2480b94ba42SJung-uk Kim /* Values for Type argument above */ 2490b94ba42SJung-uk Kim 2500b94ba42SJung-uk Kim #define ASL_TYPE_HID 0 2510b94ba42SJung-uk Kim #define ASL_TYPE_CID 1 2520b94ba42SJung-uk Kim 2530b94ba42SJung-uk Kim BOOLEAN 2540b94ba42SJung-uk Kim AnIsInternalMethod ( 2550b94ba42SJung-uk Kim ACPI_PARSE_OBJECT *Op); 2560b94ba42SJung-uk Kim 2570b94ba42SJung-uk Kim UINT32 2580b94ba42SJung-uk Kim AnGetInternalMethodReturnType ( 2590b94ba42SJung-uk Kim ACPI_PARSE_OBJECT *Op); 2600b94ba42SJung-uk Kim 2610b94ba42SJung-uk Kim BOOLEAN 2620b94ba42SJung-uk Kim AnLastStatementIsReturn ( 2630b94ba42SJung-uk Kim ACPI_PARSE_OBJECT *Op); 2640b94ba42SJung-uk Kim 2650b94ba42SJung-uk Kim void 2660b94ba42SJung-uk Kim AnCheckMethodReturnValue ( 2670b94ba42SJung-uk Kim ACPI_PARSE_OBJECT *Op, 2680b94ba42SJung-uk Kim const ACPI_OPCODE_INFO *OpInfo, 2690b94ba42SJung-uk Kim ACPI_PARSE_OBJECT *ArgOp, 2700b94ba42SJung-uk Kim UINT32 RequiredBtypes, 2710b94ba42SJung-uk Kim UINT32 ThisNodeBtype); 2720b94ba42SJung-uk Kim 2730b94ba42SJung-uk Kim BOOLEAN 2740b94ba42SJung-uk Kim AnIsResultUsed ( 2750b94ba42SJung-uk Kim ACPI_PARSE_OBJECT *Op); 2760b94ba42SJung-uk Kim 2770b94ba42SJung-uk Kim void 2780b94ba42SJung-uk Kim ApCheckForGpeNameConflict ( 2790b94ba42SJung-uk Kim ACPI_PARSE_OBJECT *Op); 2800b94ba42SJung-uk Kim 281d052a1ccSJung-uk Kim void 282d052a1ccSJung-uk Kim ApCheckRegMethod ( 283d052a1ccSJung-uk Kim ACPI_PARSE_OBJECT *Op); 284d052a1ccSJung-uk Kim 285313a0c13SJung-uk Kim BOOLEAN 286313a0c13SJung-uk Kim ApFindNameInScope ( 287313a0c13SJung-uk Kim char *Name, 288313a0c13SJung-uk Kim ACPI_PARSE_OBJECT *Op); 289313a0c13SJung-uk Kim 290*f8146b88SJung-uk Kim BOOLEAN 291*f8146b88SJung-uk Kim ApFindNameInDeviceTree ( 292*f8146b88SJung-uk Kim char *Name, 293*f8146b88SJung-uk Kim ACPI_PARSE_OBJECT *Op); 2940b94ba42SJung-uk Kim 2950b94ba42SJung-uk Kim /* 296fba7fc7eSJung-uk Kim * aslerror - error handling/reporting 29753289f6aSNate Lawson */ 298fba7fc7eSJung-uk Kim void 299313a0c13SJung-uk Kim AslAbort ( 300313a0c13SJung-uk Kim void); 301313a0c13SJung-uk Kim 302313a0c13SJung-uk Kim void 303fba7fc7eSJung-uk Kim AslError ( 304fba7fc7eSJung-uk Kim UINT8 Level, 305313a0c13SJung-uk Kim UINT16 MessageId, 306fba7fc7eSJung-uk Kim ACPI_PARSE_OBJECT *Op, 307fba7fc7eSJung-uk Kim char *ExtraMessage); 30853289f6aSNate Lawson 309a9d8d09cSJung-uk Kim ACPI_STATUS 310a9d8d09cSJung-uk Kim AslDisableException ( 311a9d8d09cSJung-uk Kim char *MessageIdString); 312a9d8d09cSJung-uk Kim 313a9d8d09cSJung-uk Kim BOOLEAN 314a9d8d09cSJung-uk Kim AslIsExceptionDisabled ( 315a9d8d09cSJung-uk Kim UINT8 Level, 316313a0c13SJung-uk Kim UINT16 MessageId); 317a9d8d09cSJung-uk Kim 31853289f6aSNate Lawson void 319fba7fc7eSJung-uk Kim AslCoreSubsystemError ( 320fba7fc7eSJung-uk Kim ACPI_PARSE_OBJECT *Op, 321fba7fc7eSJung-uk Kim ACPI_STATUS Status, 322fba7fc7eSJung-uk Kim char *ExtraMessage, 323fba7fc7eSJung-uk Kim BOOLEAN Abort); 32453289f6aSNate Lawson 325fba7fc7eSJung-uk Kim int 326fba7fc7eSJung-uk Kim AslCompilererror( 3273f0275a0SJung-uk Kim const char *s); 328fba7fc7eSJung-uk Kim 329fba7fc7eSJung-uk Kim void 330fba7fc7eSJung-uk Kim AslCommonError ( 331fba7fc7eSJung-uk Kim UINT8 Level, 332313a0c13SJung-uk Kim UINT16 MessageId, 333fba7fc7eSJung-uk Kim UINT32 CurrentLineNumber, 334fba7fc7eSJung-uk Kim UINT32 LogicalLineNumber, 335fba7fc7eSJung-uk Kim UINT32 LogicalByteOffset, 336fba7fc7eSJung-uk Kim UINT32 Column, 337fba7fc7eSJung-uk Kim char *Filename, 338fba7fc7eSJung-uk Kim char *ExtraMessage); 339fba7fc7eSJung-uk Kim 340fba7fc7eSJung-uk Kim void 3414c52cad2SJung-uk Kim AslCommonError2 ( 3424c52cad2SJung-uk Kim UINT8 Level, 343313a0c13SJung-uk Kim UINT16 MessageId, 3444c52cad2SJung-uk Kim UINT32 LineNumber, 3454c52cad2SJung-uk Kim UINT32 Column, 3464c52cad2SJung-uk Kim char *SourceLine, 3474c52cad2SJung-uk Kim char *Filename, 3484c52cad2SJung-uk Kim char *ExtraMessage); 3494c52cad2SJung-uk Kim 3504c52cad2SJung-uk Kim void 351fba7fc7eSJung-uk Kim AePrintException ( 352fba7fc7eSJung-uk Kim UINT32 FileId, 353fba7fc7eSJung-uk Kim ASL_ERROR_MSG *Enode, 354fba7fc7eSJung-uk Kim char *Header); 355fba7fc7eSJung-uk Kim 356fba7fc7eSJung-uk Kim void 357fba7fc7eSJung-uk Kim AePrintErrorLog ( 358fba7fc7eSJung-uk Kim UINT32 FileId); 359fba7fc7eSJung-uk Kim 360a9f12690SJung-uk Kim void 361a9f12690SJung-uk Kim AeClearErrorLog ( 362a9f12690SJung-uk Kim void); 363a9f12690SJung-uk Kim 364fba7fc7eSJung-uk Kim 365fba7fc7eSJung-uk Kim /* 366fba7fc7eSJung-uk Kim * asllisting - generate all "listing" type files 367fba7fc7eSJung-uk Kim */ 368fba7fc7eSJung-uk Kim void 369fba7fc7eSJung-uk Kim LsDoListings ( 370fba7fc7eSJung-uk Kim void); 371fba7fc7eSJung-uk Kim 372fba7fc7eSJung-uk Kim void 373fba7fc7eSJung-uk Kim LsWriteNodeToAsmListing ( 374fba7fc7eSJung-uk Kim ACPI_PARSE_OBJECT *Op); 375fba7fc7eSJung-uk Kim 376fba7fc7eSJung-uk Kim void 377fba7fc7eSJung-uk Kim LsWriteNode ( 378fba7fc7eSJung-uk Kim ACPI_PARSE_OBJECT *Op, 379fba7fc7eSJung-uk Kim UINT32 FileId); 380fba7fc7eSJung-uk Kim 381fba7fc7eSJung-uk Kim void 3821a39cfb0SJung-uk Kim LsDumpParseTree ( 3831a39cfb0SJung-uk Kim void); 384fba7fc7eSJung-uk Kim 385efcc2a30SJung-uk Kim 386efcc2a30SJung-uk Kim /* 3879c7c683cSJung-uk Kim * asllistsup - Listing file support utilities 3889c7c683cSJung-uk Kim */ 3899c7c683cSJung-uk Kim void 3909c7c683cSJung-uk Kim LsDumpAscii ( 3919c7c683cSJung-uk Kim UINT32 FileId, 3929c7c683cSJung-uk Kim UINT32 Count, 3939c7c683cSJung-uk Kim UINT8 *Buffer); 3949c7c683cSJung-uk Kim 3959c7c683cSJung-uk Kim void 3969c7c683cSJung-uk Kim LsDumpAsciiInComment ( 3979c7c683cSJung-uk Kim UINT32 FileId, 3989c7c683cSJung-uk Kim UINT32 Count, 3999c7c683cSJung-uk Kim UINT8 *Buffer); 4009c7c683cSJung-uk Kim 4019c7c683cSJung-uk Kim void 4029c7c683cSJung-uk Kim LsCheckException ( 4039c7c683cSJung-uk Kim UINT32 LineNumber, 4049c7c683cSJung-uk Kim UINT32 FileId); 4059c7c683cSJung-uk Kim 4069c7c683cSJung-uk Kim void 4079c7c683cSJung-uk Kim LsFlushListingBuffer ( 4089c7c683cSJung-uk Kim UINT32 FileId); 4099c7c683cSJung-uk Kim 4109c7c683cSJung-uk Kim void 4119c7c683cSJung-uk Kim LsWriteListingHexBytes ( 4129c7c683cSJung-uk Kim UINT8 *Buffer, 4139c7c683cSJung-uk Kim UINT32 Length, 4149c7c683cSJung-uk Kim UINT32 FileId); 4159c7c683cSJung-uk Kim 4169c7c683cSJung-uk Kim void 4179c7c683cSJung-uk Kim LsWriteSourceLines ( 4189c7c683cSJung-uk Kim UINT32 ToLineNumber, 4199c7c683cSJung-uk Kim UINT32 ToLogicalLineNumber, 4209c7c683cSJung-uk Kim UINT32 FileId); 4219c7c683cSJung-uk Kim 4229c7c683cSJung-uk Kim UINT32 4239c7c683cSJung-uk Kim LsWriteOneSourceLine ( 4249c7c683cSJung-uk Kim UINT32 FileId); 4259c7c683cSJung-uk Kim 4269c7c683cSJung-uk Kim void 4279c7c683cSJung-uk Kim LsPushNode ( 4289c7c683cSJung-uk Kim char *Filename); 4299c7c683cSJung-uk Kim 4309c7c683cSJung-uk Kim ASL_LISTING_NODE * 4319c7c683cSJung-uk Kim LsPopNode ( 4329c7c683cSJung-uk Kim void); 4339c7c683cSJung-uk Kim 4349c7c683cSJung-uk Kim 4359c7c683cSJung-uk Kim /* 436efcc2a30SJung-uk Kim * aslhex - generate all "hex" output files (C, ASM, ASL) 437efcc2a30SJung-uk Kim */ 438efcc2a30SJung-uk Kim void 439efcc2a30SJung-uk Kim HxDoHexOutput ( 440efcc2a30SJung-uk Kim void); 441efcc2a30SJung-uk Kim 442efcc2a30SJung-uk Kim 443fba7fc7eSJung-uk Kim /* 444fba7fc7eSJung-uk Kim * aslfold - constant folding 445fba7fc7eSJung-uk Kim */ 446fba7fc7eSJung-uk Kim ACPI_STATUS 447fba7fc7eSJung-uk Kim OpcAmlConstantWalk ( 448fba7fc7eSJung-uk Kim ACPI_PARSE_OBJECT *Op, 449fba7fc7eSJung-uk Kim UINT32 Level, 450fba7fc7eSJung-uk Kim void *Context); 451fba7fc7eSJung-uk Kim 452fba7fc7eSJung-uk Kim 453fba7fc7eSJung-uk Kim /* 454313a0c13SJung-uk Kim * aslmessages - exception strings 455313a0c13SJung-uk Kim */ 456313a0c13SJung-uk Kim const char * 457313a0c13SJung-uk Kim AeDecodeMessageId ( 458313a0c13SJung-uk Kim UINT16 MessageId); 459313a0c13SJung-uk Kim 460313a0c13SJung-uk Kim const char * 461313a0c13SJung-uk Kim AeDecodeExceptionLevel ( 462313a0c13SJung-uk Kim UINT8 Level); 463313a0c13SJung-uk Kim 464313a0c13SJung-uk Kim UINT16 465313a0c13SJung-uk Kim AeBuildFullExceptionCode ( 466313a0c13SJung-uk Kim UINT8 Level, 467313a0c13SJung-uk Kim UINT16 MessageId); 468313a0c13SJung-uk Kim 469313a0c13SJung-uk Kim /* 4709c7c683cSJung-uk Kim * asloffset - generate C offset file for BIOS support 4719c7c683cSJung-uk Kim */ 4729c7c683cSJung-uk Kim ACPI_STATUS 4739c7c683cSJung-uk Kim LsAmlOffsetWalk ( 4749c7c683cSJung-uk Kim ACPI_PARSE_OBJECT *Op, 4759c7c683cSJung-uk Kim UINT32 Level, 4769c7c683cSJung-uk Kim void *Context); 4779c7c683cSJung-uk Kim 4789c7c683cSJung-uk Kim void 4799c7c683cSJung-uk Kim LsDoOffsetTableHeader ( 4809c7c683cSJung-uk Kim UINT32 FileId); 4819c7c683cSJung-uk Kim 4829c7c683cSJung-uk Kim void 4839c7c683cSJung-uk Kim LsDoOffsetTableFooter ( 4849c7c683cSJung-uk Kim UINT32 FileId); 4859c7c683cSJung-uk Kim 4869c7c683cSJung-uk Kim 4879c7c683cSJung-uk Kim /* 488fba7fc7eSJung-uk Kim * aslopcodes - generate AML opcodes 489fba7fc7eSJung-uk Kim */ 490fba7fc7eSJung-uk Kim ACPI_STATUS 491fba7fc7eSJung-uk Kim OpcAmlOpcodeWalk ( 492fba7fc7eSJung-uk Kim ACPI_PARSE_OBJECT *Op, 493fba7fc7eSJung-uk Kim UINT32 Level, 494fba7fc7eSJung-uk Kim void *Context); 495fba7fc7eSJung-uk Kim 496fba7fc7eSJung-uk Kim ACPI_STATUS 497fba7fc7eSJung-uk Kim OpcAmlOpcodeUpdateWalk ( 498fba7fc7eSJung-uk Kim ACPI_PARSE_OBJECT *Op, 499fba7fc7eSJung-uk Kim UINT32 Level, 500fba7fc7eSJung-uk Kim void *Context); 501fba7fc7eSJung-uk Kim 502fba7fc7eSJung-uk Kim void 503fba7fc7eSJung-uk Kim OpcGenerateAmlOpcode ( 504fba7fc7eSJung-uk Kim ACPI_PARSE_OBJECT *Op); 505fba7fc7eSJung-uk Kim 506fba7fc7eSJung-uk Kim UINT32 507fba7fc7eSJung-uk Kim OpcSetOptimalIntegerSize ( 508fba7fc7eSJung-uk Kim ACPI_PARSE_OBJECT *Op); 509fba7fc7eSJung-uk Kim 510fba7fc7eSJung-uk Kim void 511fba7fc7eSJung-uk Kim OpcGetIntegerWidth ( 512fba7fc7eSJung-uk Kim ACPI_PARSE_OBJECT *Op); 513fba7fc7eSJung-uk Kim 514fba7fc7eSJung-uk Kim 515fba7fc7eSJung-uk Kim /* 516fba7fc7eSJung-uk Kim * asloperands - generate AML operands for the AML opcodes 517fba7fc7eSJung-uk Kim */ 518fba7fc7eSJung-uk Kim ACPI_PARSE_OBJECT * 519fba7fc7eSJung-uk Kim UtGetArg ( 520fba7fc7eSJung-uk Kim ACPI_PARSE_OBJECT *Op, 521fba7fc7eSJung-uk Kim UINT32 Argn); 522fba7fc7eSJung-uk Kim 523fba7fc7eSJung-uk Kim void 524fba7fc7eSJung-uk Kim OpnGenerateAmlOperands ( 525fba7fc7eSJung-uk Kim ACPI_PARSE_OBJECT *Op); 526fba7fc7eSJung-uk Kim 527fba7fc7eSJung-uk Kim void 528fba7fc7eSJung-uk Kim OpnDoPackage ( 529fba7fc7eSJung-uk Kim ACPI_PARSE_OBJECT *Op); 530fba7fc7eSJung-uk Kim 531fba7fc7eSJung-uk Kim 532fba7fc7eSJung-uk Kim /* 533fba7fc7eSJung-uk Kim * aslopt - optmization 534fba7fc7eSJung-uk Kim */ 535fba7fc7eSJung-uk Kim void 536fba7fc7eSJung-uk Kim OptOptimizeNamePath ( 537fba7fc7eSJung-uk Kim ACPI_PARSE_OBJECT *Op, 538fba7fc7eSJung-uk Kim UINT32 Flags, 539fba7fc7eSJung-uk Kim ACPI_WALK_STATE *WalkState, 540fba7fc7eSJung-uk Kim char *AmlNameString, 541fba7fc7eSJung-uk Kim ACPI_NAMESPACE_NODE *TargetNode); 542fba7fc7eSJung-uk Kim 543fba7fc7eSJung-uk Kim 544fba7fc7eSJung-uk Kim /* 545*f8146b88SJung-uk Kim * aslpld - ToPLD macro support 546*f8146b88SJung-uk Kim */ 547*f8146b88SJung-uk Kim void 548*f8146b88SJung-uk Kim OpcDoPld ( 549*f8146b88SJung-uk Kim ACPI_PARSE_OBJECT *Op); 550*f8146b88SJung-uk Kim 551*f8146b88SJung-uk Kim 552*f8146b88SJung-uk Kim /* 5531c0e1b6dSJung-uk Kim * aslprintf - Printf/Fprintf macros 5541c0e1b6dSJung-uk Kim */ 5551c0e1b6dSJung-uk Kim void 5561c0e1b6dSJung-uk Kim OpcDoPrintf ( 5571c0e1b6dSJung-uk Kim ACPI_PARSE_OBJECT *Op); 5581c0e1b6dSJung-uk Kim 5591c0e1b6dSJung-uk Kim void 5601c0e1b6dSJung-uk Kim OpcDoFprintf ( 5611c0e1b6dSJung-uk Kim ACPI_PARSE_OBJECT *Op); 5621c0e1b6dSJung-uk Kim 5631c0e1b6dSJung-uk Kim 5641c0e1b6dSJung-uk Kim /* 5651c0e1b6dSJung-uk Kim * aslprune - parse tree pruner 5661c0e1b6dSJung-uk Kim */ 5671c0e1b6dSJung-uk Kim void 5681c0e1b6dSJung-uk Kim AslPruneParseTree ( 5691c0e1b6dSJung-uk Kim UINT32 PruneDepth, 5701c0e1b6dSJung-uk Kim UINT32 Type); 5711c0e1b6dSJung-uk Kim 5721c0e1b6dSJung-uk Kim 5731c0e1b6dSJung-uk Kim /* 574fba7fc7eSJung-uk Kim * aslcodegen - code generation 575fba7fc7eSJung-uk Kim */ 576fba7fc7eSJung-uk Kim void 577fba7fc7eSJung-uk Kim CgGenerateAmlOutput ( 578fba7fc7eSJung-uk Kim void); 579fba7fc7eSJung-uk Kim 580fba7fc7eSJung-uk Kim 581fba7fc7eSJung-uk Kim /* 582a88e22b7SJung-uk Kim * aslfile 583a88e22b7SJung-uk Kim */ 584a88e22b7SJung-uk Kim void 585a88e22b7SJung-uk Kim FlOpenFile ( 586a88e22b7SJung-uk Kim UINT32 FileId, 587a88e22b7SJung-uk Kim char *Filename, 588a88e22b7SJung-uk Kim char *Mode); 589a88e22b7SJung-uk Kim 590a88e22b7SJung-uk Kim 591a88e22b7SJung-uk Kim /* 592fba7fc7eSJung-uk Kim * asllength - calculate/adjust AML package lengths 593fba7fc7eSJung-uk Kim */ 594fba7fc7eSJung-uk Kim ACPI_STATUS 595fba7fc7eSJung-uk Kim LnPackageLengthWalk ( 596fba7fc7eSJung-uk Kim ACPI_PARSE_OBJECT *Op, 597fba7fc7eSJung-uk Kim UINT32 Level, 598fba7fc7eSJung-uk Kim void *Context); 599fba7fc7eSJung-uk Kim 600fba7fc7eSJung-uk Kim ACPI_STATUS 601fba7fc7eSJung-uk Kim LnInitLengthsWalk ( 602fba7fc7eSJung-uk Kim ACPI_PARSE_OBJECT *Op, 603fba7fc7eSJung-uk Kim UINT32 Level, 604fba7fc7eSJung-uk Kim void *Context); 605fba7fc7eSJung-uk Kim 606fba7fc7eSJung-uk Kim void 607fba7fc7eSJung-uk Kim CgGenerateAmlLengths ( 608fba7fc7eSJung-uk Kim ACPI_PARSE_OBJECT *Op); 609fba7fc7eSJung-uk Kim 610fba7fc7eSJung-uk Kim 611fba7fc7eSJung-uk Kim /* 612fba7fc7eSJung-uk Kim * aslmap - opcode mappings and reserved method names 613fba7fc7eSJung-uk Kim */ 614fba7fc7eSJung-uk Kim ACPI_OBJECT_TYPE 615fba7fc7eSJung-uk Kim AslMapNamedOpcodeToDataType ( 616fba7fc7eSJung-uk Kim UINT16 Opcode); 617fba7fc7eSJung-uk Kim 618ca3cf4faSJung-uk Kim 619ca3cf4faSJung-uk Kim /* 620ca3cf4faSJung-uk Kim * aslpredef - ACPI predefined names support 621ca3cf4faSJung-uk Kim */ 622d052a1ccSJung-uk Kim BOOLEAN 623ca3cf4faSJung-uk Kim ApCheckForPredefinedMethod ( 624ca3cf4faSJung-uk Kim ACPI_PARSE_OBJECT *Op, 625ca3cf4faSJung-uk Kim ASL_METHOD_INFO *MethodInfo); 626ca3cf4faSJung-uk Kim 6278c8be05fSJung-uk Kim void 6288c8be05fSJung-uk Kim ApCheckPredefinedReturnValue ( 6298c8be05fSJung-uk Kim ACPI_PARSE_OBJECT *Op, 6308c8be05fSJung-uk Kim ASL_METHOD_INFO *MethodInfo); 6318c8be05fSJung-uk Kim 632ca3cf4faSJung-uk Kim UINT32 633ca3cf4faSJung-uk Kim ApCheckForPredefinedName ( 634ca3cf4faSJung-uk Kim ACPI_PARSE_OBJECT *Op, 635ca3cf4faSJung-uk Kim char *Name); 636ca3cf4faSJung-uk Kim 637ca3cf4faSJung-uk Kim void 638ca3cf4faSJung-uk Kim ApCheckForPredefinedObject ( 639ca3cf4faSJung-uk Kim ACPI_PARSE_OBJECT *Op, 640ca3cf4faSJung-uk Kim char *Name); 641ca3cf4faSJung-uk Kim 6429c48c75eSJung-uk Kim ACPI_STATUS 6439c48c75eSJung-uk Kim ApCheckObjectType ( 6449c48c75eSJung-uk Kim const char *PredefinedName, 6459c48c75eSJung-uk Kim ACPI_PARSE_OBJECT *Op, 6469c48c75eSJung-uk Kim UINT32 ExpectedBtypes, 6479c48c75eSJung-uk Kim UINT32 PackageIndex); 6489c48c75eSJung-uk Kim 649ca3cf4faSJung-uk Kim void 650ca3cf4faSJung-uk Kim ApDisplayReservedNames ( 651fba7fc7eSJung-uk Kim void); 652fba7fc7eSJung-uk Kim 653fba7fc7eSJung-uk Kim 654fba7fc7eSJung-uk Kim /* 6559c48c75eSJung-uk Kim * aslprepkg - ACPI predefined names support for packages 6569c48c75eSJung-uk Kim */ 6579c48c75eSJung-uk Kim void 6589c48c75eSJung-uk Kim ApCheckPackage ( 6599c48c75eSJung-uk Kim ACPI_PARSE_OBJECT *ParentOp, 6609c48c75eSJung-uk Kim const ACPI_PREDEFINED_INFO *Predefined); 6619c48c75eSJung-uk Kim 6629c48c75eSJung-uk Kim 6639c48c75eSJung-uk Kim /* 664fba7fc7eSJung-uk Kim * asltransform - parse tree transformations 665fba7fc7eSJung-uk Kim */ 666fba7fc7eSJung-uk Kim ACPI_STATUS 667*f8146b88SJung-uk Kim TrAmlTransformWalkBegin ( 668*f8146b88SJung-uk Kim ACPI_PARSE_OBJECT *Op, 669*f8146b88SJung-uk Kim UINT32 Level, 670*f8146b88SJung-uk Kim void *Context); 671*f8146b88SJung-uk Kim 672*f8146b88SJung-uk Kim ACPI_STATUS 673*f8146b88SJung-uk Kim TrAmlTransformWalkEnd ( 674fba7fc7eSJung-uk Kim ACPI_PARSE_OBJECT *Op, 675fba7fc7eSJung-uk Kim UINT32 Level, 676fba7fc7eSJung-uk Kim void *Context); 677fba7fc7eSJung-uk Kim 678fba7fc7eSJung-uk Kim 679fba7fc7eSJung-uk Kim /* 680fba7fc7eSJung-uk Kim * asltree - parse tree support 681fba7fc7eSJung-uk Kim */ 682fba7fc7eSJung-uk Kim ACPI_STATUS 683fba7fc7eSJung-uk Kim TrWalkParseTree ( 684fba7fc7eSJung-uk Kim ACPI_PARSE_OBJECT *Op, 685fba7fc7eSJung-uk Kim UINT32 Visitation, 686fba7fc7eSJung-uk Kim ASL_WALK_CALLBACK DescendingCallback, 687fba7fc7eSJung-uk Kim ASL_WALK_CALLBACK AscendingCallback, 688fba7fc7eSJung-uk Kim void *Context); 689fba7fc7eSJung-uk Kim 690*f8146b88SJung-uk Kim /* 691*f8146b88SJung-uk Kim * aslexternal - External opcode support 692*f8146b88SJung-uk Kim */ 693*f8146b88SJung-uk Kim ACPI_STATUS 694*f8146b88SJung-uk Kim ExAmlExternalWalkBegin ( 695*f8146b88SJung-uk Kim ACPI_PARSE_OBJECT *Op, 696*f8146b88SJung-uk Kim UINT32 Level, 697*f8146b88SJung-uk Kim void *Context); 698*f8146b88SJung-uk Kim 699*f8146b88SJung-uk Kim ACPI_STATUS 700*f8146b88SJung-uk Kim ExAmlExternalWalkEnd ( 701*f8146b88SJung-uk Kim ACPI_PARSE_OBJECT *Op, 702*f8146b88SJung-uk Kim UINT32 Level, 703*f8146b88SJung-uk Kim void *Context); 704*f8146b88SJung-uk Kim 705*f8146b88SJung-uk Kim void 706*f8146b88SJung-uk Kim ExDoExternal ( 707*f8146b88SJung-uk Kim ACPI_PARSE_OBJECT *Op); 708*f8146b88SJung-uk Kim 709fba7fc7eSJung-uk Kim /* Values for "Visitation" parameter above */ 710fba7fc7eSJung-uk Kim 711fba7fc7eSJung-uk Kim #define ASL_WALK_VISIT_DOWNWARD 0x01 712fba7fc7eSJung-uk Kim #define ASL_WALK_VISIT_UPWARD 0x02 713fba7fc7eSJung-uk Kim #define ASL_WALK_VISIT_TWICE (ASL_WALK_VISIT_DOWNWARD | ASL_WALK_VISIT_UPWARD) 714fba7fc7eSJung-uk Kim 715fba7fc7eSJung-uk Kim 716*f8146b88SJung-uk Kim void 717*f8146b88SJung-uk Kim TrSetParent ( 718*f8146b88SJung-uk Kim ACPI_PARSE_OBJECT *Op, 719*f8146b88SJung-uk Kim ACPI_PARSE_OBJECT *ParentOp); 720*f8146b88SJung-uk Kim 721fba7fc7eSJung-uk Kim ACPI_PARSE_OBJECT * 722fba7fc7eSJung-uk Kim TrAllocateNode ( 723fba7fc7eSJung-uk Kim UINT32 ParseOpcode); 724fba7fc7eSJung-uk Kim 725fba7fc7eSJung-uk Kim void 7267cf3e94aSJung-uk Kim TrPrintNodeCompileFlags ( 7277cf3e94aSJung-uk Kim UINT32 Flags); 7287cf3e94aSJung-uk Kim 7297cf3e94aSJung-uk Kim void 730fba7fc7eSJung-uk Kim TrReleaseNode ( 731fba7fc7eSJung-uk Kim ACPI_PARSE_OBJECT *Op); 732fba7fc7eSJung-uk Kim 733fba7fc7eSJung-uk Kim ACPI_PARSE_OBJECT * 734fba7fc7eSJung-uk Kim TrUpdateNode ( 735fba7fc7eSJung-uk Kim UINT32 ParseOpcode, 736fba7fc7eSJung-uk Kim ACPI_PARSE_OBJECT *Op); 737fba7fc7eSJung-uk Kim 738fba7fc7eSJung-uk Kim ACPI_PARSE_OBJECT * 739fba7fc7eSJung-uk Kim TrCreateNode ( 740fba7fc7eSJung-uk Kim UINT32 ParseOpcode, 741fba7fc7eSJung-uk Kim UINT32 NumChildren, 742fba7fc7eSJung-uk Kim ...); 743fba7fc7eSJung-uk Kim 744fba7fc7eSJung-uk Kim ACPI_PARSE_OBJECT * 745fba7fc7eSJung-uk Kim TrCreateLeafNode ( 746fba7fc7eSJung-uk Kim UINT32 ParseOpcode); 747fba7fc7eSJung-uk Kim 748fba7fc7eSJung-uk Kim ACPI_PARSE_OBJECT * 7497cf3e94aSJung-uk Kim TrCreateNullTarget ( 7507cf3e94aSJung-uk Kim void); 7517cf3e94aSJung-uk Kim 7527cf3e94aSJung-uk Kim ACPI_PARSE_OBJECT * 7531c0e1b6dSJung-uk Kim TrCreateAssignmentNode ( 7541c0e1b6dSJung-uk Kim ACPI_PARSE_OBJECT *Target, 7551c0e1b6dSJung-uk Kim ACPI_PARSE_OBJECT *Source); 7561c0e1b6dSJung-uk Kim 7571c0e1b6dSJung-uk Kim ACPI_PARSE_OBJECT * 7581c0e1b6dSJung-uk Kim TrCreateTargetOperand ( 7591c0e1b6dSJung-uk Kim ACPI_PARSE_OBJECT *OriginalOp, 7601c0e1b6dSJung-uk Kim ACPI_PARSE_OBJECT *ParentOp); 7611c0e1b6dSJung-uk Kim 7621c0e1b6dSJung-uk Kim ACPI_PARSE_OBJECT * 763fba7fc7eSJung-uk Kim TrCreateValuedLeafNode ( 764fba7fc7eSJung-uk Kim UINT32 ParseOpcode, 7659a179dd8SJung-uk Kim UINT64 Value); 766fba7fc7eSJung-uk Kim 767fba7fc7eSJung-uk Kim ACPI_PARSE_OBJECT * 7680b94ba42SJung-uk Kim TrCreateConstantLeafNode ( 7690b94ba42SJung-uk Kim UINT32 ParseOpcode); 7700b94ba42SJung-uk Kim 7710b94ba42SJung-uk Kim ACPI_PARSE_OBJECT * 772fba7fc7eSJung-uk Kim TrLinkChildren ( 773fba7fc7eSJung-uk Kim ACPI_PARSE_OBJECT *Op, 774fba7fc7eSJung-uk Kim UINT32 NumChildren, 775fba7fc7eSJung-uk Kim ...); 776fba7fc7eSJung-uk Kim 777fba7fc7eSJung-uk Kim void 778fba7fc7eSJung-uk Kim TrSetEndLineNumber ( 779fba7fc7eSJung-uk Kim ACPI_PARSE_OBJECT *Op); 780fba7fc7eSJung-uk Kim 781fba7fc7eSJung-uk Kim void 782*f8146b88SJung-uk Kim TrSetCurrentFilename ( 783*f8146b88SJung-uk Kim ACPI_PARSE_OBJECT *Op); 784*f8146b88SJung-uk Kim 785*f8146b88SJung-uk Kim void 786fba7fc7eSJung-uk Kim TrWalkTree ( 787fba7fc7eSJung-uk Kim void); 788fba7fc7eSJung-uk Kim 789fba7fc7eSJung-uk Kim ACPI_PARSE_OBJECT * 790fba7fc7eSJung-uk Kim TrLinkPeerNode ( 791fba7fc7eSJung-uk Kim ACPI_PARSE_OBJECT *Op1, 792fba7fc7eSJung-uk Kim ACPI_PARSE_OBJECT *Op2); 793fba7fc7eSJung-uk Kim 794fba7fc7eSJung-uk Kim ACPI_PARSE_OBJECT * 795fba7fc7eSJung-uk Kim TrLinkChildNode ( 796fba7fc7eSJung-uk Kim ACPI_PARSE_OBJECT *Op1, 797fba7fc7eSJung-uk Kim ACPI_PARSE_OBJECT *Op2); 798fba7fc7eSJung-uk Kim 799fba7fc7eSJung-uk Kim ACPI_PARSE_OBJECT * 800fba7fc7eSJung-uk Kim TrSetNodeFlags ( 801fba7fc7eSJung-uk Kim ACPI_PARSE_OBJECT *Op, 802fba7fc7eSJung-uk Kim UINT32 Flags); 803fba7fc7eSJung-uk Kim 804fba7fc7eSJung-uk Kim ACPI_PARSE_OBJECT * 8051df130f1SJung-uk Kim TrSetNodeAmlLength ( 8061df130f1SJung-uk Kim ACPI_PARSE_OBJECT *Op, 8071df130f1SJung-uk Kim UINT32 Length); 8081df130f1SJung-uk Kim 8091df130f1SJung-uk Kim ACPI_PARSE_OBJECT * 810fba7fc7eSJung-uk Kim TrLinkPeerNodes ( 811fba7fc7eSJung-uk Kim UINT32 NumPeers, 812fba7fc7eSJung-uk Kim ...); 813fba7fc7eSJung-uk Kim 814fba7fc7eSJung-uk Kim 815fba7fc7eSJung-uk Kim /* 816fba7fc7eSJung-uk Kim * aslfiles - File I/O support 817fba7fc7eSJung-uk Kim */ 818fba7fc7eSJung-uk Kim void 819d6dd1baeSJung-uk Kim FlAddIncludeDirectory ( 820d6dd1baeSJung-uk Kim char *Dir); 821d6dd1baeSJung-uk Kim 822a7a3b383SJung-uk Kim char * 823a7a3b383SJung-uk Kim FlMergePathnames ( 824a7a3b383SJung-uk Kim char *PrefixDir, 825a7a3b383SJung-uk Kim char *FilePathname); 826a7a3b383SJung-uk Kim 827d6dd1baeSJung-uk Kim void 82853289f6aSNate Lawson FlOpenIncludeFile ( 82953289f6aSNate Lawson ACPI_PARSE_OBJECT *Op); 83053289f6aSNate Lawson 83153289f6aSNate Lawson void 83253289f6aSNate Lawson FlFileError ( 83353289f6aSNate Lawson UINT32 FileId, 83453289f6aSNate Lawson UINT8 ErrorId); 83553289f6aSNate Lawson 8363f5e024cSJung-uk Kim UINT32 8373f5e024cSJung-uk Kim FlGetFileSize ( 8383f5e024cSJung-uk Kim UINT32 FileId); 8393f5e024cSJung-uk Kim 84053289f6aSNate Lawson ACPI_STATUS 84153289f6aSNate Lawson FlReadFile ( 84253289f6aSNate Lawson UINT32 FileId, 84353289f6aSNate Lawson void *Buffer, 84453289f6aSNate Lawson UINT32 Length); 84553289f6aSNate Lawson 84653289f6aSNate Lawson void 84753289f6aSNate Lawson FlWriteFile ( 84853289f6aSNate Lawson UINT32 FileId, 84953289f6aSNate Lawson void *Buffer, 85053289f6aSNate Lawson UINT32 Length); 85153289f6aSNate Lawson 85253289f6aSNate Lawson void 85353289f6aSNate Lawson FlSeekFile ( 85453289f6aSNate Lawson UINT32 FileId, 85553289f6aSNate Lawson long Offset); 85653289f6aSNate Lawson 85753289f6aSNate Lawson void 85853289f6aSNate Lawson FlCloseFile ( 85953289f6aSNate Lawson UINT32 FileId); 86053289f6aSNate Lawson 86153289f6aSNate Lawson void 86253289f6aSNate Lawson FlPrintFile ( 86353289f6aSNate Lawson UINT32 FileId, 86453289f6aSNate Lawson char *Format, 86553289f6aSNate Lawson ...); 86653289f6aSNate Lawson 86753289f6aSNate Lawson void 868042ff955SJung-uk Kim FlDeleteFile ( 869042ff955SJung-uk Kim UINT32 FileId); 870042ff955SJung-uk Kim 871042ff955SJung-uk Kim void 87253289f6aSNate Lawson FlSetLineNumber ( 873eef1b955SJung-uk Kim UINT32 LineNumber); 874eef1b955SJung-uk Kim 875eef1b955SJung-uk Kim void 876eef1b955SJung-uk Kim FlSetFilename ( 877eef1b955SJung-uk Kim char *Filename); 87853289f6aSNate Lawson 87953289f6aSNate Lawson ACPI_STATUS 88053289f6aSNate Lawson FlOpenInputFile ( 88153289f6aSNate Lawson char *InputFilename); 88253289f6aSNate Lawson 88353289f6aSNate Lawson ACPI_STATUS 88453289f6aSNate Lawson FlOpenAmlOutputFile ( 88553289f6aSNate Lawson char *InputFilename); 88653289f6aSNate Lawson 88753289f6aSNate Lawson ACPI_STATUS 88853289f6aSNate Lawson FlOpenMiscOutputFiles ( 88953289f6aSNate Lawson char *InputFilename); 89053289f6aSNate Lawson 891313a0c13SJung-uk Kim /* 892313a0c13SJung-uk Kim * aslhwmap - hardware map summary 893313a0c13SJung-uk Kim */ 894313a0c13SJung-uk Kim void 895313a0c13SJung-uk Kim MpEmitMappingInfo ( 896313a0c13SJung-uk Kim void); 897313a0c13SJung-uk Kim 89853289f6aSNate Lawson 899fba7fc7eSJung-uk Kim /* 900fba7fc7eSJung-uk Kim * asload - load namespace in prep for cross reference 901fba7fc7eSJung-uk Kim */ 90253289f6aSNate Lawson ACPI_STATUS 90353289f6aSNate Lawson LdLoadNamespace ( 90453289f6aSNate Lawson ACPI_PARSE_OBJECT *RootOp); 90553289f6aSNate Lawson 90653289f6aSNate Lawson 907fba7fc7eSJung-uk Kim /* 908efcc2a30SJung-uk Kim * asllookup - namespace lookup functions 909fba7fc7eSJung-uk Kim */ 9101a39cfb0SJung-uk Kim void 9111a39cfb0SJung-uk Kim LkFindUnreferencedObjects ( 9121a39cfb0SJung-uk Kim void); 9131a39cfb0SJung-uk Kim 914a9d8d09cSJung-uk Kim /* 915a9d8d09cSJung-uk Kim * aslmain - startup 916a9d8d09cSJung-uk Kim */ 917a9d8d09cSJung-uk Kim void 918a9d8d09cSJung-uk Kim Usage ( 919a9d8d09cSJung-uk Kim void); 920a9d8d09cSJung-uk Kim 921a9d8d09cSJung-uk Kim void 922a9d8d09cSJung-uk Kim AslFilenameHelp ( 923a9d8d09cSJung-uk Kim void); 924a9d8d09cSJung-uk Kim 925efcc2a30SJung-uk Kim 926efcc2a30SJung-uk Kim /* 927efcc2a30SJung-uk Kim * aslnamesp - namespace output file generation 928efcc2a30SJung-uk Kim */ 92953289f6aSNate Lawson ACPI_STATUS 930efcc2a30SJung-uk Kim NsDisplayNamespace ( 93153289f6aSNate Lawson void); 93253289f6aSNate Lawson 93342fecd12SJung-uk Kim void 934efcc2a30SJung-uk Kim NsSetupNamespaceListing ( 93542fecd12SJung-uk Kim void *Handle); 93642fecd12SJung-uk Kim 937a9d8d09cSJung-uk Kim /* 938a9d8d09cSJung-uk Kim * asloptions - command line processing 939a9d8d09cSJung-uk Kim */ 940a9d8d09cSJung-uk Kim int 941a9d8d09cSJung-uk Kim AslCommandLine ( 942a9d8d09cSJung-uk Kim int argc, 943a9d8d09cSJung-uk Kim char **argv); 94453289f6aSNate Lawson 945fba7fc7eSJung-uk Kim /* 946efcc2a30SJung-uk Kim * aslxref - namespace cross reference 947efcc2a30SJung-uk Kim */ 948efcc2a30SJung-uk Kim ACPI_STATUS 949efcc2a30SJung-uk Kim XfCrossReferenceNamespace ( 950efcc2a30SJung-uk Kim void); 951efcc2a30SJung-uk Kim 952efcc2a30SJung-uk Kim 953efcc2a30SJung-uk Kim /* 954*f8146b88SJung-uk Kim * aslxrefout 955*f8146b88SJung-uk Kim */ 956*f8146b88SJung-uk Kim void 957*f8146b88SJung-uk Kim OtPrintHeaders ( 958*f8146b88SJung-uk Kim char *Message); 959*f8146b88SJung-uk Kim 960*f8146b88SJung-uk Kim void 961*f8146b88SJung-uk Kim OtCreateXrefFile ( 962*f8146b88SJung-uk Kim void); 963*f8146b88SJung-uk Kim 964*f8146b88SJung-uk Kim void 965*f8146b88SJung-uk Kim OtXrefWalkPart1 ( 966*f8146b88SJung-uk Kim ACPI_PARSE_OBJECT *Op, 967*f8146b88SJung-uk Kim UINT32 Level, 968*f8146b88SJung-uk Kim ASL_METHOD_INFO *MethodInfo); 969*f8146b88SJung-uk Kim 970*f8146b88SJung-uk Kim 971*f8146b88SJung-uk Kim /* 972fba7fc7eSJung-uk Kim * aslutils - common compiler utilites 973fba7fc7eSJung-uk Kim */ 974fba7fc7eSJung-uk Kim void 975fba7fc7eSJung-uk Kim DbgPrint ( 976fba7fc7eSJung-uk Kim UINT32 Type, 977fba7fc7eSJung-uk Kim char *Format, 978fba7fc7eSJung-uk Kim ...); 97953289f6aSNate Lawson 980fba7fc7eSJung-uk Kim /* Type values for above */ 981fba7fc7eSJung-uk Kim 982fba7fc7eSJung-uk Kim #define ASL_DEBUG_OUTPUT 0 983fba7fc7eSJung-uk Kim #define ASL_PARSE_OUTPUT 1 984fba7fc7eSJung-uk Kim #define ASL_TREE_OUTPUT 2 98553289f6aSNate Lawson 986*f8146b88SJung-uk Kim UINT8 987*f8146b88SJung-uk Kim UtIsBigEndianMachine ( 988*f8146b88SJung-uk Kim void); 989*f8146b88SJung-uk Kim 990*f8146b88SJung-uk Kim BOOLEAN 991*f8146b88SJung-uk Kim UtQueryForOverwrite ( 992*f8146b88SJung-uk Kim char *Pathname); 993*f8146b88SJung-uk Kim 994*f8146b88SJung-uk Kim void 995*f8146b88SJung-uk Kim UtDumpStringOp ( 996*f8146b88SJung-uk Kim ACPI_PARSE_OBJECT *Op, 997*f8146b88SJung-uk Kim UINT32 Level); 998*f8146b88SJung-uk Kim 999*f8146b88SJung-uk Kim void 1000*f8146b88SJung-uk Kim UtDumpIntegerOp ( 1001*f8146b88SJung-uk Kim ACPI_PARSE_OBJECT *Op, 1002*f8146b88SJung-uk Kim UINT32 Level, 1003*f8146b88SJung-uk Kim UINT32 IntegerLength); 1004*f8146b88SJung-uk Kim 1005*f8146b88SJung-uk Kim void 1006*f8146b88SJung-uk Kim UtDumpBasicOp ( 1007*f8146b88SJung-uk Kim ACPI_PARSE_OBJECT *Op, 1008*f8146b88SJung-uk Kim UINT32 Level); 1009*f8146b88SJung-uk Kim 101053289f6aSNate Lawson void 1011a88e22b7SJung-uk Kim UtDisplaySupportedTables ( 1012a88e22b7SJung-uk Kim void); 1013a88e22b7SJung-uk Kim 1014a88e22b7SJung-uk Kim void 101553289f6aSNate Lawson UtDisplayConstantOpcodes ( 101653289f6aSNate Lawson void); 101753289f6aSNate Lawson 1018fba7fc7eSJung-uk Kim UINT8 101953289f6aSNate Lawson UtBeginEvent ( 102053289f6aSNate Lawson char *Name); 102153289f6aSNate Lawson 102253289f6aSNate Lawson void 102353289f6aSNate Lawson UtEndEvent ( 1024fba7fc7eSJung-uk Kim UINT8 Event); 102553289f6aSNate Lawson 102653289f6aSNate Lawson void * 102753289f6aSNate Lawson UtLocalCalloc ( 102853289f6aSNate Lawson UINT32 Size); 102953289f6aSNate Lawson 103053289f6aSNate Lawson void 103153289f6aSNate Lawson UtDisplaySummary ( 103253289f6aSNate Lawson UINT32 FileId); 103353289f6aSNate Lawson 103453289f6aSNate Lawson void 103553289f6aSNate Lawson UtConvertByteToHex ( 103653289f6aSNate Lawson UINT8 RawByte, 103753289f6aSNate Lawson UINT8 *Buffer); 103853289f6aSNate Lawson 103953289f6aSNate Lawson void 104053289f6aSNate Lawson UtConvertByteToAsmHex ( 104153289f6aSNate Lawson UINT8 RawByte, 104253289f6aSNate Lawson UINT8 *Buffer); 104353289f6aSNate Lawson 104453289f6aSNate Lawson char * 104553289f6aSNate Lawson UtGetOpName ( 104653289f6aSNate Lawson UINT32 ParseOpcode); 104753289f6aSNate Lawson 104853289f6aSNate Lawson void 104953289f6aSNate Lawson UtSetParseOpName ( 105053289f6aSNate Lawson ACPI_PARSE_OBJECT *Op); 105153289f6aSNate Lawson 105253289f6aSNate Lawson char * 1053313a0c13SJung-uk Kim UtStringCacheCalloc ( 105453289f6aSNate Lawson UINT32 Length); 105553289f6aSNate Lawson 1056042ff955SJung-uk Kim void 1057042ff955SJung-uk Kim UtExpandLineBuffers ( 1058042ff955SJung-uk Kim void); 1059042ff955SJung-uk Kim 1060313a0c13SJung-uk Kim void 1061313a0c13SJung-uk Kim UtFreeLineBuffers ( 1062313a0c13SJung-uk Kim void); 1063313a0c13SJung-uk Kim 106453289f6aSNate Lawson ACPI_STATUS 106553289f6aSNate Lawson UtInternalizeName ( 106653289f6aSNate Lawson char *ExternalName, 106753289f6aSNate Lawson char **ConvertedName); 106853289f6aSNate Lawson 106953289f6aSNate Lawson void 107053289f6aSNate Lawson UtAttachNamepathToOwner ( 107153289f6aSNate Lawson ACPI_PARSE_OBJECT *Op, 107253289f6aSNate Lawson ACPI_PARSE_OBJECT *NameNode); 107353289f6aSNate Lawson 107453289f6aSNate Lawson ACPI_PARSE_OBJECT * 107553289f6aSNate Lawson UtCheckIntegerRange ( 107653289f6aSNate Lawson ACPI_PARSE_OBJECT *Op, 107753289f6aSNate Lawson UINT32 LowValue, 107853289f6aSNate Lawson UINT32 HighValue); 107953289f6aSNate Lawson 10809a179dd8SJung-uk Kim UINT64 108153289f6aSNate Lawson UtDoConstant ( 108253289f6aSNate Lawson char *String); 108353289f6aSNate Lawson 1084d052a1ccSJung-uk Kim 1085d244b227SJung-uk Kim /* 1086d244b227SJung-uk Kim * asluuid - UUID support 1087d244b227SJung-uk Kim */ 1088d244b227SJung-uk Kim ACPI_STATUS 1089d244b227SJung-uk Kim AuValidateUuid ( 1090d244b227SJung-uk Kim char *InString); 1091d244b227SJung-uk Kim 1092d244b227SJung-uk Kim ACPI_STATUS 1093d244b227SJung-uk Kim AuConvertUuidToString ( 1094d244b227SJung-uk Kim char *UuIdBuffer, 1095d244b227SJung-uk Kim char *OutString); 109653289f6aSNate Lawson 109753289f6aSNate Lawson /* 1098fba7fc7eSJung-uk Kim * aslresource - Resource template generation utilities 109953289f6aSNate Lawson */ 11003f5e024cSJung-uk Kim void 11013f5e024cSJung-uk Kim RsSmallAddressCheck ( 11023f5e024cSJung-uk Kim UINT8 Type, 11033f5e024cSJung-uk Kim UINT32 Minimum, 11043f5e024cSJung-uk Kim UINT32 Maximum, 11053f5e024cSJung-uk Kim UINT32 Length, 11063f5e024cSJung-uk Kim UINT32 Alignment, 11073f5e024cSJung-uk Kim ACPI_PARSE_OBJECT *MinOp, 11083f5e024cSJung-uk Kim ACPI_PARSE_OBJECT *MaxOp, 11093f5e024cSJung-uk Kim ACPI_PARSE_OBJECT *LengthOp, 11103c1812acSJung-uk Kim ACPI_PARSE_OBJECT *AlignOp, 11113c1812acSJung-uk Kim ACPI_PARSE_OBJECT *Op); 11123f5e024cSJung-uk Kim 11133f5e024cSJung-uk Kim void 11143f5e024cSJung-uk Kim RsLargeAddressCheck ( 11153f5e024cSJung-uk Kim UINT64 Minimum, 11163f5e024cSJung-uk Kim UINT64 Maximum, 11173f5e024cSJung-uk Kim UINT64 Length, 11183f5e024cSJung-uk Kim UINT64 Granularity, 11193f5e024cSJung-uk Kim UINT8 Flags, 11203f5e024cSJung-uk Kim ACPI_PARSE_OBJECT *MinOp, 11213f5e024cSJung-uk Kim ACPI_PARSE_OBJECT *MaxOp, 11223f5e024cSJung-uk Kim ACPI_PARSE_OBJECT *LengthOp, 11233c1812acSJung-uk Kim ACPI_PARSE_OBJECT *GranOp, 11243c1812acSJung-uk Kim ACPI_PARSE_OBJECT *Op); 11253f5e024cSJung-uk Kim 11263f5e024cSJung-uk Kim UINT16 11273f5e024cSJung-uk Kim RsGetStringDataLength ( 11283f5e024cSJung-uk Kim ACPI_PARSE_OBJECT *InitializerOp); 11293f5e024cSJung-uk Kim 113053289f6aSNate Lawson ASL_RESOURCE_NODE * 113153289f6aSNate Lawson RsAllocateResourceNode ( 113253289f6aSNate Lawson UINT32 Size); 113353289f6aSNate Lawson 113453289f6aSNate Lawson void 11353f0275a0SJung-uk Kim RsCreateResourceField ( 113653289f6aSNate Lawson ACPI_PARSE_OBJECT *Op, 113753289f6aSNate Lawson char *Name, 113853289f6aSNate Lawson UINT32 ByteOffset, 11393f0275a0SJung-uk Kim UINT32 BitOffset, 11403f0275a0SJung-uk Kim UINT32 BitLength); 114153289f6aSNate Lawson 114253289f6aSNate Lawson void 114353289f6aSNate Lawson RsSetFlagBits ( 114453289f6aSNate Lawson UINT8 *Flags, 114553289f6aSNate Lawson ACPI_PARSE_OBJECT *Op, 114653289f6aSNate Lawson UINT8 Position, 114753289f6aSNate Lawson UINT8 DefaultBit); 114853289f6aSNate Lawson 11493f0275a0SJung-uk Kim void 11503f0275a0SJung-uk Kim RsSetFlagBits16 ( 11513f0275a0SJung-uk Kim UINT16 *Flags, 11523f0275a0SJung-uk Kim ACPI_PARSE_OBJECT *Op, 11533f0275a0SJung-uk Kim UINT8 Position, 11543f0275a0SJung-uk Kim UINT8 DefaultBit); 11553f0275a0SJung-uk Kim 115653289f6aSNate Lawson ACPI_PARSE_OBJECT * 115753289f6aSNate Lawson RsCompleteNodeAndGetNext ( 115853289f6aSNate Lawson ACPI_PARSE_OBJECT *Op); 115953289f6aSNate Lawson 1160fba7fc7eSJung-uk Kim void 1161fba7fc7eSJung-uk Kim RsCheckListForDuplicates ( 1162fba7fc7eSJung-uk Kim ACPI_PARSE_OBJECT *Op); 1163fba7fc7eSJung-uk Kim 116453289f6aSNate Lawson ASL_RESOURCE_NODE * 116553289f6aSNate Lawson RsDoOneResourceDescriptor ( 1166313a0c13SJung-uk Kim ASL_RESOURCE_INFO *Info, 116753289f6aSNate Lawson UINT8 *State); 116853289f6aSNate Lawson 1169fba7fc7eSJung-uk Kim /* Values for State above */ 1170fba7fc7eSJung-uk Kim 117153289f6aSNate Lawson #define ACPI_RSTATE_NORMAL 0 117253289f6aSNate Lawson #define ACPI_RSTATE_START_DEPENDENT 1 117353289f6aSNate Lawson #define ACPI_RSTATE_DEPENDENT_LIST 2 117453289f6aSNate Lawson 117553289f6aSNate Lawson UINT32 117653289f6aSNate Lawson RsLinkDescriptorChain ( 117753289f6aSNate Lawson ASL_RESOURCE_NODE **PreviousRnode, 117853289f6aSNate Lawson ASL_RESOURCE_NODE *Rnode); 117953289f6aSNate Lawson 1180fba7fc7eSJung-uk Kim void 1181fba7fc7eSJung-uk Kim RsDoResourceTemplate ( 1182fba7fc7eSJung-uk Kim ACPI_PARSE_OBJECT *Op); 1183fba7fc7eSJung-uk Kim 118453289f6aSNate Lawson 118553289f6aSNate Lawson /* 11863f5e024cSJung-uk Kim * aslrestype1 - Miscellaneous Small descriptors 118753289f6aSNate Lawson */ 118853289f6aSNate Lawson ASL_RESOURCE_NODE * 11891a39cfb0SJung-uk Kim RsDoEndTagDescriptor ( 1190313a0c13SJung-uk Kim ASL_RESOURCE_INFO *Info); 11911a39cfb0SJung-uk Kim 11921a39cfb0SJung-uk Kim ASL_RESOURCE_NODE * 119353289f6aSNate Lawson RsDoEndDependentDescriptor ( 1194313a0c13SJung-uk Kim ASL_RESOURCE_INFO *Info); 119553289f6aSNate Lawson 119653289f6aSNate Lawson ASL_RESOURCE_NODE * 119753289f6aSNate Lawson RsDoMemory24Descriptor ( 1198313a0c13SJung-uk Kim ASL_RESOURCE_INFO *Info); 119953289f6aSNate Lawson 120053289f6aSNate Lawson ASL_RESOURCE_NODE * 120153289f6aSNate Lawson RsDoMemory32Descriptor ( 1202313a0c13SJung-uk Kim ASL_RESOURCE_INFO *Info); 120353289f6aSNate Lawson 120453289f6aSNate Lawson ASL_RESOURCE_NODE * 120553289f6aSNate Lawson RsDoMemory32FixedDescriptor ( 1206313a0c13SJung-uk Kim ASL_RESOURCE_INFO *Info); 120753289f6aSNate Lawson 120853289f6aSNate Lawson ASL_RESOURCE_NODE * 120953289f6aSNate Lawson RsDoStartDependentDescriptor ( 1210313a0c13SJung-uk Kim ASL_RESOURCE_INFO *Info); 121153289f6aSNate Lawson 121253289f6aSNate Lawson ASL_RESOURCE_NODE * 121353289f6aSNate Lawson RsDoStartDependentNoPriDescriptor ( 1214313a0c13SJung-uk Kim ASL_RESOURCE_INFO *Info); 121553289f6aSNate Lawson 121653289f6aSNate Lawson ASL_RESOURCE_NODE * 121753289f6aSNate Lawson RsDoVendorSmallDescriptor ( 1218313a0c13SJung-uk Kim ASL_RESOURCE_INFO *Info); 121953289f6aSNate Lawson 122053289f6aSNate Lawson 122153289f6aSNate Lawson /* 12223f5e024cSJung-uk Kim * aslrestype1i - I/O-related Small descriptors 12233f5e024cSJung-uk Kim */ 12243f5e024cSJung-uk Kim ASL_RESOURCE_NODE * 12253f5e024cSJung-uk Kim RsDoDmaDescriptor ( 1226313a0c13SJung-uk Kim ASL_RESOURCE_INFO *Info); 12273f5e024cSJung-uk Kim 12283f5e024cSJung-uk Kim ASL_RESOURCE_NODE * 12293f0275a0SJung-uk Kim RsDoFixedDmaDescriptor ( 1230313a0c13SJung-uk Kim ASL_RESOURCE_INFO *Info); 12313f0275a0SJung-uk Kim 12323f0275a0SJung-uk Kim ASL_RESOURCE_NODE * 12333f5e024cSJung-uk Kim RsDoFixedIoDescriptor ( 1234313a0c13SJung-uk Kim ASL_RESOURCE_INFO *Info); 12353f5e024cSJung-uk Kim 12363f5e024cSJung-uk Kim ASL_RESOURCE_NODE * 12373f5e024cSJung-uk Kim RsDoIoDescriptor ( 1238313a0c13SJung-uk Kim ASL_RESOURCE_INFO *Info); 12393f5e024cSJung-uk Kim 12403f5e024cSJung-uk Kim ASL_RESOURCE_NODE * 12413f5e024cSJung-uk Kim RsDoIrqDescriptor ( 1242313a0c13SJung-uk Kim ASL_RESOURCE_INFO *Info); 12433f5e024cSJung-uk Kim 12443f5e024cSJung-uk Kim ASL_RESOURCE_NODE * 12453f5e024cSJung-uk Kim RsDoIrqNoFlagsDescriptor ( 1246313a0c13SJung-uk Kim ASL_RESOURCE_INFO *Info); 12473f5e024cSJung-uk Kim 12483f5e024cSJung-uk Kim 12493f5e024cSJung-uk Kim /* 12503f5e024cSJung-uk Kim * aslrestype2 - Large resource descriptors 125153289f6aSNate Lawson */ 1252fba7fc7eSJung-uk Kim ASL_RESOURCE_NODE * 1253fba7fc7eSJung-uk Kim RsDoInterruptDescriptor ( 1254313a0c13SJung-uk Kim ASL_RESOURCE_INFO *Info); 125553289f6aSNate Lawson 125653289f6aSNate Lawson ASL_RESOURCE_NODE * 12573f5e024cSJung-uk Kim RsDoVendorLargeDescriptor ( 1258313a0c13SJung-uk Kim ASL_RESOURCE_INFO *Info); 12593f5e024cSJung-uk Kim 12603f5e024cSJung-uk Kim ASL_RESOURCE_NODE * 12613f5e024cSJung-uk Kim RsDoGeneralRegisterDescriptor ( 1262313a0c13SJung-uk Kim ASL_RESOURCE_INFO *Info); 12633f5e024cSJung-uk Kim 12643f0275a0SJung-uk Kim ASL_RESOURCE_NODE * 12653f0275a0SJung-uk Kim RsDoGpioIntDescriptor ( 1266313a0c13SJung-uk Kim ASL_RESOURCE_INFO *Info); 12673f0275a0SJung-uk Kim 12683f0275a0SJung-uk Kim ASL_RESOURCE_NODE * 12693f0275a0SJung-uk Kim RsDoGpioIoDescriptor ( 1270313a0c13SJung-uk Kim ASL_RESOURCE_INFO *Info); 12713f0275a0SJung-uk Kim 12723f0275a0SJung-uk Kim ASL_RESOURCE_NODE * 12733f0275a0SJung-uk Kim RsDoI2cSerialBusDescriptor ( 1274313a0c13SJung-uk Kim ASL_RESOURCE_INFO *Info); 12753f0275a0SJung-uk Kim 12763f0275a0SJung-uk Kim ASL_RESOURCE_NODE * 12773f0275a0SJung-uk Kim RsDoSpiSerialBusDescriptor ( 1278313a0c13SJung-uk Kim ASL_RESOURCE_INFO *Info); 12793f0275a0SJung-uk Kim 12803f0275a0SJung-uk Kim ASL_RESOURCE_NODE * 12813f0275a0SJung-uk Kim RsDoUartSerialBusDescriptor ( 1282313a0c13SJung-uk Kim ASL_RESOURCE_INFO *Info); 12833f5e024cSJung-uk Kim 12843f5e024cSJung-uk Kim /* 12853f5e024cSJung-uk Kim * aslrestype2d - DWord address descriptors 12863f5e024cSJung-uk Kim */ 12873f5e024cSJung-uk Kim ASL_RESOURCE_NODE * 128853289f6aSNate Lawson RsDoDwordIoDescriptor ( 1289313a0c13SJung-uk Kim ASL_RESOURCE_INFO *Info); 129053289f6aSNate Lawson 129153289f6aSNate Lawson ASL_RESOURCE_NODE * 129253289f6aSNate Lawson RsDoDwordMemoryDescriptor ( 1293313a0c13SJung-uk Kim ASL_RESOURCE_INFO *Info); 129453289f6aSNate Lawson 129553289f6aSNate Lawson ASL_RESOURCE_NODE * 1296fba7fc7eSJung-uk Kim RsDoDwordSpaceDescriptor ( 1297313a0c13SJung-uk Kim ASL_RESOURCE_INFO *Info); 1298fba7fc7eSJung-uk Kim 12993f5e024cSJung-uk Kim 13003f5e024cSJung-uk Kim /* 13013f5e024cSJung-uk Kim * aslrestype2e - Extended address descriptors 13023f5e024cSJung-uk Kim */ 1303fba7fc7eSJung-uk Kim ASL_RESOURCE_NODE * 1304fba7fc7eSJung-uk Kim RsDoExtendedIoDescriptor ( 1305313a0c13SJung-uk Kim ASL_RESOURCE_INFO *Info); 1306fba7fc7eSJung-uk Kim 1307fba7fc7eSJung-uk Kim ASL_RESOURCE_NODE * 1308fba7fc7eSJung-uk Kim RsDoExtendedMemoryDescriptor ( 1309313a0c13SJung-uk Kim ASL_RESOURCE_INFO *Info); 1310fba7fc7eSJung-uk Kim 1311fba7fc7eSJung-uk Kim ASL_RESOURCE_NODE * 1312fba7fc7eSJung-uk Kim RsDoExtendedSpaceDescriptor ( 1313313a0c13SJung-uk Kim ASL_RESOURCE_INFO *Info); 1314fba7fc7eSJung-uk Kim 13153f5e024cSJung-uk Kim 13163f5e024cSJung-uk Kim /* 13173f5e024cSJung-uk Kim * aslrestype2q - QWord address descriptors 13183f5e024cSJung-uk Kim */ 1319fba7fc7eSJung-uk Kim ASL_RESOURCE_NODE * 132053289f6aSNate Lawson RsDoQwordIoDescriptor ( 1321313a0c13SJung-uk Kim ASL_RESOURCE_INFO *Info); 132253289f6aSNate Lawson 132353289f6aSNate Lawson ASL_RESOURCE_NODE * 132453289f6aSNate Lawson RsDoQwordMemoryDescriptor ( 1325313a0c13SJung-uk Kim ASL_RESOURCE_INFO *Info); 132653289f6aSNate Lawson 132753289f6aSNate Lawson ASL_RESOURCE_NODE * 1328fba7fc7eSJung-uk Kim RsDoQwordSpaceDescriptor ( 1329313a0c13SJung-uk Kim ASL_RESOURCE_INFO *Info); 1330fba7fc7eSJung-uk Kim 13313f5e024cSJung-uk Kim 13323f5e024cSJung-uk Kim /* 13333f5e024cSJung-uk Kim * aslrestype2w - Word address descriptors 13343f5e024cSJung-uk Kim */ 1335fba7fc7eSJung-uk Kim ASL_RESOURCE_NODE * 133653289f6aSNate Lawson RsDoWordIoDescriptor ( 1337313a0c13SJung-uk Kim ASL_RESOURCE_INFO *Info); 133853289f6aSNate Lawson 133953289f6aSNate Lawson ASL_RESOURCE_NODE * 1340fba7fc7eSJung-uk Kim RsDoWordSpaceDescriptor ( 1341313a0c13SJung-uk Kim ASL_RESOURCE_INFO *Info); 1342fba7fc7eSJung-uk Kim 1343fba7fc7eSJung-uk Kim ASL_RESOURCE_NODE * 134453289f6aSNate Lawson RsDoWordBusNumberDescriptor ( 1345313a0c13SJung-uk Kim ASL_RESOURCE_INFO *Info); 1346313a0c13SJung-uk Kim 134753289f6aSNate Lawson 1348a88e22b7SJung-uk Kim /* 1349a88e22b7SJung-uk Kim * Entry to data table compiler subsystem 1350a88e22b7SJung-uk Kim */ 1351a88e22b7SJung-uk Kim ACPI_STATUS 1352a88e22b7SJung-uk Kim DtDoCompile( 1353a88e22b7SJung-uk Kim void); 1354a88e22b7SJung-uk Kim 1355a88e22b7SJung-uk Kim ACPI_STATUS 1356a88e22b7SJung-uk Kim DtCreateTemplates ( 1357*f8146b88SJung-uk Kim char **argv); 1358a88e22b7SJung-uk Kim 135953289f6aSNate Lawson #endif /* __ASLCOMPILER_H */ 1360