1 /* 2 * LP8727 Micro/Mini USB IC with integrated charger 3 * 4 * Copyright (C) 2011 Texas Instruments 5 * Copyright (C) 2011 National Semiconductor 6 * 7 * This program is free software; you can redistribute it and/or modify 8 * it under the terms of the GNU General Public License version 2 as 9 * published by the Free Software Foundation. 10 */ 11 12 #ifndef _LP8727_H 13 #define _LP8727_H 14 15 enum lp8727_eoc_level { 16 EOC_5P, 17 EOC_10P, 18 EOC_16P, 19 EOC_20P, 20 EOC_25P, 21 EOC_33P, 22 EOC_50P, 23 }; 24 25 enum lp8727_ichg { 26 ICHG_90mA, 27 ICHG_100mA, 28 ICHG_400mA, 29 ICHG_450mA, 30 ICHG_500mA, 31 ICHG_600mA, 32 ICHG_700mA, 33 ICHG_800mA, 34 ICHG_900mA, 35 ICHG_1000mA, 36 }; 37 38 /** 39 * struct lp8727_chg_param 40 * @eoc_level : end of charge level setting 41 * @ichg : charging current 42 */ 43 struct lp8727_chg_param { 44 enum lp8727_eoc_level eoc_level; 45 enum lp8727_ichg ichg; 46 }; 47 48 /** 49 * struct lp8727_platform_data 50 * @get_batt_present : check battery status - exists or not 51 * @get_batt_level : get battery voltage (mV) 52 * @get_batt_capacity : get battery capacity (%) 53 * @get_batt_temp : get battery temperature 54 * @ac, @usb : charging parameters each charger type 55 */ 56 struct lp8727_platform_data { 57 u8 (*get_batt_present)(void); 58 u16 (*get_batt_level)(void); 59 u8 (*get_batt_capacity)(void); 60 u8 (*get_batt_temp)(void); 61 struct lp8727_chg_param ac; 62 struct lp8727_chg_param usb; 63 }; 64 65 #endif 66