Jump to content

DSDT disass+compile: newest iASLme / IASL :, Juli 11th 2012


mitch_de
 Share

265 posts in this topic

Recommended Posts

Well .. I need an help. I have a dsdt.aml compiled with dsdtpatcher.. now I found that exist this program: iaslme.. I used it with the previous dsdt.aml and it created dsdt.dsl

now.. which file do I have to put in /Extra ??

thanks

 

Compile dsdt.dsl file to dsdt.aml file........rename dsdt.aml to DSDT.aml and put DSDT.aml file in /Extra.......

Link to comment
Share on other sites

  • 3 weeks later...

Summary of iASL changes for version 20101013:

 

1) ACPI CA Core Subsystem:

Added support to clear the PCIEXP_WAKE event. When clearing ACPI events, now 
clear the PCIEXP_WAKE_STS bit in the ACPI PM1 Status Register, via 
HwClearAcpiStatus. Original change from Colin King. ACPICA BZ 880,
[url="http://www.acpica.org/bugzilla/show_bug.cgi?id=880"]http://www.acpica.org/bugzilla/show_bug.cgi?id=880[/url].

Changed the type of the predefined namespace object _TZ from ThermalZone to 
Device. This was found to be confusing to the host software that processes 
the various thermal zones, since _TZ is not really a ThermalZone. However, a 
Notify() can still be performed on it. ACPICA BZ 876,
[url="http://www.acpica.org/bugzilla/show_bug.cgi?id=876"]http://www.acpica.org/bugzilla/show_bug.cgi?id=876[/url]. Suggestion from Rui Zhang.

Added Windows Vista SP2 to the list of supported _OSI strings. The actual 
string is "Windows 2006 SP2".

Eliminated duplicate code in AcpiUtExecute* functions. Now that the nsrepair 
code automatically repairs _HID-related strings, this type of code is no 
longer needed in Execute_HID, Execute_CID, and Execute_UID. ACPICA BZ 878,
[url="http://www.acpica.org/bugzilla/show_bug.cgi?id=878"]http://www.acpica.org/bugzilla/show_bug.cgi?id=878[/url].

Example Code and Data Size: These are the sizes for the OS-independent 
acpica.lib produced by the Microsoft Visual C++ 6.0 32-bit compiler. The 
debug version of the code includes the debug output trace mechanism and has a 
much larger code and data size.

 Previous Release:
   Non-Debug Version:  89.9K Code, 19.0K Data, 108.9K Total
   Debug Version:     166.3K Code, 52.1K Data, 218.4K Total
 Current Release:
   Non-Debug Version:  89.9K Code, 19.0K Data, 108.9K Total
   Debug Version:     166.3K Code, 52.1K Data, 218.4K Total

2) iASL Compiler/Disassembler and Tools:

iASL: Implemented additional compile-time validation for _HID strings. The 
non-hex prefix (such as "PNP" or "ACPI") must be uppercase, and the length of 
the string must be exactly seven or eight characters. For both _HID and _CID 
strings, all characters must be alphanumeric. ACPICA BZ 874,
[url="http://www.acpica.org/bugzilla/show_bug.cgi?id=874"]http://www.acpica.org/bugzilla/show_bug.cgi?id=874[/url].

iASL: Allow certain "null" resource descriptors. Some BIOS code creates 
descriptors that are mostly or all zeros, with the expectation that they will 
be filled in at runtime. iASL now allows this as long as there is a "resource 
tag" (name) associated with the descriptor, which gives the ASL a handle 
needed to modify the descriptor. ACPICA BZ 873,
[url="http://www.acpica.org/bugzilla/show_bug.cgi?id=873"]http://www.acpica.org/bugzilla/show_bug.cgi?id=873[/url].

Added single-thread support to the generic Unix application OSL. Primarily 
for iASL support, this change removes the use of semaphores in the single-
threaded ACPICA tools/applications - increasing performance. The 
_MULTI_THREADED option was replaced by the (reverse) ACPI_SINGLE_THREADED 
option. ACPICA BZ 879,
[url="http://www.acpica.org/bugzilla/show_bug.cgi?id=879"]http://www.acpica.org/bugzilla/show_bug.cgi?id=879[/url].

