Contribute
Register

[solved] Haswell DSDT compile error

Status
Not open for further replies.
Joined
Jan 19, 2011
Messages
18
Motherboard
Asus X750LA (Clover)
CPU
Intel i3-4010U
Graphics
Haswell HD 4600/1600x900
Mac
  1. 0
Classic Mac
  1. 0
Mobile Phone
  1. Android
I changed to a new notebook and installed Mavericks with Clover using the excellent tutorials on this site. However, when I try to edit the dsdt I ran into problems. The dsdl von MacIASL had 6 error messages. Therfore I have extracted DSDT with ahcidump on Ubuntu 14.04.1 LTS and de-compiled with iasl from ACPICA version 20141107. I used the following command:

iasl -e ssd*.dat -d dsdt.dat

When I try to compile the dsdt.dat file I still get the following errors:
4323: Error 6126 - syntax error, unexpected PARSEOP_ZERO
5048: Error 6126 - syntax error, unexpected PARSEOP_ZERO
17219: Error 6126 - syntax error, unexpected '}'
22771: Error 6126 - syntax error, unexpected $end and premature End-Of-File

What can I do to fix these errors?

Enclosed the output of ahcidump and the dsdt.dsl
 

Attachments

  • dump.zip
    124.5 KB · Views: 542
  • dsdt.zip
    61.8 KB · Views: 514
Haswell DSDT compile error

I changed to a new notebook and installed Mavericks with Clover using the excellent tutorials on this site. However, when I try to edit the dsdt I ran into problems. The dsdl von MacIASL had 6 error messages. Therfore I have extracted DSDT with ahcidump on Ubuntu 14.04.1 LTS and de-compiled with iasl from ACPICA version 20141107. I used the following command:

iasl -e ssd*.dat -d dsdt.dat

When I try to compile the dsdt.dat file I still get the following errors:
4323: Error 6126 - syntax error, unexpected PARSEOP_ZERO
5048: Error 6126 - syntax error, unexpected PARSEOP_ZERO
17219: Error 6126 - syntax error, unexpected '}'
22771: Error 6126 - syntax error, unexpected $end and premature End-Of-File

What can I do to fix these errors?

Enclosed the output of ahcidump and the dsdt.dsl

dsdt.zip is an endless loop of .zip->.zip.cpgz->.zip, etc.


You will get a better disassembly if you disassemble all at once...

You will need to extract all DSDT/SSDT from Linux. They are available in /sys/firmware/acpi/tables and /sys/firmware/acpi/tables/dynamic. Place them on USB or otherwise transfer to OS X.

It is not necessary to install Linux. Simply run it from USB: http://www.ubuntu.com/download/desktop/create-a-usb-stick-on-windows

In Linux Terminal:
Code:
# substitute DEST with the mountpoint of a FAT32 formatted USB stick
sudo cp -R /sys/firmware/acpi/tables DEST

Place all SSDT/DSDT in a single directory and use a recent build of iasl to disassemble:
https://bitbucket.org/RehabMan/acpica/downloads
Code:
cd "to directory where you placed all SSDT/DSDT"
iasl -da -dl *.aml

Then work with the resulting *.dsl. You'll find you have less errors to deal with.
 
Haswell DSDT compile error

Thank you for your quick reply!

dsdt.zip is an endless loop of .zip->.zip.cpgz->.zip, etc.

Then work with the resulting *.dsl. You'll find you have less errors to deal with.

I followed your instructions. However, the resulting file (enclosed as attachment without endless loop) still has the same errors:

Code:
4243: Error 6126 - syntax error, unexpected PARSEOP_ZERO
4323: Error 6126 - syntax error, unexpected PARSEOP_ZERO
5048: Error 6126 - syntax error, unexpected PARSEOP_ZERO
17219: Error 6126 - syntax error, unexpected '}'
22771: Error 6126 - syntax error, unexpected $end and premature End-Of-File
Do you have any ideas?
 

Attachments

  • DSDT.zip
    76.2 KB · Views: 480
Haswell DSDT compile error

Thank you for your quick reply!



I followed your instructions. However, the resulting file (enclosed as attachment without endless loop) still has the same errors:

Code:
4243: Error 6126 - syntax error, unexpected PARSEOP_ZERO
4323: Error 6126 - syntax error, unexpected PARSEOP_ZERO
5048: Error 6126 - syntax error, unexpected PARSEOP_ZERO
17219: Error 6126 - syntax error, unexpected '}'
22771: Error 6126 - syntax error, unexpected $end and premature End-Of-File
Do you have any ideas?

If you disassemble with the 'iasl' I linked you'll get a result that is friendlier for MaciASL...

Employ this simple process for fixing all the errors: remove the lines causing the errors. This includes the lines that consist of just 'Zero'.

And make ADBG read:
Code:
    Method (ADBG, 1, Serialized)
    {


        Return (Zero)
    }

There are actually patches in the repo for some of the errors you have: https://github.com/RehabMan/Laptop-DSDT-Patch

But MaciASL can't deal with the file dissembled with the wrong version of iasl.
 
Haswell DSDT compile error

If you disassemble with the 'iasl' I linked you'll get a result that is friendlier for MaciASL...

Employ this simple process for fixing all the errors: remove the lines causing the errors. This includes the lines that consist of just 'Zero'.

There are actually patches in the repo for some of the errors you have: https://github.com/RehabMan/Laptop-DSDT-Patch

