Contribute
Register

[Guide] How to patch DSDT for working battery status

How to patch DSDT for working battery status

Hi RehabMan,

Following your first post and going through all the post inside this topic, I manage to complete the patch (inside the attachment).
But still I can't get any reading from the Battery Status (0%)..
Can you help me please? Any other info you required please just let me know.

Yes, I noticed one patch from your repo (Lenovo X220) which is quite similar to mine but not exactly the same. So I decided to start from the scratch.

Thank you very much.

Edit: Just for additional information, FYI I'm booting from MBR using Chameleon v2.2svn r2378.. I've included my IOreg, Chameleon Boot setting, & smbios.plist for your convenient. Thanks..

Update: Applied the nonzero mutex fix and AC Adapter fix but still no luck :(
I've attach latest ioreg & DSDT after applying these patch too (after_fix_nonzero_mutex.zip)..

ioreg files are corrupt. No DSDT was provided.
 
How to patch DSDT for working battery status

i think i should use debug version

here's what's happening now

View attachment 96373View attachment 96374

look that battery health app shows all parameters ok but battery status indicator is colored red and shows remaining time 0:03 and tells me that mac will power off if i don't charge my battery

here is my dsdt.asl
View attachment 96375
rename to .dsl before opening

i had to start all over as i lost audio with past mods for battery
in this moment i'm with all system stuff ok but with this battery status issue

add ioreg copy
View attachment 96376
and
View attachment 96377
View attachment 96378

if anyone could teach me how to use debug version i will be grateful

bye and thank you all very much

Amperage is a very large negative number. Run the debug version so you can see the values coming back from _BST. Then review the code there. You can use ACPIDebug to debug your DSDT methods.

https://github.com/RehabMan/OS-X-ACPI-Debug
 
How to patch DSDT for working battery status

Amperage is a very large negative number. Run the debug version so you can see the values coming back from _BST. Then review the code there. You can use ACPIDebug to debug your DSDT methods.

https://github.com/RehabMan/OS-X-ACPI-Debug

thanks for the url i was looking for that without any luck

dsdt required patches for debug DONE
install debug kext DONE

i fail to understand last point where to place the log file
 
How to patch DSDT for working battery status

Your DSDT needs patches. See post #1.
I've already apply the patch(for 16-bit,32-bit & 128-bit).. Can you point which part i didn't patch yet based from the DSDT i;ve uploaded previously? Here is some screenshot
Screen Shot 2014-06-18 at 11.53.40 PM.pngScreen Shot 2014-06-18 at 11.55.14 PM.pngScreen Shot 2014-06-18 at 11.58.12 PM.pngScreen Shot 2014-06-18 at 11.59.11 PM.pngScreen Shot 2014-06-18 at 11.59.25 PM.png

Is it possible that the DSDT is not loaded?
Ive verify from bdmesg the file size is the same with the one from /Extra..

Thank you
 
How to patch DSDT for working battery status

i've already apply the patch(for 16-bit,32-bit & 128-bit).. Can you point which part i didn't patch yet based from the dsdt i;ve uploaded previously? Here is some screenshot
View attachment 96390View attachment 96391View attachment 96392View attachment 96393View attachment 96394

is it possible that the dsdt is not loaded?
Ive verify from bdmesg the file size is the same with the one from /extra..

Thank you

Just the first few examples that I found. There are more.

Code:
                ECRC,   16, 
                ECAC,   16, 
                ECVO,   16,
 
Back
Top