2011-09-07 16:56:14 +08:00
|
|
|
/*
|
2012-01-27 14:59:08 +08:00
|
|
|
* LP8727 Micro/Mini USB IC with integrated charger
|
2012-01-30 09:28:18 +08:00
|
|
|
*
|
|
|
|
* Copyright (C) 2011 Texas Instruments
|
2011-09-07 16:56:14 +08:00
|
|
|
* Copyright (C) 2011 National Semiconductor
|
|
|
|
*
|
|
|
|
* This program is free software; you can redistribute it and/or modify
|
|
|
|
* it under the terms of the GNU General Public License version 2 as
|
|
|
|
* published by the Free Software Foundation.
|
|
|
|
*/
|
|
|
|
|
|
|
|
#ifndef _LP8727_H
|
|
|
|
#define _LP8727_H
|
|
|
|
|
|
|
|
enum lp8727_eoc_level {
|
2012-08-31 17:24:51 +08:00
|
|
|
LP8727_EOC_5P,
|
|
|
|
LP8727_EOC_10P,
|
|
|
|
LP8727_EOC_16P,
|
|
|
|
LP8727_EOC_20P,
|
|
|
|
LP8727_EOC_25P,
|
|
|
|
LP8727_EOC_33P,
|
|
|
|
LP8727_EOC_50P,
|
2011-09-07 16:56:14 +08:00
|
|
|
};
|
|
|
|
|
|
|
|
enum lp8727_ichg {
|
2012-08-31 17:24:51 +08:00
|
|
|
LP8727_ICHG_90mA,
|
|
|
|
LP8727_ICHG_100mA,
|
|
|
|
LP8727_ICHG_400mA,
|
|
|
|
LP8727_ICHG_450mA,
|
|
|
|
LP8727_ICHG_500mA,
|
|
|
|
LP8727_ICHG_600mA,
|
|
|
|
LP8727_ICHG_700mA,
|
|
|
|
LP8727_ICHG_800mA,
|
|
|
|
LP8727_ICHG_900mA,
|
|
|
|
LP8727_ICHG_1000mA,
|
2011-09-07 16:56:14 +08:00
|
|
|
};
|
|
|
|
|
2012-01-27 14:59:00 +08:00
|
|
|
/**
|
|
|
|
* struct lp8727_chg_param
|
|
|
|
* @eoc_level : end of charge level setting
|
2012-08-31 17:27:22 +08:00
|
|
|
* @ichg : charging current
|
2012-01-27 14:59:00 +08:00
|
|
|
*/
|
2011-09-07 16:56:14 +08:00
|
|
|
struct lp8727_chg_param {
|
|
|
|
enum lp8727_eoc_level eoc_level;
|
|
|
|
enum lp8727_ichg ichg;
|
|
|
|
};
|
|
|
|
|
2012-01-27 14:59:00 +08:00
|
|
|
/**
|
|
|
|
* struct lp8727_platform_data
|
2012-08-31 17:27:22 +08:00
|
|
|
* @get_batt_present : check battery status - exists or not
|
|
|
|
* @get_batt_level : get battery voltage (mV)
|
2012-01-27 14:59:00 +08:00
|
|
|
* @get_batt_capacity : get battery capacity (%)
|
2012-08-31 17:27:22 +08:00
|
|
|
* @get_batt_temp : get battery temperature
|
2012-08-31 17:23:12 +08:00
|
|
|
* @ac : charging parameters for AC type charger
|
|
|
|
* @usb : charging parameters for USB type charger
|
2012-08-31 17:23:25 +08:00
|
|
|
* @debounce_msec : interrupt debounce time
|
2012-01-27 14:59:00 +08:00
|
|
|
*/
|
2011-09-07 16:56:14 +08:00
|
|
|
struct lp8727_platform_data {
|
2012-01-04 20:23:11 +08:00
|
|
|
u8 (*get_batt_present)(void);
|
|
|
|
u16 (*get_batt_level)(void);
|
|
|
|
u8 (*get_batt_capacity)(void);
|
|
|
|
u8 (*get_batt_temp)(void);
|
2012-08-31 17:23:12 +08:00
|
|
|
struct lp8727_chg_param *ac;
|
|
|
|
struct lp8727_chg_param *usb;
|
2012-08-31 17:23:25 +08:00
|
|
|
unsigned int debounce_msec;
|
2011-09-07 16:56:14 +08:00
|
|
|
};
|
|
|
|
|
|
|
|
#endif
|