But MaciASL can't deal with the file dissembled with the wrong version of iasl.

I followed your advice and did the decompile with the compiler from your link. I also edited the file to remove the errors. The most relevant changes I did have been that I had to comment out:
1) all ToPld values for device CAM0: lines 18094ff (does that mean I will not be able to use the WebCAM?)
2) all IFS in the System State: lines 22783ff (does that mean PowerSave will not work?)

However, I am still stuck with 1 error:
Code:
22851 6126 syntax error, unexpected $end and premature End-Of-File
Any ideas on how to remove that last remaining error? Any help would be appreciated!

Also one more question: Once DSDT is fixed, which patches should I apply from the various patch repositories? System Info gives the following hardware:
Code:
Intel 8 Series SMBus Controller 
Intel 8 Series SATA Controller 1 (AHCI mode)
Intel 8 Series LPC Controller
Intel 8 Series USB EHCI #1
Realtek TTL8111/8168/8411 PCI Express Gigabit Ethernet
Intel 8 Series PCI Express
Intel 8 Series HD Audio Controller
Intel 8 Series HECI
Intel 8 Series USB xHCI HC
Haswell-ULT HD Audio Controller
Haswell-ULT Integrated Graphics Controller
 

Attachments

  • DSDT.zip
    64.1 KB · Views: 360
Haswell DSDT compile error

deleted duplicate message
 
Haswell DSDT compile error

I followed your advice and did the decompile with the compiler from your link. I also edited the file to remove the errors. The most relevant changes I did have been that I had to comment out:
1) all ToPld values for device CAM0: lines 18094ff (does that mean I will not be able to use the WebCAM?)

The ToPLD macros are fine if you use the latest iasl. Keep in mind there is an iasl inside of MaciASL: https://github.com/RehabMan/OS-X-MaciASL-patchmatic

2) all IFS in the System State: lines 22783ff (does that mean PowerSave will not work?)

I have no idea what you're referring to. Perhaps you should post your native files as extracted from Linux.

However, I am still stuck with 1 error:
Code:
22851 6126 syntax error, unexpected $end and premature End-Of-File

It is likely some of your edits were incorrect. Post your native files.

Any ideas on how to remove that last remaining error? Any help would be appreciated!

Also one more question: Once DSDT is fixed, which patches should I apply from the various patch repositories? System Info gives the following hardware:
Code:
Intel 8 Series SMBus Controller 
Intel 8 Series SATA Controller 1 (AHCI mode)
Intel 8 Series LPC Controller
Intel 8 Series USB EHCI #1
Realtek TTL8111/8168/8411 PCI Express Gigabit Ethernet
Intel 8 Series PCI Express
Intel 8 Series HD Audio Controller
Intel 8 Series HECI
Intel 8 Series USB xHCI HC
Haswell-ULT HD Audio Controller
Haswell-ULT Integrated Graphics Controller

It depends on what, specifically, you're trying to fix.
 
Haswell DSDT compile error

I have no idea what you're referring to. Perhaps you should post your native files as extracted from Linux. It is likely some of your edits were incorrect. Post your native files.

Thank you very much for your reply! Native files below. Can you see anything? Should I also post the unchanged DSDT?

BTW. My IASL is from 20131218-64bit. I have used the update button in MacIASL.
 

Attachments

  • Linux-Extract.zip
    45.4 KB · Views: 245
Haswell DSDT compile error

Thank you very much for your reply! Native files below. Can you see anything? Should I also post the unchanged DSDT?

BTW. My IASL is from 20131218-64bit. I have used the update button in MacIASL.

I applied this patch to DSDT.dsl (after 'iasl -da -dl DSDT.aml SSDT*.aml')
Code:
into_all all code_regex (\s+Zero){2,} removeall_matched;
into_all all code_regex (\s+Zero){2,} removeall_matched;
into method label ADBG replace_content begin Return(0) end;

Then removed the remaining 4 lines causing errors (not needed since they do nothing).

Result: DSDT.dsl compiles error free.

I'm using iasl here: https://bitbucket.org/RehabMan/acpica/downloads
 
Haswell DSDT compile error

I applied this patch to DSDT.dsl (after 'iasl -da -dl DSDT.aml SSDT*.aml')
Code:
into_all all code_regex (\s+Zero){2,} removeall_matched;
into_all all code_regex (\s+Zero){2,} removeall_matched;
into method label ADBG replace_content begin Return(0) end;

Then removed the remaining 4 lines causing errors (not needed since they do nothing).

Result: DSDT.dsl compiles error free.

I'm using iasl here: https://bitbucket.org/RehabMan/acpica/downloads

I am really sorry but I seem to be to stupid and I am still stuck with a lot of errors. Here is what I did:
1) downloaded IASL.zip from 2014-11-13 from your file and put the extracted iasl in my home directory (13 Nov 2014, 1MB)
2) put the Linux extract files that are in the posted zip file in the sub-directory tables
3) ../iasl -da -dl dsdt.aml ssdt*.aml
4) Opened with MaciASL
5) MaciASL preferences: ACPI 5.0, Updated iASL (compiler version 20131218-64 (Jan 8 2014))
5) First compile 36 errors
6) Applying your patch: Still 32 errors (and not 4 as in your post)

What am I doing wrong? I am really desperate now. May I ask you to share the error-free DSDL that you generated? I know that this is a big ask but this seems to be too much science for me...
 
Status
Not open for further replies.
Back
Top