[haiku-commits] r36867 - in haiku/trunk: headers/os/drivers src/add-ons/kernel/bus_managers/acpi src/add-ons/kernel/bus_managers/acpi/common src/add-ons/kernel/bus_managers/acpi/compiler src/add-ons/kernel/bus_managers/acpi/debugger ...

  • From: fredrik.holmqvist@xxxxxxxxx
  • To: haiku-commits@xxxxxxxxxxxxx
  • Date: Wed, 19 May 2010 23:33:03 +0200 (CEST)

Author: tqh
Date: 2010-05-19 23:33:02 +0200 (Wed, 19 May 2010)
New Revision: 36867
Changeset: http://dev.haiku-os.org/changeset/36867/haiku

Added:
   haiku/trunk/src/add-ons/kernel/bus_managers/acpi/compiler/aslpredef.c
   haiku/trunk/src/add-ons/kernel/bus_managers/acpi/compiler/aslrestype1i.c
   haiku/trunk/src/add-ons/kernel/bus_managers/acpi/compiler/aslrestype2d.c
   haiku/trunk/src/add-ons/kernel/bus_managers/acpi/compiler/aslrestype2e.c
   haiku/trunk/src/add-ons/kernel/bus_managers/acpi/compiler/aslrestype2q.c
   haiku/trunk/src/add-ons/kernel/bus_managers/acpi/compiler/aslrestype2w.c
   haiku/trunk/src/add-ons/kernel/bus_managers/acpi/events/evgpeinit.c
   haiku/trunk/src/add-ons/kernel/bus_managers/acpi/events/evgpeutil.c
   haiku/trunk/src/add-ons/kernel/bus_managers/acpi/executer/exdebug.c
Modified:
   haiku/trunk/headers/os/drivers/ACPI.h
   haiku/trunk/src/add-ons/kernel/bus_managers/acpi/
   haiku/trunk/src/add-ons/kernel/bus_managers/acpi/Jamfile
   haiku/trunk/src/add-ons/kernel/bus_managers/acpi/acpi_busman.c
   haiku/trunk/src/add-ons/kernel/bus_managers/acpi/acpi_embedded_controller.cpp
   haiku/trunk/src/add-ons/kernel/bus_managers/acpi/acpi_module.c
   haiku/trunk/src/add-ons/kernel/bus_managers/acpi/acpi_priv.h
   haiku/trunk/src/add-ons/kernel/bus_managers/acpi/common/adisasm.c
   haiku/trunk/src/add-ons/kernel/bus_managers/acpi/common/dmextern.c
   haiku/trunk/src/add-ons/kernel/bus_managers/acpi/common/dmtable.c
   haiku/trunk/src/add-ons/kernel/bus_managers/acpi/common/dmtbdump.c
   haiku/trunk/src/add-ons/kernel/bus_managers/acpi/common/dmtbinfo.c
   haiku/trunk/src/add-ons/kernel/bus_managers/acpi/compiler/Makefile
   haiku/trunk/src/add-ons/kernel/bus_managers/acpi/compiler/aslanalyze.c
   haiku/trunk/src/add-ons/kernel/bus_managers/acpi/compiler/aslcompile.c
   haiku/trunk/src/add-ons/kernel/bus_managers/acpi/compiler/aslcompiler.h
   haiku/trunk/src/add-ons/kernel/bus_managers/acpi/compiler/asldefine.h
   haiku/trunk/src/add-ons/kernel/bus_managers/acpi/compiler/aslfiles.c
   haiku/trunk/src/add-ons/kernel/bus_managers/acpi/compiler/aslglobal.h
   haiku/trunk/src/add-ons/kernel/bus_managers/acpi/compiler/asllisting.c
   haiku/trunk/src/add-ons/kernel/bus_managers/acpi/compiler/aslmain.c
   haiku/trunk/src/add-ons/kernel/bus_managers/acpi/compiler/aslmap.c
   haiku/trunk/src/add-ons/kernel/bus_managers/acpi/compiler/aslresource.c
   haiku/trunk/src/add-ons/kernel/bus_managers/acpi/compiler/aslrestype1.c
   haiku/trunk/src/add-ons/kernel/bus_managers/acpi/compiler/aslrestype2.c
   haiku/trunk/src/add-ons/kernel/bus_managers/acpi/compiler/aslstubs.c
   haiku/trunk/src/add-ons/kernel/bus_managers/acpi/compiler/asltypes.h
   haiku/trunk/src/add-ons/kernel/bus_managers/acpi/debugger/dbcmds.c
   haiku/trunk/src/add-ons/kernel/bus_managers/acpi/debugger/dbdisply.c
   haiku/trunk/src/add-ons/kernel/bus_managers/acpi/dispatcher/dsfield.c
   haiku/trunk/src/add-ons/kernel/bus_managers/acpi/dispatcher/dsmethod.c
   haiku/trunk/src/add-ons/kernel/bus_managers/acpi/dispatcher/dsmthdat.c
   haiku/trunk/src/add-ons/kernel/bus_managers/acpi/dispatcher/dsobject.c
   haiku/trunk/src/add-ons/kernel/bus_managers/acpi/dispatcher/dsopcode.c
   haiku/trunk/src/add-ons/kernel/bus_managers/acpi/dispatcher/dswexec.c
   haiku/trunk/src/add-ons/kernel/bus_managers/acpi/dispatcher/dswstate.c
   haiku/trunk/src/add-ons/kernel/bus_managers/acpi/events/evevent.c
   haiku/trunk/src/add-ons/kernel/bus_managers/acpi/events/evgpe.c
   haiku/trunk/src/add-ons/kernel/bus_managers/acpi/events/evgpeblk.c
   haiku/trunk/src/add-ons/kernel/bus_managers/acpi/events/evmisc.c
   haiku/trunk/src/add-ons/kernel/bus_managers/acpi/events/evxface.c
   haiku/trunk/src/add-ons/kernel/bus_managers/acpi/events/evxfevnt.c
   haiku/trunk/src/add-ons/kernel/bus_managers/acpi/executer/exconfig.c
   haiku/trunk/src/add-ons/kernel/bus_managers/acpi/executer/exconvrt.c
   haiku/trunk/src/add-ons/kernel/bus_managers/acpi/executer/excreate.c
   haiku/trunk/src/add-ons/kernel/bus_managers/acpi/executer/exfield.c
   haiku/trunk/src/add-ons/kernel/bus_managers/acpi/executer/exfldio.c
   haiku/trunk/src/add-ons/kernel/bus_managers/acpi/executer/exmisc.c
   haiku/trunk/src/add-ons/kernel/bus_managers/acpi/executer/exmutex.c
   haiku/trunk/src/add-ons/kernel/bus_managers/acpi/executer/exnames.c
   haiku/trunk/src/add-ons/kernel/bus_managers/acpi/executer/exoparg1.c
   haiku/trunk/src/add-ons/kernel/bus_managers/acpi/executer/exoparg2.c
   haiku/trunk/src/add-ons/kernel/bus_managers/acpi/executer/exoparg3.c
   haiku/trunk/src/add-ons/kernel/bus_managers/acpi/executer/exoparg6.c
   haiku/trunk/src/add-ons/kernel/bus_managers/acpi/executer/exprep.c
   haiku/trunk/src/add-ons/kernel/bus_managers/acpi/executer/exregion.c
   haiku/trunk/src/add-ons/kernel/bus_managers/acpi/executer/exresnte.c
   haiku/trunk/src/add-ons/kernel/bus_managers/acpi/executer/exresolv.c
   haiku/trunk/src/add-ons/kernel/bus_managers/acpi/executer/exresop.c
   haiku/trunk/src/add-ons/kernel/bus_managers/acpi/executer/exstore.c
   haiku/trunk/src/add-ons/kernel/bus_managers/acpi/executer/exsystem.c
   haiku/trunk/src/add-ons/kernel/bus_managers/acpi/hardware/hwregs.c
   haiku/trunk/src/add-ons/kernel/bus_managers/acpi/hardware/hwsleep.c
   haiku/trunk/src/add-ons/kernel/bus_managers/acpi/hardware/hwvalid.c
   haiku/trunk/src/add-ons/kernel/bus_managers/acpi/include/acdisasm.h
   haiku/trunk/src/add-ons/kernel/bus_managers/acpi/include/acevents.h
   haiku/trunk/src/add-ons/kernel/bus_managers/acpi/include/acexcep.h
   haiku/trunk/src/add-ons/kernel/bus_managers/acpi/include/acglobal.h
   haiku/trunk/src/add-ons/kernel/bus_managers/acpi/include/acinterp.h
   haiku/trunk/src/add-ons/kernel/bus_managers/acpi/include/aclocal.h
   haiku/trunk/src/add-ons/kernel/bus_managers/acpi/include/acoutput.h
   haiku/trunk/src/add-ons/kernel/bus_managers/acpi/include/acpiosxf.h
   haiku/trunk/src/add-ons/kernel/bus_managers/acpi/include/acpixf.h
   haiku/trunk/src/add-ons/kernel/bus_managers/acpi/include/actables.h
   haiku/trunk/src/add-ons/kernel/bus_managers/acpi/include/actbl2.h
   haiku/trunk/src/add-ons/kernel/bus_managers/acpi/include/actypes.h
   haiku/trunk/src/add-ons/kernel/bus_managers/acpi/include/amlresrc.h
   haiku/trunk/src/add-ons/kernel/bus_managers/acpi/include/platform/acfreebsd.h
   haiku/trunk/src/add-ons/kernel/bus_managers/acpi/namespace/nsaccess.c
   haiku/trunk/src/add-ons/kernel/bus_managers/acpi/namespace/nsdump.c
   haiku/trunk/src/add-ons/kernel/bus_managers/acpi/namespace/nsnames.c
   haiku/trunk/src/add-ons/kernel/bus_managers/acpi/namespace/nssearch.c
   haiku/trunk/src/add-ons/kernel/bus_managers/acpi/namespace/nsutils.c
   haiku/trunk/src/add-ons/kernel/bus_managers/acpi/parser/psargs.c
   haiku/trunk/src/add-ons/kernel/bus_managers/acpi/parser/psloop.c
   haiku/trunk/src/add-ons/kernel/bus_managers/acpi/parser/psxface.c
   haiku/trunk/src/add-ons/kernel/bus_managers/acpi/resources/rscreate.c
   haiku/trunk/src/add-ons/kernel/bus_managers/acpi/resources/rslist.c
   haiku/trunk/src/add-ons/kernel/bus_managers/acpi/resources/rsmisc.c
   haiku/trunk/src/add-ons/kernel/bus_managers/acpi/tables/tbfadt.c
   haiku/trunk/src/add-ons/kernel/bus_managers/acpi/tables/tbfind.c
   haiku/trunk/src/add-ons/kernel/bus_managers/acpi/tables/tbinstal.c
   haiku/trunk/src/add-ons/kernel/bus_managers/acpi/tables/tbutils.c
   haiku/trunk/src/add-ons/kernel/bus_managers/acpi/tables/tbxface.c
   haiku/trunk/src/add-ons/kernel/bus_managers/acpi/tables/tbxfroot.c
   haiku/trunk/src/add-ons/kernel/bus_managers/acpi/utilities/utalloc.c
   haiku/trunk/src/add-ons/kernel/bus_managers/acpi/utilities/utcopy.c
   haiku/trunk/src/add-ons/kernel/bus_managers/acpi/utilities/utdelete.c
   haiku/trunk/src/add-ons/kernel/bus_managers/acpi/utilities/uteval.c
   haiku/trunk/src/add-ons/kernel/bus_managers/acpi/utilities/utglobal.c
   [... truncated: 4 changed files follow ...]
