Home | History | Annotate | Line # | Download | only in acpihelp
ahaslops.c revision 1.1
      1  1.1  jruoho /******************************************************************************
      2  1.1  jruoho  *
      3  1.1  jruoho  * Module Name: ahaslops - Table of all known ASL operators
      4  1.1  jruoho  *
      5  1.1  jruoho  *****************************************************************************/
      6  1.1  jruoho 
      7  1.1  jruoho /*
      8  1.1  jruoho  * Copyright (C) 2000 - 2011, Intel Corp.
      9  1.1  jruoho  * All rights reserved.
     10  1.1  jruoho  *
     11  1.1  jruoho  * Redistribution and use in source and binary forms, with or without
     12  1.1  jruoho  * modification, are permitted provided that the following conditions
     13  1.1  jruoho  * are met:
     14  1.1  jruoho  * 1. Redistributions of source code must retain the above copyright
     15  1.1  jruoho  *    notice, this list of conditions, and the following disclaimer,
     16  1.1  jruoho  *    without modification.
     17  1.1  jruoho  * 2. Redistributions in binary form must reproduce at minimum a disclaimer
     18  1.1  jruoho  *    substantially similar to the "NO WARRANTY" disclaimer below
     19  1.1  jruoho  *    ("Disclaimer") and any redistribution must be conditioned upon
     20  1.1  jruoho  *    including a substantially similar Disclaimer requirement for further
     21  1.1  jruoho  *    binary redistribution.
     22  1.1  jruoho  * 3. Neither the names of the above-listed copyright holders nor the names
     23  1.1  jruoho  *    of any contributors may be used to endorse or promote products derived
     24  1.1  jruoho  *    from this software without specific prior written permission.
     25  1.1  jruoho  *
     26  1.1  jruoho  * Alternatively, this software may be distributed under the terms of the
     27  1.1  jruoho  * GNU General Public License ("GPL") version 2 as published by the Free
     28  1.1  jruoho  * Software Foundation.
     29  1.1  jruoho  *
     30  1.1  jruoho  * NO WARRANTY
     31  1.1  jruoho  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
     32  1.1  jruoho  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
     33  1.1  jruoho  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR
     34  1.1  jruoho  * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
     35  1.1  jruoho  * HOLDERS OR CONTRIBUTORS BE LIABLE FOR SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
     36  1.1  jruoho  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
     37  1.1  jruoho  * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
     38  1.1  jruoho  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
     39  1.1  jruoho  * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
     40  1.1  jruoho  * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
     41  1.1  jruoho  * POSSIBILITY OF SUCH DAMAGES.
     42  1.1  jruoho  */
     43  1.1  jruoho 
     44  1.1  jruoho #include "acpihelp.h"
     45  1.1  jruoho 
     46  1.1  jruoho /*
     47  1.1  jruoho  * ASL operators with syntax (directly from ACPI specification).
     48  1.1  jruoho  * Note: All tokens require a space separator.
     49  1.1  jruoho  * Long lines are automatically split during output.
     50  1.1  jruoho  */
     51  1.1  jruoho const AH_ASL_OPERATOR       AslOperatorInfo[] =
     52  1.1  jruoho {
     53  1.1  jruoho     {"Acquire",                 "(SyncObject, TimeoutValue) => Boolean",
     54  1.1  jruoho                                 "Acquire a mutex"},
     55  1.1  jruoho     {"Add",                     "(Addend1, Addend2, Result) => Integer",
     56  1.1  jruoho                                 "Integer Add"},
     57  1.1  jruoho     {"Alias",                   "(SourceObject, AliasObject)",
     58  1.1  jruoho                                 "Define a name alias"},
     59  1.1  jruoho     {"And",                     "(Source1, Source2, Result) => Integer",
     60  1.1  jruoho                                 "Integer Bitwise And"},
     61  1.1  jruoho     {"Arg",                     "Arg0 - Arg6",
     62  1.1  jruoho                                 "Method argument data objects"},
     63  1.1  jruoho     {"BankField",               "(RegionName, BankName, BankValue, AccessType, LockRule, UpdateRule) {FieldUnitList}",
     64  1.1  jruoho                                 "Declare fields in a banked configuration object"},
     65  1.1  jruoho     {"Break",                   NULL,
     66  1.1  jruoho                                 "Continue following the innermost enclosing While"},
     67  1.1  jruoho     {"BreakPoint",              NULL,
     68  1.1  jruoho                                 "Used for debugging, stops execution in the debugger"},
     69  1.1  jruoho     {"Buffer",                  "(BufferSize) {String or ByteList} => Buffer",
     70  1.1  jruoho                                 "Declare Buffer object"},
     71  1.1  jruoho     {"Case",                    "(Value) {TermList}",
     72  1.1  jruoho                                 "Expression for conditional execution"},
     73  1.1  jruoho     {"Concatenate",             "(Source1, Source2, Result) => ComputationalData",
     74  1.1  jruoho                                 "Concatenate two strings}, integers or buffers"},
     75  1.1  jruoho     {"ConcatenateResTemplate",  "(Source1, Source2, Result) => Buffer",
     76  1.1  jruoho                                 "Concatenate two resource templates"},
     77  1.1  jruoho     {"CondRefOf",               "(Source, Result) => Boolean",
     78  1.1  jruoho                                 "Conditional reference to an object"},
     79  1.1  jruoho     {"Continue",                NULL,
     80  1.1  jruoho                                 "Continue innermost enclosing While loop"},
     81  1.1  jruoho     {"CopyObject",              "(Source, Destination) => DataRefObject",
     82  1.1  jruoho                                 "Copy and existing object"},
     83  1.1  jruoho     {"CreateBitField",          "(SourceBuffer, BitIndex, BitFieldName)",
     84  1.1  jruoho                                 "Declare a bit field object of a buffer object"},
     85  1.1  jruoho     {"CreateByteField",         "(SourceBuffer, ByteIndex, ByteFieldName)",
     86  1.1  jruoho                                 "Declare a byte field object of a buffer object"},
     87  1.1  jruoho     {"CreateDWordField",        "(SourceBuffer, ByteIndex, DWordFieldName)",
     88  1.1  jruoho                                 "Declare a DWord field object of a buffer object"},
     89  1.1  jruoho     {"CreateField",             "(SourceBuffer, BitIndex, NumBits, FieldName)",
     90  1.1  jruoho                                 "Declare an arbitrary length bit field of a buffer object"},
     91  1.1  jruoho     {"CreateQWordField",        "(SourceBuffer, ByteIndex, QWordFieldName)",
     92  1.1  jruoho                                 "Declare a QWord field object of a buffer object"},
     93  1.1  jruoho     {"CreateWordField",         "(SourceBuffer, ByteIndex, WordFieldName)",
     94  1.1  jruoho                                 "Declare a Word field object of a buffer object"},
     95  1.1  jruoho     {"DataTableRegion",         "(RegionName, SignatureString, OemIDString, OemTableIDString)",
     96  1.1  jruoho                                 "Declare a Data Table Region"},
     97  1.1  jruoho     {"Debug",                   NULL,
     98  1.1  jruoho                                 "Debugger output"},
     99  1.1  jruoho     {"Decrement",               "(Minuend) => Integer",
    100  1.1  jruoho                                 "Decrement an Integer"},
    101  1.1  jruoho     {"Default",                 "{TermList}",
    102  1.1  jruoho                                 "Default execution path in Switch()"},
    103  1.1  jruoho     {"DefinitionBlock",         "(AMLFileName, TableSignature, ComplianceRevision, OEMID, TableID, OEMRevision) {TermList}",
    104  1.1  jruoho                                 "Declare a Definition Block"},
    105  1.1  jruoho     {"DerefOf",                 "(Source) => Object",
    106  1.1  jruoho                                 "Dereference an object reference"},
    107  1.1  jruoho     {"Device",                  "(DeviceName) {ObjectList}",
    108  1.1  jruoho                                 "Declare a bus/device object"},
    109  1.1  jruoho     {"Divide",                  "(Dividend, Divisor, Remainder, Result) => Integer",
    110  1.1  jruoho                                 "Integer Divide"},
    111  1.1  jruoho     {"DMA",                     "(DmaType, IsBusMaster, DmaTransferSize, DescriptorName) {DmaChannelList} => Buffer",
    112  1.1  jruoho                                 "DMA Resource Descriptor macro"},
    113  1.1  jruoho     {"DWordIO",                 "(ResourceUsage, IsMinFixed, IsMaxFixed, Decode, ISARanges, AddressGranularity, "
    114  1.1  jruoho                                 "AddressMinimum, AddressMaximum, AddressTranslation, RangeLength, ResourceSourceIndex, "
    115  1.1  jruoho                                 "ResourceSource, DescriptorName, TranslationType, TranslationDensity)",
    116  1.1  jruoho                                 "DWord IO Resource Descriptor macro"},
    117  1.1  jruoho     {"DWordMemory",             "(ResourceUsage, Decode, IsMinFixed, IsMaxFixed, Cacheable, ReadAndWrite, "
    118  1.1  jruoho                                 "AddressGranularity, AddressMinimum, AddressMaximum, AddressTranslation, "
    119  1.1  jruoho                                 "RangeLength, ResourceSourceIndex, ResourceSource, DescriptorName, MemoryType, "
    120  1.1  jruoho                                 "TranslationType)",
    121  1.1  jruoho                                 "DWord Memory Resource Descriptor macro"},
    122  1.1  jruoho     {"DWordSpace",              "(ResourceType, ResourceUsage, Decode, IsMinFixed, IsMaxFixed, TypeSpecificFlags, "
    123  1.1  jruoho                                 "AddressGranularity, AddressMinimum, AddressMaximum, AddressTranslation, RangeLength, "
    124  1.1  jruoho                                 "ResourceSourceIndex, ResourceSource, DescriptorName)",
    125  1.1  jruoho                                 "DWord Space Resource Descriptor macro"},
    126  1.1  jruoho     {"EISAID",                  "(EisaIdString) => DWordConst",
    127  1.1  jruoho                                 "EISA ID String to Integer conversion macro"},
    128  1.1  jruoho     {"Else",                    "{TermList}",
    129  1.1  jruoho                                 "Alternate conditional execution"},
    130  1.1  jruoho     {"ElseIf",                  "(Predicate)",
    131  1.1  jruoho                                 "Conditional execution"},
    132  1.1  jruoho     {"EndDependentFn",          "() => Buffer",
    133  1.1  jruoho                                 "End Dependent Function Resource Descriptor macro"},
    134  1.1  jruoho     {"Event",                   "(EventName)",
    135  1.1  jruoho                                 "Declare an event synchronization object"},
    136  1.1  jruoho     {"ExtendedIO",              "(ResourceUsage, IsMinFixed, IsMaxFixed, Decode, ISARanges, AddressGranularity, "
    137  1.1  jruoho                                 "AddressMinimum, AddressMaximum, AddressTranslation, RangeLength, "
    138  1.1  jruoho                                 "TypeSpecificAttributes, DescriptorName, TranslationType, TranslationDensity)",
    139  1.1  jruoho                                 "Extended IO Resource Descriptor macro"},
    140  1.1  jruoho     {"ExtendedMemory",          "(ResourceUsage, Decode, IsMinFixed, IsMaxFixed, Cacheable, ReadAndWrite, "
    141  1.1  jruoho                                 "AddressGranularity, AddressMinimum, AddressMaximum, AddressTranslation, "
    142  1.1  jruoho                                 "RangeLength, TypeSpecificAttributes, DescriptorName, MemoryType, TranslationType)",
    143  1.1  jruoho                                 "Extended Memory Resource Descriptor macro"},
    144  1.1  jruoho     {"ExtendedSpace",           "(ResourceType, ResourceUsage, Decode, IsMinFixed, IsMaxFixed, TypeSpecificFlags, "
    145  1.1  jruoho                                 "AddressGranularity, AddressMinimum, AddressMaximum, AddressTranslation, "
    146  1.1  jruoho                                 "RangeLength, TypeSpecificAttributes, DescriptorName)",
    147  1.1  jruoho                                 "Extended Space Resource Descriptor macro"},
    148  1.1  jruoho     {"External",                "(ObjectName, ObjectType, ReturnType, ParameterTypes)",
    149  1.1  jruoho                                 "Declare external objects"},
    150  1.1  jruoho     {"Fatal",                   "(Type, Code, Arg)",
    151  1.1  jruoho                                 "Fatal error check"},
    152  1.1  jruoho     {"Field",                   "(RegionName, AccessType, LockRule, UpdateRule) {FieldUnitList}",
    153  1.1  jruoho                                 "Declare fields of an operation region object"},
    154  1.1  jruoho     {"FindSetLeftBit",          "(Source, Result) => Integer",
    155  1.1  jruoho                                 "Index of first least significant bit set"},
    156  1.1  jruoho     {"FindSetRightBit",         "(Source, Result) => Integer",
    157  1.1  jruoho                                 "Index of first most significant bit set"},
    158  1.1  jruoho     {"FixedIO",                 "(AddressBase, RangeLength, DescriptorName) => Buffer",
    159  1.1  jruoho                                 "Fixed I/O Resource Descriptor macro"},
    160  1.1  jruoho     {"FromBCD",                 "(BCDValue, Result) => Integer",
    161  1.1  jruoho                                 "Convert from BCD to numeric"},
    162  1.1  jruoho     {"Function",                "(FunctionName, ReturnType, ParameterTypes) {TermList}",
    163  1.1  jruoho                                 "Declare control method"},
    164  1.1  jruoho     {"If",                      "(Predicate) {TermList}",
    165  1.1  jruoho                                 "Conditional execution"},
    166  1.1  jruoho     {"Include",                 "(FilePathName)",
    167  1.1  jruoho                                 "Include another ASL file"},
    168  1.1  jruoho     {"Increment",               "(Addend) => Integer",
    169  1.1  jruoho                                 "Increment a Integer"},
    170  1.1  jruoho     {"Index",                   "(Source, Index, Destination) => ObjectReference",
    171  1.1  jruoho                                 "Indexed Reference to member object"},
    172  1.1  jruoho     {"IndexField",              "(IndexName, DataName, AccessType, LockRule, UpdateRule) {FieldUnitList}",
    173  1.1  jruoho                                 "Declare Index/Data Fields"},
    174  1.1  jruoho     {"Interrupt",               "(ResourceUsage, EdgeLevel, ActiveLevel, Shared, ResourceSourceIndex, "
    175  1.1  jruoho                                 "ResourceSource, DescriptorName) {InterruptList} => Buffer",
    176  1.1  jruoho                                 "Interrupt Resource Descriptor macro"},
    177  1.1  jruoho     {"IO",                      "(Decode, AddressMin, AddressMax, AddressAlignment, RangeLength, DescriptorName) => Buffer",
    178  1.1  jruoho                                 "IO Resource Descriptor macro"},
    179  1.1  jruoho     {"IRQ",                     "(EdgeLevel, ActiveLevel, Shared, DescriptorName) {InterruptList} => Buffer",
    180  1.1  jruoho                                 "Interrupt Resource Descriptor macro"},
    181  1.1  jruoho     {"IRQNoFlags",              "(DescriptorName) {InterruptList} => Buffer",
    182  1.1  jruoho                                 "Short Interrupt Resource Descriptor macro"},
    183  1.1  jruoho     {"LAnd",                    "(Source1, Source2) => Boolean",
    184  1.1  jruoho                                 "Logical And"},
    185  1.1  jruoho     {"LEqual",                  "(Source1, Source2) => Boolean",
    186  1.1  jruoho                                 "Logical Equal"},
    187  1.1  jruoho     {"LGreater",                "(Source1, Source2) => Boolean",
    188  1.1  jruoho                                 "Logical Greater"},
    189  1.1  jruoho     {"LGreaterEqual",           "(Source1, Source2) => Boolean",
    190  1.1  jruoho                                 "Logical Not less"},
    191  1.1  jruoho     {"LLess",                   "(Source1, Source2) => Boolean",
    192  1.1  jruoho                                 "Logical Less"},
    193  1.1  jruoho     {"LLessEqual",              "(Source1, Source2) => Boolean",
    194  1.1  jruoho                                 "Logical Not greater"},
    195  1.1  jruoho     {"LNot",                    "(Source) => Boolean",
    196  1.1  jruoho                                 "Logical Not"},
    197  1.1  jruoho     {"LNotEqual",               "(Source1, Source2) => Boolean",
    198  1.1  jruoho                                 "Logical Not equal"},
    199  1.1  jruoho     {"Load",                    "(Object, DDBHandle)",
    200  1.1  jruoho                                 "Load differentiating definition block"},
    201  1.1  jruoho     {"LoadTable",               "(SignatureString, OEMIDString, OEMTableIDString, RootPathString, "
    202  1.1  jruoho                                 "ParameterPathString, ParameterData) => DDBHandle",
    203  1.1  jruoho                                 "Load Table from RSDT/XSDT"},
    204  1.1  jruoho     {"Local",                   "Local0 - Local 7",
    205  1.1  jruoho                                 "Method local data objects"},
    206  1.1  jruoho     {"LOr",                     "(Source1, Source2) => Boolean",
    207  1.1  jruoho                                 "Logical Or"},
    208  1.1  jruoho     {"Match",                   "(SearchPackage, Op1, MatchObject1, Op2, MatchObject2, StartIndex) => Ones | Integer",
    209  1.1  jruoho                                 "Search for match in package array"},
    210  1.1  jruoho     {"Memory24",                "(ReadAndWrite, AddressMinimum, AddressMaximum, AddressAlignment, "
    211  1.1  jruoho                                 "RangeLength, DescriptorName)",
    212  1.1  jruoho                                 "Memory Resource Descriptor macro"},
    213  1.1  jruoho     {"Memory32",                "(ReadAndWrite, AddressMinimum, AddressMaximum, AddressAlignment, "
    214  1.1  jruoho                                 "RangeLength, DescriptorName)",
    215  1.1  jruoho                                 "Memory Resource Descriptor macro"},
    216  1.1  jruoho     {"Memory32Fixed",           "(ReadAndWrite, AddressBase, RangeLength, DescriptorName)",
    217  1.1  jruoho                                 "Memory Resource Descriptor macro"},
    218  1.1  jruoho     {"Method",                  "(MethodName, NumArgs, SerializeRule, SyncLevel, ReturnType, ParameterTypes) "
    219  1.1  jruoho                                 "{TermList}",
    220  1.1  jruoho                                 "Declare a control method"},
    221  1.1  jruoho     {"Mid",                     "(Source, Index, Length, Result) => Buffer or String",
    222  1.1  jruoho                                 "Return a portion of buffer or string"},
    223  1.1  jruoho     {"Mod",                     "(Dividend, Divisor, Result) => Integer",
    224  1.1  jruoho                                 "Integer Modulo"},
    225  1.1  jruoho     {"Multiply",                "(Multiplicand, Multiplier, Result) => Integer",
    226  1.1  jruoho                                 "Integer Multiply"},
    227  1.1  jruoho     {"Mutex",                   "(MutexName, SyncLevel)",
    228  1.1  jruoho                                 "Declare a mutex synchronization object"},
    229  1.1  jruoho     {"Name",                    "(ObjectName, Object)",
    230  1.1  jruoho                                 "Declare a Named object"},
    231  1.1  jruoho     {"NAnd",                    "(Source1, Source2, Result) => Integer",
    232  1.1  jruoho                                 "Integer Bitwise Nand"},
    233  1.1  jruoho     {"NoOp",                    NULL,
    234  1.1  jruoho                                 "No operation"},
    235  1.1  jruoho     {"NOr",                     "(Source1, Source2, Result) => Integer",
    236  1.1  jruoho                                 "Integer Bitwise Nor"},
    237  1.1  jruoho     {"Not",                     "(Source, Result) => Integer",
    238  1.1  jruoho                                 "Integer Bitwise Not"},
    239  1.1  jruoho     {"Notify",                  "(Object, NotificationValue)",
    240  1.1  jruoho                                 "Notify Object of event"},
    241  1.1  jruoho     {"ObjectType",              "(Object) => Integer",
    242  1.1  jruoho                                 "Type of object"},
    243  1.1  jruoho     {"One",                     "=> Integer",
    244  1.1  jruoho                                 "Constant One Object (1)"},
    245  1.1  jruoho     {"Ones",                    "=> Integer",
    246  1.1  jruoho                                 "Constant Ones Object (-1)"},
    247  1.1  jruoho     {"OperationRegion",         "(RegionName, RegionSpace, Offset, Length)",
    248  1.1  jruoho                                 "Declare an operational region"},
    249  1.1  jruoho     {"Or",                      "(Source1, Source2, Result) => Integer",
    250  1.1  jruoho                                 "Integer Bitwise Or"},
    251  1.1  jruoho     {"Package",                 "(NumElements) {PackageList} => Package",
    252  1.1  jruoho                                 "Declare a package object"},
    253  1.1  jruoho     {"PowerResource",           "(ResourceName, SystemLevel, ResourceOrder) {ObjectList}",
    254  1.1  jruoho                                 "Declare a power resource object"},
    255  1.1  jruoho     {"Processor",               "(ProcessorName, ProcessorID, PBlockAddress, PblockLength) {ObjectList}",
    256  1.1  jruoho                                 "Declare a processor package"},
    257  1.1  jruoho     {"QWordIO",                 "(ResourceUsage, IsMinFixed, IsMaxFixed, Decode, ISARanges, AddressGranularity, "
    258  1.1  jruoho                                 "AddressMinimum, AddressMaximum, AddressTranslation, RangeLength, "
    259  1.1  jruoho                                 "ResourceSourceIndex, ResourceSource, DescriptorName, TranslationType, "
    260  1.1  jruoho                                 "TranslationDensity)",
    261  1.1  jruoho                                 "QWord IO Resource Descriptor macro"},
    262  1.1  jruoho     {"QWordMemory",             "(ResourceUsage, Decode, IsMinFixed, IsMaxFixed, Cacheable, ReadAndWrite, "
    263  1.1  jruoho                                 "AddressGranularity, AddressMinimum, AddressMaximum, AddressTranslation, "
    264  1.1  jruoho                                 "RangeLength, ResourceSourceIndex, ResourceSource, DescriptorName, MemoryType, "
    265  1.1  jruoho                                 "TranslationType)",
    266  1.1  jruoho                                 "QWord Memory Resource Descriptor macro"},
    267  1.1  jruoho     {"QWordSpace",              "(ResourceType, ResourceUsage, Decode, IsMinFixed, IsMaxFixed, TypeSpecificFlags, "
    268  1.1  jruoho                                 "AddressGranularity, AddressMinimum, AddressMaximum, AddressTranslation, "
    269  1.1  jruoho                                 "RangeLength, ResourceSourceIndex, ResourceSource, DescriptorName)",
    270  1.1  jruoho                                 "Qword Space Resource Descriptor macro"},
    271  1.1  jruoho     {"RefOf",                   "(Object) => ObjectReference",
    272  1.1  jruoho                                 "Create Reference to an object"},
    273  1.1  jruoho     {"Register",                "(AddressSpaceKeyword, RegisterBitWidth, RegisterBitOffset, RegisterAddress, "
    274  1.1  jruoho                                 "AccessSize, DescriptorName)",
    275  1.1  jruoho                                 "Generic register Resource Descriptor macro"},
    276  1.1  jruoho     {"Release",                 "(SyncObject)",
    277  1.1  jruoho                                 "Release a synchronization object"},
    278  1.1  jruoho     {"Reset",                   "(SyncObject)",
    279  1.1  jruoho                                 "Reset a synchronization object"},
    280  1.1  jruoho     {"ResourceTemplate",        "() {ResourceMacroList} => Buffer",
    281  1.1  jruoho                                 "Resource to buffer conversion macro"},
    282  1.1  jruoho     {"Return",                  "None | () | (ReturnArg)",
    283  1.1  jruoho                                 "Return from method execution"},
    284  1.1  jruoho     {"Revision",                "=> Integer",
    285  1.1  jruoho                                 "Constant revision object"},
    286  1.1  jruoho     {"Scope",                   "(Location) {ObjectList}",
    287  1.1  jruoho                                 "Open named scope "},
    288  1.1  jruoho     {"ShiftLeft",               "(Source, ShiftCount, Result) => Integer",
    289  1.1  jruoho                                 "Integer shift value left"},
    290  1.1  jruoho     {"ShiftRight",              "(Source, ShiftCount, Result) => Integer",
    291  1.1  jruoho                                 "Integer shift value right"},
    292  1.1  jruoho     {"Signal",                  "(SyncObject)",
    293  1.1  jruoho                                 "Signal a synchronization object"},
    294  1.1  jruoho     {"SizeOf",                  "(ObjectName) => Integer",
    295  1.1  jruoho                                 "Get the size of a buffer}, string}, or package"},
    296  1.1  jruoho     {"Sleep",                   "(MilliSeconds)",
    297  1.1  jruoho                                 "Sleep n milliseconds (yields the processor)"},
    298  1.1  jruoho     {"Stall",                   "(MicroSeconds)",
    299  1.1  jruoho                                 "Delay n microseconds (does not yield the processor)"},
    300  1.1  jruoho     {"StartDependentFn",        "(CompatibilityPriority, PerformancePriority) {ResourceList}",
    301  1.1  jruoho                                 "Start Dependent Function Resource Descriptor macro"},
    302  1.1  jruoho     {"StartDependentFnNoPri",   "() {ResourceList}",
    303  1.1  jruoho                                 "Start Dependent Function Resource Descriptor macro"},
    304  1.1  jruoho     {"Store",                   "(Source, Destination) => DataRefObject",
    305  1.1  jruoho                                 "Store object"},
    306  1.1  jruoho     {"Subtract",                "(Minuend, Subtrahend, Result) => Integer",
    307  1.1  jruoho                                 "Integer Subtract"},
    308  1.1  jruoho     {"Switch",                  "(Expression) {CaseTermList}",
    309  1.1  jruoho                                 "Select code to execute based on expression value"},
    310  1.1  jruoho     {"ThermalZone",             "(ThermalZoneName) {ObjectList}",
    311  1.1  jruoho                                 "Declare a thermal zone package"},
    312  1.1  jruoho     {"Timer",                   "=> Integer",
    313  1.1  jruoho                                 "Get 64-bit timer value"},
    314  1.1  jruoho     {"ToBCD",                   "(Value, Result) => Integer",
    315  1.1  jruoho                                 "Convert Integer to BCD"},
    316  1.1  jruoho     {"ToBuffer",                "(Data, Result) => Buffer",
    317  1.1  jruoho                                 "Convert data type to buffer"},
    318  1.1  jruoho     {"ToDecimalString",         "(Data, Result) => String",
    319  1.1  jruoho                                 "Convert data type to decimal string"},
    320  1.1  jruoho     {"ToHexString",             "(Data, Result) => String",
    321  1.1  jruoho                                 "Convert data type to hexadecimal string"},
    322  1.1  jruoho     {"ToInteger",               "(Data, Result) => Integer",
    323  1.1  jruoho                                 "Convert data type to integer"},
    324  1.1  jruoho     {"ToString",                "(Source, Length, Result) => String",
    325  1.1  jruoho                                 "Copy ASCII string from buffer"},
    326  1.1  jruoho     {"ToUUID",                  "(AsciiString) => Buffer",
    327  1.1  jruoho                                 "Convert Ascii string to UUID"},
    328  1.1  jruoho     {"Unicode",                 "(String) => Buffer",
    329  1.1  jruoho                                 "String to Unicode conversion macro"},
    330  1.1  jruoho     {"Unload",                  "(Handle)",
    331  1.1  jruoho                                 "Unload definition block"},
    332  1.1  jruoho     {"VendorLong",              "(DescriptorName) {VendorByteList}",
    333  1.1  jruoho                                 "Vendor Resource Descriptor"},
    334  1.1  jruoho     {"VendorShort",             "(DescriptorName) {VendorByteList}",
    335  1.1  jruoho                                 "Vendor Resource Descriptor"},
    336  1.1  jruoho     {"Wait",                    "(SyncObject, TimeoutValue) => Boolean",
    337  1.1  jruoho                                 "Wait on an Event"},
    338  1.1  jruoho     {"While",                   "(Predicate) {TermList}",
    339  1.1  jruoho                                 "Conditional loop"},
    340  1.1  jruoho     {"WordBusNumber",           "(ResourceUsage, IsMinFixed, IsMaxFixed, Decode, AddressGranularity, AddressMinimum, "
    341  1.1  jruoho                                 "AddressMaximum, AddressTranslation, RangeLength, ResourceSourceIndex, "
    342  1.1  jruoho                                 "ResourceSource, DescriptorName)",
    343  1.1  jruoho                                 "Word Bus number Resource Descriptor macro"},
    344  1.1  jruoho     {"WordIO",                  "(ResourceUsage, IsMinFixed, IsMaxFixed, Decode, ISARanges, AddressGranularity, "
    345  1.1  jruoho                                 "AddressMinimum, AddressMaximum, AddressTranslation, RangeLength, "
    346  1.1  jruoho                                 "ResourceSourceIndex, ResourceSource, DescriptorName, TranslationType, "
    347  1.1  jruoho                                 "TranslationDensity)",
    348  1.1  jruoho                                 "Word IO Resource Descriptor macro"},
    349  1.1  jruoho     {"WordSpace",               "(ResourceType, ResourceUsage, Decode, IsMinFixed, IsMaxFixed, TypeSpecificFlags, "
    350  1.1  jruoho                                 "AddressGranularity, AddressMinimum, AddressMaximum, AddressTranslation, "
    351  1.1  jruoho                                 "RangeLength, ResourceSourceIndex, ResourceSource, DescriptorName)",
    352  1.1  jruoho                                 "Word Space Resource Descriptor macro"},
    353  1.1  jruoho     {"XOr",                     "(Source1, Source2, Result) => Integer",
    354  1.1  jruoho                                 "Integer Bitwise Xor"},
    355  1.1  jruoho     {"Zero",                    "=> Integer",
    356  1.1  jruoho                                 "Constant Zero object (0)"},
    357  1.1  jruoho     {NULL, NULL, NULL}
    358  1.1  jruoho };
    359