This patch allows Linux to detect the battery in the Lenovo Yoga 300 laptop. It does this by tolerating a bug in the firmware which breaks the _BIX method but not _BIF. Without this patch, the battery is not presented to userland. On a system with non-buggy firmware, the behaviour should be unchanged. With the patch, something like this gets logged, [ 3004.858993] ACPI Exception: AE_AML_PACKAGE_LIMIT, Index (0x000000010) is beyond end of object (length 0xD) (20160831/exoparg2-427) [ 3004.859015] ACPI Error: Method parse/execution failed [\_SB.PCI0.LPCB.H_EC.BAT1._BIX] (Node ffff955bbb0b32d0), AE_AML_PACKAGE_LIMIT (20160831/psparse-543) [ 3004.859038] ACPI Exception: AE_AML_PACKAGE_LIMIT, Evaluating _BIX (20160831/battery-493) [ 3004.873413] [Firmware Bug]: The _BIX method is broken, using _BIF. v1 -> v2 - Log when falling back to _BIF method. - Rebased against v4.9-rc2. Signed-off-by: Dave Lambley <linux@xxxxxxxxxxx> Cc: "Rafael J. Wysocki" <rjw@xxxxxxxxxxxxx> Cc: Len Brown <lenb@xxxxxxxxxx> Dave Lambley (1): If _BIX fails, retry with _BIF. drivers/acpi/battery.c | 72 +++++++++++++++++++++++++++++++++----------------- 1 file changed, 48 insertions(+), 24 deletions(-) -- 2.7.4 -- To unsubscribe from this list: send the line "unsubscribe linux-acpi" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html