AcpiExec: several fixes for the 64-bit version. Adds XSDT support and support 
for 64-bit DSDT/FACS addresses in the FADT. Lin Ming.

iASL: Moved all compiler messages to a new file, aslmessages.h.

 

iASL x64 command line version 20101013 (October, 13th 2010), compiled under SL x64

iasl_x64_20101013.zip

 

iASLme x64 with ASL Optimizing Compiler version 20101013 (October, 13th 2010), compiled under SL x64

iASLMe_x64_20101013.app.zip

Link to comment
Share on other sites

  • 1 month later...

Summary of iASL changes for version 20101209:

 

[size=1]09 December 2010. Summary of changes for version 20101209:

This release is available at www.acpica.org/downloads

1) ACPI CA Core Subsystem:

Completed the major overhaul of the GPE support code that was begun in July 
2010. Major features include: removal of _PRW execution in ACPICA (host 
executes _PRWs anyway), cleanup of "wake" GPE interfaces and processing, 
changes to existing interfaces, simplification of GPE handler operation, and 
a handful of new interfaces:

   AcpiUpdateAllGpes
   AcpiFinishGpe
   AcpiSetupGpeForWake
   AcpiSetGpeWakeMask
   One new file, evxfgpe.c to consolidate all external GPE interfaces.

See the ACPICA Programmer Reference for full details and programming 
information. See the new section 4.4 "General Purpose Event (GPE) Support" 
for a full overview, and section 8.7 "ACPI General Purpose Event Management" 
for programming details. ACPICA BZ 858,870,877. Matthew Garrett, Lin Ming, 
Bob Moore, Rafael Wysocki.

Implemented a new GPE feature for Windows compatibility, the "Implicit Wake 
GPE Notify". This feature will automatically issue a Notify(2) on a device 
when a Wake GPE is received if there is no corresponding GPE method or 
handler. ACPICA BZ 870.

Fixed a problem with the Scope() operator during table parse and load phase. 
During load phase (table load or method execution), the scope operator should 
not enter the target into the namespace. Instead, it should open a new scope 
at the target location. Linux BZ 19462, ACPICA BZ 882.

Example Code and Data Size: These are the sizes for the OS-independent 
acpica.lib produced by the Microsoft Visual C++ 6.0 32-bit compiler. The 
debug version of the code includes the debug output trace mechanism and has a 
much larger code and data size.

 Previous Release:
   Non-Debug Version:  89.8K Code, 18.9K Data, 108.7K Total
   Debug Version:     166.6K Code, 52.1K Data, 218.7K Total
 Current Release:
   Non-Debug Version:  89.9K Code, 19.0K Data, 108.9K Total
   Debug Version:     166.3K Code, 52.1K Data, 218.4K Total

2) iASL Compiler/Disassembler and Tools:

iASL: Relax the alphanumeric restriction on _CID strings. These strings are 
"bus-specific" per the ACPI specification, and therefore any characters are 
acceptable. The only checks that can be performed are for a null string and 
perhaps for a leading asterisk. ACPICA BZ 886.

iASL: Fixed a problem where a syntax error that caused a premature EOF 
condition on the source file emitted a very confusing error message. The 
premature EOF is now detected correctly. ACPICA BZ 891.

Disassembler: Decode the AccessSize within a Generic Address Structure (byte 
access, word access, etc.) Note, this field does not allow arbitrary bit 
access, the size is encoded as 1=byte, 2=word, 3=dword, and 4=qword.

New: AcpiNames utility - Example namespace dump utility. Shows an example of 
ACPICA configuration for a minimal namespace dump utility. Uses table and 
namespace managers, but no AML interpreter. Does not add any functionality 
over AcpiExec, it is a subset of AcpiExec. The purpose is to show how to 
partition and configure ACPICA. ACPICA BZ 883.

AML Debugger: Increased the debugger buffer size for method return objects. 
Was 4K, increased to 16K. Also enhanced error messages for debugger method 
execution, including the buffer overflow case.[/size]

 

iASL x64 command line version 20101209 (09 December 2010), compiled under SL x64

