← Back to team overview

kernel-packages team mailing list archive

[Bug 971061] Re: acpi reports battery state incorrectly

 

> This is not a bug in acpi (Ubuntu) as this is just a software package that displays
>  information. Instead, this would be a bug in the linux kernel (ex. samsung-laptop.c) 
> for not handling the laptop lid logic correctly.

No, you are confounding two issues.

This is a buggy behaviour in samsung's EC embedded controller when going to sleep and resuming, that can
only be fixed in linux kernel ACPI handling of it ( <linuxkernel>/drivers/acpi/ec.c ).
There is a patch ready in the kernel bugzilla, that adds a few lines to "acpi/ec.c", that I personally
tested and confirmed that does the same as my userspace workaround (unstuck the samsung
ACPI embedded controller):

      https://bugzilla.kernel.org/show_bug.cgi?id=44161     (comments
133 and 135)


samsung-laptop.c has nothing to do with ACPI or the LID detection or this bug. 
samsung-laptop.c uses a SABI interface.
The reason samsung-laptop.c came up, was because that file disables keyboard backlight under certain
conditions, and some people said that now that the LID and AC status works with my fix, that
now keyboard backlight was the only thing missing for linux compatibility. I just brought up
samsung-laptop.c to point to how to fix that last, separate, independant remaining problem
of keyboard backlight. 

LID detection and AC status detection, is handled by standard ACPI
drivers in these laptops.

So, this _is_ a bug that is fixed by patching ACPI's drivers/acpi/ec.c.
(or by my userspace program that pokes two EC ports, post #103).

Cheers
--
Juan Manuel Cabo

-- 
You received this bug notification because you are a member of Kernel
Packages, which is subscribed to linux in Ubuntu.
https://bugs.launchpad.net/bugs/971061

Title:
  acpi reports battery state incorrectly

Status in Linux ACPI client:
  Incomplete
Status in “linux” package in Ubuntu:
  Confirmed

Bug description:
  I have a new Samsung 9-series laptop (NP900X3B) and the battery state
  is detected incorrectly. Basically the state what was at the time of
  boot stays active all the time - regardless of the ac-adapter state.

  Here is output from "acpitool -a -b" in various situations:

  When booted with charger connected and charger is still connected:
    Battery #1     : charging, 47.00%, 01:00:43
    AC adapter     : on-line 
   
  When booted with charger connected and charger is now disconnected:
    Battery #1     : charging, 47.00%, 01:36:59
    AC adapter     : off-line 
  [The battery couldn't possibly be charging when the AC adapter is offline!]

  When booted with charger disconnected and charger is still disconnected:
    Battery #1     : discharging, 47.00%, 01:39:44
    AC adapter     : off-line 

  When booted with charger disconnected and charger is now connected:
    Battery #1     : discharging, 47.00%, 00:53:43
    AC adapter     : on-line 
  [The battery is actually charging as the AC adapter is online]

  The percentage and time are correctly updated when the battery is
  actually charging or discharging - regardless of the reported state.
  So the state is the only thing that is incorrect. However a number of
  applications make their decisions based on this state (battery
  monitor, jupiter, etc.) and therefore behave incorrectly.

  "lshal -m" doesn't report anything when I plug the charger in or out.

  ProblemType: Bug
  DistroRelease: Ubuntu 12.04
  Package: acpi (not installed)
  ProcVersionSignature: Ubuntu 3.2.0-21.34-generic 3.2.13
  Uname: Linux 3.2.0-21-generic x86_64
  ApportVersion: 2.0-0ubuntu2
  Architecture: amd64
  Date: Sun Apr  1 22:50:35 2012
  EcryptfsInUse: Yes
  InstallationMedia: Ubuntu 12.04 LTS "Precise Pangolin" - Beta amd64 (20120328)
  ProcEnviron:
   LANG=en_US.UTF-8
   SHELL=/bin/bash
  SourcePackage: acpi
  UpgradeStatus: No upgrade log present (probably fresh install)

To manage notifications about this bug go to:
https://bugs.launchpad.net/acpi/+bug/971061/+subscriptions