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