On Tue, 27 Nov 2012 22:19:04 +0100, Andrew Shadura wrote:

> > The ACPI backend for --battery doesn't work with newer kernels
> > (experienced with 2.6.37 from experimental); if I read acpi.c
> > correctly, it looks for /proc/acpi/{ac_adapter,battery}, and those
> > paths seem to have vanished.
> The attached patch fixes ACPI backend (removing the old procfs method
> at the same time).

Thank you!

Unfortunately it's not doing exactly what I expected:

# sleepd --no-events --battery 5 -n -v
unknown battery state: Unknown
sleepd[27398]: battery level -1% is below 5%; forcing hibernation

*After some debugging*

Hm, seems my battery/kernel/whatever doesn't report
POWER_SUPPLY_CAPACITY:

On AC:

% sort /sys/class/power_supply/BAT0/uevent
POWER_SUPPLY_CYCLE_COUNT=0
POWER_SUPPLY_ENERGY_FULL=75040000
POWER_SUPPLY_ENERGY_FULL_DESIGN=93240000
POWER_SUPPLY_ENERGY_NOW=70690000
POWER_SUPPLY_MANUFACTURER=SANYO
POWER_SUPPLY_MODEL_NAME=42T4940
POWER_SUPPLY_NAME=BAT0
POWER_SUPPLY_POWER_NOW=0
POWER_SUPPLY_PRESENT=1
POWER_SUPPLY_SERIAL_NUMBER=14094
POWER_SUPPLY_STATUS=Unknown
POWER_SUPPLY_TECHNOLOGY=Li-ion
POWER_SUPPLY_VOLTAGE_MIN_DESIGN=11100000
POWER_SUPPLY_VOLTAGE_NOW=12698000

Without AC:

% sort /sys/class/power_supply/BAT0/uevent
POWER_SUPPLY_CYCLE_COUNT=0
POWER_SUPPLY_ENERGY_FULL=75040000
POWER_SUPPLY_ENERGY_FULL_DESIGN=93240000
POWER_SUPPLY_ENERGY_NOW=70650000
POWER_SUPPLY_MANUFACTURER=SANYO
POWER_SUPPLY_MODEL_NAME=42T4940
POWER_SUPPLY_NAME=BAT0
POWER_SUPPLY_POWER_NOW=11747000
POWER_SUPPLY_PRESENT=1
POWER_SUPPLY_SERIAL_NUMBER=14094
POWER_SUPPLY_STATUS=Discharging
POWER_SUPPLY_TECHNOLOGY=Li-ion
POWER_SUPPLY_VOLTAGE_MIN_DESIGN=11100000
POWER_SUPPLY_VOLTAGE_NOW=12618000


Compared to acpi_labels[] in aci.c there are also other keys named
differently:

char *acpi_labels[] = {
    "uevent",
    "status",
    "BAT",   
    "AC",
    "POWER_SUPPLY_CAPACITY=",
    "POWER_SUPPLY_CHARGE_FULL_DESIGN=",
    "POWER_SUPPLY_PRESENT=",           
    "POWER_SUPPLY_CHARGE_NOW=", 
    "POWER_SUPPLY_CURRENT_NOW=",
    "POWER_SUPPLY_STATUS=",
#if ACPI_THERMAL   
    "thermal_zone",
#endif
    "POWER_SUPPLY_ONLINE=",
    "POWER_SUPPLY_CHARGE_FULL=",
    NULL
};

(And status "Unknown" means, according to my experience: "Full, on
AC".)

 
Cheers,
gregor
 
-- 
 .''`.  Homepage: http://info.comodo.priv.at/ - OpenPGP key 0xBB3A68018649AA06
 : :' : Debian GNU/Linux user, admin, and developer  -  http://www.debian.org/
 `. `'  Member of VIBE!AT & SPI, fellow of the Free Software Foundation Europe
   `-   NP: Beatles: Ob - La - Di Ob - La - Da

Attachment: signature.asc
Description: Digital signature

Reply via email to