Contribute
Register

Battery Manager with Fix for Boot without Batteries

Status
Not open for further replies.
Yes only for battery, and it work only with acpiplatform 1.3.6... with acpiplatform 1.6 not work for me

What do you mean "only for battery?" I need DSDT that is untouched at least as far as battery methods/battery EC fields. This one "looks" untouched, but there is no sense in my doing a patch for a DSDT with battery methods that have already been modified.
 
Ok sorry here is my dsdt untouched ..sorry my english..;)

Here is your patch. It is very similar to an HP Envy patch I did a while ago... just a few extra EC fields and some slightly different names/paths...

Code:
# created by RehabMan 8/30/2013
# for xmen1's Compaq Presario CQ60 200EP (very similar to HP Envy patch, so based on that…)

into method label B1B2 remove_entry;
into definitionblock code_regex . insert
begin
Method (B1B2, 2, NotSerialized) { Return(Or(Arg0, ShiftLeft(Arg1, 8))) }\n
end;

# battery EC

# 16-bit group1
into device label EC0 code_regex BSRC,\s+16 replace_matched begin BRC0,8,BRC1,8 end;
into device label EC0 code_regex BSFC,\s+16 replace_matched begin BFC0,8,BFC1,8 end;
into device label EC0 code_regex BSPE,\s+16 replace_matched begin BPE0,8,BPE1,8 end;
into device label EC0 code_regex BSAC,\s+16 replace_matched begin BAC0,8,BAC1,8 end;
into device label EC0 code_regex BSVO,\s+16 replace_matched begin BVO0,8,BVO1,8 end;
into device label EC0 code_regex BSCU,\s+16 replace_matched begin BCU0,8,BCU1,8 end;
into device label EC0 code_regex BSTV,\s+16 replace_matched begin BTV0,8,BTV1,8 end;
into device label EC0 code_regex BSDC,\s+16 replace_matched begin BDC0,8,BDC1,8 end;
into device label EC0 code_regex BSDV,\s+16 replace_matched begin BDV0,8,BDV1,8 end;
into device label EC0 code_regex BSSN,\s+16 replace_matched begin BSN0,8,BSN1,8 end;
into device label EC0 code_regex BSMA,\s+16 replace_matched begin BMA0,8,BMA1,8 end;
into device label EC0 code_regex BSBS,\s+16 replace_matched begin BBS0,8,BBS1,8 end;
into device label EC0 code_regex BSCY,\s+16 replace_matched begin BCY0,8,BCY1,8 end;

# 16-bit group2
into device label EC0 code_regex BSCV,\s+16 replace_matched begin BCV0,8,BCV1,8 end;
into device label EC0 code_regex BSMD,\s+16 replace_matched begin BMD0,8,BMD1,8 end;
into device label EC0 code_regex BSCC,\s+16 replace_matched begin BCC0,8,BCC1,8 end;
into device label EC0 code_regex BSME,\s+16 replace_matched begin BME0,8,BME1,8 end;

# 16-bit group3
into device label EC0 code_regex BSC1,\s+16 replace_matched begin BC10,8,BC11,8 end;
into device label EC0 code_regex BSC2,\s+16 replace_matched begin BC20,8,BC21,8 end;
into device label EC0 code_regex BSC3,\s+16 replace_matched begin BC30,8,BC31,8 end;
into device label EC0 code_regex BSC4,\s+16 replace_matched begin BC40,8,BC41,8 end;

# 128-bit (rename to cause errors if used)
into device label EC0 code_regex BSMN,\s+128 replace_matched begin BMN_,128 end;
into device label EC0 code_regex BSDN,\s+128 replace_matched begin BDN_,128 end;
into device label EC0 code_regex BSCH,\s+128 replace_matched begin BCH_,128 end;