Log:
Merge acpi from acpica vendor branch 20100428:
 * AcpiSetGpeType no longer exists, replaced with AcpiSetGpe. Since acpi 
changed gpe handling embedded controller might need improvements.


Modified: haiku/trunk/headers/os/drivers/ACPI.h
===================================================================
--- haiku/trunk/headers/os/drivers/ACPI.h       2010-05-19 14:03:41 UTC (rev 
36866)
+++ haiku/trunk/headers/os/drivers/ACPI.h       2010-05-19 21:33:02 UTC (rev 
36867)
@@ -170,8 +170,8 @@
 
        status_t        (*enable_gpe)(acpi_handle handle, uint32 gpeNumber,
                                        uint32 flags);
-       status_t        (*set_gpe_type)(acpi_handle handle, uint32 gpeNumber,
-                                       uint8 type);
+       status_t        (*set_gpe)(acpi_handle handle, uint32 gpeNumber,
+                                       uint8 action);
        status_t        (*install_gpe_handler)(acpi_handle handle, uint32 
gpeNumber,
                                        uint32 type, acpi_event_handler 
handler, void *data);
        status_t        (*remove_gpe_handler)(acpi_handle handle, uint32 
gpeNumber,


Property changes on: haiku/trunk/src/add-ons/kernel/bus_managers/acpi
___________________________________________________________________
Modified: svn:mergeinfo
   - /haiku/vendor/acpica/20100121:35554-35558
/haiku/vendor/acpica/current:33139-35553
   + /haiku/vendor/acpica/current:33139-36866

Modified: haiku/trunk/src/add-ons/kernel/bus_managers/acpi/Jamfile
===================================================================
--- haiku/trunk/src/add-ons/kernel/bus_managers/acpi/Jamfile    2010-05-19 
14:03:41 UTC (rev 36866)
+++ haiku/trunk/src/add-ons/kernel/bus_managers/acpi/Jamfile    2010-05-19 
21:33:02 UTC (rev 36867)
@@ -10,6 +10,8 @@
        evevent.c
        evgpe.c
        evgpeblk.c
+       evgpeinit.c
+       evgpeutil.c
        evmisc.c
        evregion.c
        evrgnini.c
@@ -56,6 +58,7 @@
        exconfig.c
        exconvrt.c
        excreate.c
+       exdebug.c
        exdump.c
        exfield.c
        exfldio.c

Modified: haiku/trunk/src/add-ons/kernel/bus_managers/acpi/acpi_busman.c
===================================================================
--- haiku/trunk/src/add-ons/kernel/bus_managers/acpi/acpi_busman.c      
2010-05-19 14:03:41 UTC (rev 36866)
+++ haiku/trunk/src/add-ons/kernel/bus_managers/acpi/acpi_busman.c      
2010-05-19 21:33:02 UTC (rev 36867)
@@ -267,9 +267,9 @@
 
 
 status_t
-set_gpe_type(acpi_handle handle, uint32 gpeNumber, uint8 type)
+set_gpe(acpi_handle handle, uint32 gpeNumber, uint8 action)
 {
-       return AcpiSetGpeType(handle, gpeNumber, type) == AE_OK ? B_OK : 
B_ERROR;
+       return AcpiSetGpe(handle, gpeNumber, action) == AE_OK ? B_OK : B_ERROR;
 }
 
 
@@ -651,7 +651,7 @@
        install_notify_handler,
        remove_notify_handler,
        enable_gpe,
-       set_gpe_type,
+       set_gpe,
        install_gpe_handler,
        remove_gpe_handler,
        install_address_space_handler,

Modified: 
haiku/trunk/src/add-ons/kernel/bus_managers/acpi/acpi_embedded_controller.cpp
===================================================================
--- 
haiku/trunk/src/add-ons/kernel/bus_managers/acpi/acpi_embedded_controller.cpp   
    2010-05-19 14:03:41 UTC (rev 36866)
+++ 
haiku/trunk/src/add-ons/kernel/bus_managers/acpi/acpi_embedded_controller.cpp   
    2010-05-19 21:33:02 UTC (rev 36867)
@@ -374,8 +374,8 @@
        }
 
        // Enable runtime GPEs for the handler.
