Merge tag 'ib-mfd-many-v4.14' of git://git.kernel.org/pub/scm/linux/kernel/git/lee...
[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 BATTERY_BQ27XXX
188         tristate "BQ27xxx battery driver"
189         help
190           Say Y here to enable support for batteries with BQ27xxx chips.
191
192 config BATTERY_BQ27XXX_I2C
193         tristate "BQ27xxx I2C support"
194         depends on BATTERY_BQ27XXX
195         depends on I2C
196         default y
197         help
198           Say Y here to enable support for batteries with BQ27xxx chips
199           connected over an I2C bus.
200
201 config BATTERY_BQ27XXX_DT_UPDATES_NVM
202         bool "BQ27xxx support for update of NVM/flash data memory"
203         depends on BATTERY_BQ27XXX_I2C
204         help
205           Say Y here to enable devicetree monitored-battery config to update
206           NVM/flash data memory. Only enable this option for devices with a
207           fuel gauge mounted on the circuit board, and a battery that cannot
208           easily be replaced with one of a different type. Not for
209           general-purpose kernels, as this can cause misconfiguration of a
210           smart battery with embedded NVM/flash.
211
212 config BATTERY_DA9030
213         tristate "DA9030 battery driver"
214         depends on PMIC_DA903X
215         help
216           Say Y here to enable support for batteries charger integrated into
217           DA9030 PMIC.
218
219 config BATTERY_DA9052
220         tristate "Dialog DA9052 Battery"
221         depends on PMIC_DA9052
222         help
223           Say Y here to enable support for batteries charger integrated into
224           DA9052 PMIC.
225
226 config CHARGER_DA9150
227         tristate "Dialog Semiconductor DA9150 Charger support"
228         depends on MFD_DA9150
229         depends on DA9150_GPADC
230         depends on IIO
231         help
232           Say Y here to enable support for charger unit of the DA9150
233           Integrated Charger & Fuel-Gauge IC.
234
235           This driver can also be built as a module. If so, the module will be
236           called da9150-charger.
237
238 config BATTERY_DA9150
239         tristate "Dialog Semiconductor DA9150 Fuel Gauge support"
240         depends on MFD_DA9150
241         help
242           Say Y here to enable support for the Fuel-Gauge unit of the DA9150
243           Integrated Charger & Fuel-Gauge IC
244
245           This driver can also be built as a module. If so, the module will be
246           called da9150-fg.
247
248 config CHARGER_AXP20X
249         tristate "X-Powers AXP20X and AXP22X AC power supply driver"
250         depends on MFD_AXP20X
251         depends on AXP20X_ADC
252         depends on IIO
253         help
254           Say Y here to enable support for X-Powers AXP20X and AXP22X PMICs' AC
255           power supply.
256
257           This driver can also be built as a module. If so, the module will be
258           called axp20x_ac_power.
259
260 config BATTERY_AXP20X
261         tristate "X-Powers AXP20X battery driver"
262         depends on MFD_AXP20X
263         depends on AXP20X_ADC
264         depends on IIO
265         help
266           Say Y here to enable support for X-Powers AXP20X PMICs' battery power
267           supply.
268
269           This driver can also be built as a module. If so, the module will be
270           called axp20x_battery.
271
272 config AXP20X_POWER
273         tristate "AXP20x power supply driver"
274         depends on MFD_AXP20X
275         depends on IIO
276         help
277           This driver provides support for the power supply features of
278           AXP20x PMIC.
279
280 config AXP288_CHARGER
281         tristate "X-Powers AXP288 Charger"
282         depends on MFD_AXP20X && EXTCON_AXP288
283         help
284           Say yes here to have support X-Power AXP288 power management IC (PMIC)
285           integrated charger.
286
287 config AXP288_FUEL_GAUGE
288         tristate "X-Powers AXP288 Fuel Gauge"
289         depends on MFD_AXP20X && IIO
290         help
291           Say yes here to have support for X-Power power management IC (PMIC)
292           Fuel Gauge. The device provides battery statistics and status
293           monitoring as well as alerts for battery over/under voltage and
294           over/under temperature.
295
296 config BATTERY_MAX17040
297         tristate "Maxim MAX17040 Fuel Gauge"
298         depends on I2C
299         help
300           MAX17040 is fuel-gauge systems for lithium-ion (Li+) batteries
301           in handheld and portable equipment. The MAX17040 is configured
302           to operate with a single lithium cell
303
304 config BATTERY_MAX17042
305         tristate "Maxim MAX17042/17047/17050/8997/8966 Fuel Gauge"
306         depends on I2C
307         select REGMAP_I2C
308         help
309           MAX17042 is fuel-gauge systems for lithium-ion (Li+) batteries
310           in handheld and portable equipment. The MAX17042 is configured
311           to operate with a single lithium cell. MAX8997 and MAX8966 are
312           multi-function devices that include fuel gauages that are compatible
313           with MAX17042. This driver also supports max17047/50 chips which are
314           improved version of max17042.
315
316 config BATTERY_Z2
317         tristate "Z2 battery driver"
318         depends on I2C && MACH_ZIPIT2
319         help
320           Say Y to include support for the battery on the Zipit Z2.
321
322 config BATTERY_S3C_ADC
323         tristate "Battery driver for Samsung ADC based monitoring"
324         depends on S3C_ADC
325         help
326           Say Y here to enable support for iPAQ h1930/h1940/rx1950 battery
327
328 config BATTERY_TWL4030_MADC
329         tristate "TWL4030 MADC battery driver"
330         depends on TWL4030_MADC
331         help
332           Say Y here to enable this dumb driver for batteries managed
333           through the TWL4030 MADC.
334
335 config CHARGER_88PM860X
336         tristate "Marvell 88PM860x Charger driver"
337         depends on MFD_88PM860X && BATTERY_88PM860X
338         help
339           Say Y here to enable charger for Marvell 88PM860x chip.
340
341 config CHARGER_PCF50633
342         tristate "NXP PCF50633 MBC"
343         depends on MFD_PCF50633
344         help
345          Say Y to include support for NXP PCF50633 Main Battery Charger.
346
347 config BATTERY_JZ4740
348         tristate "Ingenic JZ4740 battery"
349         depends on MACH_JZ4740
350         depends on MFD_JZ4740_ADC
351         help
352           Say Y to enable support for the battery on Ingenic JZ4740 based
353           boards.
354
355           This driver can be build as a module. If so, the module will be
356           called jz4740-battery.
357
358 config BATTERY_RX51
359         tristate "Nokia RX-51 (N900) battery driver"
360         depends on TWL4030_MADC
361         help
362           Say Y here to enable support for battery information on Nokia
363           RX-51, also known as N900 tablet.
364
365 config CHARGER_CPCAP
366         tristate "CPCAP PMIC Charger Driver"
367         depends on MFD_CPCAP && IIO
368         default MFD_CPCAP
369         help
370           Say Y to enable support for CPCAP PMIC charger driver for Motorola
371           mobile devices such as Droid 4.
372
373 config CHARGER_ISP1704
374         tristate "ISP1704 USB Charger Detection"
375         depends on USB_PHY
376         depends on USB_GADGET || !USB_GADGET # if USB_GADGET=m, this can't be 'y'
377         help
378           Say Y to enable support for USB Charger Detection with
379           ISP1707/ISP1704 USB transceivers.
380
381 config CHARGER_MAX8903
382         tristate "MAX8903 Battery DC-DC Charger for USB and Adapter Power"
383         help
384           Say Y to enable support for the MAX8903 DC-DC charger and sysfs.
385           The driver supports controlling charger-enable and current-limit
386           pins based on the status of charger connections with interrupt
387           handlers.
388
389 config CHARGER_TWL4030
390         tristate "OMAP TWL4030 BCI charger driver"
391         depends on IIO && TWL4030_CORE
392         help
393           Say Y here to enable support for TWL4030 Battery Charge Interface.
394
395 config CHARGER_LP8727
396         tristate "TI/National Semiconductor LP8727 charger driver"
397         depends on I2C
398         help
399           Say Y here to enable support for LP8727 Charger Driver.
400
401 config CHARGER_LP8788
402         tristate "TI LP8788 charger driver"
403         depends on MFD_LP8788
404         depends on LP8788_ADC
405         depends on IIO
406         help
407           Say Y to enable support for the LP8788 linear charger.
408
409 config CHARGER_GPIO
410         tristate "GPIO charger"
411         depends on GPIOLIB || COMPILE_TEST
412         help
413           Say Y to include support for chargers which report their online status
414           through a GPIO pin.
415
416           This driver can be build as a module. If so, the module will be
417           called gpio-charger.
418
419 config CHARGER_MANAGER
420         bool "Battery charger manager for multiple chargers"
421         depends on REGULATOR
422         select EXTCON
423         help
424           Say Y to enable charger-manager support, which allows multiple
425           chargers attached to a battery and multiple batteries attached to a
426           system. The charger-manager also can monitor charging status in
427           runtime and in suspend-to-RAM by waking up the system periodically
428           with help of suspend_again support.
429
430 config CHARGER_LTC3651
431         tristate "LTC3651 charger"
432         depends on GPIOLIB
433         help
434           Say Y to include support for the LTC3651 battery charger which reports
435           its status via GPIO lines.
436
437 config CHARGER_MAX14577
438         tristate "Maxim MAX14577/77836 battery charger driver"
439         depends on MFD_MAX14577
440         help
441           Say Y to enable support for the battery charger control sysfs and
442           platform data of MAX14577/77836 MUICs.
443
444 config CHARGER_DETECTOR_MAX14656
445         tristate "Maxim MAX14656 USB charger detector"
446         depends on I2C
447         depends on OF
448         help
449           Say Y to enable support for the Maxim MAX14656 USB charger detector.
450           The device is compliant with the USB Battery Charging Specification
451           Revision 1.2 and can be found e.g. in Kindle 4/5th generation
452           readers and certain LG devices.
453
454 config CHARGER_MAX77693
455         tristate "Maxim MAX77693 battery charger driver"
456         depends on MFD_MAX77693
457         help
458           Say Y to enable support for the Maxim MAX77693 battery charger.
459
460 config CHARGER_MAX8997
461         tristate "Maxim MAX8997/MAX8966 PMIC battery charger driver"
462         depends on MFD_MAX8997 && REGULATOR_MAX8997
463         help
464           Say Y to enable support for the battery charger control sysfs and
465           platform data of MAX8997/LP3974 PMICs.
466
467 config CHARGER_MAX8998
468         tristate "Maxim MAX8998/LP3974 PMIC battery charger driver"
469         depends on MFD_MAX8998 && REGULATOR_MAX8998
470         help
471           Say Y to enable support for the battery charger control sysfs and
472           platform data of MAX8998/LP3974 PMICs.
473
474 config CHARGER_QCOM_SMBB
475         tristate "Qualcomm Switch-Mode Battery Charger and Boost"
476         depends on MFD_SPMI_PMIC || COMPILE_TEST
477         depends on OF
478         depends on EXTCON
479         depends on REGULATOR
480         help
481           Say Y to include support for the Switch-Mode Battery Charger and
482           Boost (SMBB) hardware found in Qualcomm PM8941 PMICs.  The charger
483           is an integrated, single-cell lithium-ion battery charger.  DT
484           configuration is required for loading, see the devicetree
485           documentation for more detail.  The base name for this driver is
486           'pm8941_charger'.
487
488 config CHARGER_BQ2415X
489         tristate "TI BQ2415x battery charger driver"
490         depends on I2C
491         help
492           Say Y to enable support for the TI BQ2415x battery charger
493           PMICs.
494
495           You'll need this driver to charge batteries on e.g. Nokia
496           RX-51/N900.
497
498 config CHARGER_BQ24190
499         tristate "TI BQ24190 battery charger driver"
500         depends on I2C
501         depends on EXTCON
502         depends on GPIOLIB || COMPILE_TEST
503         help
504           Say Y to enable support for the TI BQ24190 battery charger.
505
506 config CHARGER_BQ24257
507         tristate "TI BQ24250/24251/24257 battery charger driver"
508         depends on I2C
509         depends on GPIOLIB || COMPILE_TEST
510         depends on REGMAP_I2C
511         help
512           Say Y to enable support for the TI BQ24250, BQ24251, and BQ24257 battery
513           chargers.
514
515 config CHARGER_BQ24735
516         tristate "TI BQ24735 battery charger support"
517         depends on I2C
518         depends on GPIOLIB || COMPILE_TEST
519         help
520           Say Y to enable support for the TI BQ24735 battery charger.
521
522 config CHARGER_BQ25890
523         tristate "TI BQ25890 battery charger driver"
524         depends on I2C
525         depends on GPIOLIB || COMPILE_TEST
526         select REGMAP_I2C
527         help
528           Say Y to enable support for the TI BQ25890 battery charger.
529
530 config CHARGER_SMB347
531         tristate "Summit Microelectronics SMB347 Battery Charger"
532         depends on I2C
533         select REGMAP_I2C
534         help
535           Say Y to include support for Summit Microelectronics SMB347
536           Battery Charger.
537
538 config CHARGER_TPS65090
539         tristate "TPS65090 battery charger driver"
540         depends on MFD_TPS65090
541         help
542          Say Y here to enable support for battery charging with TPS65090
543          PMIC chips.
544
545 config CHARGER_TPS65217
546         tristate "TPS65217 battery charger driver"
547         depends on MFD_TPS65217
548         help
549          Say Y here to enable support for battery charging with TPS65217
550          PMIC chips.
551
552 config BATTERY_GAUGE_LTC2941
553         tristate "LTC2941/LTC2943 Battery Gauge Driver"
554         depends on I2C
555         help
556           Say Y here to include support for LTC2941 and LTC2943 Battery
557           Gauge IC. The driver reports the charge count continuously, and
558           measures the voltage and temperature every 10 seconds.
559
560 config AB8500_BM
561         bool "AB8500 Battery Management Driver"
562         depends on AB8500_CORE && AB8500_GPADC
563         help
564           Say Y to include support for AB8500 battery management.
565
566 config BATTERY_GOLDFISH
567         tristate "Goldfish battery driver"
568         depends on GOLDFISH || COMPILE_TEST
569         depends on HAS_IOMEM
570         help
571           Say Y to enable support for the battery and AC power in the
572           Goldfish emulator.
573
574 config BATTERY_RT5033
575         tristate "RT5033 fuel gauge support"
576         depends on MFD_RT5033
577         help
578           This adds support for battery fuel gauge in Richtek RT5033 PMIC.
579           The fuelgauge calculates and determines the battery state of charge
580           according to battery open circuit voltage.
581
582 config CHARGER_RT9455
583         tristate "Richtek RT9455 battery charger driver"
584         depends on I2C
585         depends on GPIOLIB || COMPILE_TEST
586         select REGMAP_I2C
587         help
588           Say Y to enable support for Richtek RT9455 battery charger.
589
590 endif # POWER_SUPPLY