iasl_x64_20101209.zip

 

iASLme x64 with ASL Optimizing Compiler version 20101209 (09 December 2010), compiled under SL x64

iASLMe_x64_20101209.zip

 

Fabio

Link to comment
Share on other sites

:unsure:

 

latest UNIVERSAL BINARY iasl as of today...

 

ASL Optimizing Compiler version 20101209-UB

 

please check:

 

@ insanelymac

 

@ projectosx

 

:D

 

EDIT: the first topic got erased I think because of lack of info, so I made a new one and explained what I did to come up with a small universal binary of iasl tool, so please don't use the files I uploaded before, the ones named 32 and 64 since they are separate architectures, instead use the one I'm posting here, @mitch_de & @rednous: do you find this file useful at all? I would like to keep providing it if you like it... just let me know, silence would be understood as an answer too... a negative one anyways, anyhow thanks for your time!!!

Link to comment
Share on other sites

  • 1 month later...

iASL x64 command line version 20110112 (January 12th 2011), compiled under SL x64

iasl.zip

iASLme x64 with ASL Optimizing Compiler version 20110112 (January 12th 2011), compiled under SL x64

iASLMe_64Bit_12_01_2011.app.zip

Summary of iASL changes for version 20110112:

1) ACPI CA Core Subsystem:

Fixed a race condition between method execution and namespace walks that can 
possibly cause a fault. The problem was apparently introduced in version 
20100528 as a result of a performance optimization that reduces the number of 
namespace walks upon method exit by using the delete_namespace_subtree 
function instead of the delete_namespace_by_owner function used previously. 
Bug is a missing namespace lock in the delete_namespace_subtree function. 
dana.myers@oracle.com

Fixed several issues and a possible fault with the automatic "serialized" 
method support. History: This support changes a method to "serialized" on the 
fly if the method generates an AE_ALREADY_EXISTS error, indicating the 
possibility that it cannot handle reentrancy. This fix repairs a couple of 
issues seen in the field, especially on machines with many cores:

   1) Delete method children only upon the exit of the last thread,
      so as to not delete objects out from under other running threads
     (and possibly causing a fault.)
   2) Set the "serialized" bit for the method only upon the exit of the
      Last thread, so as to not cause deadlock when running threads
      attempt to exit.
   3) Cleanup the use of the AML "MethodFlags" and internal method flags
      so that there is no longer any confusion between the two.

   Lin Ming, Bob Moore. Reported by dana.myers@oracle.com.

Debugger: Now lock the namespace for duration of a namespace dump. Prevents 
issues if the namespace is changing dynamically underneath the debugger. 
Especially affects temporary namespace nodes, since the debugger displays 
these also.

Updated the ordering of include files. The ACPICA headers should appear 
before any compiler-specific headers (stdio.h, etc.) so that acenv.h can set 
any necessary compiler-specific defines, etc. Affects the ACPI-related tools 
and utilities.

Updated all ACPICA copyrights and signons to 2011. Added the 2011 copyright 
to all module headers and signons, including the Linux header. This affects 
virtually every file in the ACPICA core subsystem, iASL compiler, and all 
utilities.

Added project files for MS Visual Studio 2008 (VC++ 9.0). The original 
project files for VC++ 6.0 are now obsolete. New project files can be found 
under acpica/generate/msvc9. See acpica/generate/msvc9/readme.txt for 
details.

Example Code and Data Size: These are the sizes for the OS-independent 
acpica.lib produced by the Microsoft Visual C++ 9.0 32-bit compiler. The 
debug version of the code includes the debug output trace mechanism and has a 
much larger code and data size.

2) iASL Compiler/Disassembler and Tools:

iASL: Added generic data types to the Data Table compiler. Add "generic" data 
types such as UINT32, String, Unicode, etc., to simplify the generation of 
platform-defined tables such as UEFI. Lin Ming.

iASL: Added listing support for the Data Table Compiler. Adds listing support 
(-l) to display actual binary output for each line of input code.

Credits to cVad & Kabyl

Link to comment
Share on other sites

iASL x64 command line version 20110112 (January 12th 2011), compiled under SL x64

