Lines Matching +full:ac +full:- +full:charger
2 Charger Manager
7 Charger Manager provides in-kernel battery charger management that
8 requires temperature monitoring during suspend-to-RAM state
12 Charger Manager is a platform_driver with power-supply-class entries.
13 An instance of Charger Manager (a platform-device created with Charger-Manager)
16 the system may need multiple instances of Charger Manager.
21 Charger Manager supports the following:
23 * Support for multiple chargers (e.g., a device with USB, AC, and solar panels)
25 they may be activated at the same time. Each charger may have its
26 own power-supply-class and each power-supply-class can provide
28 aggregates charger-related information from multiple sources and
29 shows combined information as a single power-supply-class.
31 * Support for in suspend-to-RAM polling (with suspend_again callback)
32 While the battery is being charged and the system is in suspend-to-RAM,
43 Charger Manager provides a function "cm_suspend_again" that can be
48 that are used by Charger Manager.
50 * Support for premature full-battery event handling
52 "fullbatt_vchkdrop_ms" from the full-battery event, the framework
56 * Support for uevent-notify
57 With the charger-related events, the device sends
60 2. Global Charger-Manager Data related with suspend_again
62 In order to setup Charger Manager with suspend-again feature
63 (in-suspend monitoring), the user should provide charger_global_desc
65 This charger_global_desc data for in-suspend monitoring is global
68 multiple instances of Charger Manager share the same charger_global_desc
69 and it will manage in-suspend monitoring for all instances of Charger Manager.
72 properly in order to activate in-suspend monitoring:
76 suspend for Charger Manager. The alarm interrupt (AIE) of the rtc
77 should be able to wake up the system from suspend. Charger Manager
78 saves and restores the alarm value and use the previously-defined
79 alarm if it is going to go off earlier than Charger Manager so that
80 Charger Manager does not interfere with previously-defined alarms.
84 the wakeup-from-suspend is caused only by the alarm of "rtc" in the
90 if true, Charger Manager assumes that
92 assumes that the suspend-duration is same as the alarm length.
97 Charger Manager provides a function "extern bool cm_suspend_again(void)".
100 function to know whether Charger Manager wants to suspend again or not.
106 if the system was woken up by Charger Manager and the polling
107 (in-suspend monitoring) results in "normal".
109 4. Charger-Manager Data (struct charger_desc)
112 batteries are charged by a single charger, they are counted as one independent
113 battery), an instance of Charger Manager is attached to it. The following
118 The power-supply-class name of the battery. Default is
134 If both have non-zero values, Charger Manager will check the
136 charged. If the voltage drop is over fullbatt_vchkdrop_uV, Charger
140 fuel gauges or charger devices/chips.
143 If specified with a non-zero value, Charger Manager assumes
149 Required polling interval in ms. Charger Manager will poll
163 An array ending with NULL that has power-supply-class names of
164 chargers. Each power-supply-class should provide "PRESENT" (if
175 Power-supply-class name of the fuel gauge.
186 5. Notify Charger-Manager of charger events: cm_notify_event()
188 If there is an charger event is required to notify
189 Charger Manager, a charger device driver that triggers the event can call
190 cm_notify_event(psy, type, msg) to notify the corresponding Charger Manager.
191 In the function, psy is the charger driver's power_supply pointer, which is
192 associated with Charger-Manager. The parameter "type"
199 At the charger/battery-related events such as battery-pulled-out,
200 charger-pulled-out, charger-inserted, DCIN-over/under-voltage, charger-stopped,
203 a) charger-on/off b) external-power-in/out c) battery-in/out (while charging)