Messages in this thread |  | | | From | Andrey Borzenkov <> | | Subject | Re: [PATCH] 2.6.24-rc1: ensure "present" sysfs attribute even if battery is absent | | Date | Sun, 28 Oct 2007 10:50:45 +0400 |
On Saturday 27 October 2007, Anton Vorontsov wrote:
> On Sat, Oct 27, 2007 at 08:54:30PM +0400, Andrey Borzenkov wrote:
> > I am not exactly sure about this one ... what other power_supply class
> > drivers do? Should I fix HAL instead (but then, I do not know whether HAL
> > is the only application that is using this interface).
>
> Well, PROP_PRESENT wasn't my idea, currently it's used by pmu and
> olpc drivers becuase it's not trivial to register/unregister their
> batteries on physical insertion/removal. I have some plans to teach
> at least pmu batteries to not use PROP_PRESENT. I don't have any
> OLPC, thus I can't convert it.
>
> To sum this: the good way to handle "missing" batteries is to
> unregister them, so they'll not show up in the /sys/class/power_supply.
Well, in this case HAL behaviour makes sense (default to present == true
if "present" attribute is missing)
> Is that possible with the ACPI?
>
At least looking in ACPI specs, this looks possible. What currently is
presented as battery object is actually battery bay according to ACPI spec:
Unlike most other devices, when a battery is inserted or removed from the
system, the device itself (the
battery bay) is still considered to be present in the system.
When battery is inserted/removed, ACPI notifies us and we can check whether
battery is actually present and update registration accordingly. From the
sysfs structure POV probably nothing has to be changed; just when and how
power_supply is registered
under /sys/devices/LNXSYSTM:00/device:00/PNP0C0A:0n
Alexey, does it make sense (or doable)?
[unhandled content-type:application/pgp-signature] |  |