Contribute
Register

[Guide] How to patch DSDT for working battery status

I'm trying to make battery status work on a Lenovo B50-50 (i3 intel hd 5500).
Have been reading about the patching process, and have tried to modify an example at MaciASL patch:

into device label EC0 code_regex BFUD,\s+16, replace_matched begin FUD00,8,FUD01,8, end;

but i get 1 patch, 0 changes, 0 rejects


Should these match ?

Field (ERAM, ByteAcc, Lock, Preserve)
{
VCMD, 8,
VDAT, 8,
VSTS, 8,
Offset (0x06),
FANS, 8,
BUSG, 1,
BLEG, 1,
BATF, 1,
BNSM, 1,
BTST, 1,
BBAD, 1,
AUTO, 1,
FCHG, 1,
ABTL, 8,
DBTL, 8,
EDCC, 1,
ALSC, 1,
CDMB, 1,
CCSB, 1,
BTSM, 1,
BTCM, 1,
LBTM, 1,
CSBM, 1,
SGST, 1,
HDMI, 1,
HYBD, 1,
SWST, 1,
EVNT, 1,
DCRF, 1,
COLR, 1,
SGCN, 1,
ODPO, 1,
EODD, 1,
ODPK, 1,
CMEX, 1,
CMON, 1,
SODD, 1,
ODFB, 1,
EODS, 1,
RTMP, 8,
VTMP, 8,
AFCC, 8,
PINF, 3,
SUPR, 1,
GTMP, 1,
QUIT, 1,
LS35, 1,
Offset (0x11),
RMBT, 1,
RSBT, 1,
VTYP, 2,
Offset (0x12),
FUSL, 8,
FUSH, 8,
FWBT, 64,
Offset (0x4A),
ESMC, 1,
Offset (0x4C),
BFUD, 16,

I've seen a patch for a lenovo-Y50 that includes b50-70

i see lot of 16, 1 56, 1 72 and 1 256 values, if someone can show me the way for the first match will try to continue patching.

Thanks
 

Attachments

  • DSDT.aml
    70.3 KB · Views: 117
I'm trying to make battery status work on a Lenovo B50-50 (i3 intel hd 5500).
Have been reading about the patching process, and have tried to modify an example at MaciASL patch:

into device label EC0 code_regex BFUD,\s+16, replace_matched begin FUD00,8,FUD01,8, end;

but i get 1 patch, 0 changes, 0 rejects


Should these match ?

Field (ERAM, ByteAcc, Lock, Preserve)
{
VCMD, 8,
VDAT, 8,
VSTS, 8,
Offset (0x06),
FANS, 8,
BUSG, 1,
BLEG, 1,
BATF, 1,
BNSM, 1,
BTST, 1,
BBAD, 1,
AUTO, 1,
FCHG, 1,
ABTL, 8,
DBTL, 8,
EDCC, 1,
ALSC, 1,
CDMB, 1,
CCSB, 1,
BTSM, 1,
BTCM, 1,
LBTM, 1,
CSBM, 1,
SGST, 1,
HDMI, 1,
HYBD, 1,
SWST, 1,
EVNT, 1,
DCRF, 1,
COLR, 1,
SGCN, 1,
ODPO, 1,
EODD, 1,
ODPK, 1,
CMEX, 1,
CMON, 1,
SODD, 1,
ODFB, 1,
EODS, 1,
RTMP, 8,
VTMP, 8,
AFCC, 8,
PINF, 3,
SUPR, 1,
GTMP, 1,
QUIT, 1,
LS35, 1,
Offset (0x11),
RMBT, 1,
RSBT, 1,
VTYP, 2,
Offset (0x12),
FUSL, 8,
FUSH, 8,
FWBT, 64,
Offset (0x4A),
ESMC, 1,
Offset (0x4C),
BFUD, 16,

I've seen a patch for a lenovo-Y50 that includes b50-70

i see lot of 16, 1 56, 1 72 and 1 256 values, if someone can show me the way for the first match will try to continue patching.

Thanks

The DSDT.aml you provide here is already patched. If you need help, post native DSDT.
 
sorry, i tried again with the "mini" patch
into device label ECO code_regex BFUD,\s+16, replace_matched begin FUD00,8,FUD01,8, end;

and run ok, now i got

FUD00,8,FUD01,8,

will try to deal with the "easy" ones of 16 and will see what happed when try to deal with de big ones
 
the dsdt comes from pathmatic, these one is get from clover/acpi/origin before boot via F4.
 

Attachments

  • DSDT.aml
    69.5 KB · Views: 137
sorry, i tried again with the "mini" patch
into device label ECO code_regex BFUD,\s+16, replace_matched begin FUD00,8,FUD01,8, end;

and run ok, now i got

FUD00,8,FUD01,8,

will try to deal with the "easy" ones of 16 and will see what happed when try to deal with de big ones

ACPI identifiers are limited to 4 characters.
 
the dsdt comes from pathmatic, these one is get from clover/acpi/origin before boot via F4.

The "Lenovo IdeaPad 100" patch is very close...
Probably needs just one additional patch:
Code:
into method label MHPF code_regex Store\s+\(SMDA,\s+FB4\) replaceall_matched begin Store(RECB(0x64,256),FB4) end;
 
i'll double check the acpi identifiers name thanks.
The new dsdt i post seems ok now?
i'm sorry is not similar to none other.
 
i'll double check the acpi identifiers name thanks.
The new dsdt i post seems ok now?
i'm sorry is not similar to none other.

Read post #3049.
 
Back
Top