# GBIF 16-bit
into method label GBIF code_regex \(BSFC, replaceall_matched begin (B1B2(BFC0,BFC1), end;
into method label GBIF code_regex \(BSDV, replaceall_matched begin (B1B2(BDV0,BDV1), end;
into method label GBIF code_regex \(BSSN, replaceall_matched begin (B1B2(BSN0,BSN1), end;
into method label GBIF code_regex \(BSDC, replaceall_matched begin (B1B2(BDC0,BDC1), end;

# GBIF 128-bit (just remove)
into method label GBIF code_regex Store\s+\(BSDN.* remove_matched;
into method label GBIF code_regex Store\s+\(BSCH.* remove_matched;
into method label GBIF code_regex Store\s+\(BSMN.* remove_matched;

# GBST 16-bit
into method label GBST code_regex \(BSAC, replaceall_matched begin (B1B2(BAC0,BAC1), end;
into method label GBST code_regex \(BSRC, replaceall_matched begin (B1B2(BRC0,BRC1), end;
into method label GBST code_regex \(BSFC, replaceall_matched begin (B1B2(BFC0,BFC1), end;
into method label GBST code_regex \(BSVO, replaceall_matched begin (B1B2(BVO0,BVO1), end;

# GBAT (probably not called by OS X, but…) 16-bit
into method label GBAT code_regex \(\^\^PCI0\.LPC\.EC0\.BSDC, replaceall_matched begin (B1B2(^^PCI0.LPC.EC0.BDC0,^^PCI0.LPC.EC0.BDC1), end;
into method label GBAT code_regex \(\^\^PCI0\.LPC\.EC0\.BSCY, replaceall_matched begin (B1B2(^^PCI0.LPC.EC0.BCY0,^^PCI0.LPC.EC0.BCY1), end;
into method label GBAT code_regex \(\^\^PCI0\.LPC\.EC0\.BSDV, replaceall_matched begin (B1B2(^^PCI0.LPC.EC0.BDV0,^^PCI0.LPC.EC0.BDV1), end;
into method label GBAT code_regex \(\^\^PCI0\.LPC\.EC0\.BSBS, replaceall_matched begin (B1B2(^^PCI0.LPC.EC0.BBS0,^^PCI0.LPC.EC0.BBS1), end;
into method label GBAT code_regex \(\^\^PCI0\.LPC\.EC0\.BSDC, replaceall_matched begin (B1B2(^^PCI0.LPC.EC0.BDC0,^^PCI0.LPC.EC0.BDC1), end;
into method label GBAT code_regex \(\^\^PCI0\.LPC\.EC0\.BSSN, replaceall_matched begin (B1B2(^^PCI0.LPC.EC0.BSN0,^^PCI0.LPC.EC0.BSN1), end;
into method label GBAT code_regex \(\^\^PCI0\.LPC\.EC0\.BSMA, replaceall_matched begin (B1B2(^^PCI0.LPC.EC0.BMA0,^^PCI0.LPC.EC0.BMA1), end;
into method label GBAT code_regex \(\^\^PCI0\.LPC\.EC0\.BSDC, replaceall_matched begin (B1B2(^^PCI0.LPC.EC0.BDC0,^^PCI0.LPC.EC0.BDC1), end;
into method label GBAT code_regex \(\^\^PCI0\.LPC\.EC0\.BSFC, replaceall_matched begin (B1B2(^^PCI0.LPC.EC0.BFC0,^^PCI0.LPC.EC0.BFC1), end;
into method label GBAT code_regex \(\^\^PCI0\.LPC\.EC0\.BSRC, replaceall_matched begin (B1B2(^^PCI0.LPC.EC0.BRC0,^^PCI0.LPC.EC0.BRC1), end;
into method label GBAT code_regex \(\^\^PCI0\.LPC\.EC0\.BSTV, replaceall_matched begin (B1B2(^^PCI0.LPC.EC0.BTV0,^^PCI0.LPC.EC0.BTV1), end;
into method label GBAT code_regex \(\^\^PCI0\.LPC\.EC0\.BSVO, replaceall_matched begin (B1B2(^^PCI0.LPC.EC0.BVO0,^^PCI0.LPC.EC0.BVO1), end;
into method label GBAT code_regex \(\^\^PCI0\.LPC\.EC0\.BSDC, replaceall_matched begin (B1B2(^^PCI0.LPC.EC0.BDC0,^^PCI0.LPC.EC0.BDC1), end;
into method label GBAT code_regex \(\^\^PCI0\.LPC\.EC0\.BSCU, replaceall_matched begin (B1B2(^^PCI0.LPC.EC0.BCU0,^^PCI0.LPC.EC0.BCU1), end;
into method label GBAT code_regex \(\^\^PCI0\.LPC\.EC0\.BSAC, replaceall_matched begin (B1B2(^^PCI0.LPC.EC0.BAC0,^^PCI0.LPC.EC0.BAC1), end;
into method label GBAT code_regex \(\^\^PCI0\.LPC\.EC0\.BSME, replaceall_matched begin (B1B2(^^PCI0.LPC.EC0.BME0,^^PCI0.LPC.EC0.BME1), end;
into method label GBAT code_regex \(\^\^PCI0\.LPC\.EC0\.BSMD, replaceall_matched begin (B1B2(^^PCI0.LPC.EC0.BMD0,^^PCI0.LPC.EC0.BMD1), end;
into method label GBAT code_regex \(\^\^PCI0\.LPC\.EC0\.BSCC, replaceall_matched begin (B1B2(^^PCI0.LPC.EC0.BCC0,^^PCI0.LPC.EC0.BCC1), end;
into method label GBAT code_regex \(\^\^PCI0\.LPC\.EC0\.BSCV, replaceall_matched begin (B1B2(^^PCI0.LPC.EC0.BCV0,^^PCI0.LPC.EC0.BCV1), end;
into method label GBAT code_regex \(\^\^PCI0\.LPC\.EC0\.BSC1, replaceall_matched begin (B1B2(^^PCI0.LPC.EC0.BC10,^^PCI0.LPC.EC0.BC11), end;
into method label GBAT code_regex \(\^\^PCI0\.LPC\.EC0\.BSC2, replaceall_matched begin (B1B2(^^PCI0.LPC.EC0.BC20,^^PCI0.LPC.EC0.BC21), end;
into method label GBAT code_regex \(\^\^PCI0\.LPC\.EC0\.BSC3, replaceall_matched begin (B1B2(^^PCI0.LPC.EC0.BC30,^^PCI0.LPC.EC0.BC31), end;
into method label GBAT code_regex \(\^\^PCI0\.LPC\.EC0\.BSC4, replaceall_matched begin (B1B2(^^PCI0.LPC.EC0.BC40,^^PCI0.LPC.EC0.BC41), end;
# GBAT 128-bit (just remove)
into method label GBAT code_regex Store\s+\(.*BSDN.* remove_matched;
into method label GBAT code_regex Store\s+\(.*BSCH.* remove_matched;
into method label GBAT code_regex Store\s+\(.*BSMN.* remove_matched;

Apply with MaciASL and try...
 
Hi, RehabMan, finally working thank you so mutch for your excellent work ;)... but I have a problem when the laptop is connected only with the battery my graphics card get many lags, I do not know why?
 
Hi, RehabMan, finally working thank you so mutch for your excellent work ;)... but I have a problem when the laptop is connected only with the battery my graphics card get many lags, I do not know why?

That is probably something related to power management of your nvidia card. Sorry... no experience with the discrete (amd/nvidia) stuff. I tend to avoid those laptops as I like a cool/quiet laptop with batter battery life (eg. Intel integrated only).
 
I understand, but also not a problem. I've been putting a lot of time to get battery work and never got. Your help was very good. Thanks a lot for your help.. 5 stars for you ;)
 
I understand, but also not a problem. I've been putting a lot of time to get battery work and never got. Your help was very good. Thanks a lot for your help.. 5 stars for you ;)

Glad you have it working... I can almost do these battery patches "mechanically" (that is, without a lot of thought). Maybe I'll write a guide, aimed at the technical/programmer type than can handle it...
 
Hi, RehabMan after some hours i fixed my lags with editing my AGPM.kext with correct values of my system definitions. Now everything seems to work except the sleep that never worked. A guide to fix the battery would be welcome. Many thanks for your help ;)
 
Hello! My battery in E330 works in last ML with one patch or kext (forgot). I will look at this!

(OFF!) Can you pls tell, how you could activate HD 4000 in our Intel Core i5-3210M?
 
Status
Not open for further replies.
Back
Top