Bug 43156

Summary: On netbook Acer Aspire One 521 battery indicator is absent.
Product: ACPI Reporter: Mikhail (mikhail.v.gavrilov)
Component: Power-BatteryAssignee: Lan Tianyu (tianyu.lan)
Status: CLOSED DUPLICATE    
Severity: normal CC: feng.tang, jlee, lenb, mikhail.v.gavrilov, rui.zhang
Priority: P1    
Hardware: All   
OS: Linux   
Kernel Version: Subsystem:
Regression: No Bisected commit-id:
Attachments: acpidump
dmesg
dmesg with enabled debug options
Windows 7 seen battery without any additional drivers
dmesg for kernel param acpi_osi="Windows 2009"
dmesg for kernel param acpi_osi="linux"
dmesg for kernel param "acpi_osi=!linux"
dmesg after applying patch
dmesg after applying patch

Description Mikhail 2012-04-24 06:59:21 UTC
Description of problem:
On netbook Acer Aspire One 521 battery indicator is absent.

mikhail@ao521:~$ lspci
00:00.0 Host bridge: Advanced Micro Devices [AMD] RS880 Host Bridge
00:01.0 PCI bridge: Advanced Micro Devices [AMD] RS780/RS880 PCI to PCI bridge
(int gfx)
00:04.0 PCI bridge: Advanced Micro Devices [AMD] RS780 PCI to PCI bridge (PCIE
port 0)
00:05.0 PCI bridge: Advanced Micro Devices [AMD] RS780 PCI to PCI bridge (PCIE
port 1)
00:11.0 SATA controller: ATI Technologies Inc SB7x0/SB8x0/SB9x0 SATA Controller
[AHCI mode]
00:12.0 USB Controller: ATI Technologies Inc SB7x0/SB8x0/SB9x0 USB OHCI0
Controller
00:12.2 USB Controller: ATI Technologies Inc SB7x0/SB8x0/SB9x0 USB EHCI
Controller
00:13.0 USB Controller: ATI Technologies Inc SB7x0/SB8x0/SB9x0 USB OHCI0
Controller
00:13.2 USB Controller: ATI Technologies Inc SB7x0/SB8x0/SB9x0 USB EHCI
Controller
00:14.0 SMBus: ATI Technologies Inc SBx00 SMBus Controller (rev 41)
00:14.2 Audio device: ATI Technologies Inc SBx00 Azalia (Intel HDA) (rev 40)
00:14.3 ISA bridge: ATI Technologies Inc SB7x0/SB8x0/SB9x0 LPC host controller
(rev 40)
00:14.4 PCI bridge: ATI Technologies Inc SBx00 PCI to PCI Bridge (rev 40)
00:18.0 Host bridge: Advanced Micro Devices [AMD] Family 10h Processor
HyperTransport Configuration
00:18.1 Host bridge: Advanced Micro Devices [AMD] Family 10h Processor Address
Map
00:18.2 Host bridge: Advanced Micro Devices [AMD] Family 10h Processor DRAM
Controller
00:18.3 Host bridge: Advanced Micro Devices [AMD] Family 10h Processor
Miscellaneous Control
00:18.4 Host bridge: Advanced Micro Devices [AMD] Family 10h Processor Link
Control
01:05.0 VGA compatible controller: ATI Technologies Inc M880G [Mobility Radeon
HD 4200]
01:05.1 Audio device: ATI Technologies Inc RS880 Audio Device [Radeon HD 4200]
02:00.0 Ethernet controller: Atheros Communications AR8152 v1.1 Fast Ethernet
(rev c1)
03:00.0 Network controller: Atheros Communications Inc. AR9285 Wireless Network
Adapter (PCI-Express) (rev 01)


mikhail@ao521:~$ lsusb
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 003 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 004 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 001 Device 002: ID 04f2:b1d8 Chicony Electronics Co., Ltd 
Bus 004 Device 005: ID 0cf3:3005 Atheros Communications, Inc. 
Bus 004 Device 003: ID 09da:054f A4 Tech Co., Ltd 
Bus 004 Device 004: ID 0518:0001 EzKEY Corp. USB to PS2 Adaptor v1.09

