Contribute
Register

Native DSDT/AML IDE & Compiler: MaciASL Open Beta

Status
Not open for further replies.
Sorry, I have both Lion and ML. I see that option in Mountain Lion.
Rehabman said that we should use ACPI 5.0.

You could try ACPI 4.0 -- it will "probably" work. I don't use that compiler and at the time I wrote the DSDT patch guide for the 4530s, the 4.0 compiler was old and did not work, but I think it has been updated since then.

Is the 4.0/5.0 option not available on MaciASL on Lion?
 
You can choose between 4 and 5 version of ACPI in Maciasl. But ACPI 5 is giving me a plethora of errors when compiling. Can someone explain the difference between the two ACPI versions?
 
You can choose between 4 and 5 version of ACPI in Maciasl. But ACPI 5 is giving me a plethora of errors when compiling. Can someone explain the difference between the two ACPI versions?

You would have to find the ACPI 5.0 spec, then find the ACPI 4.0 spec (use google). Then compare them. The ACPI 5.0 spec that is on my machine is over 900 pages. Happy comparing!!
 
Only 900 pages? I hope its a big font. :) Well now I am intrigued to actually do that. Might learn a thing or two.
 
Only 900 pages? I hope its a big font. :) Well now I am intrigued to actually do that. Might learn a thing or two.

Summary: ACPI 5.0 is more strict.
 
you could also actually fix the errors, instead of manually compiling your DSDT with the included iASL using additional flags. Was it a Min/Max, or Create___Field issue?
 
These were the errors:

Code:
DSDT.dsl   2402:                                        SUSW, 
Error    4105 -     Invalid object type for reserved name ^  (_PRW: found Reference at index 0, Integer/Package required)

DSDT.dsl   2576:                            IO (Decode16,
Error    4090 -                                       ^ Min/Max/Length/Gran are all zero, but no resource tag
As I understood from reading through the net that the first error can be ignored since its a value updated by BIOS dynamically. So far the DSDT works but if those errors are critical then I wouldn't mind a suggestion as how to fix them.
 
in the first case you should change the method, reserved names are nothing to mess with. If it's using a reference, you should instead be returning the object. in the second, if min and max are both 0, length should be 1.
 
Changing length to 0x01 from 0x00 fixed it, also fixed with:
Code:
Method (_PRW, 0, NotSerialized)
                        {
                            If (LNotEqual (SUSW, 0xFF))
                            {
                                Return (Package (0x03)
                                {
                                    Zero,
                                    0x04, 
                                    SUSW
                                })
                            }
                            Else
                            {
                                Return (Package (0x02)
                                {
                                    Zero, 
                                    Zero
                                })
                            }
                        }


Compiles with a few warnings :

Code:
DSDT.dsl   2053:                            CreateDWordField (CRS1, \_SB.PCI0._Y05._MAX, MX8L)
Warning  1127 -                                        ResourceTag larger than Field ^  (Size mismatch, Tag: 64 bits, Field: 32 bits)
 
Status
Not open for further replies.
Back
Top