Home | History | Annotate | Line # | Download | only in compiler
aslcompiler.h revision 1.1.1.3.12.1
      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.1.1.2  jruoho /*
      8  1.1.1.3.12.1     tls  * Copyright (C) 2000 - 2013, Intel Corp.
      9           1.1  jruoho  * All rights reserved.
     10           1.1  jruoho  *
     11       1.1.1.2  jruoho  * Redistribution and use in source and binary forms, with or without
     12       1.1.1.2  jruoho  * modification, are permitted provided that the following conditions
     13       1.1.1.2  jruoho  * are met:
     14       1.1.1.2  jruoho  * 1. Redistributions of source code must retain the above copyright
     15       1.1.1.2  jruoho  *    notice, this list of conditions, and the following disclaimer,
     16       1.1.1.2  jruoho  *    without modification.
     17       1.1.1.2  jruoho  * 2. Redistributions in binary form must reproduce at minimum a disclaimer
     18       1.1.1.2  jruoho  *    substantially similar to the "NO WARRANTY" disclaimer below
     19       1.1.1.2  jruoho  *    ("Disclaimer") and any redistribution must be conditioned upon
     20       1.1.1.2  jruoho  *    including a substantially similar Disclaimer requirement for further
     21       1.1.1.2  jruoho  *    binary redistribution.
     22       1.1.1.2  jruoho  * 3. Neither the names of the above-listed copyright holders nor the names
     23       1.1.1.2  jruoho  *    of any contributors may be used to endorse or promote products derived
     24       1.1.1.2  jruoho  *    from this software without specific prior written permission.
     25           1.1  jruoho  *
     26       1.1.1.2  jruoho  * Alternatively, this software may be distributed under the terms of the
     27       1.1.1.2  jruoho  * GNU General Public License ("GPL") version 2 as published by the Free
     28       1.1.1.2  jruoho  * Software Foundation.
     29           1.1  jruoho  *
     30       1.1.1.2  jruoho  * NO WARRANTY
     31       1.1.1.2  jruoho  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
     32       1.1.1.2  jruoho  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
     33       1.1.1.2  jruoho  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR
     34       1.1.1.2  jruoho  * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
     35       1.1.1.2  jruoho  * HOLDERS OR CONTRIBUTORS BE LIABLE FOR SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
     36       1.1.1.2  jruoho  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
     37       1.1.1.2  jruoho  * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
     38       1.1.1.2  jruoho  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
     39       1.1.1.2  jruoho  * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
     40       1.1.1.2  jruoho  * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
     41       1.1.1.2  jruoho  * POSSIBILITY OF SUCH DAMAGES.
     42       1.1.1.2  jruoho  */
     43           1.1  jruoho 
     44           1.1  jruoho 
     45           1.1  jruoho #ifndef __ASLCOMPILER_H
     46           1.1  jruoho #define __ASLCOMPILER_H
     47           1.1  jruoho 
     48       1.1.1.2  jruoho #include "acpi.h"
     49       1.1.1.2  jruoho #include "accommon.h"
     50       1.1.1.2  jruoho #include "amlresrc.h"
     51       1.1.1.2  jruoho #include "acdebug.h"
     52           1.1  jruoho 
     53           1.1  jruoho /* Microsoft-specific */
     54           1.1  jruoho 
     55           1.1  jruoho #if (defined WIN32 || defined WIN64)
     56           1.1  jruoho 
     57           1.1  jruoho /* warn : used #pragma pack */
     58           1.1  jruoho #pragma warning(disable:4103)
     59           1.1  jruoho 
     60           1.1  jruoho /* warn : named type definition in parentheses */
     61           1.1  jruoho #pragma warning(disable:4115)
     62           1.1  jruoho #endif
     63           1.1  jruoho 
     64           1.1  jruoho #include <stdio.h>
     65           1.1  jruoho #include <stdlib.h>
     66           1.1  jruoho #include <stdarg.h>
     67           1.1  jruoho #include <string.h>
     68           1.1  jruoho #include <errno.h>
     69           1.1  jruoho #include <ctype.h>
     70           1.1  jruoho 
     71           1.1  jruoho /* Compiler headers */
     72           1.1  jruoho 
     73           1.1  jruoho #include "asldefine.h"
     74           1.1  jruoho #include "asltypes.h"
     75       1.1.1.2  jruoho #include "aslmessages.h"
     76           1.1  jruoho #include "aslglobal.h"
     77  1.1.1.3.12.1     tls #include "preprocess.h"
     78           1.1  jruoho 
     79           1.1  jruoho 
     80           1.1  jruoho /*******************************************************************************
     81           1.1  jruoho  *
     82           1.1  jruoho  * Compiler prototypes
     83           1.1  jruoho  *
     84           1.1  jruoho  ******************************************************************************/
     85           1.1  jruoho 
     86           1.1  jruoho /*
     87  1.1.1.3.12.1     tls  * Main ASL parser - generated from flex/bison, lex/yacc, etc.
     88           1.1  jruoho  */
     89           1.1  jruoho ACPI_PARSE_OBJECT *
     90           1.1  jruoho AslDoError (
     91           1.1  jruoho     void);
     92           1.1  jruoho 
     93           1.1  jruoho int
     94           1.1  jruoho AslCompilerlex(
     95           1.1  jruoho     void);
     96           1.1  jruoho 
     97           1.1  jruoho void
     98  1.1.1.3.12.1     tls AslResetCurrentLineBuffer (
     99           1.1  jruoho     void);
    100           1.1  jruoho 
    101           1.1  jruoho void
    102  1.1.1.3.12.1     tls AslInsertLineBuffer (
    103           1.1  jruoho     int                     SourceChar);
    104           1.1  jruoho 
    105           1.1  jruoho int
    106           1.1  jruoho AslPopInputFileStack (
    107           1.1  jruoho     void);
    108           1.1  jruoho 
    109           1.1  jruoho void
    110           1.1  jruoho AslPushInputFileStack (
    111           1.1  jruoho     FILE                    *InputFile,
    112           1.1  jruoho     char                    *Filename);
    113           1.1  jruoho 
    114           1.1  jruoho /*
    115       1.1.1.2  jruoho  * aslstartup - entered from main()
    116           1.1  jruoho  */
    117       1.1.1.2  jruoho void
    118       1.1.1.2  jruoho AslInitializeGlobals (
    119       1.1.1.2  jruoho     void);
    120       1.1.1.2  jruoho 
    121       1.1.1.2  jruoho typedef
    122       1.1.1.2  jruoho ACPI_STATUS (*ASL_PATHNAME_CALLBACK) (
    123       1.1.1.2  jruoho     char *);
    124       1.1.1.2  jruoho 
    125           1.1  jruoho ACPI_STATUS
    126           1.1  jruoho AslDoOneFile (
    127           1.1  jruoho     char                    *Filename);
    128           1.1  jruoho 
    129  1.1.1.3.12.1     tls ACPI_STATUS
    130  1.1.1.3.12.1     tls AslCheckForErrorExit (
    131  1.1.1.3.12.1     tls     void);
    132  1.1.1.3.12.1     tls 
    133  1.1.1.3.12.1     tls 
    134           1.1  jruoho /*
    135           1.1  jruoho  * aslcompile - compile mainline
    136           1.1  jruoho  */
    137           1.1  jruoho void
    138           1.1  jruoho AslCompilerSignon (
    139           1.1  jruoho     UINT32                  FileId);
    140           1.1  jruoho 
    141           1.1  jruoho void
    142           1.1  jruoho AslCompilerFileHeader (
    143           1.1  jruoho     UINT32                  FileId);
    144           1.1  jruoho 
    145           1.1  jruoho int
    146           1.1  jruoho CmDoCompile (
    147           1.1  jruoho     void);
    148           1.1  jruoho 
    149           1.1  jruoho void
    150           1.1  jruoho CmDoOutputFiles (
    151           1.1  jruoho     void);
    152           1.1  jruoho 
    153           1.1  jruoho void
    154           1.1  jruoho CmCleanupAndExit (
    155           1.1  jruoho     void);
    156           1.1  jruoho 
    157           1.1  jruoho ACPI_STATUS
    158  1.1.1.3.12.1     tls FlCheckForAcpiTable (
    159  1.1.1.3.12.1     tls     FILE                    *Handle);
    160  1.1.1.3.12.1     tls 
    161  1.1.1.3.12.1     tls ACPI_STATUS
    162           1.1  jruoho FlCheckForAscii (
    163  1.1.1.3.12.1     tls     FILE                    *Handle,
    164  1.1.1.3.12.1     tls     char                    *Filename,
    165  1.1.1.3.12.1     tls     BOOLEAN                 DisplayErrors);
    166           1.1  jruoho 
    167           1.1  jruoho 
    168           1.1  jruoho /*
    169       1.1.1.2  jruoho  * aslwalks - semantic analysis and parse tree walks
    170           1.1  jruoho  */
    171           1.1  jruoho ACPI_STATUS
    172           1.1  jruoho AnOtherSemanticAnalysisWalkBegin (
    173           1.1  jruoho     ACPI_PARSE_OBJECT       *Op,
    174           1.1  jruoho     UINT32                  Level,
    175           1.1  jruoho     void                    *Context);
    176           1.1  jruoho 
    177           1.1  jruoho ACPI_STATUS
    178           1.1  jruoho AnOtherSemanticAnalysisWalkEnd (
    179           1.1  jruoho     ACPI_PARSE_OBJECT       *Op,
    180           1.1  jruoho     UINT32                  Level,
    181           1.1  jruoho     void                    *Context);
    182           1.1  jruoho 
    183           1.1  jruoho ACPI_STATUS
    184           1.1  jruoho AnOperandTypecheckWalkEnd (
    185           1.1  jruoho     ACPI_PARSE_OBJECT       *Op,
    186           1.1  jruoho     UINT32                  Level,
    187           1.1  jruoho     void                    *Context);
    188           1.1  jruoho 
    189           1.1  jruoho ACPI_STATUS
    190  1.1.1.3.12.1     tls AnMethodTypingWalkEnd (
    191           1.1  jruoho     ACPI_PARSE_OBJECT       *Op,
    192           1.1  jruoho     UINT32                  Level,
    193           1.1  jruoho     void                    *Context);
    194           1.1  jruoho 
    195  1.1.1.3.12.1     tls 
    196  1.1.1.3.12.1     tls /*
    197  1.1.1.3.12.1     tls  * aslmethod - Control method analysis walk
    198  1.1.1.3.12.1     tls  */
    199           1.1  jruoho ACPI_STATUS
    200  1.1.1.3.12.1     tls MtMethodAnalysisWalkBegin (
    201           1.1  jruoho     ACPI_PARSE_OBJECT       *Op,
    202           1.1  jruoho     UINT32                  Level,
    203           1.1  jruoho     void                    *Context);
    204           1.1  jruoho 
    205           1.1  jruoho ACPI_STATUS
    206  1.1.1.3.12.1     tls MtMethodAnalysisWalkEnd (
    207           1.1  jruoho     ACPI_PARSE_OBJECT       *Op,
    208           1.1  jruoho     UINT32                  Level,
    209           1.1  jruoho     void                    *Context);
    210           1.1  jruoho 
    211       1.1.1.2  jruoho 
    212       1.1.1.2  jruoho /*
    213       1.1.1.2  jruoho  * aslbtypes - bitfield data types
    214       1.1.1.2  jruoho  */
    215       1.1.1.2  jruoho UINT32
    216       1.1.1.2  jruoho AnMapObjTypeToBtype (
    217       1.1.1.2  jruoho     ACPI_PARSE_OBJECT       *Op);
    218       1.1.1.2  jruoho 
    219       1.1.1.2  jruoho UINT32
    220       1.1.1.2  jruoho AnMapArgTypeToBtype (
    221       1.1.1.2  jruoho     UINT32                  ArgType);
    222       1.1.1.2  jruoho 
    223       1.1.1.2  jruoho UINT32
    224       1.1.1.2  jruoho AnGetBtype (
    225       1.1.1.2  jruoho     ACPI_PARSE_OBJECT       *Op);
    226       1.1.1.2  jruoho 
    227       1.1.1.2  jruoho void
    228       1.1.1.2  jruoho AnFormatBtype (
    229       1.1.1.2  jruoho     char                    *Buffer,
    230       1.1.1.2  jruoho     UINT32                  Btype);
    231       1.1.1.2  jruoho 
    232       1.1.1.2  jruoho 
    233       1.1.1.2  jruoho /*
    234       1.1.1.2  jruoho  * aslanalyze - Support functions for parse tree walks
    235       1.1.1.2  jruoho  */
    236       1.1.1.2  jruoho void
    237       1.1.1.2  jruoho AnCheckId (
    238           1.1  jruoho     ACPI_PARSE_OBJECT       *Op,
    239       1.1.1.2  jruoho     ACPI_NAME               Type);
    240       1.1.1.2  jruoho 
    241       1.1.1.2  jruoho /* Values for Type argument above */
    242       1.1.1.2  jruoho 
    243       1.1.1.2  jruoho #define ASL_TYPE_HID        0
    244       1.1.1.2  jruoho #define ASL_TYPE_CID        1
    245       1.1.1.2  jruoho 
    246       1.1.1.2  jruoho BOOLEAN
    247       1.1.1.2  jruoho AnIsInternalMethod (
    248       1.1.1.2  jruoho     ACPI_PARSE_OBJECT       *Op);
    249       1.1.1.2  jruoho 
    250       1.1.1.2  jruoho UINT32
    251       1.1.1.2  jruoho AnGetInternalMethodReturnType (
    252       1.1.1.2  jruoho     ACPI_PARSE_OBJECT       *Op);
    253       1.1.1.2  jruoho 
    254       1.1.1.2  jruoho BOOLEAN
    255       1.1.1.2  jruoho AnLastStatementIsReturn (
    256       1.1.1.2  jruoho     ACPI_PARSE_OBJECT       *Op);
    257       1.1.1.2  jruoho 
    258       1.1.1.2  jruoho void
    259       1.1.1.2  jruoho AnCheckMethodReturnValue (
    260       1.1.1.2  jruoho     ACPI_PARSE_OBJECT       *Op,
    261       1.1.1.2  jruoho     const ACPI_OPCODE_INFO  *OpInfo,
    262       1.1.1.2  jruoho     ACPI_PARSE_OBJECT       *ArgOp,
    263       1.1.1.2  jruoho     UINT32                  RequiredBtypes,
    264       1.1.1.2  jruoho     UINT32                  ThisNodeBtype);
    265       1.1.1.2  jruoho 
    266       1.1.1.2  jruoho BOOLEAN
    267       1.1.1.2  jruoho AnIsResultUsed (
    268       1.1.1.2  jruoho     ACPI_PARSE_OBJECT       *Op);
    269       1.1.1.2  jruoho 
    270       1.1.1.2  jruoho void
    271       1.1.1.2  jruoho ApCheckForGpeNameConflict (
    272       1.1.1.2  jruoho     ACPI_PARSE_OBJECT       *Op);
    273           1.1  jruoho 
    274       1.1.1.3  jruoho void
    275       1.1.1.3  jruoho ApCheckRegMethod (
    276       1.1.1.3  jruoho     ACPI_PARSE_OBJECT       *Op);
    277       1.1.1.3  jruoho 
    278           1.1  jruoho 
    279           1.1  jruoho /*
    280           1.1  jruoho  * aslerror - error handling/reporting
    281           1.1  jruoho  */
    282           1.1  jruoho void
    283           1.1  jruoho AslError (
    284           1.1  jruoho     UINT8                   Level,
    285           1.1  jruoho     UINT8                   MessageId,
    286           1.1  jruoho     ACPI_PARSE_OBJECT       *Op,
    287           1.1  jruoho     char                    *ExtraMessage);
    288           1.1  jruoho 
    289  1.1.1.3.12.1     tls ACPI_STATUS
    290  1.1.1.3.12.1     tls AslDisableException (
    291  1.1.1.3.12.1     tls     char                    *MessageIdString);
    292  1.1.1.3.12.1     tls 
    293  1.1.1.3.12.1     tls BOOLEAN
    294  1.1.1.3.12.1     tls AslIsExceptionDisabled (
    295  1.1.1.3.12.1     tls     UINT8                   Level,
    296  1.1.1.3.12.1     tls     UINT8                   MessageId);
    297  1.1.1.3.12.1     tls 
    298           1.1  jruoho void
    299           1.1  jruoho AslCoreSubsystemError (
    300           1.1  jruoho     ACPI_PARSE_OBJECT       *Op,
    301           1.1  jruoho     ACPI_STATUS             Status,
    302           1.1  jruoho     char                    *ExtraMessage,
    303           1.1  jruoho     BOOLEAN                 Abort);
    304           1.1  jruoho 
    305           1.1  jruoho int
    306           1.1  jruoho AslCompilererror(
    307       1.1.1.3  jruoho     const char              *s);
    308           1.1  jruoho 
    309           1.1  jruoho void
    310           1.1  jruoho AslCommonError (
    311           1.1  jruoho     UINT8                   Level,
    312           1.1  jruoho     UINT8                   MessageId,
    313           1.1  jruoho     UINT32                  CurrentLineNumber,
    314           1.1  jruoho     UINT32                  LogicalLineNumber,
    315           1.1  jruoho     UINT32                  LogicalByteOffset,
    316           1.1  jruoho     UINT32                  Column,
    317           1.1  jruoho     char                    *Filename,
    318           1.1  jruoho     char                    *ExtraMessage);
    319           1.1  jruoho 
    320           1.1  jruoho void
    321  1.1.1.3.12.1     tls AslCommonError2 (
    322  1.1.1.3.12.1     tls     UINT8                   Level,
    323  1.1.1.3.12.1     tls     UINT8                   MessageId,
    324  1.1.1.3.12.1     tls     UINT32                  LineNumber,
    325  1.1.1.3.12.1     tls     UINT32                  Column,
    326  1.1.1.3.12.1     tls     char                    *SourceLine,
    327  1.1.1.3.12.1     tls     char                    *Filename,
    328  1.1.1.3.12.1     tls     char                    *ExtraMessage);
    329  1.1.1.3.12.1     tls 
    330  1.1.1.3.12.1     tls void
    331           1.1  jruoho AePrintException (
    332           1.1  jruoho     UINT32                  FileId,
    333           1.1  jruoho     ASL_ERROR_MSG           *Enode,
    334           1.1  jruoho     char                    *Header);
    335           1.1  jruoho 
    336           1.1  jruoho void
    337           1.1  jruoho AePrintErrorLog (
    338           1.1  jruoho     UINT32                  FileId);
    339           1.1  jruoho 
    340           1.1  jruoho void
    341           1.1  jruoho AeClearErrorLog (
    342           1.1  jruoho     void);
    343           1.1  jruoho 
    344           1.1  jruoho ACPI_PHYSICAL_ADDRESS
    345           1.1  jruoho AeLocalGetRootPointer (
    346           1.1  jruoho     void);
    347           1.1  jruoho 
    348           1.1  jruoho 
    349           1.1  jruoho /*
    350           1.1  jruoho  * asllisting - generate all "listing" type files
    351           1.1  jruoho  */
    352           1.1  jruoho void
    353           1.1  jruoho LsDoListings (
    354           1.1  jruoho     void);
    355           1.1  jruoho 
    356           1.1  jruoho void
    357           1.1  jruoho LsWriteNodeToAsmListing (
    358           1.1  jruoho     ACPI_PARSE_OBJECT       *Op);
    359           1.1  jruoho 
    360           1.1  jruoho void
    361           1.1  jruoho LsWriteNode (
    362           1.1  jruoho     ACPI_PARSE_OBJECT       *Op,
    363           1.1  jruoho     UINT32                  FileId);
    364           1.1  jruoho 
    365           1.1  jruoho void
    366  1.1.1.3.12.1     tls LsDumpParseTree (
    367           1.1  jruoho     void);
    368           1.1  jruoho 
    369  1.1.1.3.12.1     tls 
    370  1.1.1.3.12.1     tls /*
    371  1.1.1.3.12.1     tls  * asllistsup - Listing file support utilities
    372  1.1.1.3.12.1     tls  */
    373           1.1  jruoho void
    374  1.1.1.3.12.1     tls LsDumpAscii (
    375  1.1.1.3.12.1     tls     UINT32                  FileId,
    376  1.1.1.3.12.1     tls     UINT32                  Count,
    377  1.1.1.3.12.1     tls     UINT8                   *Buffer);
    378  1.1.1.3.12.1     tls 
    379  1.1.1.3.12.1     tls void
    380  1.1.1.3.12.1     tls LsDumpAsciiInComment (
    381  1.1.1.3.12.1     tls     UINT32                  FileId,
    382  1.1.1.3.12.1     tls     UINT32                  Count,
    383  1.1.1.3.12.1     tls     UINT8                   *Buffer);
    384  1.1.1.3.12.1     tls 
    385  1.1.1.3.12.1     tls void
    386  1.1.1.3.12.1     tls LsCheckException (
    387  1.1.1.3.12.1     tls     UINT32                  LineNumber,
    388  1.1.1.3.12.1     tls     UINT32                  FileId);
    389  1.1.1.3.12.1     tls 
    390  1.1.1.3.12.1     tls void
    391  1.1.1.3.12.1     tls LsFlushListingBuffer (
    392  1.1.1.3.12.1     tls     UINT32                  FileId);
    393  1.1.1.3.12.1     tls 
    394  1.1.1.3.12.1     tls void
    395  1.1.1.3.12.1     tls LsWriteListingHexBytes (
    396  1.1.1.3.12.1     tls     UINT8                   *Buffer,
    397  1.1.1.3.12.1     tls     UINT32                  Length,
    398  1.1.1.3.12.1     tls     UINT32                  FileId);
    399  1.1.1.3.12.1     tls 
    400  1.1.1.3.12.1     tls void
    401  1.1.1.3.12.1     tls LsWriteSourceLines (
    402  1.1.1.3.12.1     tls     UINT32                  ToLineNumber,
    403  1.1.1.3.12.1     tls     UINT32                  ToLogicalLineNumber,
    404  1.1.1.3.12.1     tls     UINT32                  FileId);
    405  1.1.1.3.12.1     tls 
    406  1.1.1.3.12.1     tls UINT32
    407  1.1.1.3.12.1     tls LsWriteOneSourceLine (
    408  1.1.1.3.12.1     tls     UINT32                  FileId);
    409  1.1.1.3.12.1     tls 
    410  1.1.1.3.12.1     tls void
    411  1.1.1.3.12.1     tls LsPushNode (
    412  1.1.1.3.12.1     tls     char                    *Filename);
    413  1.1.1.3.12.1     tls 
    414  1.1.1.3.12.1     tls ASL_LISTING_NODE *
    415  1.1.1.3.12.1     tls LsPopNode (
    416  1.1.1.3.12.1     tls     void);
    417  1.1.1.3.12.1     tls 
    418  1.1.1.3.12.1     tls 
    419  1.1.1.3.12.1     tls /*
    420  1.1.1.3.12.1     tls  * aslhex - generate all "hex" output files (C, ASM, ASL)
    421  1.1.1.3.12.1     tls  */
    422  1.1.1.3.12.1     tls void
    423  1.1.1.3.12.1     tls HxDoHexOutput (
    424           1.1  jruoho     void);
    425           1.1  jruoho 
    426  1.1.1.3.12.1     tls 
    427           1.1  jruoho /*
    428           1.1  jruoho  * aslfold - constant folding
    429           1.1  jruoho  */
    430           1.1  jruoho ACPI_STATUS
    431           1.1  jruoho OpcAmlConstantWalk (
    432           1.1  jruoho     ACPI_PARSE_OBJECT       *Op,
    433           1.1  jruoho     UINT32                  Level,
    434           1.1  jruoho     void                    *Context);
    435           1.1  jruoho 
    436           1.1  jruoho 
    437           1.1  jruoho /*
    438  1.1.1.3.12.1     tls  * asloffset - generate C offset file for BIOS support
    439  1.1.1.3.12.1     tls  */
    440  1.1.1.3.12.1     tls ACPI_STATUS
    441  1.1.1.3.12.1     tls LsAmlOffsetWalk (
    442  1.1.1.3.12.1     tls     ACPI_PARSE_OBJECT       *Op,
    443  1.1.1.3.12.1     tls     UINT32                  Level,
    444  1.1.1.3.12.1     tls     void                    *Context);
    445  1.1.1.3.12.1     tls 
    446  1.1.1.3.12.1     tls void
    447  1.1.1.3.12.1     tls LsDoOffsetTableHeader (
    448  1.1.1.3.12.1     tls     UINT32                  FileId);
    449  1.1.1.3.12.1     tls 
    450  1.1.1.3.12.1     tls void
    451  1.1.1.3.12.1     tls LsDoOffsetTableFooter (
    452  1.1.1.3.12.1     tls     UINT32                  FileId);
    453  1.1.1.3.12.1     tls 
    454  1.1.1.3.12.1     tls 
    455  1.1.1.3.12.1     tls /*
    456           1.1  jruoho  * aslopcodes - generate AML opcodes
    457           1.1  jruoho  */
    458           1.1  jruoho ACPI_STATUS
    459           1.1  jruoho OpcAmlOpcodeWalk (
    460           1.1  jruoho     ACPI_PARSE_OBJECT       *Op,
    461           1.1  jruoho     UINT32                  Level,
    462           1.1  jruoho     void                    *Context);
    463           1.1  jruoho 
    464           1.1  jruoho ACPI_STATUS
    465           1.1  jruoho OpcAmlOpcodeUpdateWalk (
    466           1.1  jruoho     ACPI_PARSE_OBJECT       *Op,
    467           1.1  jruoho     UINT32                  Level,
    468           1.1  jruoho     void                    *Context);
    469           1.1  jruoho 
    470           1.1  jruoho void
    471           1.1  jruoho OpcGenerateAmlOpcode (
    472           1.1  jruoho     ACPI_PARSE_OBJECT       *Op);
    473           1.1  jruoho 
    474           1.1  jruoho UINT32
    475           1.1  jruoho OpcSetOptimalIntegerSize (
    476           1.1  jruoho     ACPI_PARSE_OBJECT       *Op);
    477           1.1  jruoho 
    478           1.1  jruoho void
    479           1.1  jruoho OpcGetIntegerWidth (
    480           1.1  jruoho     ACPI_PARSE_OBJECT       *Op);
    481           1.1  jruoho 
    482           1.1  jruoho 
    483           1.1  jruoho /*
    484           1.1  jruoho  * asloperands - generate AML operands for the AML opcodes
    485           1.1  jruoho  */
    486           1.1  jruoho ACPI_PARSE_OBJECT  *
    487           1.1  jruoho UtGetArg (
    488           1.1  jruoho     ACPI_PARSE_OBJECT       *Op,
    489           1.1  jruoho     UINT32                  Argn);
    490           1.1  jruoho 
    491           1.1  jruoho void
    492           1.1  jruoho OpnGenerateAmlOperands (
    493           1.1  jruoho     ACPI_PARSE_OBJECT       *Op);
    494           1.1  jruoho 
    495           1.1  jruoho void
    496           1.1  jruoho OpnDoPackage (
    497           1.1  jruoho     ACPI_PARSE_OBJECT       *Op);
    498           1.1  jruoho 
    499           1.1  jruoho 
    500           1.1  jruoho /*
    501           1.1  jruoho  * aslopt - optmization
    502           1.1  jruoho  */
    503           1.1  jruoho void
    504           1.1  jruoho OptOptimizeNamePath (
    505           1.1  jruoho     ACPI_PARSE_OBJECT       *Op,
    506           1.1  jruoho     UINT32                  Flags,
    507           1.1  jruoho     ACPI_WALK_STATE         *WalkState,
    508           1.1  jruoho     char                    *AmlNameString,
    509           1.1  jruoho     ACPI_NAMESPACE_NODE     *TargetNode);
    510           1.1  jruoho 
    511           1.1  jruoho 
    512           1.1  jruoho /*
    513           1.1  jruoho  * aslcodegen - code generation
    514           1.1  jruoho  */
    515           1.1  jruoho void
    516           1.1  jruoho CgGenerateAmlOutput (
    517           1.1  jruoho     void);
    518           1.1  jruoho 
    519           1.1  jruoho 
    520           1.1  jruoho /*
    521           1.1  jruoho  * aslfile
    522           1.1  jruoho  */
    523           1.1  jruoho void
    524           1.1  jruoho FlOpenFile (
    525           1.1  jruoho     UINT32                  FileId,
    526           1.1  jruoho     char                    *Filename,
    527           1.1  jruoho     char                    *Mode);
    528           1.1  jruoho 
    529           1.1  jruoho 
    530           1.1  jruoho /*
    531           1.1  jruoho  * asllength - calculate/adjust AML package lengths
    532           1.1  jruoho  */
    533           1.1  jruoho ACPI_STATUS
    534           1.1  jruoho LnPackageLengthWalk (
    535           1.1  jruoho     ACPI_PARSE_OBJECT       *Op,
    536           1.1  jruoho     UINT32                  Level,
    537           1.1  jruoho     void                    *Context);
    538           1.1  jruoho 
    539           1.1  jruoho ACPI_STATUS
    540           1.1  jruoho LnInitLengthsWalk (
    541           1.1  jruoho     ACPI_PARSE_OBJECT       *Op,
    542           1.1  jruoho     UINT32                  Level,
    543           1.1  jruoho     void                    *Context);
    544           1.1  jruoho 
    545           1.1  jruoho void
    546           1.1  jruoho CgGenerateAmlLengths (
    547           1.1  jruoho     ACPI_PARSE_OBJECT       *Op);
    548           1.1  jruoho 
    549           1.1  jruoho 
    550           1.1  jruoho /*
    551           1.1  jruoho  * aslmap - opcode mappings and reserved method names
    552           1.1  jruoho  */
    553           1.1  jruoho ACPI_OBJECT_TYPE
    554           1.1  jruoho AslMapNamedOpcodeToDataType (
    555           1.1  jruoho     UINT16                  Opcode);
    556           1.1  jruoho 
    557           1.1  jruoho 
    558           1.1  jruoho /*
    559           1.1  jruoho  * aslpredef - ACPI predefined names support
    560           1.1  jruoho  */
    561       1.1.1.3  jruoho BOOLEAN
    562           1.1  jruoho ApCheckForPredefinedMethod (
    563           1.1  jruoho     ACPI_PARSE_OBJECT       *Op,
    564           1.1  jruoho     ASL_METHOD_INFO         *MethodInfo);
    565           1.1  jruoho 
    566           1.1  jruoho void
    567           1.1  jruoho ApCheckPredefinedReturnValue (
    568           1.1  jruoho     ACPI_PARSE_OBJECT       *Op,
    569           1.1  jruoho     ASL_METHOD_INFO         *MethodInfo);
    570           1.1  jruoho 
    571           1.1  jruoho UINT32
    572           1.1  jruoho ApCheckForPredefinedName (
    573           1.1  jruoho     ACPI_PARSE_OBJECT       *Op,
    574           1.1  jruoho     char                    *Name);
    575           1.1  jruoho 
    576           1.1  jruoho void
    577           1.1  jruoho ApCheckForPredefinedObject (
    578           1.1  jruoho     ACPI_PARSE_OBJECT       *Op,
    579           1.1  jruoho     char                    *Name);
    580           1.1  jruoho 
    581  1.1.1.3.12.1     tls ACPI_STATUS
    582  1.1.1.3.12.1     tls ApCheckObjectType (
    583  1.1.1.3.12.1     tls     const char              *PredefinedName,
    584  1.1.1.3.12.1     tls     ACPI_PARSE_OBJECT       *Op,
    585  1.1.1.3.12.1     tls     UINT32                  ExpectedBtypes,
    586  1.1.1.3.12.1     tls     UINT32                  PackageIndex);
    587  1.1.1.3.12.1     tls 
    588           1.1  jruoho void
    589           1.1  jruoho ApDisplayReservedNames (
    590           1.1  jruoho     void);
    591           1.1  jruoho 
    592           1.1  jruoho 
    593           1.1  jruoho /*
    594  1.1.1.3.12.1     tls  * aslprepkg - ACPI predefined names support for packages
    595  1.1.1.3.12.1     tls  */
    596  1.1.1.3.12.1     tls void
    597  1.1.1.3.12.1     tls ApCheckPackage (
    598  1.1.1.3.12.1     tls     ACPI_PARSE_OBJECT           *ParentOp,
    599  1.1.1.3.12.1     tls     const ACPI_PREDEFINED_INFO  *Predefined);
    600  1.1.1.3.12.1     tls 
    601  1.1.1.3.12.1     tls 
    602  1.1.1.3.12.1     tls /*
    603           1.1  jruoho  * asltransform - parse tree transformations
    604           1.1  jruoho  */
    605           1.1  jruoho ACPI_STATUS
    606           1.1  jruoho TrAmlTransformWalk (
    607           1.1  jruoho     ACPI_PARSE_OBJECT       *Op,
    608           1.1  jruoho     UINT32                  Level,
    609           1.1  jruoho     void                    *Context);
    610           1.1  jruoho 
    611           1.1  jruoho 
    612           1.1  jruoho /*
    613           1.1  jruoho  * asltree - parse tree support
    614           1.1  jruoho  */
    615           1.1  jruoho ACPI_STATUS
    616           1.1  jruoho TrWalkParseTree (
    617           1.1  jruoho     ACPI_PARSE_OBJECT       *Op,
    618           1.1  jruoho     UINT32                  Visitation,
    619           1.1  jruoho     ASL_WALK_CALLBACK       DescendingCallback,
    620           1.1  jruoho     ASL_WALK_CALLBACK       AscendingCallback,
    621           1.1  jruoho     void                    *Context);
    622           1.1  jruoho 
    623           1.1  jruoho /* Values for "Visitation" parameter above */
    624           1.1  jruoho 
    625           1.1  jruoho #define ASL_WALK_VISIT_DOWNWARD     0x01
    626           1.1  jruoho #define ASL_WALK_VISIT_UPWARD       0x02
    627           1.1  jruoho #define ASL_WALK_VISIT_TWICE        (ASL_WALK_VISIT_DOWNWARD | ASL_WALK_VISIT_UPWARD)
    628           1.1  jruoho 
    629           1.1  jruoho 
    630           1.1  jruoho ACPI_PARSE_OBJECT *
    631           1.1  jruoho TrAllocateNode (
    632           1.1  jruoho     UINT32                  ParseOpcode);
    633           1.1  jruoho 
    634           1.1  jruoho void
    635           1.1  jruoho TrReleaseNode (
    636           1.1  jruoho     ACPI_PARSE_OBJECT       *Op);
    637           1.1  jruoho 
    638           1.1  jruoho ACPI_PARSE_OBJECT *
    639           1.1  jruoho TrUpdateNode (
    640           1.1  jruoho     UINT32                  ParseOpcode,
    641           1.1  jruoho     ACPI_PARSE_OBJECT       *Op);
    642           1.1  jruoho 
    643           1.1  jruoho ACPI_PARSE_OBJECT *
    644           1.1  jruoho TrCreateNode (
    645           1.1  jruoho     UINT32                  ParseOpcode,
    646           1.1  jruoho     UINT32                  NumChildren,
    647           1.1  jruoho     ...);
    648           1.1  jruoho 
    649           1.1  jruoho ACPI_PARSE_OBJECT *
    650           1.1  jruoho TrCreateLeafNode (
    651           1.1  jruoho     UINT32                  ParseOpcode);
    652           1.1  jruoho 
    653           1.1  jruoho ACPI_PARSE_OBJECT *
    654           1.1  jruoho TrCreateValuedLeafNode (
    655           1.1  jruoho     UINT32                  ParseOpcode,
    656           1.1  jruoho     UINT64                  Value);
    657           1.1  jruoho 
    658           1.1  jruoho ACPI_PARSE_OBJECT *
    659       1.1.1.2  jruoho TrCreateConstantLeafNode (
    660       1.1.1.2  jruoho     UINT32                  ParseOpcode);
    661       1.1.1.2  jruoho 
    662       1.1.1.2  jruoho ACPI_PARSE_OBJECT *
    663           1.1  jruoho TrLinkChildren (
    664           1.1  jruoho     ACPI_PARSE_OBJECT       *Op,
    665           1.1  jruoho     UINT32                  NumChildren,
    666           1.1  jruoho     ...);
    667           1.1  jruoho 
    668           1.1  jruoho void
    669           1.1  jruoho TrSetEndLineNumber (
    670           1.1  jruoho     ACPI_PARSE_OBJECT       *Op);
    671           1.1  jruoho 
    672           1.1  jruoho void
    673           1.1  jruoho TrWalkTree (
    674           1.1  jruoho     void);
    675           1.1  jruoho 
    676           1.1  jruoho ACPI_PARSE_OBJECT *
    677           1.1  jruoho TrLinkPeerNode (
    678           1.1  jruoho     ACPI_PARSE_OBJECT       *Op1,
    679           1.1  jruoho     ACPI_PARSE_OBJECT       *Op2);
    680           1.1  jruoho 
    681           1.1  jruoho ACPI_PARSE_OBJECT *
    682           1.1  jruoho TrLinkChildNode (
    683           1.1  jruoho     ACPI_PARSE_OBJECT       *Op1,
    684           1.1  jruoho     ACPI_PARSE_OBJECT       *Op2);
    685           1.1  jruoho 
    686           1.1  jruoho ACPI_PARSE_OBJECT *
    687           1.1  jruoho TrSetNodeFlags (
    688           1.1  jruoho     ACPI_PARSE_OBJECT       *Op,
    689           1.1  jruoho     UINT32                  Flags);
    690           1.1  jruoho 
    691           1.1  jruoho ACPI_PARSE_OBJECT *
    692  1.1.1.3.12.1     tls TrSetNodeAmlLength (
    693  1.1.1.3.12.1     tls     ACPI_PARSE_OBJECT       *Op,
    694  1.1.1.3.12.1     tls     UINT32                  Length);
    695  1.1.1.3.12.1     tls 
    696  1.1.1.3.12.1     tls ACPI_PARSE_OBJECT *
    697           1.1  jruoho TrLinkPeerNodes (
    698           1.1  jruoho     UINT32                  NumPeers,
    699           1.1  jruoho     ...);
    700           1.1  jruoho 
    701           1.1  jruoho 
    702           1.1  jruoho /*
    703           1.1  jruoho  * aslfiles - File I/O support
    704           1.1  jruoho  */
    705           1.1  jruoho void
    706           1.1  jruoho AslAbort (
    707           1.1  jruoho     void);
    708           1.1  jruoho 
    709           1.1  jruoho void
    710           1.1  jruoho FlAddIncludeDirectory (
    711           1.1  jruoho     char                    *Dir);
    712           1.1  jruoho 
    713  1.1.1.3.12.1     tls char *
    714  1.1.1.3.12.1     tls FlMergePathnames (
    715  1.1.1.3.12.1     tls     char                    *PrefixDir,
    716  1.1.1.3.12.1     tls     char                    *FilePathname);
    717  1.1.1.3.12.1     tls 
    718           1.1  jruoho void
    719           1.1  jruoho FlOpenIncludeFile (
    720           1.1  jruoho     ACPI_PARSE_OBJECT       *Op);
    721           1.1  jruoho 
    722           1.1  jruoho void
    723           1.1  jruoho FlFileError (
    724           1.1  jruoho     UINT32                  FileId,
    725           1.1  jruoho     UINT8                   ErrorId);
    726           1.1  jruoho 
    727           1.1  jruoho UINT32
    728           1.1  jruoho FlGetFileSize (
    729           1.1  jruoho     UINT32                  FileId);
    730           1.1  jruoho 
    731           1.1  jruoho ACPI_STATUS
    732           1.1  jruoho FlReadFile (
    733           1.1  jruoho     UINT32                  FileId,
    734           1.1  jruoho     void                    *Buffer,
    735           1.1  jruoho     UINT32                  Length);
    736           1.1  jruoho 
    737           1.1  jruoho void
    738           1.1  jruoho FlWriteFile (
    739           1.1  jruoho     UINT32                  FileId,
    740           1.1  jruoho     void                    *Buffer,
    741           1.1  jruoho     UINT32                  Length);
    742           1.1  jruoho 
    743           1.1  jruoho void
    744           1.1  jruoho FlSeekFile (
    745           1.1  jruoho     UINT32                  FileId,
    746           1.1  jruoho     long                    Offset);
    747           1.1  jruoho 
    748           1.1  jruoho void
    749           1.1  jruoho FlCloseFile (
    750           1.1  jruoho     UINT32                  FileId);
    751           1.1  jruoho 
    752           1.1  jruoho void
    753           1.1  jruoho FlPrintFile (
    754           1.1  jruoho     UINT32                  FileId,
    755           1.1  jruoho     char                    *Format,
    756           1.1  jruoho     ...);
    757           1.1  jruoho 
    758           1.1  jruoho void
    759  1.1.1.3.12.1     tls FlDeleteFile (
    760  1.1.1.3.12.1     tls     UINT32                  FileId);
    761  1.1.1.3.12.1     tls 
    762  1.1.1.3.12.1     tls void
    763           1.1  jruoho FlSetLineNumber (
    764  1.1.1.3.12.1     tls     UINT32                  LineNumber);
    765  1.1.1.3.12.1     tls 
    766  1.1.1.3.12.1     tls void
    767  1.1.1.3.12.1     tls FlSetFilename (
    768  1.1.1.3.12.1     tls     char                    *Filename);
    769           1.1  jruoho 
    770           1.1  jruoho ACPI_STATUS
    771           1.1  jruoho FlOpenInputFile (
    772           1.1  jruoho     char                    *InputFilename);
    773           1.1  jruoho 
    774           1.1  jruoho ACPI_STATUS
    775           1.1  jruoho FlOpenAmlOutputFile (
    776           1.1  jruoho     char                    *InputFilename);
    777           1.1  jruoho 
    778           1.1  jruoho ACPI_STATUS
    779           1.1  jruoho FlOpenMiscOutputFiles (
    780           1.1  jruoho     char                    *InputFilename);
    781           1.1  jruoho 
    782           1.1  jruoho 
    783           1.1  jruoho /*
    784           1.1  jruoho  * asload - load namespace in prep for cross reference
    785           1.1  jruoho  */
    786           1.1  jruoho ACPI_STATUS
    787           1.1  jruoho LdLoadNamespace (
    788           1.1  jruoho     ACPI_PARSE_OBJECT       *RootOp);
    789           1.1  jruoho 
    790           1.1  jruoho 
    791           1.1  jruoho /*
    792  1.1.1.3.12.1     tls  * asllookup - namespace lookup functions
    793           1.1  jruoho  */
    794  1.1.1.3.12.1     tls void
    795  1.1.1.3.12.1     tls LkFindUnreferencedObjects (
    796           1.1  jruoho     void);
    797           1.1  jruoho 
    798  1.1.1.3.12.1     tls /*
    799  1.1.1.3.12.1     tls  * aslmain - startup
    800  1.1.1.3.12.1     tls  */
    801           1.1  jruoho void
    802  1.1.1.3.12.1     tls Usage (
    803           1.1  jruoho     void);
    804           1.1  jruoho 
    805  1.1.1.3.12.1     tls void
    806  1.1.1.3.12.1     tls AslFilenameHelp (
    807  1.1.1.3.12.1     tls     void);
    808  1.1.1.3.12.1     tls 
    809  1.1.1.3.12.1     tls 
    810  1.1.1.3.12.1     tls /*
    811  1.1.1.3.12.1     tls  * aslnamesp - namespace output file generation
    812  1.1.1.3.12.1     tls  */
    813           1.1  jruoho ACPI_STATUS
    814  1.1.1.3.12.1     tls NsDisplayNamespace (
    815           1.1  jruoho     void);
    816           1.1  jruoho 
    817       1.1.1.2  jruoho void
    818  1.1.1.3.12.1     tls NsSetupNamespaceListing (
    819       1.1.1.2  jruoho     void                    *Handle);
    820       1.1.1.2  jruoho 
    821  1.1.1.3.12.1     tls /*
    822  1.1.1.3.12.1     tls  * asloptions - command line processing
    823  1.1.1.3.12.1     tls  */
    824  1.1.1.3.12.1     tls int
    825  1.1.1.3.12.1     tls AslCommandLine (
    826  1.1.1.3.12.1     tls     int                     argc,
    827  1.1.1.3.12.1     tls     char                    **argv);
    828  1.1.1.3.12.1     tls 
    829  1.1.1.3.12.1     tls /*
    830  1.1.1.3.12.1     tls  * aslxref - namespace cross reference
    831  1.1.1.3.12.1     tls  */
    832  1.1.1.3.12.1     tls ACPI_STATUS
    833  1.1.1.3.12.1     tls XfCrossReferenceNamespace (
    834  1.1.1.3.12.1     tls     void);
    835  1.1.1.3.12.1     tls 
    836           1.1  jruoho 
    837           1.1  jruoho /*
    838           1.1  jruoho  * aslutils - common compiler utilites
    839           1.1  jruoho  */
    840           1.1  jruoho void
    841           1.1  jruoho DbgPrint (
    842           1.1  jruoho     UINT32                  Type,
    843           1.1  jruoho     char                    *Format,
    844           1.1  jruoho     ...);
    845           1.1  jruoho 
    846           1.1  jruoho /* Type values for above */
    847           1.1  jruoho 
    848           1.1  jruoho #define ASL_DEBUG_OUTPUT    0
    849           1.1  jruoho #define ASL_PARSE_OUTPUT    1
    850           1.1  jruoho #define ASL_TREE_OUTPUT     2
    851           1.1  jruoho 
    852           1.1  jruoho void
    853       1.1.1.2  jruoho UtDisplaySupportedTables (
    854       1.1.1.2  jruoho     void);
    855       1.1.1.2  jruoho 
    856       1.1.1.2  jruoho void
    857           1.1  jruoho UtDisplayConstantOpcodes (
    858           1.1  jruoho     void);
    859           1.1  jruoho 
    860           1.1  jruoho UINT8
    861           1.1  jruoho UtBeginEvent (
    862           1.1  jruoho     char                    *Name);
    863           1.1  jruoho 
    864           1.1  jruoho void
    865           1.1  jruoho UtEndEvent (
    866           1.1  jruoho     UINT8                   Event);
    867           1.1  jruoho 
    868           1.1  jruoho void *
    869           1.1  jruoho UtLocalCalloc (
    870           1.1  jruoho     UINT32                  Size);
    871           1.1  jruoho 
    872           1.1  jruoho void
    873           1.1  jruoho UtPrintFormattedName (
    874           1.1  jruoho     UINT16                  ParseOpcode,
    875           1.1  jruoho     UINT32                  Level);
    876           1.1  jruoho 
    877           1.1  jruoho void
    878           1.1  jruoho UtDisplaySummary (
    879           1.1  jruoho     UINT32                  FileId);
    880           1.1  jruoho 
    881           1.1  jruoho UINT8
    882           1.1  jruoho UtHexCharToValue (
    883           1.1  jruoho     int                     HexChar);
    884           1.1  jruoho 
    885           1.1  jruoho void
    886           1.1  jruoho UtConvertByteToHex (
    887           1.1  jruoho     UINT8                   RawByte,
    888           1.1  jruoho     UINT8                   *Buffer);
    889           1.1  jruoho 
    890           1.1  jruoho void
    891           1.1  jruoho UtConvertByteToAsmHex (
    892           1.1  jruoho     UINT8                   RawByte,
    893           1.1  jruoho     UINT8                   *Buffer);
    894           1.1  jruoho 
    895           1.1  jruoho char *
    896           1.1  jruoho UtGetOpName (
    897           1.1  jruoho     UINT32                  ParseOpcode);
    898           1.1  jruoho 
    899           1.1  jruoho void
    900           1.1  jruoho UtSetParseOpName (
    901           1.1  jruoho     ACPI_PARSE_OBJECT       *Op);
    902           1.1  jruoho 
    903           1.1  jruoho char *
    904           1.1  jruoho UtGetStringBuffer (
    905           1.1  jruoho     UINT32                  Length);
    906           1.1  jruoho 
    907  1.1.1.3.12.1     tls void
    908  1.1.1.3.12.1     tls UtExpandLineBuffers (
    909  1.1.1.3.12.1     tls     void);
    910  1.1.1.3.12.1     tls 
    911           1.1  jruoho ACPI_STATUS
    912           1.1  jruoho UtInternalizeName (
    913           1.1  jruoho     char                    *ExternalName,
    914           1.1  jruoho     char                    **ConvertedName);
    915           1.1  jruoho 
    916           1.1  jruoho void
    917           1.1  jruoho UtAttachNamepathToOwner (
    918           1.1  jruoho     ACPI_PARSE_OBJECT       *Op,
    919           1.1  jruoho     ACPI_PARSE_OBJECT       *NameNode);
    920           1.1  jruoho 
    921           1.1  jruoho ACPI_PARSE_OBJECT *
    922           1.1  jruoho UtCheckIntegerRange (
    923           1.1  jruoho     ACPI_PARSE_OBJECT       *Op,
    924           1.1  jruoho     UINT32                  LowValue,
    925           1.1  jruoho     UINT32                  HighValue);
    926           1.1  jruoho 
    927           1.1  jruoho UINT64
    928           1.1  jruoho UtDoConstant (
    929           1.1  jruoho     char                    *String);
    930           1.1  jruoho 
    931       1.1.1.3  jruoho ACPI_STATUS
    932       1.1.1.3  jruoho UtStrtoul64 (
    933       1.1.1.3  jruoho     char                    *String,
    934       1.1.1.3  jruoho     UINT32                  Base,
    935       1.1.1.3  jruoho     UINT64                  *RetInteger);
    936       1.1.1.3  jruoho 
    937       1.1.1.3  jruoho 
    938       1.1.1.2  jruoho /*
    939       1.1.1.2  jruoho  * asluuid - UUID support
    940       1.1.1.2  jruoho  */
    941       1.1.1.2  jruoho ACPI_STATUS
    942       1.1.1.2  jruoho AuValidateUuid (
    943       1.1.1.2  jruoho     char                    *InString);
    944       1.1.1.2  jruoho 
    945       1.1.1.2  jruoho ACPI_STATUS
    946       1.1.1.2  jruoho AuConvertStringToUuid (
    947       1.1.1.2  jruoho     char                    *InString,
    948       1.1.1.2  jruoho     char                    *UuIdBuffer);
    949       1.1.1.2  jruoho 
    950       1.1.1.2  jruoho ACPI_STATUS
    951       1.1.1.2  jruoho AuConvertUuidToString (
    952       1.1.1.2  jruoho     char                    *UuIdBuffer,
    953       1.1.1.2  jruoho     char                    *OutString);
    954           1.1  jruoho 
    955           1.1  jruoho /*
    956           1.1  jruoho  * aslresource - Resource template generation utilities
    957           1.1  jruoho  */
    958           1.1  jruoho void
    959           1.1  jruoho RsSmallAddressCheck (
    960           1.1  jruoho     UINT8                   Type,
    961           1.1  jruoho     UINT32                  Minimum,
    962           1.1  jruoho     UINT32                  Maximum,
    963           1.1  jruoho     UINT32                  Length,
    964           1.1  jruoho     UINT32                  Alignment,
    965           1.1  jruoho     ACPI_PARSE_OBJECT       *MinOp,
    966           1.1  jruoho     ACPI_PARSE_OBJECT       *MaxOp,
    967           1.1  jruoho     ACPI_PARSE_OBJECT       *LengthOp,
    968       1.1.1.2  jruoho     ACPI_PARSE_OBJECT       *AlignOp,
    969       1.1.1.2  jruoho     ACPI_PARSE_OBJECT       *Op);
    970           1.1  jruoho 
    971           1.1  jruoho void
    972           1.1  jruoho RsLargeAddressCheck (
    973           1.1  jruoho     UINT64                  Minimum,
    974           1.1  jruoho     UINT64                  Maximum,
    975           1.1  jruoho     UINT64                  Length,
    976           1.1  jruoho     UINT64                  Granularity,
    977           1.1  jruoho     UINT8                   Flags,
    978           1.1  jruoho     ACPI_PARSE_OBJECT       *MinOp,
    979           1.1  jruoho     ACPI_PARSE_OBJECT       *MaxOp,
    980           1.1  jruoho     ACPI_PARSE_OBJECT       *LengthOp,
    981       1.1.1.2  jruoho     ACPI_PARSE_OBJECT       *GranOp,
    982       1.1.1.2  jruoho     ACPI_PARSE_OBJECT       *Op);
    983           1.1  jruoho 
    984           1.1  jruoho UINT16
    985           1.1  jruoho RsGetStringDataLength (
    986           1.1  jruoho     ACPI_PARSE_OBJECT       *InitializerOp);
    987           1.1  jruoho 
    988           1.1  jruoho ASL_RESOURCE_NODE *
    989           1.1  jruoho RsAllocateResourceNode (
    990           1.1  jruoho     UINT32                  Size);
    991           1.1  jruoho 
    992           1.1  jruoho void
    993  1.1.1.3.12.1     tls RsCreateResourceField (
    994           1.1  jruoho     ACPI_PARSE_OBJECT       *Op,
    995           1.1  jruoho     char                    *Name,
    996           1.1  jruoho     UINT32                  ByteOffset,
    997  1.1.1.3.12.1     tls     UINT32                  BitOffset,
    998  1.1.1.3.12.1     tls     UINT32                  BitLength);
    999           1.1  jruoho 
   1000           1.1  jruoho void
   1001  1.1.1.3.12.1     tls RsSetFlagBits (
   1002  1.1.1.3.12.1     tls     UINT8                   *Flags,
   1003           1.1  jruoho     ACPI_PARSE_OBJECT       *Op,
   1004  1.1.1.3.12.1     tls     UINT8                   Position,
   1005  1.1.1.3.12.1     tls     UINT8                   DefaultBit);
   1006           1.1  jruoho 
   1007           1.1  jruoho void
   1008  1.1.1.3.12.1     tls RsSetFlagBits16 (
   1009  1.1.1.3.12.1     tls     UINT16                  *Flags,
   1010           1.1  jruoho     ACPI_PARSE_OBJECT       *Op,
   1011           1.1  jruoho     UINT8                   Position,
   1012           1.1  jruoho     UINT8                   DefaultBit);
   1013           1.1  jruoho 
   1014           1.1  jruoho ACPI_PARSE_OBJECT *
   1015           1.1  jruoho RsCompleteNodeAndGetNext (
   1016           1.1  jruoho     ACPI_PARSE_OBJECT       *Op);
   1017           1.1  jruoho 
   1018           1.1  jruoho void
   1019           1.1  jruoho RsCheckListForDuplicates (
   1020           1.1  jruoho     ACPI_PARSE_OBJECT       *Op);
   1021           1.1  jruoho 
   1022           1.1  jruoho ASL_RESOURCE_NODE *
   1023           1.1  jruoho RsDoOneResourceDescriptor (
   1024           1.1  jruoho     ACPI_PARSE_OBJECT       *DescriptorTypeOp,
   1025           1.1  jruoho     UINT32                  CurrentByteOffset,
   1026           1.1  jruoho     UINT8                   *State);
   1027           1.1  jruoho 
   1028           1.1  jruoho /* Values for State above */
   1029           1.1  jruoho 
   1030           1.1  jruoho #define ACPI_RSTATE_NORMAL              0
   1031           1.1  jruoho #define ACPI_RSTATE_START_DEPENDENT     1
   1032           1.1  jruoho #define ACPI_RSTATE_DEPENDENT_LIST      2
   1033           1.1  jruoho 
   1034           1.1  jruoho UINT32
   1035           1.1  jruoho RsLinkDescriptorChain (
   1036           1.1  jruoho     ASL_RESOURCE_NODE       **PreviousRnode,
   1037           1.1  jruoho     ASL_RESOURCE_NODE       *Rnode);
   1038           1.1  jruoho 
   1039           1.1  jruoho void
   1040           1.1  jruoho RsDoResourceTemplate (
   1041           1.1  jruoho     ACPI_PARSE_OBJECT       *Op);
   1042           1.1  jruoho 
   1043           1.1  jruoho 
   1044           1.1  jruoho /*
   1045           1.1  jruoho  * aslrestype1 - Miscellaneous Small descriptors
   1046           1.1  jruoho  */
   1047           1.1  jruoho ASL_RESOURCE_NODE *
   1048           1.1  jruoho RsDoEndTagDescriptor (
   1049           1.1  jruoho     ACPI_PARSE_OBJECT       *Op,
   1050           1.1  jruoho     UINT32                  CurrentByteOffset);
   1051           1.1  jruoho 
   1052           1.1  jruoho ASL_RESOURCE_NODE *
   1053           1.1  jruoho RsDoEndDependentDescriptor (
   1054           1.1  jruoho     ACPI_PARSE_OBJECT       *Op,
   1055           1.1  jruoho     UINT32                  CurrentByteOffset);
   1056           1.1  jruoho 
   1057           1.1  jruoho ASL_RESOURCE_NODE *
   1058           1.1  jruoho RsDoMemory24Descriptor (
   1059           1.1  jruoho     ACPI_PARSE_OBJECT       *Op,
   1060           1.1  jruoho     UINT32                  CurrentByteOffset);
   1061           1.1  jruoho 
   1062           1.1  jruoho ASL_RESOURCE_NODE *
   1063           1.1  jruoho RsDoMemory32Descriptor (
   1064           1.1  jruoho     ACPI_PARSE_OBJECT       *Op,
   1065           1.1  jruoho     UINT32                  CurrentByteOffset);
   1066           1.1  jruoho 
   1067           1.1  jruoho ASL_RESOURCE_NODE *
   1068           1.1  jruoho RsDoMemory32FixedDescriptor (
   1069           1.1  jruoho     ACPI_PARSE_OBJECT       *Op,
   1070           1.1  jruoho     UINT32                  CurrentByteOffset);
   1071           1.1  jruoho 
   1072           1.1  jruoho ASL_RESOURCE_NODE *
   1073           1.1  jruoho RsDoStartDependentDescriptor (
   1074           1.1  jruoho     ACPI_PARSE_OBJECT       *Op,
   1075           1.1  jruoho     UINT32                  CurrentByteOffset);
   1076           1.1  jruoho 
   1077           1.1  jruoho ASL_RESOURCE_NODE *
   1078           1.1  jruoho RsDoStartDependentNoPriDescriptor (
   1079           1.1  jruoho     ACPI_PARSE_OBJECT       *Op,
   1080           1.1  jruoho     UINT32                  CurrentByteOffset);
   1081           1.1  jruoho 
   1082           1.1  jruoho ASL_RESOURCE_NODE *
   1083           1.1  jruoho RsDoVendorSmallDescriptor (
   1084           1.1  jruoho     ACPI_PARSE_OBJECT       *Op,
   1085           1.1  jruoho     UINT32                  CurrentByteOffset);
   1086           1.1  jruoho 
   1087           1.1  jruoho 
   1088           1.1  jruoho /*
   1089           1.1  jruoho  * aslrestype1i - I/O-related Small descriptors
   1090           1.1  jruoho  */
   1091           1.1  jruoho ASL_RESOURCE_NODE *
   1092           1.1  jruoho RsDoDmaDescriptor (
   1093           1.1  jruoho     ACPI_PARSE_OBJECT       *Op,
   1094           1.1  jruoho     UINT32                  CurrentByteOffset);
   1095           1.1  jruoho 
   1096           1.1  jruoho ASL_RESOURCE_NODE *
   1097  1.1.1.3.12.1     tls RsDoFixedDmaDescriptor (
   1098  1.1.1.3.12.1     tls     ACPI_PARSE_OBJECT       *Op,
   1099  1.1.1.3.12.1     tls     UINT32                  CurrentByteOffset);
   1100  1.1.1.3.12.1     tls 
   1101  1.1.1.3.12.1     tls ASL_RESOURCE_NODE *
   1102           1.1  jruoho RsDoFixedIoDescriptor (
   1103           1.1  jruoho     ACPI_PARSE_OBJECT       *Op,
   1104           1.1  jruoho     UINT32                  CurrentByteOffset);
   1105           1.1  jruoho 
   1106           1.1  jruoho ASL_RESOURCE_NODE *
   1107           1.1  jruoho RsDoIoDescriptor (
   1108           1.1  jruoho     ACPI_PARSE_OBJECT       *Op,
   1109           1.1  jruoho     UINT32                  CurrentByteOffset);
   1110           1.1  jruoho 
   1111           1.1  jruoho ASL_RESOURCE_NODE *
   1112           1.1  jruoho RsDoIrqDescriptor (
   1113           1.1  jruoho     ACPI_PARSE_OBJECT       *Op,
   1114           1.1  jruoho     UINT32                  CurrentByteOffset);
   1115           1.1  jruoho 
   1116           1.1  jruoho ASL_RESOURCE_NODE *
   1117           1.1  jruoho RsDoIrqNoFlagsDescriptor (
   1118           1.1  jruoho     ACPI_PARSE_OBJECT       *Op,
   1119           1.1  jruoho     UINT32                  CurrentByteOffset);
   1120           1.1  jruoho 
   1121           1.1  jruoho 
   1122           1.1  jruoho /*
   1123           1.1  jruoho  * aslrestype2 - Large resource descriptors
   1124           1.1  jruoho  */
   1125           1.1  jruoho ASL_RESOURCE_NODE *
   1126           1.1  jruoho RsDoInterruptDescriptor (
   1127           1.1  jruoho     ACPI_PARSE_OBJECT       *Op,
   1128           1.1  jruoho     UINT32                  CurrentByteOffset);
   1129           1.1  jruoho 
   1130           1.1  jruoho ASL_RESOURCE_NODE *
   1131           1.1  jruoho RsDoVendorLargeDescriptor (
   1132           1.1  jruoho     ACPI_PARSE_OBJECT       *Op,
   1133           1.1  jruoho     UINT32                  CurrentByteOffset);
   1134           1.1  jruoho 
   1135           1.1  jruoho ASL_RESOURCE_NODE *
   1136           1.1  jruoho RsDoGeneralRegisterDescriptor (
   1137           1.1  jruoho     ACPI_PARSE_OBJECT       *Op,
   1138           1.1  jruoho     UINT32                  CurrentByteOffset);
   1139           1.1  jruoho 
   1140  1.1.1.3.12.1     tls ASL_RESOURCE_NODE *
   1141  1.1.1.3.12.1     tls RsDoGpioIntDescriptor (
   1142  1.1.1.3.12.1     tls     ACPI_PARSE_OBJECT       *Op,
   1143  1.1.1.3.12.1     tls     UINT32                  CurrentByteOffset);
   1144  1.1.1.3.12.1     tls 
   1145  1.1.1.3.12.1     tls ASL_RESOURCE_NODE *
   1146  1.1.1.3.12.1     tls RsDoGpioIoDescriptor (
   1147  1.1.1.3.12.1     tls     ACPI_PARSE_OBJECT       *Op,
   1148  1.1.1.3.12.1     tls     UINT32                  CurrentByteOffset);
   1149  1.1.1.3.12.1     tls 
   1150  1.1.1.3.12.1     tls ASL_RESOURCE_NODE *
   1151  1.1.1.3.12.1     tls RsDoI2cSerialBusDescriptor (
   1152  1.1.1.3.12.1     tls     ACPI_PARSE_OBJECT       *Op,
   1153  1.1.1.3.12.1     tls     UINT32                  CurrentByteOffset);
   1154  1.1.1.3.12.1     tls 
   1155  1.1.1.3.12.1     tls ASL_RESOURCE_NODE *
   1156  1.1.1.3.12.1     tls RsDoSpiSerialBusDescriptor (
   1157  1.1.1.3.12.1     tls     ACPI_PARSE_OBJECT       *Op,
   1158  1.1.1.3.12.1     tls     UINT32                  CurrentByteOffset);
   1159  1.1.1.3.12.1     tls 
   1160  1.1.1.3.12.1     tls ASL_RESOURCE_NODE *
   1161  1.1.1.3.12.1     tls RsDoUartSerialBusDescriptor (
   1162  1.1.1.3.12.1     tls     ACPI_PARSE_OBJECT       *Op,
   1163  1.1.1.3.12.1     tls     UINT32                  CurrentByteOffset);
   1164           1.1  jruoho 
   1165           1.1  jruoho /*
   1166           1.1  jruoho  * aslrestype2d - DWord address descriptors
   1167           1.1  jruoho  */
   1168           1.1  jruoho ASL_RESOURCE_NODE *
   1169           1.1  jruoho RsDoDwordIoDescriptor (
   1170           1.1  jruoho     ACPI_PARSE_OBJECT       *Op,
   1171           1.1  jruoho     UINT32                  CurrentByteOffset);
   1172           1.1  jruoho 
   1173           1.1  jruoho ASL_RESOURCE_NODE *
   1174           1.1  jruoho RsDoDwordMemoryDescriptor (
   1175           1.1  jruoho     ACPI_PARSE_OBJECT       *Op,
   1176           1.1  jruoho     UINT32                  CurrentByteOffset);
   1177           1.1  jruoho 
   1178           1.1  jruoho ASL_RESOURCE_NODE *
   1179           1.1  jruoho RsDoDwordSpaceDescriptor (
   1180           1.1  jruoho     ACPI_PARSE_OBJECT       *Op,
   1181           1.1  jruoho     UINT32                  CurrentByteOffset);
   1182           1.1  jruoho 
   1183           1.1  jruoho 
   1184           1.1  jruoho /*
   1185           1.1  jruoho  * aslrestype2e - Extended address descriptors
   1186           1.1  jruoho  */
   1187           1.1  jruoho ASL_RESOURCE_NODE *
   1188           1.1  jruoho RsDoExtendedIoDescriptor (
   1189           1.1  jruoho     ACPI_PARSE_OBJECT       *Op,
   1190           1.1  jruoho     UINT32                  CurrentByteOffset);
   1191           1.1  jruoho 
   1192           1.1  jruoho ASL_RESOURCE_NODE *
   1193           1.1  jruoho RsDoExtendedMemoryDescriptor (
   1194           1.1  jruoho     ACPI_PARSE_OBJECT       *Op,
   1195           1.1  jruoho     UINT32                  CurrentByteOffset);
   1196           1.1  jruoho 
   1197           1.1  jruoho ASL_RESOURCE_NODE *
   1198           1.1  jruoho RsDoExtendedSpaceDescriptor (
   1199           1.1  jruoho     ACPI_PARSE_OBJECT       *Op,
   1200           1.1  jruoho     UINT32                  CurrentByteOffset);
   1201           1.1  jruoho 
   1202           1.1  jruoho 
   1203           1.1  jruoho /*
   1204           1.1  jruoho  * aslrestype2q - QWord address descriptors
   1205           1.1  jruoho  */
   1206           1.1  jruoho ASL_RESOURCE_NODE *
   1207           1.1  jruoho RsDoQwordIoDescriptor (
   1208           1.1  jruoho     ACPI_PARSE_OBJECT       *Op,
   1209           1.1  jruoho     UINT32                  CurrentByteOffset);
   1210           1.1  jruoho 
   1211           1.1  jruoho ASL_RESOURCE_NODE *
   1212           1.1  jruoho RsDoQwordMemoryDescriptor (
   1213           1.1  jruoho     ACPI_PARSE_OBJECT       *Op,
   1214           1.1  jruoho     UINT32                  CurrentByteOffset);
   1215           1.1  jruoho 
   1216           1.1  jruoho ASL_RESOURCE_NODE *
   1217           1.1  jruoho RsDoQwordSpaceDescriptor (
   1218           1.1  jruoho     ACPI_PARSE_OBJECT       *Op,
   1219           1.1  jruoho     UINT32                  CurrentByteOffset);
   1220           1.1  jruoho 
   1221           1.1  jruoho 
   1222           1.1  jruoho /*
   1223           1.1  jruoho  * aslrestype2w - Word address descriptors
   1224           1.1  jruoho  */
   1225           1.1  jruoho ASL_RESOURCE_NODE *
   1226           1.1  jruoho RsDoWordIoDescriptor (
   1227           1.1  jruoho     ACPI_PARSE_OBJECT       *Op,
   1228           1.1  jruoho     UINT32                  CurrentByteOffset);
   1229           1.1  jruoho 
   1230           1.1  jruoho ASL_RESOURCE_NODE *
   1231           1.1  jruoho RsDoWordSpaceDescriptor (
   1232           1.1  jruoho     ACPI_PARSE_OBJECT       *Op,
   1233           1.1  jruoho     UINT32                  CurrentByteOffset);
   1234           1.1  jruoho 
   1235           1.1  jruoho ASL_RESOURCE_NODE *
   1236           1.1  jruoho RsDoWordBusNumberDescriptor (
   1237           1.1  jruoho     ACPI_PARSE_OBJECT       *Op,
   1238           1.1  jruoho     UINT32                  CurrentByteOffset);
   1239           1.1  jruoho 
   1240           1.1  jruoho /*
   1241           1.1  jruoho  * Entry to data table compiler subsystem
   1242           1.1  jruoho  */
   1243           1.1  jruoho ACPI_STATUS
   1244           1.1  jruoho DtDoCompile(
   1245           1.1  jruoho     void);
   1246           1.1  jruoho 
   1247       1.1.1.2  jruoho ACPI_STATUS
   1248       1.1.1.2  jruoho DtCreateTemplates (
   1249       1.1.1.2  jruoho     char                    *Signature);
   1250       1.1.1.2  jruoho 
   1251           1.1  jruoho #endif /*  __ASLCOMPILER_H */
   1252