[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#895129: linux: Battery not detected on Lamina 2-in-1 tablet



Source: linux
Severity: normal

Dear Maintainer,

I have a Lamina T-1016B 2-in-1 tablet where the battery is not detected
(the top bar in GNOME shows only the power icon, like on the desktop machine).
Checking in /var/log/messages I could see the following (grep:ing on ACPI):

Apr  6 09:17:21 eridanus kernel: [    5.663167] ACPI: AC: found native INT33F4 PMIC, not loading
Apr  6 09:17:21 eridanus kernel: [    5.956763] ACPI: AC: found native INT33F4 PMIC, not loading
Apr  6 08:20:24 eridanus kernel: [    5.720266] ACPI: AC: found native INT33F4 PMIC, not loading
Apr  6 08:20:24 eridanus kernel: [    6.020086] ACPI: AC: found native INT33F4 PMIC, not loading
Apr  6 08:23:09 eridanus kernel: [    5.656934] ACPI: AC: found native INT33F4 PMIC, not loading
Apr  6 08:23:09 eridanus kernel: [    5.979635] ACPI: AC: found native INT33F4 PMIC, not loading
Apr  6 08:25:49 eridanus kernel: [    5.849791] ACPI: AC: found native INT33F4 PMIC, not loading
Apr  6 08:25:49 eridanus kernel: [    6.150902] ACPI: AC: found native INT33F4 PMIC, not loading

Checking in the kernel sources, I could see the following:
In https://github.com/torvalds/linux/blob/master/drivers/acpi/battery.c

There is a blacklist of ACPI HIDs at line 101:

/* Lists of PMIC ACPI HIDs with an (often better) native battery driver */
static const char * const acpi_battery_blacklist[] = {
	"INT33F4", /* X-Powers AXP288 PMIC */
};

Further down there's a section for bailing out on blacklisted HIDs at 1491:

for (i = 0; i < ARRAY_SIZE(acpi_battery_blacklist); i++)
		if (acpi_dev_present(acpi_battery_blacklist[i], "1", -1)) {
			pr_info(PREFIX ACPI_BATTERY_DEVICE_NAME
				": found native %s PMIC, not loading\n",
				acpi_battery_blacklist[i]);
			return;
}

In __init acpi_battery_init_async

I suppose enabling the approriate module(s) would maybe solve this.
In the make menuconfig I could see the following drivers:

AXP288_ADC, AXP288_CHARGER, and AXP288_FUEL_GAUGE

I tried building a custom kernel, but upon booting in panics,
but it seems to be because the initrams fs is not able to mount, I guess
the image wasn't properly installed in GRUB, or something like that.

By the way, the info below shows kernel 4.14, but that's because I ran
reportbug from my desktop, and haven't rebooted into the newest kernel yet
I hope this doesn't create a hassle.

Thanks!
Regards,
Marcus Lundblad

-- System Information:
Debian Release: buster/sid
  APT prefers testing
  APT policy: (500, 'testing')
Architecture: amd64 (x86_64)
Foreign Architectures: i386

Kernel: Linux 4.14.0-3-amd64 (SMP w/8 CPU cores)
Locale: LANG=sv_SE.utf8, LC_CTYPE=sv_SE.utf8 (charmap=UTF-8), LANGUAGE=sv_SE.utf8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: systemd (via /run/systemd/system)
LSM: AppArmor: enabled


Reply to: