Back to home page

OSCL-LXR

 
 

    


0001 /* SPDX-License-Identifier: GPL-2.0-only */
0002 /*
0003  * LP8727 Micro/Mini USB IC with integrated charger
0004  *
0005  *          Copyright (C) 2011 Texas Instruments
0006  *          Copyright (C) 2011 National Semiconductor
0007  */
0008 
0009 #ifndef _LP8727_H
0010 #define _LP8727_H
0011 
0012 enum lp8727_eoc_level {
0013     LP8727_EOC_5P,
0014     LP8727_EOC_10P,
0015     LP8727_EOC_16P,
0016     LP8727_EOC_20P,
0017     LP8727_EOC_25P,
0018     LP8727_EOC_33P,
0019     LP8727_EOC_50P,
0020 };
0021 
0022 enum lp8727_ichg {
0023     LP8727_ICHG_90mA,
0024     LP8727_ICHG_100mA,
0025     LP8727_ICHG_400mA,
0026     LP8727_ICHG_450mA,
0027     LP8727_ICHG_500mA,
0028     LP8727_ICHG_600mA,
0029     LP8727_ICHG_700mA,
0030     LP8727_ICHG_800mA,
0031     LP8727_ICHG_900mA,
0032     LP8727_ICHG_1000mA,
0033 };
0034 
0035 /**
0036  * struct lp8727_chg_param
0037  * @eoc_level : end of charge level setting
0038  * @ichg      : charging current
0039  */
0040 struct lp8727_chg_param {
0041     enum lp8727_eoc_level eoc_level;
0042     enum lp8727_ichg ichg;
0043 };
0044 
0045 /**
0046  * struct lp8727_platform_data
0047  * @get_batt_present  : check battery status - exists or not
0048  * @get_batt_level    : get battery voltage (mV)
0049  * @get_batt_capacity : get battery capacity (%)
0050  * @get_batt_temp     : get battery temperature
0051  * @ac                : charging parameters for AC type charger
0052  * @usb               : charging parameters for USB type charger
0053  * @debounce_msec     : interrupt debounce time
0054  */
0055 struct lp8727_platform_data {
0056     u8 (*get_batt_present)(void);
0057     u16 (*get_batt_level)(void);
0058     u8 (*get_batt_capacity)(void);
0059     u8 (*get_batt_temp)(void);
0060     struct lp8727_chg_param *ac;
0061     struct lp8727_chg_param *usb;
0062     unsigned int debounce_msec;
0063 };
0064 
0065 #endif