[PATCH v3 0/2] power: introduce Charger-Manager

From: Donggeun Kim
Date: Tue Dec 27 2011 - 04:48:14 EST

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.

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.
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 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.

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:
In this git branch, a test code for Exynos4-NURI is shown.

This patch set supports initial Charger Manager driver.

Changes for v3:
- rename variables and functions
- clean up code
- add build dependency of RTC_CLASS and REGULATOR
Changes for v2:
- change symbol type of Kconfig to boolean

Donggeun Kim (2):
power: Charger-Manager: add initial Charger-Manager driver
power: Charger-Manager: add properties for power-supply-class

Documentation/power/charger-manager.txt | 164 +++++
drivers/power/Kconfig | 10 +
drivers/power/Makefile | 1 +
drivers/power/charger-manager.c | 1073 +++++++++++++++++++++++++++++++
include/linux/power/charger-manager.h | 148 +++++
5 files changed, 1396 insertions(+), 0 deletions(-)
create mode 100644 Documentation/power/charger-manager.txt
create mode 100644 drivers/power/charger-manager.c
create mode 100644 include/linux/power/charger-manager.h


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/