- Joined
- Jul 30, 2012
- Messages
- 445
- Motherboard
- Lenovo U310
- CPU
- i5-3317
- Graphics
- intel HD 4000
- Mac
- Classic Mac
- Mobile Phone
ThanksThey have to be created for each unique DSDT as it depends on what the DSDT does in the battery methods.
It does not. No doubt the battery methods will fail when called from AppleSmartBatteryManager.kext with non-rollback AppleACPIPlatform.kext.
If you look at _BIF method in Device (BAT0), you will see it calls method UPBI (probably stands for update battery info). And if you look at UPBI , you'll see it access 16-bit registers in EC (EmbeddedControl), B1FC, DICP, DIVO, 128-bit access to SBDN, SBMN.
Same for _BST in Device (BAT0)... calls UPBS (update battery status), which has 16-bit access to MCUR, MBRM, MBVG.
You can look at the ProBook battery patches to see how this kind of access is converted to 8-bit access. For the 128-bit access, it is probably easier to fill in the values with static values and just remove the code that is trying to retrieve from EC. See the PBIF Package inside BAT1 device (it is the package once modified by _BIF that is returned by _BIF).
More information on battery methods can be found in the ACPI spec: http://www.acpi.info/
.
I'm assuming you are referring to #6 in your probook guides right. I'll look into it but I think I may just be a bit too ambitious on this one.