Contribute
Register

(FINALLY SOLVED) Thinkpad T480s - MacOS13.5.1 - OC 0.9.4. - 2 ACPI Errors

At the moment I'm on holiday so can't change anything.
I disabled TB3. How can I check the idle consumption? I've got the latest 1.23 bios.


I forgot to say that I've got a DW1820a installed in the device. It's working okay, but I can't use the personal hotspot, so I will have to change it. I'm thinking about a native BCM94360CS2 with an adapter, but there isn't that much space in the T480s (in the X1 it would fit better..). Have to get into this later but not being able to use the Personal hotspot is a no go for me. (Looks like you choice, the BCM94360NG could be a good option..)

Did you apply the config.plist patches fot tyloer's XHC? Otherwise I'm getting a complete broken USB mapping. Also don't know if this is super necessary, since you could just use usb mapping or am I wrong?

Will test your EFI in 1-2 days when I'm home
 
The latest EFI in my github repo works best. The easiest way to check consumption is with coconut battery app and intel power gadget.

Tyler and benbender say that their SSDT-XHC1 implements power properties to USB ports.

At the moment my power consumption at idle is at 5-6 watts (PKG at 1,20 watts, core at 0,10 watts and dram at 0,20 - 0,30 watts) with screen brightness at half, undervolted cpu with turbo off, card reader, wwlan, TB and fingerprint reader disabled in bios). Touchscreen is on.

My latest EFI is cleaned, stirpped down and stable.
I have also a testing EFI with ThunderBolt on with similar if not slightly more consumption.

I suspect that the reason i cannot reach Tyler' s results (0,7 watts PKG at idle) is USB power implementation.

But I cannot load his SSDT-XHC1 with out the _UPC acpri Error.

Enjoy your holiday. We will talk when you get back.
 
Finally I managed to load SSDT-XHC1.aml with no ACPI errors.
The _UPC to XUPC section of the patch had to be modified so that the correct Length of our SSDT-4-ProjSsdt.aml was registered [ 0x0000163C (5692) ]

So with this patch:
<dict>
<key>Comment</key>
<string>XHC: _UPC to XUPC</string>
<key>Count</key>
<integer>0</integer>
<key>Enabled</key>
<true/>
<key>Find</key>
<data>
X1VQQw==
</data>
<key>Limit</key>
<integer>0</integer>
<key>Mask</key>
<data>
</data>
<key>OemTableId</key>
<data>
UHJvalNzZHQ=
</data>
<key>Replace</key>
<data>
WFVQQw==
</data>
<key>ReplaceMask</key>
<data>
</data>
<key>Skip</key>
<integer>0</integer>
<key>TableLength</key>
<integer>5692</integer>
<key>TableSignature</key>
<data>
U1NEVA==
</data>
</dict>
SSDT-XCH1.aml now loads correctly and with no ACPI Errors.

I am starting to test it.
 
I modified SSDT-EC-USBX-LAPTOP.aml to remove all USB implementations and I have loaded tyler's SSDT-XHC1.aml.

I don' t know if its random, but so far I get with this configuration the best results in power consumption .
Next goal is to tackle the last if ACPI "errors" the same you also have (see second screenshot).
 

Attachments

  • Screenshot 2023-09-09 at 17.38.01.png
    Screenshot 2023-09-09 at 17.38.01.png
    355.6 KB · Views: 35
  • Screenshot 2023-09-09 at 17.34.54.png
    Screenshot 2023-09-09 at 17.34.54.png
    156.5 KB · Views: 35

Attachments

  • EFI.zip
    28.8 MB · Views: 28
  • DSDT.aml
    136.1 KB · Views: 22
Hey! I just cam home and had a look into the EFI. Will start testing later. I just had a quick look into the config file. Is there a specific reason why you are using the MacbookPro15,2 platform? Doesn't 14,1 fit better?

Other remarks:
- You are using the USBPorts.kext AND the XHC1 ssdt. I think this won't work since both are working against each other.
- You are using ECEnabler AND SSDT-EC+SSDT-HWAC, you can remove the ECEnabler when you have working SSDTs.

Edit:
7.41w is the lowest I can get to with your EFI. I could imagine disabling the touchscreen could help saving energy aswell. I never use it tbh. Will make some other tests.
 
