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