xref: /openbmc/linux/drivers/power/supply/Kconfig (revision 6254a6a9)
1menuconfig 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
9if POWER_SUPPLY
10
11config 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
17config 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
25config 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
32config 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
39config 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
46config 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
53config 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
60config 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
67config TEST_POWER
68	tristate "Test power driver"
69	help
70	  This driver is used for testing. It's safe to say M here.
71
72config 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
78config 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
85config BATTERY_DS2760
86	tristate "DS2760 battery driver (HP iPAQ & others)"
87	depends on W1 && W1_SLAVE_DS2760
88	help
89	  Say Y here to enable support for batteries with ds2760 chip.
90
91config BATTERY_DS2780
92	tristate "DS2780 battery driver"
93	depends on HAS_IOMEM
94	select W1
95	select W1_SLAVE_DS2780
96	help
97	  Say Y here to enable support for batteries with ds2780 chip.
98
99config BATTERY_DS2781
100	tristate "DS2781 battery driver"
101	depends on HAS_IOMEM
102	select W1
103	select W1_SLAVE_DS2781
104	help
105	  If you enable this you will have the DS2781 battery driver support.
106
107	  The battery monitor chip is used in many batteries/devices
108	  as the one who is responsible for charging/discharging/monitoring
109	  Li+ batteries.
110
111	  If you are unsure, say N.
112
113config BATTERY_DS2782
114	tristate "DS2782/DS2786 standalone gas-gauge"
115	depends on I2C
116	help
117	  Say Y here to enable support for the DS2782/DS2786 standalone battery
118	  gas-gauge.
119
120config BATTERY_LEGO_EV3
121	tristate "LEGO MINDSTORMS EV3 battery"
122	depends on OF && IIO && GPIOLIB
123	help
124	  Say Y here to enable support for the LEGO MINDSTORMS EV3 battery.
125
126config BATTERY_PMU
127	tristate "Apple PMU battery"
128	depends on PPC32 && ADB_PMU
129	help
130	  Say Y here to expose battery information on Apple machines
131	  through the generic battery class.
132
133config BATTERY_OLPC
134	tristate "One Laptop Per Child battery"
135	depends on X86_32 && OLPC
136	help
137	  Say Y to enable support for the battery on the OLPC laptop.
138
139config BATTERY_TOSA
140	tristate "Sharp SL-6000 (tosa) battery"
141	depends on MACH_TOSA && MFD_TC6393XB && TOUCHSCREEN_WM97XX
142	help
143	  Say Y to enable support for the battery on the Sharp Zaurus
144	  SL-6000 (tosa) models.
145
146config BATTERY_COLLIE
147	tristate "Sharp SL-5500 (collie) battery"
148	depends on SA1100_COLLIE && MCP_UCB1200
149	help
150	  Say Y to enable support for the battery on the Sharp Zaurus
151	  SL-5500 (collie) models.
152
153config BATTERY_IPAQ_MICRO
154	tristate "iPAQ Atmel Micro ASIC battery driver"
155	depends on MFD_IPAQ_MICRO
156	help
157	  Choose this option if you want to monitor battery status on
158	  Compaq/HP iPAQ h3100 and h3600.
159
160config BATTERY_WM97XX
161	bool "WM97xx generic battery driver"
162	depends on TOUCHSCREEN_WM97XX=y
163	help
164	  Say Y to enable support for battery measured by WM97xx aux port.
165
166config BATTERY_SBS
167        tristate "SBS Compliant gas gauge"
168        depends on I2C
169        help
170	  Say Y to include support for SBS battery driver for SBS-compliant
171	  gas gauges.
172
173config CHARGER_SBS
174        tristate "SBS Compliant charger"
175        depends on I2C
176        help
177	  Say Y to include support for SBS compilant battery chargers.
178
179config BATTERY_BQ27XXX
180	tristate "BQ27xxx battery driver"
181	help
182	  Say Y here to enable support for batteries with BQ27xxx chips.
183
184config BATTERY_BQ27XXX_I2C
185	tristate "BQ27xxx I2C support"
186	depends on BATTERY_BQ27XXX
187	depends on I2C
188	default y
189	help
190	  Say Y here to enable support for batteries with BQ27xxx chips
191	  connected over an I2C bus.
192
193config BATTERY_DA9030
194	tristate "DA9030 battery driver"
195	depends on PMIC_DA903X
196	help
197	  Say Y here to enable support for batteries charger integrated into
198	  DA9030 PMIC.
199
200config BATTERY_DA9052
201	tristate "Dialog DA9052 Battery"
202	depends on PMIC_DA9052
203	help
204	  Say Y here to enable support for batteries charger integrated into
205	  DA9052 PMIC.
206
207config CHARGER_DA9150
208	tristate "Dialog Semiconductor DA9150 Charger support"
209	depends on MFD_DA9150
210	depends on DA9150_GPADC
211	depends on IIO
212	help
213	  Say Y here to enable support for charger unit of the DA9150
214	  Integrated Charger & Fuel-Gauge IC.
215
216	  This driver can also be built as a module. If so, the module will be
217	  called da9150-charger.
218
219config BATTERY_DA9150
220	tristate "Dialog Semiconductor DA9150 Fuel Gauge support"
221	depends on MFD_DA9150
222	help
223	  Say Y here to enable support for the Fuel-Gauge unit of the DA9150
224	  Integrated Charger & Fuel-Gauge IC
225
226	  This driver can also be built as a module. If so, the module will be
227	  called da9150-fg.
228
229config CHARGER_AXP20X
230	tristate "X-Powers AXP20X and AXP22X AC power supply driver"
231	depends on MFD_AXP20X
232	depends on AXP20X_ADC
233	depends on IIO
234	help
235	  Say Y here to enable support for X-Powers AXP20X and AXP22X PMICs' AC
236	  power supply.
237
238	  This driver can also be built as a module. If so, the module will be
239	  called axp20x_ac_power.
240
241config BATTERY_AXP20X
242	tristate "X-Powers AXP20X battery driver"
243	depends on MFD_AXP20X
244	depends on AXP20X_ADC
245	depends on IIO
246	help
247	  Say Y here to enable support for X-Powers AXP20X PMICs' battery power
248	  supply.
249
250	  This driver can also be built as a module. If so, the module will be
251	  called axp20x_battery.
252
253config AXP20X_POWER
254	tristate "AXP20x power supply driver"
255	depends on MFD_AXP20X
256	depends on IIO
257	help
258	  This driver provides support for the power supply features of
259	  AXP20x PMIC.
260
261config AXP288_CHARGER
262	tristate "X-Powers AXP288 Charger"
263	depends on MFD_AXP20X && EXTCON_AXP288
264	help
265	  Say yes here to have support X-Power AXP288 power management IC (PMIC)
266	  integrated charger.
267
268config AXP288_FUEL_GAUGE
269	tristate "X-Powers AXP288 Fuel Gauge"
270	depends on MFD_AXP20X && IIO
271	help
272	  Say yes here to have support for X-Power power management IC (PMIC)
273	  Fuel Gauge. The device provides battery statistics and status
274	  monitoring as well as alerts for battery over/under voltage and
275	  over/under temperature.
276
277config BATTERY_MAX17040
278	tristate "Maxim MAX17040 Fuel Gauge"
279	depends on I2C
280	help
281	  MAX17040 is fuel-gauge systems for lithium-ion (Li+) batteries
282	  in handheld and portable equipment. The MAX17040 is configured
283	  to operate with a single lithium cell
284
285config BATTERY_MAX17042
286	tristate "Maxim MAX17042/17047/17050/8997/8966 Fuel Gauge"
287	depends on I2C
288	select REGMAP_I2C
289	help
290	  MAX17042 is fuel-gauge systems for lithium-ion (Li+) batteries
291	  in handheld and portable equipment. The MAX17042 is configured
292	  to operate with a single lithium cell. MAX8997 and MAX8966 are
293	  multi-function devices that include fuel gauages that are compatible
294	  with MAX17042. This driver also supports max17047/50 chips which are
295	  improved version of max17042.
296
297config BATTERY_Z2
298	tristate "Z2 battery driver"
299	depends on I2C && MACH_ZIPIT2
300	help
301	  Say Y to include support for the battery on the Zipit Z2.
302
303config BATTERY_S3C_ADC
304	tristate "Battery driver for Samsung ADC based monitoring"
305	depends on S3C_ADC
306	help
307	  Say Y here to enable support for iPAQ h1930/h1940/rx1950 battery
308
309config BATTERY_TWL4030_MADC
310	tristate "TWL4030 MADC battery driver"
311	depends on TWL4030_MADC
312	help
313	  Say Y here to enable this dumb driver for batteries managed
314	  through the TWL4030 MADC.
315
316config CHARGER_88PM860X
317	tristate "Marvell 88PM860x Charger driver"
318	depends on MFD_88PM860X && BATTERY_88PM860X
319	help
320	  Say Y here to enable charger for Marvell 88PM860x chip.
321
322config CHARGER_PCF50633
323	tristate "NXP PCF50633 MBC"
324	depends on MFD_PCF50633
325	help
326	 Say Y to include support for NXP PCF50633 Main Battery Charger.
327
328config BATTERY_JZ4740
329	tristate "Ingenic JZ4740 battery"
330	depends on MACH_JZ4740
331	depends on MFD_JZ4740_ADC
332	help
333	  Say Y to enable support for the battery on Ingenic JZ4740 based
334	  boards.
335
336	  This driver can be build as a module. If so, the module will be
337	  called jz4740-battery.
338
339config BATTERY_RX51
340	tristate "Nokia RX-51 (N900) battery driver"
341	depends on TWL4030_MADC
342	help
343	  Say Y here to enable support for battery information on Nokia
344	  RX-51, also known as N900 tablet.
345
346config CHARGER_CPCAP
347	tristate "CPCAP PMIC Charger Driver"
348	depends on MFD_CPCAP && IIO
349	default MFD_CPCAP
350	help
351	  Say Y to enable support for CPCAP PMIC charger driver for Motorola
352	  mobile devices such as Droid 4.
353
354config CHARGER_ISP1704
355	tristate "ISP1704 USB Charger Detection"
356	depends on USB_PHY
357	depends on USB_GADGET || !USB_GADGET # if USB_GADGET=m, this can't be 'y'
358	help
359	  Say Y to enable support for USB Charger Detection with
360	  ISP1707/ISP1704 USB transceivers.
361
362config CHARGER_MAX8903
363	tristate "MAX8903 Battery DC-DC Charger for USB and Adapter Power"
364	help
365	  Say Y to enable support for the MAX8903 DC-DC charger and sysfs.
366	  The driver supports controlling charger-enable and current-limit
367	  pins based on the status of charger connections with interrupt
368	  handlers.
369
370config CHARGER_TWL4030
371	tristate "OMAP TWL4030 BCI charger driver"
372	depends on IIO && TWL4030_CORE
373	help
374	  Say Y here to enable support for TWL4030 Battery Charge Interface.
375
376config CHARGER_LP8727
377	tristate "TI/National Semiconductor LP8727 charger driver"
378	depends on I2C
379	help
380	  Say Y here to enable support for LP8727 Charger Driver.
381
382config CHARGER_LP8788
383	tristate "TI LP8788 charger driver"
384	depends on MFD_LP8788
385	depends on LP8788_ADC
386	depends on IIO
387	help
388	  Say Y to enable support for the LP8788 linear charger.
389
390config CHARGER_GPIO
391	tristate "GPIO charger"
392	depends on GPIOLIB || COMPILE_TEST
393	help
394	  Say Y to include support for chargers which report their online status
395	  through a GPIO pin.
396
397	  This driver can be build as a module. If so, the module will be
398	  called gpio-charger.
399
400config CHARGER_MANAGER
401	bool "Battery charger manager for multiple chargers"
402	depends on REGULATOR
403	select EXTCON
404	help
405          Say Y to enable charger-manager support, which allows multiple
406          chargers attached to a battery and multiple batteries attached to a
407          system. The charger-manager also can monitor charging status in
408          runtime and in suspend-to-RAM by waking up the system periodically
409          with help of suspend_again support.
410
411config CHARGER_MAX14577
412	tristate "Maxim MAX14577/77836 battery charger driver"
413	depends on MFD_MAX14577
414	help
415	  Say Y to enable support for the battery charger control sysfs and
416	  platform data of MAX14577/77836 MUICs.
417
418config CHARGER_DETECTOR_MAX14656
419	tristate "Maxim MAX14656 USB charger detector"
420	depends on I2C
421	depends on OF
422	help
423	  Say Y to enable support for the Maxim MAX14656 USB charger detector.
424	  The device is compliant with the USB Battery Charging Specification
425	  Revision 1.2 and can be found e.g. in Kindle 4/5th generation
426	  readers and certain LG devices.
427
428config CHARGER_MAX77693
429	tristate "Maxim MAX77693 battery charger driver"
430	depends on MFD_MAX77693
431	help
432	  Say Y to enable support for the Maxim MAX77693 battery charger.
433
434config CHARGER_MAX8997
435	tristate "Maxim MAX8997/MAX8966 PMIC battery charger driver"
436	depends on MFD_MAX8997 && REGULATOR_MAX8997
437	help
438	  Say Y to enable support for the battery charger control sysfs and
439	  platform data of MAX8997/LP3974 PMICs.
440
441config CHARGER_MAX8998
442	tristate "Maxim MAX8998/LP3974 PMIC battery charger driver"
443	depends on MFD_MAX8998 && REGULATOR_MAX8998
444	help
445	  Say Y to enable support for the battery charger control sysfs and
446	  platform data of MAX8998/LP3974 PMICs.
447
448config CHARGER_QCOM_SMBB
449	tristate "Qualcomm Switch-Mode Battery Charger and Boost"
450	depends on MFD_SPMI_PMIC || COMPILE_TEST
451	depends on OF
452	depends on EXTCON
453	depends on REGULATOR
454	help
455	  Say Y to include support for the Switch-Mode Battery Charger and
456	  Boost (SMBB) hardware found in Qualcomm PM8941 PMICs.  The charger
457	  is an integrated, single-cell lithium-ion battery charger.  DT
458	  configuration is required for loading, see the devicetree
459	  documentation for more detail.  The base name for this driver is
460	  'pm8941_charger'.
461
462config CHARGER_BQ2415X
463	tristate "TI BQ2415x battery charger driver"
464	depends on I2C
465	help
466	  Say Y to enable support for the TI BQ2415x battery charger
467	  PMICs.
468
469	  You'll need this driver to charge batteries on e.g. Nokia
470	  RX-51/N900.
471
472config CHARGER_BQ24190
473	tristate "TI BQ24190 battery charger driver"
474	depends on I2C
475	depends on EXTCON
476	depends on GPIOLIB || COMPILE_TEST
477	help
478	  Say Y to enable support for the TI BQ24190 battery charger.
479
480config CHARGER_BQ24257
481	tristate "TI BQ24250/24251/24257 battery charger driver"
482	depends on I2C
483	depends on GPIOLIB || COMPILE_TEST
484	depends on REGMAP_I2C
485	help
486	  Say Y to enable support for the TI BQ24250, BQ24251, and BQ24257 battery
487	  chargers.
488
489config CHARGER_BQ24735
490	tristate "TI BQ24735 battery charger support"
491	depends on I2C
492	depends on GPIOLIB || COMPILE_TEST
493	help
494	  Say Y to enable support for the TI BQ24735 battery charger.
495
496config CHARGER_BQ25890
497	tristate "TI BQ25890 battery charger driver"
498	depends on I2C
499	depends on GPIOLIB || COMPILE_TEST
500	select REGMAP_I2C
501	help
502	  Say Y to enable support for the TI BQ25890 battery charger.
503
504config CHARGER_SMB347
505	tristate "Summit Microelectronics SMB347 Battery Charger"
506	depends on I2C
507	select REGMAP_I2C
508	help
509	  Say Y to include support for Summit Microelectronics SMB347
510	  Battery Charger.
511
512config CHARGER_TPS65090
513	tristate "TPS65090 battery charger driver"
514	depends on MFD_TPS65090
515	help
516	 Say Y here to enable support for battery charging with TPS65090
517	 PMIC chips.
518
519config CHARGER_TPS65217
520	tristate "TPS65217 battery charger driver"
521	depends on MFD_TPS65217
522	help
523	 Say Y here to enable support for battery charging with TPS65217
524	 PMIC chips.
525
526config BATTERY_GAUGE_LTC2941
527	tristate "LTC2941/LTC2943 Battery Gauge Driver"
528	depends on I2C
529	help
530	  Say Y here to include support for LTC2941 and LTC2943 Battery
531	  Gauge IC. The driver reports the charge count continuously, and
532	  measures the voltage and temperature every 10 seconds.
533
534config AB8500_BM
535	bool "AB8500 Battery Management Driver"
536	depends on AB8500_CORE && AB8500_GPADC
537	help
538	  Say Y to include support for AB8500 battery management.
539
540config BATTERY_GOLDFISH
541	tristate "Goldfish battery driver"
542	depends on GOLDFISH || COMPILE_TEST
543	depends on HAS_IOMEM
544	help
545	  Say Y to enable support for the battery and AC power in the
546	  Goldfish emulator.
547
548config BATTERY_RT5033
549	tristate "RT5033 fuel gauge support"
550	depends on MFD_RT5033
551	help
552	  This adds support for battery fuel gauge in Richtek RT5033 PMIC.
553	  The fuelgauge calculates and determines the battery state of charge
554	  according to battery open circuit voltage.
555
556config CHARGER_RT9455
557	tristate "Richtek RT9455 battery charger driver"
558	depends on I2C
559	depends on GPIOLIB || COMPILE_TEST
560	select REGMAP_I2C
561	help
562	  Say Y to enable support for Richtek RT9455 battery charger.
563
564endif # POWER_SUPPLY
565