Before anything, sorry for my broken english:
The issue to be reported here, is that the "fix" for the bug:
which was merged from kernel 126.96.36.199 onwards; makes the battery module fail
on a laptop (NEC LZ750/LS) which previously worked. After removing the two
lines that the parch added and recompiling, it works again.
These are the lines that dmesg is now showing:
[ 2.272970] ACPI Warning: For \_SB_.PCI0.LPCB.EC__.BAT1._BIX: Return Package is too small - found 19 elements, expected 20 (20121018/nspredef-679)
[ 2.272985] battery: probe of PNP0C0A:00 failed with error -14
The "fix" for that issue should be removed, or at least rewritten, since it
breaks compatibility with hardware that's somewhat new, and still on sale.
acpidump is attached to the refferenced bug.
Hi, check the _BIX package in the acpidump and it doesn't comply with ACPI5.0 SPEC(Table 10-234). The first member should be "revision" which always should be 0 which the first member of the package on this machine is "Power Unit" which is the second member according ACPI SPEC. So this is a Bios problem. We can do a quirk for such machine. So please provide the output of the dmidecode.
Name (BIX0, Package (0x13)
"CRB Battery 0",
"-Virtual Battery 0-"
Created attachment 119011 [details]
Binary dump of dmidecode
Created attachment 119131 [details]
Please try this patch.
Created attachment 119151 [details]
Fix for nec lz750-ls
I modified the previous patch, changing the order where dmi_check_system is called. That's because acpi_bus_register_driver ends up calling acpi_battery_add, which calls acpi_battery_update which calls acpi_battery_get_info (where the battery_bix_broken_package flag is used).
And now it's working again.
Created attachment 119311 [details]
Thanks for test and correction. I just rework the patch. Please test again.
Created attachment 119321 [details]
Tested and working.
Fix patch is sent to ACPI maillist.