Last edited:
Can you please replace the SSDT-INIT with the following, change platform to MacbookPro14,1, disable the USBPortMapping kexts, disable ECEnabler kext. After that the OINIT acpi error should be gone and all tables should be loaded without an error.

The "(AppleACPIPlatform) Could not install PciConfig handler for Root Bridge PCI0" is still there on my side. Consumption is around 7,41w but I think I need to change the CPUFriend kext to fit to my i5-8350u and also it's possible that the intel ssd and the dw1820a consumes more power?
 

Attachments

  • SSDT-INIT.aml
    140 bytes · Views: 21
Last edited:
Welcome back. I hope you had a nice time and thank you for your help.

Some remarks:
1. This is my testing EFI.
2. ECEnabler.kext is deactivated (disabled) in my EFI.
3. 14,1 fits better for the CPU, but I have read from other users that 15,2 has better thermal and other features. So i opted for 15,2 since the beginning. From what I see many have opted for 15.2 and i followed, although I was thinking for a 14,1.
4. You are right about the possible USBPorts.kext AND the XHC1 ssdt conflict. I wili remove and test.
5. Thank you for the modification of the INIT. I will test and report back.
6. I researched the "(AppleACPIPlatform) Could not install PciConfig handler for Root Bridge PCI0" problem. I found out that many have it in linux also and the say that its not an OC ACPI error but a firmware error that we can ignore. From what I read none managed to find a solution.

EDIT
Your modified SSDT-INIT.aml is the same with the SSDT-INIT-GOOD.aml in my EFI. I can load this with no errors.
The problem is that I want to load the specific SSDT-INIT.aml of my EFI because, among others, it enables lenovo thermal management.
 
Last edited:
Ah okay. Hm. I will try to play around the INIT versions again. Didn't saw that you disabled ECEnabler.

Is it possible to get the lenovo thermal management with the YogaSMC kext?

Do you also have these errors?

Code:
2023-09-10 13:57:08.206336+0200 0x71       Default     0x0                  0      0    kernel: (AppleACPIPlatform) ACPI: sleep states S3 S4 S5
2023-09-10 13:57:08.210303+0200 0x71       Default     0x0                  0      0    kernel: PMRD: setSleepSupported(1)
2023-09-10 13:57:08.210314+0200 0x77       Default     0x0                  0      0    kernel: PMRD: power event 7 args 0xfa846662a9df80d1 0x0
2023-09-10 13:57:08.210321+0200 0x77       Default     0x0                  0      0    kernel: PMRD: PowerChangeOverride (ON_STATE->ON_STATE, f, 0x302) tag 0x60064
2023-09-10 13:57:08.210331+0200 0x77       Default     0x0                  0      0    kernel: PMRD: PowerChangeDone: ON_STATE->ON_STATE
2023-09-10 13:57:08.216149+0200 0x71       Default     0x0                  0      0    kernel: (AppleACPIPlatform) ACPI: cannot translate ACPI object 14
2023-09-10 13:57:08.216156+0200 0x71       Default     0x0                  0      0    kernel: (AppleACPIPlatform) ACPI: cannot translate ACPI object 14
2023-09-10 13:57:08.216161+0200 0x71       Default     0x0                  0      0    kernel: (AppleACPIPlatform) ACPI: cannot translate ACPI object 14
2023-09-10 13:57:08.216168+0200 0x71       Default     0x0                  0      0    kernel: (AppleACPIPlatform) ACPI: cannot translate ACPI object 14
 
Ok, so:
1. With USBPorts.kext disabled all usb ports work correct including the touchscreen
2.My obsession with benbender's SSDT-INIT is beacuse of these lines in his repo:
  • Enabled DYTC (Lenovo thermal management)
  • Disables DPTF (Intel thermal management)
And his specific SSDT-INIT writes:
DPTF = Zero

3. The only other reference to an OINI is in the DSDT.aml itself.
I cannot figure this out.
EDIT

4. I get these too. They are not errors per se.
5. I avoid YogaSMC in all three of my lenovo hackintoshes I find it not well written and not well maintained.



Test this EFI. It should give you the lowest power consumption. It does for me.
 

Attachments

  • EFI.zip
    28.8 MB · Views: 35
Last edited:
Back
Top