Merge branch 'for-linus' of ssh://gitolite.kernel.org/pub/scm/linux/kernel/git/jikos/hid
[platform/kernel/linux-rpi.git] / drivers / power / supply / Kconfig
1 menuconfig POWER_SUPPLY
2         bool "Power supply class support"
3         help
4           Say Y here to enable power supply class support. This allows
5           power supply (batteries, AC, USB) monitoring by userspace
6           via sysfs and uevent (if available) and/or APM kernel interface
7           (if selected below).
8
9 if POWER_SUPPLY
10
11 config POWER_SUPPLY_DEBUG
12         bool "Power supply debug"
13         help
14           Say Y here to enable debugging messages for power supply class
15           and drivers.
16
17 config PDA_POWER
18         tristate "Generic PDA/phone power driver"
19         depends on !S390
20         help
21           Say Y here to enable generic power driver for PDAs and phones with
22           one or two external power supplies (AC/USB) connected to main and
23           backup batteries, and optional builtin charger.
24
25 config APM_POWER
26         tristate "APM emulation for class batteries"
27         depends on APM_EMULATION
28         help
29           Say Y here to enable support APM status emulation using
30           battery class devices.
31
32 config GENERIC_ADC_BATTERY
33         tristate "Generic battery support using IIO"
34         depends on IIO
35         help
36           Say Y here to enable support for the generic battery driver
37           which uses IIO framework to read adc.
38
39 config MAX8925_POWER
40         tristate "MAX8925 battery charger support"
41         depends on MFD_MAX8925
42         help
43           Say Y here to enable support for the battery charger in the Maxim
44           MAX8925 PMIC.
45
46 config WM831X_BACKUP
47         tristate "WM831X backup battery charger support"
48         depends on MFD_WM831X
49         help
50           Say Y here to enable support for the backup battery charger
51           in the Wolfson Microelectronics WM831x PMICs.
52
53 config WM831X_POWER
54         tristate "WM831X PMU support"
55         depends on MFD_WM831X
56         help
57           Say Y here to enable support for the power management unit
58           provided by Wolfson Microelectronics WM831x PMICs.
59
60 config WM8350_POWER
61         tristate "WM8350 PMU support"
62         depends on MFD_WM8350
63         help
64           Say Y here to enable support for the power management unit
65           provided by the Wolfson Microelectronics WM8350 PMIC.
66
67 config TEST_POWER
68         tristate "Test power driver"
69         help
70           This driver is used for testing. It's safe to say M here.
71
72 config BATTERY_88PM860X
73         tristate "Marvell 88PM860x battery driver"
74         depends on MFD_88PM860X
75         help
76           Say Y here to enable battery monitor for Marvell 88PM860x chip.
77
78 config BATTERY_ACT8945A
79         tristate "Active-semi ACT8945A charger driver"
80         depends on MFD_ACT8945A || COMPILE_TEST
81         help
82           Say Y here to enable support for power supply provided by
83           Active-semi ActivePath ACT8945A charger.
84
85 config BATTERY_CPCAP
86         tristate "Motorola CPCAP PMIC battery driver"
87         depends on MFD_CPCAP && IIO
88         default MFD_CPCAP
89         help
90           Say Y here to enable support for battery on Motorola
91           phones and tablets such as droid 4.
92
93 config BATTERY_DS2760
94         tristate "DS2760 battery driver (HP iPAQ & others)"
95         depends on W1 && W1_SLAVE_DS2760
96         help
97           Say Y here to enable support for batteries with ds2760 chip.
98
99 config BATTERY_DS2780
100         tristate "DS2780 battery driver"
101         depends on HAS_IOMEM
102         select W1
103         select W1_SLAVE_DS2780
104         help
105           Say Y here to enable support for batteries with ds2780 chip.
106
107 config BATTERY_DS2781
108         tristate "DS2781 battery driver"
109         depends on HAS_IOMEM
110         select W1
111         select W1_SLAVE_DS2781
112         help
113           If you enable this you will have the DS2781 battery driver support.
114
115           The battery monitor chip is used in many batteries/devices
116           as the one who is responsible for charging/discharging/monitoring
117           Li+ batteries.
118
119           If you are unsure, say N.
120
121 config BATTERY_DS2782
122         tristate "DS2782/DS2786 standalone gas-gauge"
123         depends on I2C
124         help
125           Say Y here to enable support for the DS2782/DS2786 standalone battery
126           gas-gauge.
127
128 config BATTERY_LEGO_EV3
129         tristate "LEGO MINDSTORMS EV3 battery"
130         depends on OF && IIO && GPIOLIB
131         help
132           Say Y here to enable support for the LEGO MINDSTORMS EV3 battery.
133
134 config BATTERY_PMU
135         tristate "Apple PMU battery"
136         depends on PPC32 && ADB_PMU
137         help
138           Say Y here to expose battery information on Apple machines
139           through the generic battery class.
140
141 config BATTERY_OLPC
142         tristate "One Laptop Per Child battery"
143         depends on X86_32 && OLPC
144         help
145           Say Y to enable support for the battery on the OLPC laptop.
146
147 config BATTERY_TOSA
148         tristate "Sharp SL-6000 (tosa) battery"
149         depends on MACH_TOSA && MFD_TC6393XB && TOUCHSCREEN_WM97XX
150         help
151           Say Y to enable support for the battery on the Sharp Zaurus
152           SL-6000 (tosa) models.
153
154 config BATTERY_COLLIE
155         tristate "Sharp SL-5500 (collie) battery"
156         depends on SA1100_COLLIE && MCP_UCB1200
157         help
158           Say Y to enable support for the battery on the Sharp Zaurus
159           SL-5500 (collie) models.
160
161 config BATTERY_IPAQ_MICRO
162         tristate "iPAQ Atmel Micro ASIC battery driver"
163         depends on MFD_IPAQ_MICRO
164         help
165           Choose this option if you want to monitor battery status on
166           Compaq/HP iPAQ h3100 and h3600.
167
168 config BATTERY_WM97XX
169         bool "WM97xx generic battery driver"
170         depends on TOUCHSCREEN_WM97XX=y
171         help
172           Say Y to enable support for battery measured by WM97xx aux port.
173
174 config BATTERY_SBS
175         tristate "SBS Compliant gas gauge"
176         depends on I2C
177         help
178           Say Y to include support for SBS battery driver for SBS-compliant
179           gas gauges.
180
181 config CHARGER_SBS
182         tristate "SBS Compliant charger"
183         depends on I2C
184         help
185           Say Y to include support for SBS compilant battery chargers.
186
187 config MANAGER_SBS
188         tristate "Smart Battery System Manager"
189         depends on I2C && I2C_MUX && GPIOLIB
190         select I2C_SMBUS
191         help
192           Say Y here to include support for Smart Battery System Manager
193           ICs. The driver reports online and charging status via sysfs.
194           It presents itself also as I2C mux which allows to bind
195           smart battery driver to its ports.
196           Supported is for example LTC1760.
197
198           This driver can also be built as a module. If so, the module will be
199           called sbs-manager.
200
201 config BATTERY_BQ27XXX
202         tristate "BQ27xxx battery driver"
203         help
204           Say Y here to enable support for batteries with BQ27xxx chips.
205
206 config BATTERY_BQ27XXX_I2C
207         tristate "BQ27xxx I2C support"
208         depends on BATTERY_BQ27XXX
209         depends on I2C
210         default y
211         help
212           Say Y here to enable support for batteries with BQ27xxx chips
213           connected over an I2C bus.
214
215 config BATTERY_BQ27XXX_HDQ
216         tristate "BQ27xxx HDQ support"
217         depends on BATTERY_BQ27XXX
218         depends on W1
219         default y
220         help
221           Say Y here to enable support for batteries with BQ27xxx chips
222           connected over an HDQ bus.
223
224 config BATTERY_BQ27XXX_DT_UPDATES_NVM
225         bool "BQ27xxx support for update of NVM/flash data memory"
226         depends on BATTERY_BQ27XXX_I2C
227         help
228           Say Y here to enable devicetree monitored-battery config to update
229           NVM/flash data memory. Only enable this option for devices with a
230           fuel gauge mounted on the circuit board, and a battery that cannot
231           easily be replaced with one of a different type. Not for
232           general-purpose kernels, as this can cause misconfiguration of a
233           smart battery with embedded NVM/flash.
234
235 config BATTERY_DA9030
236         tristate "DA9030 battery driver"
237         depends on PMIC_DA903X
238         help
239           Say Y here to enable support for batteries charger integrated into
240           DA9030 PMIC.
241
242 config BATTERY_DA9052
243         tristate "Dialog DA9052 Battery"
244         depends on PMIC_DA9052
245         help
246           Say Y here to enable support for batteries charger integrated into
247           DA9052 PMIC.
248
249 config CHARGER_DA9150
250         tristate "Dialog Semiconductor DA9150 Charger support"
251         depends on MFD_DA9150
252         depends on DA9150_GPADC
253         depends on IIO
254         help
255           Say Y here to enable support for charger unit of the DA9150
256           Integrated Charger & Fuel-Gauge IC.
257
258           This driver can also be built as a module. If so, the module will be
259           called da9150-charger.
260
261 config BATTERY_DA9150
262         tristate "Dialog Semiconductor DA9150 Fuel Gauge support"
263         depends on MFD_DA9150
264         help
265           Say Y here to enable support for the Fuel-Gauge unit of the DA9150
266           Integrated Charger & Fuel-Gauge IC
267
268           This driver can also be built as a module. If so, the module will be
269           called da9150-fg.
270
271 config CHARGER_AXP20X
272         tristate "X-Powers AXP20X and AXP22X AC power supply driver"
273         depends on MFD_AXP20X
274         depends on AXP20X_ADC
275         depends on IIO
276         help
277           Say Y here to enable support for X-Powers AXP20X and AXP22X PMICs' AC
278           power supply.
279
280           This driver can also be built as a module. If so, the module will be
281           called axp20x_ac_power.
282
283 config BATTERY_AXP20X
284         tristate "X-Powers AXP20X battery driver"
285         depends on MFD_AXP20X
286         depends on AXP20X_ADC
287         depends on IIO
288         help
289           Say Y here to enable support for X-Powers AXP20X PMICs' battery power
290           supply.
291
292           This driver can also be built as a module. If so, the module will be
293           called axp20x_battery.
294
295 config AXP20X_POWER
296         tristate "AXP20x power supply driver"
297         depends on MFD_AXP20X
298         depends on IIO
299         help
300           This driver provides support for the power supply features of
301           AXP20x PMIC.
302
303 config AXP288_CHARGER
304         tristate "X-Powers AXP288 Charger"
305         depends on MFD_AXP20X && EXTCON_AXP288
306         help
307           Say yes here to have support X-Power AXP288 power management IC (PMIC)
308           integrated charger.
309
310 config AXP288_FUEL_GAUGE
311         tristate "X-Powers AXP288 Fuel Gauge"
312         depends on MFD_AXP20X && IIO
313         help
314           Say yes here to have support for X-Power power management IC (PMIC)
315           Fuel Gauge. The device provides battery statistics and status
316           monitoring as well as alerts for battery over/under voltage and
317           over/under temperature.
318
319 config BATTERY_MAX17040
320         tristate "Maxim MAX17040 Fuel Gauge"
321         depends on I2C
322         help
323           MAX17040 is fuel-gauge systems for lithium-ion (Li+) batteries
324           in handheld and portable equipment. The MAX17040 is configured
325           to operate with a single lithium cell
326
327 config BATTERY_MAX17042
328         tristate "Maxim MAX17042/17047/17050/8997/8966 Fuel Gauge"
329         depends on I2C
330         select REGMAP_I2C
331         help
332           MAX17042 is fuel-gauge systems for lithium-ion (Li+) batteries
333           in handheld and portable equipment. The MAX17042 is configured
334           to operate with a single lithium cell. MAX8997 and MAX8966 are
335           multi-function devices that include fuel gauages that are compatible
336           with MAX17042. This driver also supports max17047/50 chips which are
337           improved version of max17042.
338
339 config BATTERY_MAX1721X
340         tristate "MAX17211/MAX17215 standalone gas-gauge"
341         depends on W1
342         select REGMAP_W1
343         help
344           MAX1721x is fuel-gauge systems for lithium-ion (Li+) batteries
345           in handheld and portable equipment. MAX17211 used with single cell
346           battery. MAX17215 designed for muticell battery. Both them have
347           OneWire (W1) host interface.
348
349           Say Y here to enable support for the MAX17211/MAX17215 standalone
350           battery gas-gauge.
351
352 config BATTERY_Z2
353         tristate "Z2 battery driver"
354         depends on I2C && MACH_ZIPIT2
355         help
356           Say Y to include support for the battery on the Zipit Z2.
357
358 config BATTERY_S3C_ADC
359         tristate "Battery driver for Samsung ADC based monitoring"
360         depends on S3C_ADC
361         help
362           Say Y here to enable support for iPAQ h1930/h1940/rx1950 battery
363
364 config BATTERY_TWL4030_MADC
365         tristate "TWL4030 MADC battery driver"
366         depends on TWL4030_MADC
367         help
368           Say Y here to enable this dumb driver for batteries managed
369           through the TWL4030 MADC.
370
371 config CHARGER_88PM860X
372         tristate "Marvell 88PM860x Charger driver"
373         depends on MFD_88PM860X && BATTERY_88PM860X
374         help
375           Say Y here to enable charger for Marvell 88PM860x chip.
376
377 config CHARGER_PCF50633
378         tristate "NXP PCF50633 MBC"
379         depends on MFD_PCF50633
380         help
381          Say Y to include support for NXP PCF50633 Main Battery Charger.
382
383 config BATTERY_JZ4740
384         tristate "Ingenic JZ4740 battery"
385         depends on MACH_JZ4740
386         depends on MFD_JZ4740_ADC
387         help
388           Say Y to enable support for the battery on Ingenic JZ4740 based
389           boards.
390
391           This driver can be build as a module. If so, the module will be
392           called jz4740-battery.
393
394 config BATTERY_RX51
395         tristate "Nokia RX-51 (N900) battery driver"
396         depends on TWL4030_MADC
397         help
398           Say Y here to enable support for battery information on Nokia
399           RX-51, also known as N900 tablet.
400
401 config CHARGER_CPCAP
402         tristate "CPCAP PMIC Charger Driver"
403         depends on MFD_CPCAP && IIO
404         depends on OMAP_USB2 || (!OMAP_USB2 && COMPILE_TEST)
405         default MFD_CPCAP
406         help
407           Say Y to enable support for CPCAP PMIC charger driver for Motorola
408           mobile devices such as Droid 4.
409
410 config CHARGER_ISP1704
411         tristate "ISP1704 USB Charger Detection"
412         depends on USB_PHY
413         depends on USB_GADGET || !USB_GADGET # if USB_GADGET=m, this can't be 'y'
414         help
415           Say Y to enable support for USB Charger Detection with
416           ISP1707/ISP1704 USB transceivers.
417
418 config CHARGER_MAX8903
419         tristate "MAX8903 Battery DC-DC Charger for USB and Adapter Power"
420         help
421           Say Y to enable support for the MAX8903 DC-DC charger and sysfs.
422           The driver supports controlling charger-enable and current-limit
423           pins based on the status of charger connections with interrupt
424           handlers.
425
426 config CHARGER_TWL4030
427         tristate "OMAP TWL4030 BCI charger driver"
428         depends on IIO && TWL4030_CORE
429         help
430           Say Y here to enable support for TWL4030 Battery Charge Interface.
431
432 config CHARGER_LP8727
433         tristate "TI/National Semiconductor LP8727 charger driver"
434         depends on I2C
435         help
436           Say Y here to enable support for LP8727 Charger Driver.
437
438 config CHARGER_LP8788
439         tristate "TI LP8788 charger driver"
440         depends on MFD_LP8788
441         depends on LP8788_ADC
442         depends on IIO
443         help
444           Say Y to enable support for the LP8788 linear charger.
445
446 config CHARGER_GPIO
447         tristate "GPIO charger"
448         depends on GPIOLIB || COMPILE_TEST
449         help
450           Say Y to include support for chargers which report their online status
451           through a GPIO pin.
452
453           This driver can be build as a module. If so, the module will be
454           called gpio-charger.
455
456 config CHARGER_MANAGER
457         bool "Battery charger manager for multiple chargers"
458         depends on REGULATOR
459         select EXTCON
460         help
461           Say Y to enable charger-manager support, which allows multiple
462           chargers attached to a battery and multiple batteries attached to a
463           system. The charger-manager also can monitor charging status in
464           runtime and in suspend-to-RAM by waking up the system periodically
465           with help of suspend_again support.
466
467 config CHARGER_LTC3651
468         tristate "LTC3651 charger"
469         depends on GPIOLIB
470         help
471           Say Y to include support for the LTC3651 battery charger which reports
472           its status via GPIO lines.
473
474 config CHARGER_MAX14577
475         tristate "Maxim MAX14577/77836 battery charger driver"
476         depends on MFD_MAX14577
477         help
478           Say Y to enable support for the battery charger control sysfs and
479           platform data of MAX14577/77836 MUICs.
480
481 config CHARGER_DETECTOR_MAX14656
482         tristate "Maxim MAX14656 USB charger detector"
483         depends on I2C
484         depends on OF
485         help
486           Say Y to enable support for the Maxim MAX14656 USB charger detector.
487           The device is compliant with the USB Battery Charging Specification
488           Revision 1.2 and can be found e.g. in Kindle 4/5th generation
489           readers and certain LG devices.
490
491 config CHARGER_MAX77693
492         tristate "Maxim MAX77693 battery charger driver"
493         depends on MFD_MAX77693
494         help
495           Say Y to enable support for the Maxim MAX77693 battery charger.
496
497 config CHARGER_MAX8997
498         tristate "Maxim MAX8997/MAX8966 PMIC battery charger driver"
499         depends on MFD_MAX8997 && REGULATOR_MAX8997
500         help
501           Say Y to enable support for the battery charger control sysfs and
502           platform data of MAX8997/LP3974 PMICs.
503
504 config CHARGER_MAX8998
505         tristate "Maxim MAX8998/LP3974 PMIC battery charger driver"
506         depends on MFD_MAX8998 && REGULATOR_MAX8998
507         help
508           Say Y to enable support for the battery charger control sysfs and
509           platform data of MAX8998/LP3974 PMICs.
510
511 config CHARGER_QCOM_SMBB
512         tristate "Qualcomm Switch-Mode Battery Charger and Boost"
513         depends on MFD_SPMI_PMIC || COMPILE_TEST
514         depends on OF
515         depends on EXTCON
516         depends on REGULATOR
517         help
518           Say Y to include support for the Switch-Mode Battery Charger and
519           Boost (SMBB) hardware found in Qualcomm PM8941 PMICs.  The charger
520           is an integrated, single-cell lithium-ion battery charger.  DT
521           configuration is required for loading, see the devicetree
522           documentation for more detail.  The base name for this driver is
523           'pm8941_charger'.
524
525 config CHARGER_BQ2415X
526         tristate "TI BQ2415x battery charger driver"
527         depends on I2C
528         help
529           Say Y to enable support for the TI BQ2415x battery charger
530           PMICs.
531
532           You'll need this driver to charge batteries on e.g. Nokia
533           RX-51/N900.
534
535 config CHARGER_BQ24190
536         tristate "TI BQ24190 battery charger driver"
537         depends on I2C
538         depends on EXTCON
539         depends on GPIOLIB || COMPILE_TEST
540         help
541           Say Y to enable support for the TI BQ24190 battery charger.
542
543 config CHARGER_BQ24257
544         tristate "TI BQ24250/24251/24257 battery charger driver"
545         depends on I2C
546         depends on GPIOLIB || COMPILE_TEST
547         depends on REGMAP_I2C
548         help
549           Say Y to enable support for the TI BQ24250, BQ24251, and BQ24257 battery
550           chargers.
551
552 config CHARGER_BQ24735
553         tristate "TI BQ24735 battery charger support"
554         depends on I2C
555         depends on GPIOLIB || COMPILE_TEST
556         help
557           Say Y to enable support for the TI BQ24735 battery charger.
558
559 config CHARGER_BQ25890
560         tristate "TI BQ25890 battery charger driver"
561         depends on I2C
562         depends on GPIOLIB || COMPILE_TEST
563         select REGMAP_I2C
564         help
565           Say Y to enable support for the TI BQ25890 battery charger.
566
567 config CHARGER_SMB347
568         tristate "Summit Microelectronics SMB347 Battery Charger"
569         depends on I2C
570         select REGMAP_I2C
571         help
572           Say Y to include support for Summit Microelectronics SMB347
573           Battery Charger.
574
575 config CHARGER_TPS65090
576         tristate "TPS65090 battery charger driver"
577         depends on MFD_TPS65090
578         help
579          Say Y here to enable support for battery charging with TPS65090
580          PMIC chips.
581
582 config CHARGER_TPS65217
583         tristate "TPS65217 battery charger driver"
584         depends on MFD_TPS65217
585         help
586          Say Y here to enable support for battery charging with TPS65217
587          PMIC chips.
588
589 config BATTERY_GAUGE_LTC2941
590         tristate "LTC2941/LTC2943 Battery Gauge Driver"
591         depends on I2C
592         help
593           Say Y here to include support for LTC2941 and LTC2943 Battery
594           Gauge IC. The driver reports the charge count continuously, and
595           measures the voltage and temperature every 10 seconds.
596
597 config AB8500_BM
598         bool "AB8500 Battery Management Driver"
599         depends on AB8500_CORE && AB8500_GPADC
600         help
601           Say Y to include support for AB8500 battery management.
602
603 config BATTERY_GOLDFISH
604         tristate "Goldfish battery driver"
605         depends on GOLDFISH || COMPILE_TEST
606         depends on HAS_IOMEM
607         help
608           Say Y to enable support for the battery and AC power in the
609           Goldfish emulator.
610
611 config BATTERY_RT5033
612         tristate "RT5033 fuel gauge support"
613         depends on MFD_RT5033
614         help
615           This adds support for battery fuel gauge in Richtek RT5033 PMIC.
616           The fuelgauge calculates and determines the battery state of charge
617           according to battery open circuit voltage.
618
619 config CHARGER_RT9455
620         tristate "Richtek RT9455 battery charger driver"
621         depends on I2C
622         depends on GPIOLIB || COMPILE_TEST
623         select REGMAP_I2C
624         help
625           Say Y to enable support for Richtek RT9455 battery charger.
626
627 endif # POWER_SUPPLY