iasl.zip

iASLme x64 with ASL Optimizing Compiler version 20110112 (January 12th 2011), compiled under SL x64

iASLMe_64Bit_12_01_2011.app.zip

Summary of iASL changes for version 20110112:

1) ACPI CA Core Subsystem:

Fixed a race condition between method execution and namespace walks that can 
possibly cause a fault. The problem was apparently introduced in version 
20100528 as a result of a performance optimization that reduces the number of 
namespace walks upon method exit by using the delete_namespace_subtree 
function instead of the delete_namespace_by_owner function used previously. 
Bug is a missing namespace lock in the delete_namespace_subtree function. 
dana.myers@oracle.com

Fixed several issues and a possible fault with the automatic "serialized" 
method support. History: This support changes a method to "serialized" on the 
fly if the method generates an AE_ALREADY_EXISTS error, indicating the 
possibility that it cannot handle reentrancy. This fix repairs a couple of 
issues seen in the field, especially on machines with many cores:

1) Delete method children only upon the exit of the last thread,
so as to not delete objects out from under other running threads
(and possibly causing a fault.)
2) Set the "serialized" bit for the method only upon the exit of the
Last thread, so as to not cause deadlock when running threads
attempt to exit.
3) Cleanup the use of the AML "MethodFlags" and internal method flags
so that there is no longer any confusion between the two.

Lin Ming, Bob Moore. Reported by dana.myers@oracle.com.

Debugger: Now lock the namespace for duration of a namespace dump. Prevents 
issues if the namespace is changing dynamically underneath the debugger. 
Especially affects temporary namespace nodes, since the debugger displays 
these also.

Updated the ordering of include files. The ACPICA headers should appear 
before any compiler-specific headers (stdio.h, etc.) so that acenv.h can set 
any necessary compiler-specific defines, etc. Affects the ACPI-related tools 
and utilities.

Updated all ACPICA copyrights and signons to 2011. Added the 2011 copyright 
to all module headers and signons, including the Linux header. This affects 
virtually every file in the ACPICA core subsystem, iASL compiler, and all 
utilities.

Added project files for MS Visual Studio 2008 (VC++ 9.0). The original 
project files for VC++ 6.0 are now obsolete. New project files can be found 
under acpica/generate/msvc9. See acpica/generate/msvc9/readme.txt for 
details.

Example Code and Data Size: These are the sizes for the OS-independent 
acpica.lib produced by the Microsoft Visual C++ 9.0 32-bit compiler. The 
debug version of the code includes the debug output trace mechanism and has a 
much larger code and data size.

2) iASL Compiler/Disassembler and Tools:

iASL: Added generic data types to the Data Table compiler. Add "generic" data 
types such as UINT32, String, Unicode, etc., to simplify the generation of 
platform-defined tables such as UEFI. Lin Ming.

iASL: Added listing support for the Data Table Compiler. Adds listing support 
(-l) to display actual binary output for each line of input code.

Credits to cVad & Kabyl

 

THX!

 

;)

 

Fabio

Link to comment
Share on other sites

  • 5 weeks later...

iASL 32bit command line version 20110211 (February 11th 2011), compiled under SL x32

iasl_20110211_32bit.zip

iASLme 32bit with ASL Optimizing Compiler version 20110211 (February 11th 2011), compiled under SL x32

iASLMe_32Bit_11_02_2011.app.zip

iASL 64bit command line version 20110211 (February 11th 2011), compiled under SL x64

iasl_20110211_64bit.zip

iASLme 64bit with ASL Optimizing Compiler version 20110211 (February 11th 2011), compiled under SL x64

iASLMe_64Bit_11_02_2011.app.zip

 

Summary of iASL changes for version 20110211, February 11th 2011:

1) ACPI CA Core Subsystem:

Added a mechanism to defer _REG methods for some early-installed handlers. 
Most user handlers should be installed before call to AcpiEnableSubsystem. 
However, Event handlers and region handlers should be installed after 
AcpiInitializeObjects. Override handlers for the "default" regions should be 
installed early, however. This change executes all _REG methods for the 
default regions (Memory/IO/PCI/DataTable) simultaneously to prevent any 
chicken/egg issues between them. ACPICA BZ 848,
[url="http://www.acpica.org/bugzilla/show_bug.cgi?id=848"]http://www.acpica.org/bugzilla/show_bug.cgi?id=848[/url]

