diff options
| author | Linus Torvalds <torvalds@linux-foundation.org> | 2013-09-11 01:58:14 -0400 |
|---|---|---|
| committer | Linus Torvalds <torvalds@linux-foundation.org> | 2013-09-11 01:58:14 -0400 |
| commit | a22a0fdba4191473581f86c9dd5361cf581521d3 (patch) | |
| tree | ef5d3992f791641d6c8c16cee781f214fecbb105 /include/linux | |
| parent | bf83e61464803d386d0ec3fc92e5449d7963a409 (diff) | |
| parent | db15e6312efd537e2deb2cbad110c23f98704a3c (diff) | |
Merge tag 'for-v3.12' of git://git.infradead.org/battery-2.6
Pull battery/power supply driver updates from Anton Vorontsov:
"New drivers:
- APM X-Gene system reboot driver by Feng Kan and Loc Ho (APM).
- Qualcomm MSM reboot/poweroff driver by Abhimanyu Kapur (Codeaurora).
- Texas Instruments BQ24190 charger driver by Mark A. Greer (Animal
Creek Technologies).
- Texas Instruments TWL4030 MADC battery driver by Lukas Märdian and
Marek Belisko (Golden Delicious Computers). The driver is used on
Freerunner GTA04 phones.
Highlighted fixes and improvements:
- Suspend/wakeup logic improvements: power supply objects will block
system suspend until all power supply events are processed. Thanks
to Zoran Markovic (Linaro), Arve Hjonnevag and Todd Poynor (Google)"
* tag 'for-v3.12' of git://git.infradead.org/battery-2.6:
rx51_battery: Fix channel number when reading adc value
power: Add twl4030_madc battery driver.
bq24190_charger: Workaround SS definition problem on i386 builds
power_supply: Prevent suspend until power supply events are processed
vexpress-poweroff: Should depend on the required infrastructure
twl4030-charger: Fix compiler warning with regulator_enable()
rx51_battery: Replace hardcoded channels values.
bq24190_charger: Add support for TI BQ24190 Battery Charger
ab8500-charger: We print an unintended error message
max8925_power: Fix missing of_node_put
power_supply: Replace strict_strtol() with kstrtol()
power: Add APM X-Gene system reboot driver
power_supply: tosa_battery: Get rid of irq_to_gpio usage
power supply: collie_battery: Convert to use dev_pm_ops
power_supply: Make goldfish_battery depend on GOLDFISH || COMPILE_TEST
power: reset: Add msm restart support
MAINTAINERS: drivers/power: add entry for SmartReflex AVS drivers
Diffstat (limited to 'include/linux')
| -rw-r--r-- | include/linux/power/bq24190_charger.h | 16 | ||||
| -rw-r--r-- | include/linux/power/twl4030_madc_battery.h | 39 | ||||
| -rw-r--r-- | include/linux/power_supply.h | 3 |
3 files changed, 58 insertions, 0 deletions
diff --git a/include/linux/power/bq24190_charger.h b/include/linux/power/bq24190_charger.h new file mode 100644 index 000000000000..9f0283721cbc --- /dev/null +++ b/include/linux/power/bq24190_charger.h | |||
| @@ -0,0 +1,16 @@ | |||
| 1 | /* | ||
| 2 | * Platform data for the TI bq24190 battery charger driver. | ||
| 3 | * | ||
| 4 | * This program is free software; you can redistribute it and/or modify | ||
| 5 | * it under the terms of the GNU General Public License version 2 as | ||
| 6 | * published by the Free Software Foundation. | ||
| 7 | */ | ||
| 8 | |||
| 9 | #ifndef _BQ24190_CHARGER_H_ | ||
| 10 | #define _BQ24190_CHARGER_H_ | ||
| 11 | |||
| 12 | struct bq24190_platform_data { | ||
| 13 | unsigned int gpio_int; /* GPIO pin that's connected to INT# */ | ||
| 14 | }; | ||
| 15 | |||
| 16 | #endif | ||
diff --git a/include/linux/power/twl4030_madc_battery.h b/include/linux/power/twl4030_madc_battery.h new file mode 100644 index 000000000000..23110dc77726 --- /dev/null +++ b/include/linux/power/twl4030_madc_battery.h | |||
| @@ -0,0 +1,39 @@ | |||
| 1 | /* | ||
| 2 | * Dumb driver for LiIon batteries using TWL4030 madc. | ||
| 3 | * | ||
| 4 | * Copyright 2013 Golden Delicious Computers | ||
| 5 | * Nikolaus Schaller <hns@goldelico.com> | ||
| 6 | * | ||
| 7 | * This program is free software; you can redistribute it and/or modify it | ||
| 8 | * under the terms of the GNU General Public License as published by the | ||
| 9 | * Free Software Foundation; either version 2 of the License, or (at your | ||
| 10 | * option) any later version. | ||
| 11 | * | ||
| 12 | * You should have received a copy of the GNU General Public License along | ||
| 13 | * with this program; if not, write to the Free Software Foundation, Inc., | ||
| 14 | * 675 Mass Ave, Cambridge, MA 02139, USA. | ||
| 15 | * | ||
| 16 | */ | ||
| 17 | |||
| 18 | #ifndef __TWL4030_MADC_BATTERY_H | ||
| 19 | #define __TWL4030_MADC_BATTERY_H | ||
| 20 | |||
| 21 | /* | ||
| 22 | * Usually we can assume 100% @ 4.15V and 0% @ 3.3V but curves differ for | ||
| 23 | * charging and discharging! | ||
| 24 | */ | ||
| 25 | |||
| 26 | struct twl4030_madc_bat_calibration { | ||
| 27 | short voltage; /* in mV - specify -1 for end of list */ | ||
| 28 | short level; /* in percent (0 .. 100%) */ | ||
| 29 | }; | ||
| 30 | |||
| 31 | struct twl4030_madc_bat_platform_data { | ||
| 32 | unsigned int capacity; /* total capacity in uAh */ | ||
| 33 | struct twl4030_madc_bat_calibration *charging; | ||
| 34 | int charging_size; | ||
| 35 | struct twl4030_madc_bat_calibration *discharging; | ||
| 36 | int discharging_size; | ||
| 37 | }; | ||
| 38 | |||
| 39 | #endif | ||
diff --git a/include/linux/power_supply.h b/include/linux/power_supply.h index 804b90643a85..5c2600630dc9 100644 --- a/include/linux/power_supply.h +++ b/include/linux/power_supply.h | |||
| @@ -15,6 +15,7 @@ | |||
| 15 | 15 | ||
| 16 | #include <linux/workqueue.h> | 16 | #include <linux/workqueue.h> |
| 17 | #include <linux/leds.h> | 17 | #include <linux/leds.h> |
| 18 | #include <linux/spinlock.h> | ||
| 18 | 19 | ||
| 19 | struct device; | 20 | struct device; |
| 20 | 21 | ||
| @@ -194,6 +195,8 @@ struct power_supply { | |||
| 194 | /* private */ | 195 | /* private */ |
| 195 | struct device *dev; | 196 | struct device *dev; |
| 196 | struct work_struct changed_work; | 197 | struct work_struct changed_work; |
| 198 | spinlock_t changed_lock; | ||
| 199 | bool changed; | ||
| 197 | #ifdef CONFIG_THERMAL | 200 | #ifdef CONFIG_THERMAL |
| 198 | struct thermal_zone_device *tzd; | 201 | struct thermal_zone_device *tzd; |
| 199 | struct thermal_cooling_device *tcd; | 202 | struct thermal_cooling_device *tcd; |