[root@ao521 php.d]# cat /proc/acpi/battery
cat: /proc/acpi/battery: No such file or directory
Comment 1 Zhang Rui 2012-05-21 03:20:15 UTC
please attach the output of "grep . /sys/class/power_supply/*/*"
Comment 2 Mikhail 2012-05-21 03:49:02 UTC
mikhail@ao521:~$ grep . /sys/class/power_supply/*/*
grep: /sys/class/power_supply/ACAD/device: Is a directory
/sys/class/power_supply/ACAD/online:1
grep: /sys/class/power_supply/ACAD/power: Is a directory
grep: /sys/class/power_supply/ACAD/subsystem: Is a directory
/sys/class/power_supply/ACAD/type:Mains
/sys/class/power_supply/ACAD/uevent:POWER_SUPPLY_NAME=ACAD
/sys/class/power_supply/ACAD/uevent:POWER_SUPPLY_ONLINE=1
mikhail@ao521:~$
Comment 3 Zhang Rui 2012-05-23 06:57:10 UTC
please attach the acpidump output of this machine.
Comment 4 Mikhail 2012-05-23 07:07:16 UTC
Created attachment 73360 [details]
acpidump
Comment 5 Lan Tianyu 2012-05-28 08:53:40 UTC
Can you provide output of dmesg?
Comment 6 Mikhail 2012-05-28 09:36:27 UTC
Created attachment 73444 [details]
dmesg
Comment 7 Lan Tianyu 2012-05-29 06:07:01 UTC
Did you configue CONFIG_ACPI_PROCFS_POWER? If no, please add and access /proc/acpi/battery again

[    0.995762] ACPI: Battery Slot [BAT1] (battery absent)
This seems the bios didn't detect the battery.

Please add kernel parm "acpi.debug_layer=0x00010000 acpi.debug_level=0x00000004"
and test again. attach the dmesg's output.
Comment 8 Mikhail 2012-05-30 02:17:47 UTC
How I can check 'CONFIG_ACPI_PROCFS_POWER' on already builded kernel?
Comment 9 Lan Tianyu 2012-06-01 02:48:33 UTC
“uname -r” to find the kernel version and read configure file "/boot/config-(kernel version)".

You'd better to git a latest linux kernel tree and compile to test the issue.
Comment 10 Mikhail 2012-06-05 15:58:50 UTC
# uname -r
3.4.0-1.fc17.i686.PAE

# cat /boot/config-`uname -r` | grep CONFIG_ACPI_PROCFS_POWER
# CONFIG_ACPI_PROCFS_POWER is not set

# sysctl -w acpi.debug_layer=0x00010000
/proc/sys/acpi/debug_layer: No such file or directory
# sysctl -w acpi.debug_layer=0x00000004
/proc/sys/acpi/debug_layer: No such file or directory

So seems I have latest kernel, but CONFIG_ACPI_PROCFS_POWER is not setted. And I don't know why I can't set acpi.debug layer to 0x00010000 either 0x00000004 it is somehow connected with the fact that CONFIG_ACPI_PROCFS_POWER is not set?
Comment 11 Lan Tianyu 2012-06-19 06:57:21 UTC
(In reply to comment #10) 
> So seems I have latest kernel, but CONFIG_ACPI_PROCFS_POWER is not setted.
> And
> I don't know why I can't set acpi.debug layer to 0x00010000 either 0x00000004
> it is somehow connected with the fact that CONFIG_ACPI_PROCFS_POWER is not
> set?
No, they have no relationship.

Can you compile a new kernel with CONFIG_ACPI_PROCFS_POWER?
You should add "acpi.debug_layer=0x00010000 acpi.debug_level=0x00000004" as
kernel boot param. You may should modify the /boot/grub/grub.cfg.

Another way, you can modify /etc/default/grub.
set GRUB_CMDLINE_LINUX_DEFAULT="acpi.debug_layer=0x00010000 acpi.debug_level=0x00000004"
and then run update-grub. check whether the /boot/grub/grub.cfg was changed to
desire result.
Comment 12 Mikhail 2012-08-05 08:16:11 UTC
Created attachment 76831 [details]
dmesg with enabled debug options
Comment 13 Zhang Rui 2012-08-13 07:14:45 UTC
From the dmesg, I guess you can access /proc/acpi/battery/, right?
If it's right, please attach the output of "grep . /proc/acpi/battery/BAT1/*".
Comment 14 Mikhail 2012-08-13 08:01:27 UTC
$ grep . /proc/acpi/battery/BAT1/*
/proc/acpi/battery/BAT1/alarm:present:                 no
/proc/acpi/battery/BAT1/info:present:                 no
/proc/acpi/battery/BAT1/state:present:                 no
Comment 15 Feng Tang 2012-08-20 14:34:25 UTC
Is this a regression for 3.3/3.5 kernel or this error happens for all kernels like 2.6.32/36/39 etc?
Comment 16 Mikhail 2012-08-20 14:36:37 UTC
No. Neither Linux has not seen the battery in this netbook.
Comment 17 Lan Tianyu 2012-10-16 02:23:49 UTC
hi Mikhail:
         Sorry for later reply. From the output, the bios always tells the driver that battery is not available in runtime. This maybe a bios/hardware problem. Do you have tried windows?
Comment 18 Mikhail 2012-10-29 19:18:18 UTC
Created attachment 85271 [details]
Windows 7 seen battery without any additional drivers
Comment 19 Mikhail 2012-10-29 19:21:40 UTC
(In reply to comment #17)
> hi Mikhail:
>          Sorry for later reply. From the output, the bios always tells the
> driver that battery is not available in runtime. This maybe a bios/hardware
> problem. Do you have tried windows?

Yes, I tried Windows 7 and there, my battery was seen without any additional drivers. You can see proof screenshot form installed Windows.
Comment 20 Lan Tianyu 2012-11-02 06:16:28 UTC
Please try again with kernel param acpi_osi="Windows 2009" or acpi_osi="linux".
Comment 21 Mikhail 2012-11-10 14:51:09 UTC
I am tried use both variants but without any success...
Also I am attach dmesg output for both variants.
Comment 22 Mikhail 2012-11-10 14:53:00 UTC
Created attachment 86041 [details]
dmesg for kernel param acpi_osi="Windows 2009"
Comment 23 Mikhail 2012-11-10 14:53:37 UTC
Created attachment 86051 [details]
dmesg for kernel param acpi_osi="linux"
Comment 24 Lan Tianyu 2012-11-19 06:21:35 UTC
How about "acpi_osi=!linux"?
Comment 25 Mikhail 2012-11-19 19:00:15 UTC
Created attachment 86641 [details]
dmesg for kernel param "acpi_osi=!linux"
Comment 26 Mikhail 2012-11-19 19:00:47 UTC
(In reply to comment #24)
> How about "acpi_osi=!linux"?

also
Comment 27 Lan Tianyu 2013-04-08 05:12:21 UTC
Sorry for later reply. Please try the following patch. Thanks in advance.
https://bugzilla.kernel.org/attachment.cgi?id=87901
Comment 28 Mikhail 2013-04-09 02:42:47 UTC
Thanks, seems this patch not help me.
Comment 29 Mikhail 2013-04-09 02:43:17 UTC
Created attachment 97791 [details]
dmesg after applying patch
Comment 30 Mikhail 2013-04-09 02:55:28 UTC
Sorry me for my previous message. It's my mistake  i loading unpatched kernel for test :(
Comment 31 Mikhail 2013-04-09 02:59:23 UTC
Created attachment 97801 [details]
dmesg after applying patch

Now battery indicator works!!! Great job.

What about UPS???


I have three UPS connected to different linux desktop's and I can't control their battery charge from linux.
Comment 32 Mikhail 2013-04-09 03:01:13 UTC
And laptop has become much quieter work, thanks again.
Comment 33 Lan Tianyu 2013-04-09 03:55:39 UTC
Sorry. I am not familiar with UPS. This bug is duplicate with bug 15707. Will push 
Bob to resolve the problem.

*** This bug has been marked as a duplicate of bug 15707 ***
Comment 34 Mikhail 2013-04-09 04:05:09 UTC
Which version of the kernel will include this patch?
Comment 35 Lan Tianyu 2013-04-09 04:08:08 UTC
This depends Bob(ACPICA maintainer). Now I get he think this patch is not good one for ACPICA and he will find another solution.