1 /*
2  *			Copyright (C) 2011 National Semiconductor
3  *
4  * This program is free software; you can redistribute it and/or modify
5  * it under the terms of the GNU General Public License version 2 as
6  * published by the Free Software Foundation.
7  */
8 
9 #ifndef _LP8727_H
10 #define _LP8727_H
11 
12 enum lp8727_eoc_level {
13 	EOC_5P,
14 	EOC_10P,
15 	EOC_16P,
16 	EOC_20P,
17 	EOC_25P,
18 	EOC_33P,
19 	EOC_50P,
20 };
21 
22 enum lp8727_ichg {
23 	ICHG_90mA,
24 	ICHG_100mA,
25 	ICHG_400mA,
26 	ICHG_450mA,
27 	ICHG_500mA,
28 	ICHG_600mA,
29 	ICHG_700mA,
30 	ICHG_800mA,
31 	ICHG_900mA,
32 	ICHG_1000mA,
33 };
34 
35 struct lp8727_chg_param {
36 	/* end of charge level setting */
37 	enum lp8727_eoc_level eoc_level;
38 	/* charging current */
39 	enum lp8727_ichg ichg;
40 };
41 
42 struct lp8727_platform_data {
43 	u8 (*get_batt_present)(void);
44 	u16 (*get_batt_level)(void);
45 	u8 (*get_batt_capacity)(void);
46 	u8 (*get_batt_temp)(void);
47 	struct lp8727_chg_param ac;
48 	struct lp8727_chg_param usb;
49 };
50 
51 #endif
52