Re: [PATCH] power: introduce Charger-Manager

From: MyungJoo Ham
Date: Thu Jul 07 2011 - 20:16:38 EST


2011/7/8 Rafael J. Wysocki <rjw@xxxxxxx>:
> On Thursday, June 30, 2011, MyungJoo Ham wrote:
>> Charger Manager provides in-kernel battery charger management that
>> requires temperature monitoring during both normal and suspend-to-RAM states
>> and where each battery may have multiple chargers attached and the userland
>> wants to look at the aggregated information of the multiple chargers.
>>
>> For the discussions about the need for in-suspend monitoring, please
>> refer to the discussions of suspend-again in PM:
>> v1 https://lists.linux-foundation.org/pipermail/linux-pm/2011-April/031052.html
>> v2 https://lists.linux-foundation.org/pipermail/linux-pm/2011-April/031111.html
>> v3 https://lists.linux-foundation.org/pipermail/linux-pm/2011-May/031267.html
>> v4 https://lists.linux-foundation.org/pipermail/linux-pm/2011-May/031357.html
>> v5 (last, applied) https://lists.linux-foundation.org/pipermail/linux-pm/2011-June/031561.html
>>
>> To see the usage example, please refer to:
>> http://git.infradead.org/users/kmpark/linux-2.6-samsung/shortlog/refs/heads/charger-manager
>> In this git branch, a test code for Exynos4-NURI is shown.
>>
>> Charger Manager is a platform_driver with power-supply-class entries.
>> An instance of Charger Manager (a platform-device created with
>> Charger-Manager) represents a battery with chargers. If there are multiple
>> batteries with their own chargers acting independently in a system,
>> the system may need multiple instances of Charger Manager.
>>
>> Charger Manager glues multiple charger-related frameworks (regulators of
>> chargers, power-supply-class from chargers and fuel-gauge, RTC,
>> suspend-again, ...) together to provide aggregated information and
>> transparent battery monitoring to userspace.
>>
>> Because battery health monitoring should be done even when suspended,
>> it needs to wake up and suspend periodically. Thus, userspace battery
>> monitoring may incur too much overhead; every device and task is waked
>> up periodically. Charger Manager uses suspend-again (in next PM) to provide
>> in-suspend monitoring. Multiple chargers (e.g., USB, wireless, and solar
>> panels) may be included as pairs of a regulator and a power-supply-class
>> per charger. Charger Manager provides power-supply-class aggregating
>> information from multiple chargers and a fuel-gauge and UEVENT notifying
>> status changes. ÂMultiple instances of Charger Manager enable multiple
>> batteries.
>>
>> Signed-off-by: MyungJoo Ham <myungjoo.ham@xxxxxxxxxxx>
>> Signed-off-by: Kyungmin Park <kyungmin.park@xxxxxxxxxxx>
>
> I have tried to review this patch, but it is _huge_. ÂIs there any reasonable
> way to split it into a series of smaller patches that would be easier to
> comprehend?
>
> Rafael
>

Ah.. ok..

I'll try to split it into multiple patches by introducing major functions first.

Thanks.


- MyungJoo.
--
MyungJoo Ham (íëì), Ph.D.
Mobile Software Platform Lab,
Digital Media and Communications (DMC) Business
Samsung Electronics
cell: 82-10-6714-2858
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/