-       status = sc->ec_acpi_module->set_gpe_type(sc->ec_gpehandle, 
sc->ec_gpebit,
-               ACPI_GPE_TYPE_RUNTIME);
+       status = sc->ec_acpi_module->set_gpe(sc->ec_gpehandle, sc->ec_gpebit,
+               ACPI_GPE_ENABLE);
        if (status != B_OK) {
                TRACE("AcpiSetGpeType failed.\n");
                goto error;

Modified: haiku/trunk/src/add-ons/kernel/bus_managers/acpi/acpi_module.c
===================================================================
--- haiku/trunk/src/add-ons/kernel/bus_managers/acpi/acpi_module.c      
2010-05-19 14:03:41 UTC (rev 36866)
+++ haiku/trunk/src/add-ons/kernel/bus_managers/acpi/acpi_module.c      
2010-05-19 21:33:02 UTC (rev 36867)
@@ -197,7 +197,7 @@
        install_notify_handler,
        remove_notify_handler,
        enable_gpe,
-       set_gpe_type,
+       set_gpe,
        install_gpe_handler,
        remove_gpe_handler,
        install_address_space_handler,

Modified: haiku/trunk/src/add-ons/kernel/bus_managers/acpi/acpi_priv.h
===================================================================
--- haiku/trunk/src/add-ons/kernel/bus_managers/acpi/acpi_priv.h        
2010-05-19 14:03:41 UTC (rev 36866)
+++ haiku/trunk/src/add-ons/kernel/bus_managers/acpi/acpi_priv.h        
2010-05-19 21:33:02 UTC (rev 36867)
@@ -62,8 +62,8 @@
 
        status_t        (*enable_gpe)(acpi_handle handle, uint32 gpeNumber,
                                        uint32 flags);
-       status_t        (*set_gpe_type)(acpi_handle handle, uint32 gpeNumber,
-                                       uint8 type);
+       status_t        (*set_gpe)(acpi_handle handle, uint32 gpeNumber,
+                                       uint8 action);
        status_t        (*install_gpe_handler)(acpi_handle handle, uint32 
gpeNumber,
                                        uint32 type, acpi_event_handler 
handler, void* data);
        status_t        (*remove_gpe_handler)(acpi_handle handle, uint32 
gpeNumber,
@@ -143,7 +143,7 @@
        acpi_notify_handler handler);
 
 status_t enable_gpe(acpi_handle handle, uint32 gpeNumber, uint32 flags);
-status_t set_gpe_type(acpi_handle handle, uint32 gpeNumber, uint8 type);
+status_t set_gpe(acpi_handle handle, uint32 gpeNumber, uint8 action);
 status_t install_gpe_handler(acpi_handle handle, uint32 gpeNumber, uint32 type,
        acpi_event_handler handler, void* data);
 status_t remove_gpe_handler(acpi_handle handle, uint32 gpeNumber,

Modified: haiku/trunk/src/add-ons/kernel/bus_managers/acpi/common/adisasm.c
===================================================================
--- haiku/trunk/src/add-ons/kernel/bus_managers/acpi/common/adisasm.c   
2010-05-19 14:03:41 UTC (rev 36866)
+++ haiku/trunk/src/add-ons/kernel/bus_managers/acpi/common/adisasm.c   
2010-05-19 21:33:02 UTC (rev 36867)
@@ -282,8 +282,8 @@
 
     /* Setup the Table Manager (cheat - there is no RSDT) */
 
-    AcpiGbl_RootTableList.Size = 1;
-    AcpiGbl_RootTableList.Count = 0;
+    AcpiGbl_RootTableList.MaxTableCount = 1;
+    AcpiGbl_RootTableList.CurrentTableCount = 0;
     AcpiGbl_RootTableList.Tables = LocalTables;
 
     return (Status);
@@ -1156,7 +1156,7 @@
 
     /* If LoadTable is FALSE, we are parsing the last loaded table */
 
-    TableIndex = AcpiGbl_RootTableList.Count - 1;
+    TableIndex = AcpiGbl_RootTableList.CurrentTableCount - 1;
 
     /* Pass 2 */
 

Modified: haiku/trunk/src/add-ons/kernel/bus_managers/acpi/common/dmextern.c
===================================================================
--- haiku/trunk/src/add-ons/kernel/bus_managers/acpi/common/dmextern.c  
2010-05-19 14:03:41 UTC (rev 36866)
+++ haiku/trunk/src/add-ons/kernel/bus_managers/acpi/common/dmextern.c  
2010-05-19 21:33:02 UTC (rev 36867)
@@ -270,6 +270,15 @@
     }
 
     Length = (ACPI_STRLEN (ParentPath) + ACPI_STRLEN (Path) + 1);
+    if (ParentPath[1])
+    {
+        /*
+         * If ParentPath is not just a simple '\', increment the length
+         * for the required dot separator (ParentPath.Path)
+         */
+        Length++;
+    }
+
     Fullpath = ACPI_ALLOCATE_ZEROED (Length);
     if (!Fullpath)
     {
@@ -374,7 +383,7 @@
                 (NextExternal->Value != Value))
             {
                 ACPI_ERROR ((AE_INFO,
-                    "Argument count mismatch for method %s %d %d",
+                    "Argument count mismatch for method %s %u %u",
                     NextExternal->Path, NextExternal->Value, Value));
             }
 

Modified: haiku/trunk/src/add-ons/kernel/bus_managers/acpi/common/dmtable.c
===================================================================
--- haiku/trunk/src/add-ons/kernel/bus_managers/acpi/common/dmtable.c   
2010-05-19 14:03:41 UTC (rev 36866)
+++ haiku/trunk/src/add-ons/kernel/bus_managers/acpi/common/dmtable.c   
2010-05-19 21:33:02 UTC (rev 36867)
@@ -262,6 +262,7 @@
     {ACPI_SIG_IVRS, NULL,                   AcpiDmDumpIvrs, "I/O 
Virtualization Reporting Structure"},
     {ACPI_SIG_MADT, NULL,                   AcpiDmDumpMadt, "Multiple APIC 
Description Table"},
     {ACPI_SIG_MCFG, NULL,                   AcpiDmDumpMcfg, "Memory Mapped 
Configuration table"},
+    {ACPI_SIG_MCHI, AcpiDmTableInfoMchi,    NULL,           "Management 
Controller Host Interface table"},
     {ACPI_SIG_MSCT, NULL,                   AcpiDmDumpMsct, "Maximum System 
Characteristics Table"},
     {ACPI_SIG_RSDT, NULL,                   AcpiDmDumpRsdt, "Root System 
Description Table"},
     {ACPI_SIG_SBST, AcpiDmTableInfoSbst,    NULL,           "Smart Battery 
Specification Table"},
@@ -911,7 +912,7 @@
 
         default:
             ACPI_ERROR ((AE_INFO,
-                "**** Invalid table opcode [%X] ****\n", Info->Opcode));
+                "**** Invalid table opcode [0x%X] ****\n", Info->Opcode));
             return (AE_SUPPORT);
         }
     }

Modified: haiku/trunk/src/add-ons/kernel/bus_managers/acpi/common/dmtbdump.c
===================================================================
--- haiku/trunk/src/add-ons/kernel/bus_managers/acpi/common/dmtbdump.c  
2010-05-19 14:03:41 UTC (rev 36866)
+++ haiku/trunk/src/add-ons/kernel/bus_managers/acpi/common/dmtbdump.c  
2010-05-19 21:33:02 UTC (rev 36867)
@@ -363,7 +363,7 @@
             break;
 
         default:
-            AcpiOsPrintf ("\n**** Unknown ASF sub-table type %X\n", 
SubTable->Header.Type);
+            AcpiOsPrintf ("\n**** Unknown ASF sub-table type 0x%X\n", 
SubTable->Header.Type);
             return;
         }
 
@@ -561,7 +561,7 @@
             ScopeOffset = sizeof (ACPI_DMAR_RHSA);
             break;
         default:
-            AcpiOsPrintf ("\n**** Unknown DMAR sub-table type %X\n\n", 
SubTable->Type);
+            AcpiOsPrintf ("\n**** Unknown DMAR sub-table type 0x%X\n\n", 
SubTable->Type);
             return;
         }
 
@@ -809,7 +809,7 @@
         default:
             /* Cannot continue on unknown type - no length */
 
-            AcpiOsPrintf ("\n**** Unknown HEST sub-table type %X\n", 
SubTable->Type);
+            AcpiOsPrintf ("\n**** Unknown HEST sub-table type 0x%X\n", 
SubTable->Type);
             return;
         }
 
@@ -916,7 +916,7 @@
             InfoTable = AcpiDmTableInfoIvrs1;
             break;
         default:
-            AcpiOsPrintf ("\n**** Unknown IVRS sub-table type %X\n",
+            AcpiOsPrintf ("\n**** Unknown IVRS sub-table type 0x%X\n",
                 SubTable->Type);
 
             /* Attempt to continue */
@@ -1002,7 +1002,7 @@
                     InfoTable = AcpiDmTableInfoIvrs4;
                     AcpiOsPrintf (
                         "\n**** Unknown IVRS device entry type/length: "
-                        "%.2X/%X at offset %.4X: (header below)\n",
+                        "0x%.2X/0x%X at offset 0x%.4X: (header below)\n",
                         EntryType, EntryLength, EntryOffset);
                     break;
                 }
@@ -1110,7 +1110,7 @@
             InfoTable = AcpiDmTableInfoMadt10;
             break;
         default:
-            AcpiOsPrintf ("\n**** Unknown MADT sub-table type %X\n\n", 
SubTable->Type);
+            AcpiOsPrintf ("\n**** Unknown MADT sub-table type 0x%X\n\n", 
SubTable->Type);
 
             /* Attempt to continue */
 
@@ -1378,7 +1378,7 @@
             InfoTable = AcpiDmTableInfoSrat2;
             break;
         default:
-            AcpiOsPrintf ("\n**** Unknown SRAT sub-table type %X\n", 
SubTable->Type);
+            AcpiOsPrintf ("\n**** Unknown SRAT sub-table type 0x%X\n", 
SubTable->Type);
 
             /* Attempt to continue */
 

Modified: haiku/trunk/src/add-ons/kernel/bus_managers/acpi/common/dmtbinfo.c
===================================================================
--- haiku/trunk/src/add-ons/kernel/bus_managers/acpi/common/dmtbinfo.c  
2010-05-19 14:03:41 UTC (rev 36866)
+++ haiku/trunk/src/add-ons/kernel/bus_managers/acpi/common/dmtbinfo.c  
2010-05-19 21:33:02 UTC (rev 36867)
@@ -142,6 +142,7 @@
 #define ACPI_IVRS_OFFSET(f)             (UINT8) ACPI_OFFSET (ACPI_TABLE_IVRS,f)
 #define ACPI_MADT_OFFSET(f)             (UINT8) ACPI_OFFSET (ACPI_TABLE_MADT,f)
 #define ACPI_MCFG_OFFSET(f)             (UINT8) ACPI_OFFSET (ACPI_TABLE_MCFG,f)
+#define ACPI_MCHI_OFFSET(f)             (UINT8) ACPI_OFFSET (ACPI_TABLE_MCHI,f)
 #define ACPI_MSCT_OFFSET(f)             (UINT8) ACPI_OFFSET (ACPI_TABLE_MSCT,f)
 #define ACPI_SBST_OFFSET(f)             (UINT8) ACPI_OFFSET (ACPI_TABLE_SBST,f)
 #define ACPI_SLIT_OFFSET(f)             (UINT8) ACPI_OFFSET (ACPI_TABLE_SLIT,f)
@@ -1226,6 +1227,30 @@
 
 
/*******************************************************************************
  *
+ * MCHI - Management Controller Host Interface table
+ *
+ 
******************************************************************************/
+
+ACPI_DMTABLE_INFO           AcpiDmTableInfoMchi[] =
+{
+    {ACPI_DMT_UINT8,    ACPI_MCHI_OFFSET (InterfaceType),           "Interface 
Type"},
+    {ACPI_DMT_UINT8,    ACPI_MCHI_OFFSET (Protocol),                
"Protocol"},
+    {ACPI_DMT_UINT64,   ACPI_MCHI_OFFSET (ProtocolData),            "Protocol 
Data"},
+    {ACPI_DMT_UINT8,    ACPI_MCHI_OFFSET (InterruptType),           "Interrupt 
Type"},
+    {ACPI_DMT_UINT8,    ACPI_MCHI_OFFSET (Gpe),                     "Gpe"},
+    {ACPI_DMT_UINT8,    ACPI_MCHI_OFFSET (PciDeviceFlag),           "Pci 
Device Flag"},
+    {ACPI_DMT_UINT32,   ACPI_MCHI_OFFSET (GlobalInterrupt),         "Global 
Interrupt"},
+    {ACPI_DMT_GAS,      ACPI_MCHI_OFFSET (ControlRegister),         "Control 
Register"},
+    {ACPI_DMT_UINT8,    ACPI_MCHI_OFFSET (PciSegment),              "Pci 
Segment"},
+    {ACPI_DMT_UINT8,    ACPI_MCHI_OFFSET (PciBus),                  "Pci Bus"},
+    {ACPI_DMT_UINT8,    ACPI_MCHI_OFFSET (PciDevice),               "Pci 
Device"},
+    {ACPI_DMT_UINT8,    ACPI_MCHI_OFFSET (PciFunction),             "Pci 
Function"},
+    {ACPI_DMT_EXIT,     0,                                          NULL}
+};
+
+
+/*******************************************************************************
+ *
  * MSCT - Maximum System Characteristics Table (ACPI 4.0)
  *
  
******************************************************************************/

Modified: haiku/trunk/src/add-ons/kernel/bus_managers/acpi/compiler/Makefile
===================================================================
--- haiku/trunk/src/add-ons/kernel/bus_managers/acpi/compiler/Makefile  
2010-05-19 14:03:41 UTC (rev 36866)
+++ haiku/trunk/src/add-ons/kernel/bus_managers/acpi/compiler/Makefile  
2010-05-19 21:33:02 UTC (rev 36867)
@@ -1,11 +1,37 @@
  
-
 PROG=  iasl
-SRCS=  aslcompilerparse.c aslcompilerlex.c aslanalyze.c aslcodegen.c \
-       aslcompile.c aslerror.c aslfiles.c asllength.c \
-       asllisting.c aslload.c asllookup.c aslmain.c aslmap.c aslopcodes.c \
-       asloperands.c aslresource.c aslrestype1.c aslrestype2.c aslstartup.c \
-       asltree.c aslutils.c asltransform.c aslfold.c aslstubs.c aslopt.c \
+SRCS=  \
+       aslcompilerparse.c \
+       aslcompilerlex.c \
+       aslanalyze.c \
+       aslcodegen.c \
+       aslcompile.c \
+       aslerror.c \
+       aslfiles.c \
+       aslfold.c \
+       asllength.c \
+       asllisting.c \
+       aslload.c \
+       asllookup.c \
+       aslmain.c \
+       aslmap.c \
+       aslopcodes.c \
+       asloperands.c \
+       aslopt.c \
+       aslpredef.c \
+       aslresource.c \
+       aslrestype1.c \
+       aslrestype1i.c \
+       aslrestype2.c \
+       aslrestype2d.c \
+       aslrestype2e.c \
+       aslrestype2q.c \
+       aslrestype2w.c \
+       aslstartup.c \
+       aslstubs.c \
+       asltransform.c \
+       asltree.c \
+       aslutils.c \
        ../common/getopt.c \
        ../utilities/utalloc.c \
        ../utilities/utcache.c \

Modified: haiku/trunk/src/add-ons/kernel/bus_managers/acpi/compiler/aslanalyze.c
===================================================================
--- haiku/trunk/src/add-ons/kernel/bus_managers/acpi/compiler/aslanalyze.c      
2010-05-19 14:03:41 UTC (rev 36866)
+++ haiku/trunk/src/add-ons/kernel/bus_managers/acpi/compiler/aslanalyze.c      
2010-05-19 21:33:02 UTC (rev 36867)
@@ -143,16 +143,6 @@
     ACPI_PARSE_OBJECT       *Op);
 
 static UINT32
-AnCheckForReservedName (
-    ACPI_PARSE_OBJECT       *Op,
-    char                    *Name);
-
-static void
-AnCheckForReservedMethod (
-    ACPI_PARSE_OBJECT       *Op,
-    ASL_METHOD_INFO         *MethodInfo);
-
-static UINT32
 AnMapObjTypeToBtype (
     ACPI_PARSE_OBJECT       *Op);
 
@@ -598,219 +588,6 @@
 
 
/*******************************************************************************
  *
- * FUNCTION:    AnCheckForReservedName
- *
- * PARAMETERS:  Op              - A parse node
- *              Name            - NameSeg to check
- *
- * RETURN:      None
- *
- * DESCRIPTION: Check a NameSeg against the reserved list.
- *
- 
******************************************************************************/
-
-static UINT32
-AnCheckForReservedName (
-    ACPI_PARSE_OBJECT       *Op,
-    char                    *Name)
-{
-    UINT32                  i;
-
-
-    if (Name[0] == 0)
-    {
-        AcpiOsPrintf ("Found a null name, external = %s\n",
-            Op->Asl.ExternalName);
-    }
-
-    /* All reserved names are prefixed with a single underscore */
-
-    if (Name[0] != '_')
-    {
-        return (ACPI_NOT_RESERVED_NAME);
-    }
-
-    /* Check for a standard reserved method name */
-
-    for (i = 0; ReservedMethods[i].Name; i++)
-    {
-        if (ACPI_COMPARE_NAME (Name, ReservedMethods[i].Name))
-        {
-            if (ReservedMethods[i].Flags & ASL_RSVD_SCOPE)
-            {
-                AslError (ASL_ERROR, ASL_MSG_RESERVED_WORD, Op,
-                    Op->Asl.ExternalName);
-                return (ACPI_PREDEFINED_NAME);
-            }
-            else if (ReservedMethods[i].Flags & ASL_RSVD_RESOURCE_NAME)
-            {
-                AslError (ASL_ERROR, ASL_MSG_RESERVED_WORD, Op,
-                    Op->Asl.ExternalName);
-                return (ACPI_PREDEFINED_NAME);
-            }
-
-            /* Return index into reserved array */
-
-            return i;
-        }
-    }
-
-    /*
-     * Now check for the "special" reserved names --
-     * GPE:  _Lxx
-     * GPE:  _Exx
-     * EC:   _Qxx
-     */
-    if ((Name[1] == 'L') ||
-        (Name[1] == 'E') ||
-        (Name[1] == 'Q'))
-    {
-        /* The next two characters must be hex digits */
-
-        if ((isxdigit ((int) Name[2])) &&
-            (isxdigit ((int) Name[3])))
-        {
-            return (ACPI_EVENT_RESERVED_NAME);
-        }
-    }
-
-
-    /* Check for the names reserved for the compiler itself: _T_x */
-
-    else if ((Op->Asl.ExternalName[1] == 'T') &&
-             (Op->Asl.ExternalName[2] == '_'))
-    {
-        /* Ignore if actually emitted by the compiler */
-
-        if (Op->Asl.CompileFlags & NODE_COMPILER_EMITTED)
-        {
-            return (ACPI_NOT_RESERVED_NAME);
-        }
-
-        /*
-         * Was not actually emitted by the compiler. This is a special case,
-         * however. If the ASL code being compiled was the result of a
-         * dissasembly, it may possibly contain valid compiler-emitted names
-         * of the form "_T_x". We don't want to issue an error or even a
-         * warning and force the user to manually change the names. So, we
-         * will issue a remark instead.
-         */
-        AslError (ASL_REMARK, ASL_MSG_COMPILER_RESERVED, Op, 
Op->Asl.ExternalName);
-        return (ACPI_COMPILER_RESERVED_NAME);
-    }
-
-    /*
-     * The name didn't match any of the known reserved names. Flag it as a
-     * warning, since the entire namespace starting with an underscore is
-     * reserved by the ACPI spec.
-     */
-    AslError (ASL_WARNING, ASL_MSG_UNKNOWN_RESERVED_NAME, Op,
-        Op->Asl.ExternalName);
-
-    return (ACPI_NOT_RESERVED_NAME);
-}
-
-
-/*******************************************************************************
- *
- * FUNCTION:    AnCheckForReservedMethod
- *
- * PARAMETERS:  Op              - A parse node of type "METHOD".
- *              MethodInfo      - Saved info about this method
- *
- * RETURN:      None
- *
- * DESCRIPTION: If method is a reserved name, check that the number of 
arguments
- *              and the return type (returns a value or not) is correct.
- *
- 
******************************************************************************/
-
-static void
-AnCheckForReservedMethod (
-    ACPI_PARSE_OBJECT       *Op,
-    ASL_METHOD_INFO         *MethodInfo)
-{
-    UINT32                  Index;
-    UINT32                  RequiredArgsCurrent;
-    UINT32                  RequiredArgsOld;
-
-
-    /* Check for a match against the reserved name list */
-
-    Index = AnCheckForReservedName (Op, Op->Asl.NameSeg);
-
-    switch (Index)
-    {
-    case ACPI_NOT_RESERVED_NAME:
-    case ACPI_PREDEFINED_NAME:
-    case ACPI_COMPILER_RESERVED_NAME:
-
-        /* Just return, nothing to do */
-        break;
-
-
-    case ACPI_EVENT_RESERVED_NAME:
-
-        Gbl_ReservedMethods++;
-
-        /* NumArguments must be zero for all _Lxx, _Exx, and _Qxx methods */
-
-        if (MethodInfo->NumArguments != 0)
-        {
-            sprintf (MsgBuffer, "%s requires %d",
-                        Op->Asl.ExternalName, 0);
-
-            AslError (ASL_WARNING, ASL_MSG_RESERVED_ARG_COUNT_HI, Op, 
MsgBuffer);
-        }
-        break;
-
-
-    default:
-
-        Gbl_ReservedMethods++;
-
-        /*
-         * Matched a reserved method name
-         *
-         * Validate the ASL-defined argument count. Allow two different legal
-         * arg counts.
-         */
-        RequiredArgsCurrent = ReservedMethods[Index].NumArguments & 0x0F;
-        RequiredArgsOld = ReservedMethods[Index].NumArguments >> 4;
-
-        if ((MethodInfo->NumArguments != RequiredArgsCurrent) &&
-            (MethodInfo->NumArguments != RequiredArgsOld))
-        {
-            sprintf (MsgBuffer, "%s requires %d",
-                        ReservedMethods[Index].Name,
-                        RequiredArgsCurrent);
-
-            if (MethodInfo->NumArguments > RequiredArgsCurrent)
-            {
-                AslError (ASL_WARNING, ASL_MSG_RESERVED_ARG_COUNT_HI, Op,
-                    MsgBuffer);
-            }
-            else
-            {
-                AslError (ASL_WARNING, ASL_MSG_RESERVED_ARG_COUNT_LO, Op,
-                    MsgBuffer);
-            }
-        }
-
-        if (MethodInfo->NumReturnNoValue &&
-            ReservedMethods[Index].Flags & ASL_RSVD_RETURN_VALUE)
-        {
-            sprintf (MsgBuffer, "%s", ReservedMethods[Index].Name);
-
-            AslError (ASL_WARNING, ASL_MSG_RESERVED_RETURN_VALUE, Op, 
MsgBuffer);
-        }
-        break;
-    }
-}
-
-
-/*******************************************************************************
- *
  * FUNCTION:    AnMapObjTypeToBtype
  *
  * PARAMETERS:  Op              - A parse node
@@ -1187,7 +964,7 @@
          * The first operand is a name to be created in the namespace.
          * Check against the reserved list.
          */
-        i = AnCheckForReservedName (Op, Op->Asl.NameSeg);
+        i = ApCheckForPredefinedName (Op, Op->Asl.NameSeg);
         if (i < ACPI_VALID_RESERVED_NAME_MAX)
         {
             AslError (ASL_ERROR, ASL_MSG_RESERVED_USE, Op, 
Op->Asl.ExternalName);
@@ -1197,51 +974,29 @@
 
     case PARSEOP_NAME:
 
-        i = AnCheckForReservedName (Op, Op->Asl.NameSeg);
-        if (i < ACPI_VALID_RESERVED_NAME_MAX)
+        /* Typecheck any predefined names statically defined with Name() */
+
+        ApCheckForPredefinedObject (Op, Op->Asl.NameSeg);
+
+        /* Special typechecking for _HID */
+
+        if (!ACPI_STRCMP (METHOD_NAME__HID, Op->Asl.NameSeg))
         {
-            if (ReservedMethods[i].NumArguments > 0)
+            Next = Op->Asl.Child->Asl.Next;
+            if (Next->Asl.ParseOpcode == PARSEOP_STRING_LITERAL)
             {
                 /*
-                 * This reserved name must be a control method because
-                 * it must have arguments
+                 * _HID is a string, all characters must be alphanumeric.
+                 * One of the things we want to catch here is the use of
+                 * a leading asterisk in the string.
                  */
-                AslError (ASL_ERROR, ASL_MSG_RESERVED_METHOD, Op,
-                    "with arguments");
-            }
-
-            /* Typechecking for _HID */
-
-            else if (!ACPI_STRCMP (METHOD_NAME__HID, ReservedMethods[i].Name))
-            {
-                /* Examine the second operand to typecheck it */
-
-                Next = Op->Asl.Child->Asl.Next;
-
-                if ((Next->Asl.ParseOpcode != PARSEOP_INTEGER) &&
-                    (Next->Asl.ParseOpcode != PARSEOP_STRING_LITERAL))
+                for (i = 0; Next->Asl.Value.String[i]; i++)
                 {
-                    /* _HID must be a string or an integer */
-
-                    AslError (ASL_ERROR, ASL_MSG_RESERVED_OPERAND_TYPE, Next,
-                        "String or Integer");
-                }
-
-                if (Next->Asl.ParseOpcode == PARSEOP_STRING_LITERAL)
-                {
-                    /*
-                     * _HID is a string, all characters must be alphanumeric.
-                     * One of the things we want to catch here is the use of
-                     * a leading asterisk in the string.
-                     */
-                    for (i = 0; Next->Asl.Value.String[i]; i++)
+                    if (!isalnum ((int) Next->Asl.Value.String[i]))
                     {
-                        if (!isalnum ((int) Next->Asl.Value.String[i]))
-                        {
-                            AslError (ASL_ERROR, ASL_MSG_ALPHANUMERIC_STRING,
-                                Next, Next->Asl.Value.String);
-                            break;
-                        }
+                        AslError (ASL_ERROR, ASL_MSG_ALPHANUMERIC_STRING,
+                            Next, Next->Asl.Value.String);
+                        break;
                     }
                 }
             }
@@ -1394,7 +1149,7 @@
          * Check predefined method names for correct return behavior
          * and correct number of arguments
          */
-        AnCheckForReservedMethod (Op, MethodInfo);
+        ApCheckForPredefinedMethod (Op, MethodInfo);
         ACPI_FREE (MethodInfo);
         break;
 
@@ -1402,6 +1157,12 @@
     case PARSEOP_RETURN:
 
         /*
+         * If the parent is a predefined method name, attempt to typecheck
+         * the return value. Only static types can be validated.
+         */
+        ApCheckPredefinedReturnValue (Op, MethodInfo);
+
+        /*
          * The parent block does not "exit" and continue execution -- the
          * method is terminated here with the Return() statement.
          */

Modified: haiku/trunk/src/add-ons/kernel/bus_managers/acpi/compiler/aslcompile.c
===================================================================
--- haiku/trunk/src/add-ons/kernel/bus_managers/acpi/compiler/aslcompile.c      
2010-05-19 14:03:41 UTC (rev 36866)
+++ haiku/trunk/src/add-ons/kernel/bus_managers/acpi/compiler/aslcompile.c      
2010-05-19 21:33:02 UTC (rev 36867)
@@ -177,7 +177,8 @@
         {
             Prefix = "; ";
         }
-        else if (Gbl_HexOutputFlag == HEX_OUTPUT_C)
+        else if ((Gbl_HexOutputFlag == HEX_OUTPUT_C) ||
+                 (Gbl_HexOutputFlag == HEX_OUTPUT_ASL))
         {
             FlPrintFile (ASL_FILE_HEX_OUTPUT, "/*\n");
             Prefix = " * ";
@@ -265,7 +266,8 @@
         {
             Prefix = "; ";
         }
-        else if (Gbl_HexOutputFlag == HEX_OUTPUT_C)
+        else if ((Gbl_HexOutputFlag == HEX_OUTPUT_C) ||
+                 (Gbl_HexOutputFlag == HEX_OUTPUT_ASL))
         {
             Prefix = " * ";
         }

Modified: 
haiku/trunk/src/add-ons/kernel/bus_managers/acpi/compiler/aslcompiler.h
===================================================================
--- haiku/trunk/src/add-ons/kernel/bus_managers/acpi/compiler/aslcompiler.h     
2010-05-19 14:03:41 UTC (rev 36866)
+++ haiku/trunk/src/add-ons/kernel/bus_managers/acpi/compiler/aslcompiler.h     
2010-05-19 21:33:02 UTC (rev 36867)
@@ -452,8 +452,32 @@
 AslMapNamedOpcodeToDataType (
     UINT16                  Opcode);
 
+
+/*
+ * aslpredef - ACPI predefined names support
+ */
 void
-MpDisplayReservedNames (
+ApCheckForPredefinedMethod (
+    ACPI_PARSE_OBJECT       *Op,
+    ASL_METHOD_INFO         *MethodInfo);
+
+void
+ApCheckPredefinedReturnValue (
+    ACPI_PARSE_OBJECT       *Op,
+    ASL_METHOD_INFO         *MethodInfo);
+
+UINT32
+ApCheckForPredefinedName (
+    ACPI_PARSE_OBJECT       *Op,
+    char                    *Name);
+
+void
+ApCheckForPredefinedObject (
+    ACPI_PARSE_OBJECT       *Op,
+    char                    *Name);
+
+void
+ApDisplayReservedNames (
     void);
 
 
@@ -568,6 +592,10 @@
     UINT32                  FileId,
     UINT8                   ErrorId);
 
+UINT32
+FlGetFileSize (
+    UINT32                  FileId);
+
 ACPI_STATUS
 FlReadFile (
     UINT32                  FileId,
@@ -726,6 +754,34 @@
 /*
  * aslresource - Resource template generation utilities
  */
+void
+RsSmallAddressCheck (
+    UINT8                   Type,
+    UINT32                  Minimum,
+    UINT32                  Maximum,
+    UINT32                  Length,
+    UINT32                  Alignment,
+    ACPI_PARSE_OBJECT       *MinOp,
+    ACPI_PARSE_OBJECT       *MaxOp,
+    ACPI_PARSE_OBJECT       *LengthOp,
+    ACPI_PARSE_OBJECT       *AlignOp);
+
+void
+RsLargeAddressCheck (
+    UINT64                  Minimum,
+    UINT64                  Maximum,
+    UINT64                  Length,
+    UINT64                  Granularity,
+    UINT8                   Flags,
+    ACPI_PARSE_OBJECT       *MinOp,
+    ACPI_PARSE_OBJECT       *MaxOp,
+    ACPI_PARSE_OBJECT       *LengthOp,
+    ACPI_PARSE_OBJECT       *GranOp);
+
+UINT16
+RsGetStringDataLength (
+    ACPI_PARSE_OBJECT       *InitializerOp);
+
 ASL_RESOURCE_NODE *
 RsAllocateResourceNode (
     UINT32                  Size);
@@ -781,7 +837,7 @@
 
 
 /*
- * aslrestype1 - generate Small descriptors
+ * aslrestype1 - Miscellaneous Small descriptors
  */
 ASL_RESOURCE_NODE *
 RsDoEndTagDescriptor (
@@ -789,68 +845,72 @@
     UINT32                  CurrentByteOffset);
 
 ASL_RESOURCE_NODE *
-RsDoDmaDescriptor (
+RsDoEndDependentDescriptor (
     ACPI_PARSE_OBJECT       *Op,
     UINT32                  CurrentByteOffset);
 
 ASL_RESOURCE_NODE *
-RsDoEndDependentDescriptor (
+RsDoMemory24Descriptor (
     ACPI_PARSE_OBJECT       *Op,
     UINT32                  CurrentByteOffset);
 
 ASL_RESOURCE_NODE *
-RsDoFixedIoDescriptor (
+RsDoMemory32Descriptor (
     ACPI_PARSE_OBJECT       *Op,
     UINT32                  CurrentByteOffset);
 
 ASL_RESOURCE_NODE *
-RsDoIoDescriptor (
+RsDoMemory32FixedDescriptor (
     ACPI_PARSE_OBJECT       *Op,
     UINT32                  CurrentByteOffset);
 
 ASL_RESOURCE_NODE *
-RsDoIrqDescriptor (
+RsDoStartDependentDescriptor (
     ACPI_PARSE_OBJECT       *Op,
     UINT32                  CurrentByteOffset);
 
 ASL_RESOURCE_NODE *
-RsDoIrqNoFlagsDescriptor (
+RsDoStartDependentNoPriDescriptor (
     ACPI_PARSE_OBJECT       *Op,
     UINT32                  CurrentByteOffset);
 
 ASL_RESOURCE_NODE *
-RsDoMemory24Descriptor (
+RsDoVendorSmallDescriptor (
     ACPI_PARSE_OBJECT       *Op,
     UINT32                  CurrentByteOffset);
 
+
+/*
+ * aslrestype1i - I/O-related Small descriptors
+ */
 ASL_RESOURCE_NODE *
-RsDoMemory32Descriptor (
+RsDoDmaDescriptor (
     ACPI_PARSE_OBJECT       *Op,
     UINT32                  CurrentByteOffset);
 
 ASL_RESOURCE_NODE *
-RsDoMemory32FixedDescriptor (
+RsDoFixedIoDescriptor (
     ACPI_PARSE_OBJECT       *Op,
     UINT32                  CurrentByteOffset);
 
 ASL_RESOURCE_NODE *
-RsDoStartDependentDescriptor (
+RsDoIoDescriptor (
     ACPI_PARSE_OBJECT       *Op,
     UINT32                  CurrentByteOffset);
 
 ASL_RESOURCE_NODE *
-RsDoStartDependentNoPriDescriptor (
+RsDoIrqDescriptor (
     ACPI_PARSE_OBJECT       *Op,
     UINT32                  CurrentByteOffset);
 
 ASL_RESOURCE_NODE *
-RsDoVendorSmallDescriptor (
+RsDoIrqNoFlagsDescriptor (
     ACPI_PARSE_OBJECT       *Op,
     UINT32                  CurrentByteOffset);
 
 
 /*
- * aslrestype2 - generate Large descriptors
+ * aslrestype2 - Large resource descriptors
  */
 ASL_RESOURCE_NODE *
 RsDoInterruptDescriptor (
@@ -858,6 +918,20 @@
     UINT32                  CurrentByteOffset);
 
 ASL_RESOURCE_NODE *
+RsDoVendorLargeDescriptor (
+    ACPI_PARSE_OBJECT       *Op,
+    UINT32                  CurrentByteOffset);
+
+ASL_RESOURCE_NODE *
+RsDoGeneralRegisterDescriptor (
+    ACPI_PARSE_OBJECT       *Op,
+    UINT32                  CurrentByteOffset);
+
+
+/*
+ * aslrestype2d - DWord address descriptors
+ */
+ASL_RESOURCE_NODE *
 RsDoDwordIoDescriptor (
     ACPI_PARSE_OBJECT       *Op,
     UINT32                  CurrentByteOffset);
@@ -872,6 +946,10 @@
     ACPI_PARSE_OBJECT       *Op,
     UINT32                  CurrentByteOffset);
 
+
+/*
+ * aslrestype2e - Extended address descriptors
+ */
 ASL_RESOURCE_NODE *
 RsDoExtendedIoDescriptor (
     ACPI_PARSE_OBJECT       *Op,
@@ -887,6 +965,10 @@
     ACPI_PARSE_OBJECT       *Op,
     UINT32                  CurrentByteOffset);
 
+
+/*
+ * aslrestype2q - QWord address descriptors
+ */
 ASL_RESOURCE_NODE *
 RsDoQwordIoDescriptor (
     ACPI_PARSE_OBJECT       *Op,
@@ -902,6 +984,10 @@
     ACPI_PARSE_OBJECT       *Op,
     UINT32                  CurrentByteOffset);
 
+
+/*
+ * aslrestype2w - Word address descriptors
+ */
 ASL_RESOURCE_NODE *
 RsDoWordIoDescriptor (
     ACPI_PARSE_OBJECT       *Op,
@@ -917,15 +1003,5 @@
     ACPI_PARSE_OBJECT       *Op,
     UINT32                  CurrentByteOffset);
 
-ASL_RESOURCE_NODE *
-RsDoVendorLargeDescriptor (
-    ACPI_PARSE_OBJECT       *Op,
-    UINT32                  CurrentByteOffset);
-
-ASL_RESOURCE_NODE *
-RsDoGeneralRegisterDescriptor (
-    ACPI_PARSE_OBJECT       *Op,
-    UINT32                  CurrentByteOffset);
-
 #endif /*  __ASLCOMPILER_H */
 

Modified: haiku/trunk/src/add-ons/kernel/bus_managers/acpi/compiler/asldefine.h
===================================================================
--- haiku/trunk/src/add-ons/kernel/bus_managers/acpi/compiler/asldefine.h       
2010-05-19 14:03:41 UTC (rev 36866)
+++ haiku/trunk/src/add-ons/kernel/bus_managers/acpi/compiler/asldefine.h       
2010-05-19 21:33:02 UTC (rev 36867)
@@ -128,7 +128,7 @@
 #define CompilerId                  "ASL Optimizing Compiler"
 #define DisassemblerId              "AML Disassembler"
 #define CompilerCopyright           "Copyright (c) 2000 - 2010 Intel 
Corporation"
-#define CompilerCompliance          "Supports ACPI Specification Revision 4.0"
+#define CompilerCompliance          "Supports ACPI Specification Revision 4.0a"
 #define CompilerName                "iasl"
 #define CompilerCreatorId           "INTL"
 

Modified: haiku/trunk/src/add-ons/kernel/bus_managers/acpi/compiler/aslfiles.c
===================================================================
--- haiku/trunk/src/add-ons/kernel/bus_managers/acpi/compiler/aslfiles.c        
2010-05-19 14:03:41 UTC (rev 36866)
+++ haiku/trunk/src/add-ons/kernel/bus_managers/acpi/compiler/aslfiles.c        
2010-05-19 21:33:02 UTC (rev 36867)

[... truncated: 16221 lines follow ...]

Other related posts:

  • » [haiku-commits] r36867 - in haiku/trunk: headers/os/drivers src/add-ons/kernel/bus_managers/acpi src/add-ons/kernel/bus_managers/acpi/common src/add-ons/kernel/bus_managers/acpi/compiler src/add-ons/kernel/bus_managers/acpi/debugger ... - fredrik . holmqvist