Contribute
Register

Question About SSDT

Status
Not open for further replies.
Joined
Jul 20, 2014
Messages
129
Motherboard
ThinkPad W550s
CPU
Intel Core i7-5600U @ 2.59 GHz
Graphics
k620m/hd5500
Mac
  1. 0
Classic Mac
  1. 0
Mobile Phone
  1. 0
I used "iasl -e SSDT*.aml -d DSDT.aml" to get DSDT and the same to get SSDT.

BUT when I try to compile the fifth, some error occurred.

dsdt_problem.png

I checked it and found all '{' and '}' are in pairs.

What should I do next?

And here are all my files.
 

Attachments

  • Archive.zip
    132.7 KB · Views: 55
I used "iasl -e SSDT*.aml -d DSDT.aml" to get DSDT and the same to get SSDT.

BUT when I try to compile the fifth, some error occurred.

View attachment 134526

I checked it and found all '{' and '}' are in pairs.

What should I do next?

And here are all my files.





:)
Things happen so fast.

I fixed these issue by delete all

  1. Package (0x06)
  2. {
  3. 0x80000000,
  4. 0x80000000,
  5. 0x80000000,
  6. 0x80000000,
  7. 0x80000000,
  8. 0x80000000
  9. }
 
:)
Things happen so fast.

I fixed these issue by delete all

  1. Package (0x06)
  2. {
  3. 0x80000000,
  4. 0x80000000,
  5. 0x80000000,
  6. 0x80000000,
  7. 0x80000000,
  8. 0x80000000
  9. }

It is typical...

This patch can automate it:
Code:
# remove bogus:
#
# Package (0x06)
# {
#   0x80000000,
#   0x80000000,
#   0x80000000,
#   0x80000000,
#   0x80000000,
#   0x80000000
# }

into_all all code_regex Package\s+\(0x06\)\n.*\{\n(.*0x80000000.*\n){6}.*\} removeall_matched;
 
It is typical...

This patch can automate it:
Code:
# remove bogus:
#
# Package (0x06)
# {
#   0x80000000,
#   0x80000000,
#   0x80000000,
#   0x80000000,
#   0x80000000,
#   0x80000000
# }

into_all all code_regex Package\s+\(0x06\)\n.*\{\n(.*0x80000000.*\n){6}.*\} removeall_matched;

:p I just thought the duplication of the code might be the issue and didn't think too much...
 
:p I just thought the duplication of the code might be the issue and didn't think too much...

It is not really duplication, but rather placeholders the BIOS can use to expand the _PSS package if the installed CPU requires more pstates.
 
It is not really duplication, but rather placeholders the BIOS can use to expand the _PSS package if the installed CPU requires more pstates.

And Mac OS does not need this feature, so we should delete it right? Or Mac OS could do the same thing ?
 
And Mac OS does not need this feature, so we should delete it right? Or Mac OS could do the same thing ?

Only BIOS will manipulate the ACPI tables and only the native tables. To get it to compile we remove the placeholders as the compiler doesn't like it. No doubt the original source for inclusion in the BIOS has all the packages inside the main _PSS package. But BIOS manipulates it (based on the installed CPU) before handing it off to the OS.

Your only concern here is that if you upgrade your CPU, you'd have to re-patch this file as it will change based on the new CPU.
 
Status
Not open for further replies.
Back
Top