diff options
Diffstat (limited to 'include/linux/mfd/abx500/ux500_chargalg.h')
-rw-r--r-- | include/linux/mfd/abx500/ux500_chargalg.h | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/include/linux/mfd/abx500/ux500_chargalg.h b/include/linux/mfd/abx500/ux500_chargalg.h new file mode 100644 index 000000000000..9b07725750c9 --- /dev/null +++ b/include/linux/mfd/abx500/ux500_chargalg.h | |||
@@ -0,0 +1,38 @@ | |||
1 | /* | ||
2 | * Copyright (C) ST-Ericsson SA 2012 | ||
3 | * Author: Johan Gardsmark <johan.gardsmark@stericsson.com> for ST-Ericsson. | ||
4 | * License terms: GNU General Public License (GPL), version 2 | ||
5 | */ | ||
6 | |||
7 | #ifndef _UX500_CHARGALG_H | ||
8 | #define _UX500_CHARGALG_H | ||
9 | |||
10 | #include <linux/power_supply.h> | ||
11 | |||
12 | #define psy_to_ux500_charger(x) container_of((x), \ | ||
13 | struct ux500_charger, psy) | ||
14 | |||
15 | /* Forward declaration */ | ||
16 | struct ux500_charger; | ||
17 | |||
18 | struct ux500_charger_ops { | ||
19 | int (*enable) (struct ux500_charger *, int, int, int); | ||
20 | int (*kick_wd) (struct ux500_charger *); | ||
21 | int (*update_curr) (struct ux500_charger *, int); | ||
22 | }; | ||
23 | |||
24 | /** | ||
25 | * struct ux500_charger - power supply ux500 charger sub class | ||
26 | * @psy power supply base class | ||
27 | * @ops ux500 charger operations | ||
28 | * @max_out_volt maximum output charger voltage in mV | ||
29 | * @max_out_curr maximum output charger current in mA | ||
30 | */ | ||
31 | struct ux500_charger { | ||
32 | struct power_supply psy; | ||
33 | struct ux500_charger_ops ops; | ||
34 | int max_out_volt; | ||
35 | int max_out_curr; | ||
36 | }; | ||
37 | |||
38 | #endif | ||