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