69 lines
1.6 KiB
C
69 lines
1.6 KiB
C
|
/*
|
||
|
* LP8727 Micro/Mini USB IC with integrated charger
|
||
|
*
|
||
|
* Copyright (C) 2011 Texas Instruments
|
||
|
* 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 {
|
||
|
LP8727_EOC_5P,
|
||
|
LP8727_EOC_10P,
|
||
|
LP8727_EOC_16P,
|
||
|
LP8727_EOC_20P,
|
||
|
LP8727_EOC_25P,
|
||
|
LP8727_EOC_33P,
|
||
|
LP8727_EOC_50P,
|
||
|
};
|
||
|
|
||
|
enum lp8727_ichg {
|
||
|
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,
|
||
|
};
|
||
|
|
||
|
/**
|
||
|
* struct lp8727_chg_param
|
||
|
* @eoc_level : end of charge level setting
|
||
|
* @ichg : charging current
|
||
|
*/
|
||
|
struct lp8727_chg_param {
|
||
|
enum lp8727_eoc_level eoc_level;
|
||
|
enum lp8727_ichg ichg;
|
||
|
};
|
||
|
|
||
|
/**
|
||
|
* struct lp8727_platform_data
|
||
|
* @get_batt_present : check battery status - exists or not
|
||
|
* @get_batt_level : get battery voltage (mV)
|
||
|
* @get_batt_capacity : get battery capacity (%)
|
||
|
* @get_batt_temp : get battery temperature
|
||
|
* @ac : charging parameters for AC type charger
|
||
|
* @usb : charging parameters for USB type charger
|
||
|
* @debounce_msec : interrupt debounce time
|
||
|
*/
|
||
|
struct lp8727_platform_data {
|
||
|
u8 (*get_batt_present)(void);
|
||
|
u16 (*get_batt_level)(void);
|
||
|
u8 (*get_batt_capacity)(void);
|
||
|
u8 (*get_batt_temp)(void);
|
||
|
struct lp8727_chg_param *ac;
|
||
|
struct lp8727_chg_param *usb;
|
||
|
unsigned int debounce_msec;
|
||
|
};
|
||
|
|
||
|
#endif
|