1
2
3
4
5
6
7
8
9 #ifndef _LP8727_H
10 #define _LP8727_H
11
12 enum lp8727_eoc_level {
13 LP8727_EOC_5P,
14 LP8727_EOC_10P,
15 LP8727_EOC_16P,
16 LP8727_EOC_20P,
17 LP8727_EOC_25P,
18 LP8727_EOC_33P,
19 LP8727_EOC_50P,
20 };
21
22 enum lp8727_ichg {
23 LP8727_ICHG_90mA,
24 LP8727_ICHG_100mA,
25 LP8727_ICHG_400mA,
26 LP8727_ICHG_450mA,
27 LP8727_ICHG_500mA,
28 LP8727_ICHG_600mA,
29 LP8727_ICHG_700mA,
30 LP8727_ICHG_800mA,
31 LP8727_ICHG_900mA,
32 LP8727_ICHG_1000mA,
33 };
34
35
36
37
38
39
40 struct lp8727_chg_param {
41 enum lp8727_eoc_level eoc_level;
42 enum lp8727_ichg ichg;
43 };
44
45
46
47
48
49
50
51
52
53
54
55 struct lp8727_platform_data {
56 u8 (*get_batt_present)(void);
57 u16 (*get_batt_level)(void);
58 u8 (*get_batt_capacity)(void);
59 u8 (*get_batt_temp)(void);
60 struct lp8727_chg_param *ac;
61 struct lp8727_chg_param *usb;
62 unsigned int debounce_msec;
63 };
64
65 #endif