linux/include/linux/lp8727.h
<<
>>
Prefs
   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
  15enum 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
  25enum 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 */
  43struct 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 */
  56struct 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