xref: /openbmc/linux/drivers/power/supply/Kconfig (revision c94d4ed0)
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_LTC3651
412	tristate "LTC3651 charger"
413	depends on GPIOLIB
414	help
415	  Say Y to include support for the LTC3651 battery charger which reports
416	  its status via GPIO lines.
417
418config CHARGER_MAX14577
419	tristate "Maxim MAX14577/77836 battery charger driver"
420	depends on MFD_MAX14577
421	help
422	  Say Y to enable support for the battery charger control sysfs and
423	  platform data of MAX14577/77836 MUICs.
424
425config CHARGER_DETECTOR_MAX14656
426	tristate "Maxim MAX14656 USB charger detector"
427	depends on I2C
428	depends on OF
429	help
430	  Say Y to enable support for the Maxim MAX14656 USB charger detector.
431	  The device is compliant with the USB Battery Charging Specification
432	  Revision 1.2 and can be found e.g. in Kindle 4/5th generation
433	  readers and certain LG devices.
434
435config CHARGER_MAX77693
436	tristate "Maxim MAX77693 battery charger driver"
437	depends on MFD_MAX77693
438	help
439	  Say Y to enable support for the Maxim MAX77693 battery charger.
440
441config CHARGER_MAX8997
442	tristate "Maxim MAX8997/MAX8966 PMIC battery charger driver"
443	depends on MFD_MAX8997 && REGULATOR_MAX8997
444	help
445	  Say Y to enable support for the battery charger control sysfs and
446	  platform data of MAX8997/LP3974 PMICs.
447
448config CHARGER_MAX8998
449	tristate "Maxim MAX8998/LP3974 PMIC battery charger driver"
450	depends on MFD_MAX8998 && REGULATOR_MAX8998
451	help
452	  Say Y to enable support for the battery charger control sysfs and
453	  platform data of MAX8998/LP3974 PMICs.
454
455config CHARGER_QCOM_SMBB
456	tristate "Qualcomm Switch-Mode Battery Charger and Boost"
457	depends on MFD_SPMI_PMIC || COMPILE_TEST
458	depends on OF
459	depends on EXTCON
460	depends on REGULATOR
461	help
462	  Say Y to include support for the Switch-Mode Battery Charger and
463	  Boost (SMBB) hardware found in Qualcomm PM8941 PMICs.  The charger
464	  is an integrated, single-cell lithium-ion battery charger.  DT
465	  configuration is required for loading, see the devicetree
466	  documentation for more detail.  The base name for this driver is
467	  'pm8941_charger'.
468
469config CHARGER_BQ2415X
470	tristate "TI BQ2415x battery charger driver"
471	depends on I2C
472	help
473	  Say Y to enable support for the TI BQ2415x battery charger
474	  PMICs.
475
476	  You'll need this driver to charge batteries on e.g. Nokia
477	  RX-51/N900.
478
479config CHARGER_BQ24190
480	tristate "TI BQ24190 battery charger driver"
481	depends on I2C
482	depends on EXTCON
483	depends on GPIOLIB || COMPILE_TEST
484	help
485	  Say Y to enable support for the TI BQ24190 battery charger.
486
487config CHARGER_BQ24257
488	tristate "TI BQ24250/24251/24257 battery charger driver"
489	depends on I2C
490	depends on GPIOLIB || COMPILE_TEST
491	depends on REGMAP_I2C
492	help
493	  Say Y to enable support for the TI BQ24250, BQ24251, and BQ24257 battery
494	  chargers.
495
496config CHARGER_BQ24735
497	tristate "TI BQ24735 battery charger support"
498	depends on I2C
499	depends on GPIOLIB || COMPILE_TEST
500	help
501	  Say Y to enable support for the TI BQ24735 battery charger.
502
503config CHARGER_BQ25890
504	tristate "TI BQ25890 battery charger driver"
505	depends on I2C
506	depends on GPIOLIB || COMPILE_TEST
507	select REGMAP_I2C
508	help
509	  Say Y to enable support for the TI BQ25890 battery charger.
510
511config CHARGER_SMB347
512	tristate "Summit Microelectronics SMB347 Battery Charger"
513	depends on I2C
514	select REGMAP_I2C
515	help
516	  Say Y to include support for Summit Microelectronics SMB347
517	  Battery Charger.
518
519config CHARGER_TPS65090
520	tristate "TPS65090 battery charger driver"
521	depends on MFD_TPS65090
522	help
523	 Say Y here to enable support for battery charging with TPS65090
524	 PMIC chips.
525
526config CHARGER_TPS65217
527	tristate "TPS65217 battery charger driver"
528	depends on MFD_TPS65217
529	help
530	 Say Y here to enable support for battery charging with TPS65217
531	 PMIC chips.
532
533config BATTERY_GAUGE_LTC2941
534	tristate "LTC2941/LTC2943 Battery Gauge Driver"
535	depends on I2C
536	help
537	  Say Y here to include support for LTC2941 and LTC2943 Battery
538	  Gauge IC. The driver reports the charge count continuously, and
539	  measures the voltage and temperature every 10 seconds.
540
541config AB8500_BM
542	bool "AB8500 Battery Management Driver"
543	depends on AB8500_CORE && AB8500_GPADC
544	help
545	  Say Y to include support for AB8500 battery management.
546
547config BATTERY_GOLDFISH
548	tristate "Goldfish battery driver"
549	depends on GOLDFISH || COMPILE_TEST
550	depends on HAS_IOMEM
551	help
552	  Say Y to enable support for the battery and AC power in the
553	  Goldfish emulator.
554
555config BATTERY_RT5033
556	tristate "RT5033 fuel gauge support"
557	depends on MFD_RT5033
558	help
559	  This adds support for battery fuel gauge in Richtek RT5033 PMIC.
560	  The fuelgauge calculates and determines the battery state of charge
561	  according to battery open circuit voltage.
562
563config CHARGER_RT9455
564	tristate "Richtek RT9455 battery charger driver"
565	depends on I2C
566	depends on GPIOLIB || COMPILE_TEST
567	select REGMAP_I2C
568	help
569	  Say Y to enable support for Richtek RT9455 battery charger.
570
571endif # POWER_SUPPLY
572