Commit | Line | Data |
---|---|---|
0bc98cc6 | 1 | /* |
6c47a3e0 AV |
2 | * bq2415x charger driver |
3 | * | |
32260308 | 4 | * Copyright (C) 2011-2013 Pali Rohár <pali.rohar@gmail.com> |
6c47a3e0 AV |
5 | * |
6 | * This program is free software; you can redistribute it and/or modify | |
7 | * it under the terms of the GNU General Public License as published by | |
8 | * the Free Software Foundation; either version 2 of the License, or | |
9 | * (at your option) any later version. | |
10 | * | |
11 | * This program is distributed in the hope that it will be useful, | |
12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | |
13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
14 | * GNU General Public License for more details. | |
15 | * | |
16 | * You should have received a copy of the GNU General Public License along | |
17 | * with this program; if not, write to the Free Software Foundation, Inc., | |
18 | * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. | |
19 | */ | |
0bc98cc6 PR |
20 | |
21 | #ifndef BQ2415X_CHARGER_H | |
22 | #define BQ2415X_CHARGER_H | |
23 | ||
24 | /* | |
6c47a3e0 AV |
25 | * This is platform data for bq2415x chip. It contains default board |
26 | * voltages and currents which can be also later configured via sysfs. If | |
27 | * value is -1 then default chip value (specified in datasheet) will be | |
28 | * used. | |
29 | * | |
30 | * Value resistor_sense is needed for for configuring charge and | |
31 | * termination current. It it is less or equal to zero, configuring charge | |
32 | * and termination current will not be possible. | |
33 | * | |
32260308 PR |
34 | * For automode support is needed to provide name of power supply device |
35 | * in value notify_device. Device driver must immediately report property | |
36 | * POWER_SUPPLY_PROP_CURRENT_MAX when current changed. | |
6c47a3e0 | 37 | */ |
0bc98cc6 PR |
38 | |
39 | /* Supported modes with maximal current limit */ | |
40 | enum bq2415x_mode { | |
ac6324e7 PR |
41 | BQ2415X_MODE_OFF, /* offline mode (charger disabled) */ |
42 | BQ2415X_MODE_NONE, /* unknown charger (100mA) */ | |
0bc98cc6 PR |
43 | BQ2415X_MODE_HOST_CHARGER, /* usb host/hub charger (500mA) */ |
44 | BQ2415X_MODE_DEDICATED_CHARGER, /* dedicated charger (unlimited) */ | |
45 | BQ2415X_MODE_BOOST, /* boost mode (charging disabled) */ | |
46 | }; | |
47 | ||
48 | struct bq2415x_platform_data { | |
49 | int current_limit; /* mA */ | |
50 | int weak_battery_voltage; /* mV */ | |
51 | int battery_regulation_voltage; /* mV */ | |
52 | int charge_current; /* mA */ | |
53 | int termination_current; /* mA */ | |
54 | int resistor_sense; /* m ohm */ | |
32260308 | 55 | const char *notify_device; /* name */ |
0bc98cc6 PR |
56 | }; |
57 | ||
58 | #endif |