Contribute
Register

Asus FX553VD: Keyboard working but not the Fn keys, both Smartps2 or voodoops2 not loading

Status
Not open for further replies.
Now your extract as two copies of the SataTabl SSDT (SSDT-0).
Adding SSDTs to ACPI/patched without dropping the OEM table results in duplicates.

If you want to fix the error in SSDT-0, you need to create a Clover hotpatch to do it.
how to do it? some thing like SSDT-SATA??
 
Its going above my head :) . Could you give me a example code? The ssdt-0 in #19 I uploaded the change is already made Device(SAT0)' to 'Scope(SAT0).

As in the guide, you need to look at the mixed listing for both.
Then create a patch that will match only on the pattern you find in SSDT-0.

With a solid understanding of all the examples in the guide, you should be able to create your own patch.
 
As in the guide, you need to look at the mixed listing for both.
Then create a patch that will match only on the pattern you find in SSDT-0.

With a solid understanding of all the examples in the guide, you should be able to create your own patch.

Actually i am not a coder or programmer. Its bit difficult for me. I went through your guide many time. I tried some thing.
1. The hot patch in config.plist applied to DSDT ONLY. So I decompile DSDT with iasl and with -l . I got something like
Device (PRT0)
{
BE71: 5B 82 0D 50 52 54 30 // [..PRT0
Then I wrote a patch like

PRT0->XRT0
fine: 5B820D50525430
replace:50820D50 525430
similarly I wrote for PRT1 ---PRT5.

Then I extracted with patchmatic and compiled. It compiled it without any error but with some warning.

ACPI Warning: Invalid character(s) in name (0x500D8250), repaired: [P**P] (20161210/utstring-301)
ACPI Warning: Invalid character(s) in name (0x08305452), repaired: [RT0*] (20161210/utstring-301)
ACPI Warning: Invalid character(s) in name (0x500F8250), repaired: [P**P] (20161210/utstring-301)
ACPI Warning: Invalid character(s) in name (0x08315452), repaired: [RT1*] (20161210/utstring-301)
ACPI Warning: Invalid character(s) in name (0x500F8250), repaired: [P**P] (20161210/utstring-301)
ACPI Warning: Invalid character(s) in name (0x08335452), repaired: [RT3*] (20161210/utstring-301)
ACPI Warning: Invalid character(s) in name (0x500F8250), repaired: [P**P] (20161210/utstring-301)
ACPI Warning: Invalid character(s) in name (0x08345452), repaired: [RT4*] (20161210/utstring-301)
ACPI Warning: Invalid character(s) in name (0x500F8250), repaired: [P**P] (20161210/utstring-301)
ACPI Warning: Invalid character(s) in name (0x08355452), repaired: [RT5*] (20161210/utstring-301)

Is it appropriate? I have no idea. I did not used any patch for battery but it is working with your ACPIBattery kext.
----------------------
Last login: Mon Oct 23 17:06:19 on ttys000
Abhisheks-MacBook-Air:~ abanerjee$ kextstat|grep -y acpiplat
13 2 0xffffff7f82781000 0x60000 0x60000 com.apple.driver.AppleACPIPlatform (5.0) 65E05472-6AE7-3308-8CC8-FA6CB0DB2AEE <12 11 7 6 5 4 3 1>
Abhisheks-MacBook-Air:~ abanerjee$ kextstat|grep -y appleintelcpu
Abhisheks-MacBook-Air:~ abanerjee$ kextstat|grep -y applelpc
89 0 0xffffff7f82188000 0x3000 0x3000 com.apple.driver.AppleLPC (3.1) F51595F0-F9B1-3B85-A1C3-F984DAD4107E <80 12 5 4 3>
Abhisheks-MacBook-Air:~ abanerjee$ kextstat|grep -y applehda
93 1 0xffffff7f826a3000 0x1d000 0x1d000 com.apple.driver.AppleHDAController (279.48) ED51F180-19C8-3DE1-AF81-0E389D98ADDE <92 91 72 12 7 6 5 4 3 1>
119 0 0xffffff7f82a0d000 0xb5000 0xb5000 com.apple.driver.AppleHDA (999.1.1fc1) 806B8C17-50CA-3C6B-90B3-195F38D8FB89 <118 97 93 92 91 72 6 5 4 3 1>
Abhisheks-MacBook-Air:~ abanerjee$ ls -l /System/Library/Extensions/AppleHDA.kext/Contents/Resources/*.zml*
ls: /System/Library/Extensions/AppleHDA.kext/Contents/Resources/*.zml*: No such file or directory
Abhisheks-MacBook-Air:~ abanerjee$ pmset -g assertions

2017-10-23 17:09:45 +0530

Assertion status system-wide:

BackgroundTask 0

ApplePushServiceTask 0

UserIsActive 0

PreventUserIdleDisplaySleep 0

PreventSystemSleep 0

ExternalMedia 0

PreventUserIdleSystemSleep 0

NetworkClientActive 0

Listed by owning process:

pid 59(mds): [0x000004d5000b818b] 00:12:46 BackgroundTask named: "com.apple.metadata.mds.power"

Kernel Assertions: 0x104=USB,MAGICWAKE

id=500 level=255 0x4=USB mod=01/01/70, 5:30 AM description=com.apple.usb.externaldevice.14200000 owner= USB OPTICAL MOUSE

id=501 level=255 0x100=MAGICWAKE mod=01/01/70, 5:30 AM description=en0 owner=en0

Idle sleep preventers: IODisplayWrangler

Abhisheks-MacBook-Air:~ abanerjee$ system_profiler SPSerialATADataType|grep TRIM

TRIM Support: Yes

Abhisheks-MacBook-Air:~ abanerjee$

Abhisheks-MacBook-Air:~ abanerjee$ sudo touch /System/Library/Extensions && sudo kextcache -u /

kext-dev-mode allowing invalid signature -67062 0xFFFFFFFFFFFEFA0A for kext VoodooI2C.kext
kext-dev-mode allowing invalid signature -67062 0xFFFFFFFFFFFEFA0A for kext USBInjectAll.kext
kext-dev-mode allowing invalid signature -67062 0xFFFFFFFFFFFEFA0A for kext Shiki.kext
kext-dev-mode allowing invalid signature -67062 0xFFFFFFFFFFFEFA0A for kext RealtekRTL8111.kext
kext-dev-mode allowing invalid signature -67062 0xFFFFFFFFFFFEFA0A for kext Lilu.kext
kext-dev-mode allowing invalid signature -67054 0xFFFFFFFFFFFEFA12 for kext X86PlatformPlugin.kext
kext-dev-mode allowing invalid signature -67062 0xFFFFFFFFFFFEFA0A for kext IntelGraphicsFixup.kext
kext-dev-mode allowing invalid signature -67062 0xFFFFFFFFFFFEFA0A for kext FakeSMC_LPCSensors.kext
kext-dev-mode allowing invalid signature -67062 0xFFFFFFFFFFFEFA0A for kext FakeSMC_CPUSensors.kext
kext-dev-mode allowing invalid signature -67062 0xFFFFFFFFFFFEFA0A for kext FakeSMC_ACPISensors.kext
kext-dev-mode allowing invalid signature -67062 0xFFFFFFFFFFFEFA0A for kext FakeSMC.kext
kext-dev-mode allowing invalid signature -67062 0xFFFFFFFFFFFEFA0A for kext FakePCIID_XHCIMux.kext
kext-dev-mode allowing invalid signature -67062 0xFFFFFFFFFFFEFA0A for kext FakePCIID_Intel_HDMI_Audio.kext
kext-dev-mode allowing invalid signature -67062 0xFFFFFFFFFFFEFA0A for kext FakePCIID_Intel_HD_Graphics.kext
kext-dev-mode allowing invalid signature -67062 0xFFFFFFFFFFFEFA0A for kext FakePCIID.kext
kext-dev-mode allowing invalid signature -67062 0xFFFFFFFFFFFEFA0A for kext CodecCommander.kext
kext-dev-mode allowing invalid signature -67062 0xFFFFFFFFFFFEFA0A for kext ApplePS2Keyboard.kext
kext-dev-mode allowing invalid signature -67062 0xFFFFFFFFFFFEFA0A for kext ApplePS2Controller.kext
kext-dev-mode allowing invalid signature -67062 0xFFFFFFFFFFFEFA0A for kext AppleBacklightInjector.kext
kext-dev-mode allowing invalid signature -67030 0xFFFFFFFFFFFEFA2A for kext aDummyHDA.kext
kext-dev-mode allowing invalid signature -67062 0xFFFFFFFFFFFEFA0A for kext ACPIBatteryManager.kext
KernelCache ID: 9576069D269F1C6EB4971A5D0C4887C0

Abhisheks-MacBook-Air:~ abanerjee$
 

Attachments

  • extract.zip
    73.5 KB · Views: 64
  • CLOVER.zip
    1.5 MB · Views: 57
  • Abhishek’s MacBook Air3.ioreg
    4.8 MB · Views: 84
Actually i am not a coder or programmer. Its bit difficult for me. I went through your guide many time. I tried some thing.
1. The hot patch in config.plist applied to DSDT ONLY. So I decompile DSDT with iasl and with -l . I got something like
Device (PRT0)
{
BE71: 5B 82 0D 50 52 54 30 // [..PRT0
Then I wrote a patch like

PRT0->XRT0
fine: 5B820D50525430
replace:50820D50 525430
similarly I wrote for PRT1 ---PRT5.

Then I extracted with patchmatic and compiled. It compiled it without any error but with some warning.

ACPI Warning: Invalid character(s) in name (0x500D8250), repaired: [P**P] (20161210/utstring-301)
ACPI Warning: Invalid character(s) in name (0x08305452), repaired: [RT0*] (20161210/utstring-301)
ACPI Warning: Invalid character(s) in name (0x500F8250), repaired: [P**P] (20161210/utstring-301)
ACPI Warning: Invalid character(s) in name (0x08315452), repaired: [RT1*] (20161210/utstring-301)
ACPI Warning: Invalid character(s) in name (0x500F8250), repaired: [P**P] (20161210/utstring-301)
ACPI Warning: Invalid character(s) in name (0x08335452), repaired: [RT3*] (20161210/utstring-301)
ACPI Warning: Invalid character(s) in name (0x500F8250), repaired: [P**P] (20161210/utstring-301)
ACPI Warning: Invalid character(s) in name (0x08345452), repaired: [RT4*] (20161210/utstring-301)
ACPI Warning: Invalid character(s) in name (0x500F8250), repaired: [P**P] (20161210/utstring-301)
ACPI Warning: Invalid character(s) in name (0x08355452), repaired: [RT5*] (20161210/utstring-301)

Is it appropriate? I have no idea. I did not used any patch for battery but it is working with your ACPIBattery kext.
----------------------
Last login: Mon Oct 23 17:06:19 on ttys000
Abhisheks-MacBook-Air:~ abanerjee$ kextstat|grep -y acpiplat
13 2 0xffffff7f82781000 0x60000 0x60000 com.apple.driver.AppleACPIPlatform (5.0) 65E05472-6AE7-3308-8CC8-FA6CB0DB2AEE <12 11 7 6 5 4 3 1>
Abhisheks-MacBook-Air:~ abanerjee$ kextstat|grep -y appleintelcpu
Abhisheks-MacBook-Air:~ abanerjee$ kextstat|grep -y applelpc
89 0 0xffffff7f82188000 0x3000 0x3000 com.apple.driver.AppleLPC (3.1) F51595F0-F9B1-3B85-A1C3-F984DAD4107E <80 12 5 4 3>
Abhisheks-MacBook-Air:~ abanerjee$ kextstat|grep -y applehda
93 1 0xffffff7f826a3000 0x1d000 0x1d000 com.apple.driver.AppleHDAController (279.48) ED51F180-19C8-3DE1-AF81-0E389D98ADDE <92 91 72 12 7 6 5 4 3 1>
119 0 0xffffff7f82a0d000 0xb5000 0xb5000 com.apple.driver.AppleHDA (999.1.1fc1) 806B8C17-50CA-3C6B-90B3-195F38D8FB89 <118 97 93 92 91 72 6 5 4 3 1>
Abhisheks-MacBook-Air:~ abanerjee$ ls -l /System/Library/Extensions/AppleHDA.kext/Contents/Resources/*.zml*
ls: /System/Library/Extensions/AppleHDA.kext/Contents/Resources/*.zml*: No such file or directory
Abhisheks-MacBook-Air:~ abanerjee$ pmset -g assertions

2017-10-23 17:09:45 +0530

Assertion status system-wide:

BackgroundTask 0

ApplePushServiceTask 0

UserIsActive 0

PreventUserIdleDisplaySleep 0

PreventSystemSleep 0

ExternalMedia 0

PreventUserIdleSystemSleep 0

NetworkClientActive 0

Listed by owning process:

pid 59(mds): [0x000004d5000b818b] 00:12:46 BackgroundTask named: "com.apple.metadata.mds.power"

Kernel Assertions: 0x104=USB,MAGICWAKE

id=500 level=255 0x4=USB mod=01/01/70, 5:30 AM description=com.apple.usb.externaldevice.14200000 owner= USB OPTICAL MOUSE

id=501 level=255 0x100=MAGICWAKE mod=01/01/70, 5:30 AM description=en0 owner=en0

Idle sleep preventers: IODisplayWrangler

Abhisheks-MacBook-Air:~ abanerjee$ system_profiler SPSerialATADataType|grep TRIM

TRIM Support: Yes

Abhisheks-MacBook-Air:~ abanerjee$

Abhisheks-MacBook-Air:~ abanerjee$ sudo touch /System/Library/Extensions && sudo kextcache -u /

kext-dev-mode allowing invalid signature -67062 0xFFFFFFFFFFFEFA0A for kext VoodooI2C.kext
kext-dev-mode allowing invalid signature -67062 0xFFFFFFFFFFFEFA0A for kext USBInjectAll.kext
kext-dev-mode allowing invalid signature -67062 0xFFFFFFFFFFFEFA0A for kext Shiki.kext
kext-dev-mode allowing invalid signature -67062 0xFFFFFFFFFFFEFA0A for kext RealtekRTL8111.kext
kext-dev-mode allowing invalid signature -67062 0xFFFFFFFFFFFEFA0A for kext Lilu.kext
kext-dev-mode allowing invalid signature -67054 0xFFFFFFFFFFFEFA12 for kext X86PlatformPlugin.kext
kext-dev-mode allowing invalid signature -67062 0xFFFFFFFFFFFEFA0A for kext IntelGraphicsFixup.kext
kext-dev-mode allowing invalid signature -67062 0xFFFFFFFFFFFEFA0A for kext FakeSMC_LPCSensors.kext
kext-dev-mode allowing invalid signature -67062 0xFFFFFFFFFFFEFA0A for kext FakeSMC_CPUSensors.kext
kext-dev-mode allowing invalid signature -67062 0xFFFFFFFFFFFEFA0A for kext FakeSMC_ACPISensors.kext
kext-dev-mode allowing invalid signature -67062 0xFFFFFFFFFFFEFA0A for kext FakeSMC.kext
kext-dev-mode allowing invalid signature -67062 0xFFFFFFFFFFFEFA0A for kext FakePCIID_XHCIMux.kext
kext-dev-mode allowing invalid signature -67062 0xFFFFFFFFFFFEFA0A for kext FakePCIID_Intel_HDMI_Audio.kext
kext-dev-mode allowing invalid signature -67062 0xFFFFFFFFFFFEFA0A for kext FakePCIID_Intel_HD_Graphics.kext
kext-dev-mode allowing invalid signature -67062 0xFFFFFFFFFFFEFA0A for kext FakePCIID.kext
kext-dev-mode allowing invalid signature -67062 0xFFFFFFFFFFFEFA0A for kext CodecCommander.kext
kext-dev-mode allowing invalid signature -67062 0xFFFFFFFFFFFEFA0A for kext ApplePS2Keyboard.kext
kext-dev-mode allowing invalid signature -67062 0xFFFFFFFFFFFEFA0A for kext ApplePS2Controller.kext
kext-dev-mode allowing invalid signature -67062 0xFFFFFFFFFFFEFA0A for kext AppleBacklightInjector.kext
kext-dev-mode allowing invalid signature -67030 0xFFFFFFFFFFFEFA2A for kext aDummyHDA.kext
kext-dev-mode allowing invalid signature -67062 0xFFFFFFFFFFFEFA0A for kext ACPIBatteryManager.kext
KernelCache ID: 9576069D269F1C6EB4971A5D0C4887C0

Abhisheks-MacBook-Air:~ abanerjee$

Mixed listing of SSDT-0-SataTabl.aml:
Code:
        Device (PRT0)
        {

  017B: 5B 82 49 04 50 52 54 30                          // [.I.PRT0

You will find that pattern will not match against DSDT.aml (due to different length encoding).

Mixed listing of patched SSDT-0-SataTable.aml (with Device -> Scope fix):
Code:
        Scope (PRT0)
        {

  019A: 10 49 04 50 52 54 30                             // .J.PRT0

The different length is problematic. To keep the length of the replace pattern the same as the find, we add a noop. According to the ACPI spec. Noop is 0xa3.

The Noop makes the Scope package one byte larger, so you end up with this mixed listing (with Device->Scope fix + noop):
Code:
        Scope (PRT0)
        {

  019A: 10 4A 04 50 52 54 30                             // .J.PRT0

            Noop

  01A1: A3

Resulting patch...
Find: <5B 82 49 04 50 52 54 30>
Replace: <10 4A 04 50 52 54 30 a3>

The result is this:
Code:
        Scope (PRT0)
        {
            Noop
...
 
Last edited:
Than
Mixed listing of SSDT-0-SataTabl.aml:
Code:
        Device (PRT0)
        {

  017B: 5B 82 49 04 50 52 54 30                          // [.I.PRT0

You will find that pattern will not match against DSDT.aml (due to different length encoding).

Mixed listing of patched SSDT-0-SataTable.aml (with Device -> Scope fix):
Code:
        Scope (PRT0)
        {

  019A: 10 49 04 50 52 54 30                             // .J.PRT0

The different length is problematic. To keep the length of the replace pattern the same as the find, we add a noop. According to the ACPI spec. Noop is 0xa3.

The Noop makes the Scope package one byte larger, so you end up with this mixed listing (with Device->Scope fix + noop):
Code:
        Scope (PRT0)
        {

  019A: 10 4A 04 50 52 54 30                             // .J.PRT0

            Noop

  01A1: A3

Resulting patch...
Find: <5B 82 49 04 50 52 54 30>
Replace: <10 4A 04 50 52 54 30 a3>

The result is this:
Code:
        Scope (PRT0)
        {
            Noop
...
Thanks a lot for details. But its giving me KP (Unable to find driver for this platform-----). I made the change for PRT0,PRT1,3,4,5. Should I include corrected SSDT-0 in the /ACPI/patched? My net is very slow, couldn't upload the picture.
 

Attachments

  • config.plist
    17.4 KB · Views: 233
Than

Thanks a lot for details. But its giving me KP (Unable to find driver for this platform-----). I made the change for PRT0,PRT1,3,4,5. Should I include corrected SSDT-0 in the /ACPI/patched? My net is very slow, couldn't upload the picture.

Change only PRT0. Then test.
Also...
Read FAQ, "Problem Reporting" again. Carefully. Attach all requested files/output.
https://www.tonymacx86.com/threads/faq-read-first-laptop-frequent-questions.164990/

Also, why are you renaming the PRT0->XRT0?
 
Change only PRT0. Then test.
Also...
Read FAQ, "Problem Reporting" again. Carefully. Attach all requested files/output.
https://www.tonymacx86.com/threads/faq-read-first-laptop-frequent-questions.164990/

Also, why are you renaming the PRT0->XRT0?
Thanks man. It works. Now I can decompile all ssdts extracted by patchmatic without any error. I will add few more ssdt and test it out and get back to u. Thanks for your time.
clover boot.log @ssdt-0
4:339 0:000 15. [PRT0]: pattern 5B824904, patched at: [ (167) ]
4:339 0:000 16. [PRT1]: pattern 5B824904, patched at: [ (1B2) ]
4:339 0:000 17. [PRT3]: pattern 5B824904, patched at: [ (1FD) ]
4:339 0:000 18. [PRT4]: pattern 5B824904, patched at: [ (248) ]
4:339 0:000 19. [PRT5]: pattern 5B824904, patched at: [ (293) ]

By the way which are the important ssdts, means essantial? Shall I add all which are available in your hotpatch repo?
 
Last edited:
Thanks man. It works. Now I can decompile all ssdts extracted by patchmatic without any error. I will add few more ssdt and test it out and get back to u. Thanks for your time.
clover boot.log @ssdt-0
4:339 0:000 15. [PRT0]: pattern 5B824904, patched at: [ (167) ]
4:339 0:000 16. [PRT1]: pattern 5B824904, patched at: [ (1B2) ]
4:339 0:000 17. [PRT3]: pattern 5B824904, patched at: [ (1FD) ]
4:339 0:000 18. [PRT4]: pattern 5B824904, patched at: [ (248) ]
4:339 0:000 19. [PRT5]: pattern 5B824904, patched at: [ (293) ]

Super.
I guess the OEM did actually make the mistake for each PRT0... and PRT2/PRT3/PRT4/PRT5.

By the way which are the important ssdts, means essantial? Shall I add all which are available in your hotpatch repo?

You only add SSDTs if the SSDT solves a problem.
 
Status
Not open for further replies.
Back
Top