Implemented an optimization for GPE detection. This optimization will simply 
ignore GPE registers that contain no enabled GPEs -- there is no need to 
read the register since this information is available internally. This 
becomes more important on machines with a large GPE space. ACPICA bugzilla 
884, [url="http://www.acpica.org/bugzilla/show_bug.cgi?id=884"]http://www.acpica.org/bugzilla/show_bug.cgi?id=884[/url].
Lin Ming. Suggestion from Joe Liu.

Removed all use of the highly unreliable FADT revision field. The revision 
number in the FADT has been found to be completely unreliable and cannot be 
trusted. Only the actual table length can be used to infer the version. This 
change updates the ACPICA core and the disassembler so that both no longer 
even look at the FADT version and instead depend solely upon the FADT 
length.

Fix an unresolved name issue for the no-debug and no-error-message source 
generation cases. The _AcpiModuleName was left undefined in these cases, but 
it is actually needed as a parameter to some interfaces. Define 
_AcpiModuleName as a null string in these cases. ACPICA Bugzilla 888,
[url="http://www.acpica.org/bugzilla/show_bug.cgi?id=888"]http://www.acpica.org/bugzilla/show_bug.cgi?id=888[/url]

Split several large files (makefiles and project files updated)
 utglobal.c   -> utdecode.c
 dbcomds.c    -> dbmethod.c dbnames.c
 dsopcode.c   -> dsargs.c dscontrol.c
 dsload.c     -> dsload2.c
 aslanalyze.c -> aslbtypes.c aslwalks.c


2) iASL Compiler/Disassembler and Tools:

iASL: Implemented the predefined macros __LINE__, __FILE__, and __DATE__. 
These are useful C-style macros with the standard definitions. ACPICA 
bugzilla 898,
[url="http://www.acpica.org/bugzilla/show_bug.cgi?id=898"]http://www.acpica.org/bugzilla/show_bug.cgi?id=898[/url].

iASL/DTC: Added support for integer expressions and labels. Support for full 
expressions for all integer fields in all ACPI tables. Support for labels in 
"generic" portions of tables such as UEFI. See the iASL reference manual.

Debugger: Added a command to display the status of global handlers. The 
"handlers" command will display op region, fixed event, and miscellaneous 
global handlers. installation status -- and for op regions, whether default 
or user-installed handler will be used.

iASL: Warn if reserved method incorrectly returns a value. Many predefined 
names are defined such that they do not return a value. If implemented as a 
method, issue a warning if such a name explicitly returns a value. ACPICA 
Bugzilla 855,
[url="http://www.acpica.org/bugzilla/show_bug.cgi?id=855"]http://www.acpica.org/bugzilla/show_bug.cgi?id=855[/url]

iASL: Added detection of GPE method name conflicts. Detects a conflict where 
there are two GPE methods of the form _Lxy and _Exy in the same scope. (For 
example, _L1D and _E1D in the same scope.) ACPICA bugzilla 848,
[url="http://www.acpica.org/bugzilla/show_bug.cgi?id=848"]http://www.acpica.org/bugzilla/show_bug.cgi?id=848[/url]

iASL/DTC: Fixed a couple input scanner issues with comments and line 
numbers. Comment remover could get confused and miss a comment ending. Fixed 
a problem with line counter maintenance.

iASL/DTC: Reduced the severity of some errors from fatal to error. There is 
no need to abort on simple errors within a field definition.

Debugger: Simplified the output of the help command. All help output now in 
a single screen, instead of help subcommands. ACPICA Bugzilla 897,
[url="http://www.acpica.org/bugzilla/show_bug.cgi?id=897"]http://www.acpica.org/bugzilla/show_bug.cgi?id=897[/url]

 

Credits to:

1. cVad for the iASLme - The GUI version of iasl

2. Kabyl for the iasl compilation commands under OS X

