Voodooprojects
Chameleon => Bug Reports => Topic started by: diamondsw on August 26, 2009, 10:31:36 PM
-
Something appears incomplete in Chameleon's SMBIOS manipulation. These SMBIOS issues have been causing power management issues on 10.5.8/10.6 for laptop users - the Asus Eee series in my case. Battery and power management partially work:
- The battery menu extra shows the proper battery status, and changes appropriately for AC vs battery usage
- System Profiler appears correct, showing the battery, whether the system is charging, etc.
- However, the text on the battery menu extra incorrectly says "Power Source: AC Adapter" when on battery
- Energy Saver pref pane doesn't show battery vs AC options - just AC
I bring it up here, because to fix it, one needs both Chameleon's smbios.plist and a modified AppleSMBIOS.kext. In other words, I can put the same info in an smbios.plist and in an AppleSMBIOS.kext, and with one or the other, nothing is fixed. But with both it is.
I related it to Chameleon, as the fix for this is SMBIOS-related, and it seemed odd that Chameleon's SMBIOS support couldn't fix it on its own as I would have expected. Is this something we might see in rc3?
ioreg output is up at http://diamondsw.dyndns.org/Misc/SMBIOS.zip . I included output for when using only an smbios.plist and when using both that and a kext, and for when on AC and when on battery.
I've parsed through the two battery files, and the most likely difference is the following - without the kext, ChildrenPowerState doesn't exist:
| | +-o IORootParent <class IORootParent>
| | | "IOPowerManagement" = {"CurrentPowerState"=4,"DevicePowerState"=4,"PowerOverrideOn"=Yes,"ChildrenPowerState"=4}
Interestingly, when the system is on AC, the plist and plist+kext both have the "ChildrenPowerState"=4 key properly set. The only configuration that doesn't show "ChildrenPowerState" for that key is plist-only-battery, and it's only on that one key that it's missing. And of course, that's where we're seeing the strangest behavior.
You might find something I missed in the various other chunks of hex, but that one stands out to my amateur eye.
-
I suppose this problem is still not fixed. I'm using RC4 now with vanilla AppleSMBIOS.kext, using SMBIOS.plist in /Extra/Extensions, and there are no Battery settings in Energy Saver, and even though battery indicator works fine, it always shows "Power Source: Power Adapter" even when I'm on battery.
-
Forgot to add, that when I use AppleSMBIOS-AnV-38 kext, battery shows just fine.
-
The problem is fixed in AsereBLN Booter (http://www.efixusers.com/showthread.php?t=644) (based on Chameleon RC4) by setting system-type=2 in com.apple.Boot.plist.