3. Slice for the manual linking in final stage tip (duplicate symbol _AnMapArgTypeToBtype in aslbtypes.o and aslbtypes.o).

 

P.S. I decided to make a new iASLme icon. cVad, hope you don't mind and like it :(.

Everyone, what do you think about the new icon?

Link to comment
Share on other sites

iASL 32bit command line version 20110211 (February 11th 2011), compiled under SL x32

...

iASL 64bit command line version 20110211 (February 11th 2011), compiled under SL x64

...

P.S. I decided to make a new iASLme icon. cVad, hope you don't mind and like it :).

Everyone, what do you think about the new icon?

Try to build
IASL Universal Binary
with slightly modified Kabyl's script:

 

cd compiler
#export CFLAGS='-D__APPLE__ -DACPI_USE_ALTERNATE_TIMEOUT -include pthread.h'
export CFLAGS="-D__APPLE__ -DACPI_USE_ALTERNATE_TIMEOUT -arch i386 -arch x86_64 -arch ppc -pipe -include pthread.h"
#make ACPICA_CORE=.. LDFLAGS=-lpthread
make ACPICA_CORE=.. LDFLAGS="-arch i386 -arch x86_64 -arch ppc -lpthread"
lipo -info ./iasl
sudo cp iasl /usr/bin/

Your version of the iASLme icon I liked.

Link to comment
Share on other sites

Try to build IASL Universal Binary with slightly modified Kabyl's script:

Your version of the iASLme icon I liked.

 

cVad, thank you for your nice tip on how to compile iASL Universal Binary. I'm glad you like the iASLme icon :thumbsdown_anim:

I've compiled iASL UB, but in 32 and 64 bit (didn't included the PPC code).

 

iASL command line version 20110211 (February 11th 2011), Universal Binary (32 & 64 bit)

iasl_UB_11_02_2011.zip

iASLme version 20110211 (February 11th 2011), Universal Binary (32 & 64 bit)

iASLMe_UB_11_02_2011.app.zip

Link to comment
Share on other sites

  • 1 month later...

Summary of iASL changes for version 20110316, March 16th 2011:

16 March 2011. Summary of changes for version 20110316:

1) ACPI CA Core Subsystem:

Fixed a problem caused by a _PRW method appearing at the namespace root scope 
during the setup of wake GPEs. A fault could occur if a _PRW directly under the 
root object was passed to the AcpiSetupGpeForWake interface. Lin Ming.

Implemented support for "spurious" Global Lock interrupts. On some systems, a 
global lock interrupt can occur without the pending flag being set. Upon a GL 
interrupt, we now ensure that a thread is actually waiting for the lock before 
signaling GL availability. Rafael Wysocki, Bob Moore.


2) iASL Compiler/Disassembler and Tools:

Implemented full support for the "SLIC" ACPI table. Includes support in the 
header files, disassembler, table compiler, and template generator. Bob Moore, 
Lin Ming.

AcpiXtract: Correctly handle embedded comments and messages from AcpiDump. 
Apparently some or all versions of acpidump will occasionally emit a comment like 
"Wrong checksum", etc., into the dump file. This was causing problems for 
AcpiXtract. ACPICA BZ 905, [url="http://www.acpica.org/bugzilla/show_bug.cgi?id=905"]http://www.acpica.org/bugzilla/show_bug.cgi?id=905[/url].

iASL: Fix the Linux makefile by removing an inadvertent double file inclusion. 
ACPICA BZ 913, [url="http://www.acpica.org/bugzilla/show_bug.cgi?id=913"]http://www.acpica.org/bugzilla/show_bug.cgi?id=913[/url].

AcpiExec: Update installation of operation region handlers. Install one handler 
for a user-defined address space. This is used by the ASL test suite (ASLTS).

 

iASL command line version 20110316 (March 16th 2011), Universal Binary (32 & 64 bit)

iasl_UB_16_03_2011.zip

iASLme version 20110316 (March 16th 201), Universal Binary (32 & 64 bit)

iASLMe_UB_16_03_2011.app.zip

 

Creadits to: cVad, Kabyl, Slice

Link to comment
Share on other sites

 Share

×
×
  • Create New...