0001 # SPDX-License-Identifier: GPL-2.0-only
0002 menuconfig POWER_SUPPLY
0003 bool "Power supply class support"
0004 help
0005 Say Y here to enable power supply class support. This allows
0006 power supply (batteries, AC, USB) monitoring by userspace
0007 via sysfs and uevent (if available) and/or APM kernel interface
0008 (if selected below).
0009
0010 if POWER_SUPPLY
0011
0012 config POWER_SUPPLY_DEBUG
0013 bool "Power supply debug"
0014 help
0015 Say Y here to enable debugging messages for power supply class
0016 and drivers.
0017
0018 config POWER_SUPPLY_HWMON
0019 bool
0020 prompt "Expose power supply sensors as hwmon device"
0021 depends on HWMON=y || HWMON=POWER_SUPPLY
0022 default y
0023 help
0024 This options enables API that allows sensors found on a
0025 power supply device (current, voltage, temperature) to be
0026 exposed as a hwmon device.
0027
0028 Say 'Y' here if you want power supplies to
0029 have hwmon sysfs interface too.
0030
0031
0032 config PDA_POWER
0033 tristate "Generic PDA/phone power driver"
0034 depends on !S390
0035 help
0036 Say Y here to enable generic power driver for PDAs and phones with
0037 one or two external power supplies (AC/USB) connected to main and
0038 backup batteries, and optional builtin charger.
0039
0040 config APM_POWER
0041 tristate "APM emulation for class batteries"
0042 depends on APM_EMULATION
0043 help
0044 Say Y here to enable support APM status emulation using
0045 battery class devices.
0046
0047 config GENERIC_ADC_BATTERY
0048 tristate "Generic battery support using IIO"
0049 depends on IIO
0050 help
0051 Say Y here to enable support for the generic battery driver
0052 which uses IIO framework to read adc.
0053
0054 config IP5XXX_POWER
0055 tristate "Injoinic IP5xxx power bank IC driver"
0056 depends on I2C
0057 select REGMAP_I2C
0058 help
0059 Say Y to include support for Injoinic IP5xxx power bank ICs,
0060 which include a battery charger and a boost converter.
0061
0062 config MAX8925_POWER
0063 tristate "MAX8925 battery charger support"
0064 depends on MFD_MAX8925
0065 help
0066 Say Y here to enable support for the battery charger in the Maxim
0067 MAX8925 PMIC.
0068
0069 config WM831X_BACKUP
0070 tristate "WM831X backup battery charger support"
0071 depends on MFD_WM831X
0072 help
0073 Say Y here to enable support for the backup battery charger
0074 in the Wolfson Microelectronics WM831x PMICs.
0075
0076 config WM831X_POWER
0077 tristate "WM831X PMU support"
0078 depends on MFD_WM831X
0079 help
0080 Say Y here to enable support for the power management unit
0081 provided by Wolfson Microelectronics WM831x PMICs.
0082
0083 config WM8350_POWER
0084 tristate "WM8350 PMU support"
0085 depends on MFD_WM8350
0086 help
0087 Say Y here to enable support for the power management unit
0088 provided by the Wolfson Microelectronics WM8350 PMIC.
0089
0090 config TEST_POWER
0091 tristate "Test power driver"
0092 help
0093 This driver is used for testing. It's safe to say M here.
0094
0095 config BATTERY_88PM860X
0096 tristate "Marvell 88PM860x battery driver"
0097 depends on MFD_88PM860X
0098 help
0099 Say Y here to enable battery monitor for Marvell 88PM860x chip.
0100
0101 config CHARGER_ADP5061
0102 tristate "ADP5061 battery charger driver"
0103 depends on I2C
0104 select REGMAP_I2C
0105 help
0106 Say Y here to enable support for the ADP5061 standalone battery
0107 charger.
0108
0109 This driver can be built as a module. If so, the module will be
0110 called adp5061.
0111
0112 config BATTERY_ACT8945A
0113 tristate "Active-semi ACT8945A charger driver"
0114 depends on MFD_ACT8945A || COMPILE_TEST
0115 help
0116 Say Y here to enable support for power supply provided by
0117 Active-semi ActivePath ACT8945A charger.
0118
0119 config BATTERY_CPCAP
0120 tristate "Motorola CPCAP PMIC battery driver"
0121 depends on MFD_CPCAP && IIO
0122 default MFD_CPCAP
0123 help
0124 Say Y here to enable support for battery on Motorola
0125 phones and tablets such as droid 4.
0126
0127 config BATTERY_CW2015
0128 tristate "CW2015 Battery driver"
0129 depends on I2C
0130 select REGMAP_I2C
0131 help
0132 Say Y here to enable support for the cellwise cw2015
0133 battery fuel gauge (used in the Pinebook Pro & others)
0134
0135 This driver can also be built as a module. If so, the module will be
0136 called cw2015_battery.
0137
0138 config BATTERY_DS2760
0139 tristate "DS2760 battery driver (HP iPAQ & others)"
0140 depends on W1
0141 help
0142 Say Y here to enable support for batteries with ds2760 chip.
0143
0144 config BATTERY_DS2780
0145 tristate "DS2780 battery driver"
0146 depends on HAS_IOMEM
0147 select W1
0148 select W1_SLAVE_DS2780
0149 help
0150 Say Y here to enable support for batteries with ds2780 chip.
0151
0152 config BATTERY_DS2781
0153 tristate "DS2781 battery driver"
0154 depends on HAS_IOMEM
0155 select W1
0156 select W1_SLAVE_DS2781
0157 help
0158 If you enable this you will have the DS2781 battery driver support.
0159
0160 The battery monitor chip is used in many batteries/devices
0161 as the one who is responsible for charging/discharging/monitoring
0162 Li+ batteries.
0163
0164 If you are unsure, say N.
0165
0166 config BATTERY_DS2782
0167 tristate "DS2782/DS2786 standalone gas-gauge"
0168 depends on I2C
0169 help
0170 Say Y here to enable support for the DS2782/DS2786 standalone battery
0171 gas-gauge.
0172
0173 config BATTERY_LEGO_EV3
0174 tristate "LEGO MINDSTORMS EV3 battery"
0175 depends on OF && IIO && GPIOLIB && (ARCH_DAVINCI_DA850 || COMPILE_TEST)
0176 help
0177 Say Y here to enable support for the LEGO MINDSTORMS EV3 battery.
0178
0179 config BATTERY_PMU
0180 tristate "Apple PMU battery"
0181 depends on PPC32 && ADB_PMU
0182 help
0183 Say Y here to expose battery information on Apple machines
0184 through the generic battery class.
0185
0186 config BATTERY_OLPC
0187 tristate "One Laptop Per Child battery"
0188 depends on OLPC_EC
0189 help
0190 Say Y to enable support for the battery on the OLPC laptop.
0191
0192 config BATTERY_SAMSUNG_SDI
0193 bool "Samsung SDI batteries"
0194 help
0195 Say Y to enable support for Samsung SDI battery data.
0196 These batteries are used in Samsung mobile phones.
0197
0198 config BATTERY_TOSA
0199 tristate "Sharp SL-6000 (tosa) battery"
0200 depends on MACH_TOSA && MFD_TC6393XB && TOUCHSCREEN_WM97XX
0201 help
0202 Say Y to enable support for the battery on the Sharp Zaurus
0203 SL-6000 (tosa) models.
0204
0205 config BATTERY_COLLIE
0206 tristate "Sharp SL-5500 (collie) battery"
0207 depends on SA1100_COLLIE && MCP_UCB1200
0208 help
0209 Say Y to enable support for the battery on the Sharp Zaurus
0210 SL-5500 (collie) models.
0211
0212 config BATTERY_INGENIC
0213 tristate "Ingenic JZ47xx SoCs battery driver"
0214 depends on MIPS || COMPILE_TEST
0215 depends on INGENIC_ADC
0216 help
0217 Choose this option if you want to monitor battery status on
0218 Ingenic JZ47xx SoC based devices.
0219
0220 This driver can also be built as a module. If so, the module will be
0221 called ingenic-battery.
0222
0223 config BATTERY_IPAQ_MICRO
0224 tristate "iPAQ Atmel Micro ASIC battery driver"
0225 depends on MFD_IPAQ_MICRO
0226 help
0227 Choose this option if you want to monitor battery status on
0228 Compaq/HP iPAQ h3100 and h3600.
0229
0230 config BATTERY_WM97XX
0231 bool "WM97xx generic battery driver"
0232 depends on TOUCHSCREEN_WM97XX=y
0233 help
0234 Say Y to enable support for battery measured by WM97xx aux port.
0235
0236 config BATTERY_SBS
0237 tristate "SBS Compliant gas gauge"
0238 depends on I2C
0239 help
0240 Say Y to include support for SBS battery driver for SBS-compliant
0241 gas gauges.
0242
0243 config CHARGER_SBS
0244 tristate "SBS Compliant charger"
0245 depends on I2C
0246 select REGMAP_I2C
0247 help
0248 Say Y to include support for SBS compliant battery chargers.
0249
0250 config MANAGER_SBS
0251 tristate "Smart Battery System Manager"
0252 depends on I2C && I2C_MUX && GPIOLIB
0253 select I2C_SMBUS
0254 help
0255 Say Y here to include support for Smart Battery System Manager
0256 ICs. The driver reports online and charging status via sysfs.
0257 It presents itself also as I2C mux which allows to bind
0258 smart battery driver to its ports.
0259 Supported is for example LTC1760.
0260
0261 This driver can also be built as a module. If so, the module will be
0262 called sbs-manager.
0263
0264 config BATTERY_BQ27XXX
0265 tristate "BQ27xxx battery driver"
0266 help
0267 Say Y here to enable support for batteries with BQ27xxx chips.
0268
0269 config BATTERY_BQ27XXX_I2C
0270 tristate "BQ27xxx I2C support"
0271 depends on BATTERY_BQ27XXX
0272 depends on I2C
0273 default y
0274 help
0275 Say Y here to enable support for batteries with BQ27xxx chips
0276 connected over an I2C bus.
0277
0278 config BATTERY_BQ27XXX_HDQ
0279 tristate "BQ27xxx HDQ support"
0280 depends on BATTERY_BQ27XXX
0281 depends on W1
0282 default y
0283 help
0284 Say Y here to enable support for batteries with BQ27xxx chips
0285 connected over an HDQ bus.
0286
0287 config BATTERY_BQ27XXX_DT_UPDATES_NVM
0288 bool "BQ27xxx support for update of NVM/flash data memory"
0289 depends on BATTERY_BQ27XXX_I2C
0290 help
0291 Say Y here to enable devicetree monitored-battery config to update
0292 NVM/flash data memory. Only enable this option for devices with a
0293 fuel gauge mounted on the circuit board, and a battery that cannot
0294 easily be replaced with one of a different type. Not for
0295 general-purpose kernels, as this can cause misconfiguration of a
0296 smart battery with embedded NVM/flash.
0297
0298 config BATTERY_DA9030
0299 tristate "DA9030 battery driver"
0300 depends on PMIC_DA903X
0301 help
0302 Say Y here to enable support for batteries charger integrated into
0303 DA9030 PMIC.
0304
0305 config BATTERY_DA9052
0306 tristate "Dialog DA9052 Battery"
0307 depends on PMIC_DA9052
0308 help
0309 Say Y here to enable support for batteries charger integrated into
0310 DA9052 PMIC.
0311
0312 config CHARGER_DA9150
0313 tristate "Dialog Semiconductor DA9150 Charger support"
0314 depends on MFD_DA9150
0315 depends on DA9150_GPADC
0316 depends on IIO
0317 help
0318 Say Y here to enable support for charger unit of the DA9150
0319 Integrated Charger & Fuel-Gauge IC.
0320
0321 This driver can also be built as a module. If so, the module will be
0322 called da9150-charger.
0323
0324 config BATTERY_DA9150
0325 tristate "Dialog Semiconductor DA9150 Fuel Gauge support"
0326 depends on MFD_DA9150
0327 help
0328 Say Y here to enable support for the Fuel-Gauge unit of the DA9150
0329 Integrated Charger & Fuel-Gauge IC
0330
0331 This driver can also be built as a module. If so, the module will be
0332 called da9150-fg.
0333
0334 config CHARGER_AXP20X
0335 tristate "X-Powers AXP20X and AXP22X AC power supply driver"
0336 depends on MFD_AXP20X
0337 depends on AXP20X_ADC
0338 depends on IIO
0339 help
0340 Say Y here to enable support for X-Powers AXP20X and AXP22X PMICs' AC
0341 power supply.
0342
0343 This driver can also be built as a module. If so, the module will be
0344 called axp20x_ac_power.
0345
0346 config BATTERY_AXP20X
0347 tristate "X-Powers AXP20X battery driver"
0348 depends on MFD_AXP20X
0349 depends on AXP20X_ADC
0350 depends on IIO
0351 help
0352 Say Y here to enable support for X-Powers AXP20X PMICs' battery power
0353 supply.
0354
0355 This driver can also be built as a module. If so, the module will be
0356 called axp20x_battery.
0357
0358 config AXP20X_POWER
0359 tristate "AXP20x power supply driver"
0360 depends on MFD_AXP20X
0361 depends on IIO
0362 help
0363 This driver provides support for the power supply features of
0364 AXP20x PMIC.
0365
0366 config AXP288_CHARGER
0367 tristate "X-Powers AXP288 Charger"
0368 depends on MFD_AXP20X && EXTCON_AXP288 && IOSF_MBI && ACPI
0369 help
0370 Say yes here to have support X-Power AXP288 power management IC (PMIC)
0371 integrated charger.
0372
0373 config AXP288_FUEL_GAUGE
0374 tristate "X-Powers AXP288 Fuel Gauge"
0375 depends on MFD_AXP20X && IIO && IOSF_MBI && ACPI
0376 help
0377 Say yes here to have support for X-Power power management IC (PMIC)
0378 Fuel Gauge. The device provides battery statistics and status
0379 monitoring as well as alerts for battery over/under voltage and
0380 over/under temperature.
0381
0382 config BATTERY_MAX17040
0383 tristate "Maxim MAX17040/17041/17043 family Fuel Gauge"
0384 depends on I2C
0385 select REGMAP_I2C
0386 help
0387 Driver supports Maxim fuel-gauge systems for lithium-ion (Li+)
0388 batteries used mainly in handheld and portable equipment.
0389 Supported devices: max17040, max17041, max17043, max17044, max17048,
0390 max17049, max17058, max17059, max77836.
0391
0392 Driver supports reporting SOC (State of Charge, i.e capacity),
0393 voltage and configurable low-SOC wakeup interrupt.
0394
0395 Driver can be build as a module (max17040_battery).
0396
0397 config BATTERY_MAX17042
0398 tristate "Maxim MAX17042/17047/17050/8997/8966 family Fuel Gauge"
0399 depends on I2C
0400 select REGMAP_I2C
0401 help
0402 MAX17042 is fuel-gauge systems for lithium-ion (Li+) batteries
0403 in handheld and portable equipment. The MAX17042 is configured
0404 to operate with a single lithium cell. MAX8997 and MAX8966 are
0405 multi-function devices that include fuel gauages that are compatible
0406 with MAX17042.
0407 Supported devices: max8966, max8997, max17042, max17047, max17050,
0408 max17055, max77693, max77849.
0409
0410 Driver can be build as a module (max17042_battery).
0411
0412 config BATTERY_MAX1721X
0413 tristate "MAX17211/MAX17215 standalone gas-gauge"
0414 depends on W1
0415 select REGMAP_W1
0416 help
0417 MAX1721x is fuel-gauge systems for lithium-ion (Li+) batteries
0418 in handheld and portable equipment. MAX17211 used with single cell
0419 battery. MAX17215 designed for muticell battery. Both them have
0420 OneWire (W1) host interface.
0421
0422 Say Y here to enable support for the MAX17211/MAX17215 standalone
0423 battery gas-gauge.
0424
0425 config BATTERY_Z2
0426 tristate "Z2 battery driver"
0427 depends on I2C && MACH_ZIPIT2
0428 help
0429 Say Y to include support for the battery on the Zipit Z2.
0430
0431 config BATTERY_S3C_ADC
0432 tristate "Battery driver for Samsung ADC based monitoring"
0433 depends on S3C_ADC
0434 help
0435 Say Y here to enable support for iPAQ h1930/h1940/rx1950 battery
0436
0437 config BATTERY_TWL4030_MADC
0438 tristate "TWL4030 MADC battery driver"
0439 depends on TWL4030_MADC
0440 help
0441 Say Y here to enable this dumb driver for batteries managed
0442 through the TWL4030 MADC.
0443
0444 config CHARGER_88PM860X
0445 tristate "Marvell 88PM860x Charger driver"
0446 depends on MFD_88PM860X && BATTERY_88PM860X
0447 help
0448 Say Y here to enable charger for Marvell 88PM860x chip.
0449
0450 config CHARGER_PCF50633
0451 tristate "NXP PCF50633 MBC"
0452 depends on MFD_PCF50633
0453 help
0454 Say Y to include support for NXP PCF50633 Main Battery Charger.
0455
0456 config BATTERY_RX51
0457 tristate "Nokia RX-51 (N900) battery driver"
0458 depends on TWL4030_MADC
0459 help
0460 Say Y here to enable support for battery information on Nokia
0461 RX-51, also known as N900 tablet.
0462
0463 config CHARGER_CPCAP
0464 tristate "CPCAP PMIC Charger Driver"
0465 depends on MFD_CPCAP && IIO
0466 depends on OMAP_USB2 || (!OMAP_USB2 && COMPILE_TEST)
0467 default MFD_CPCAP
0468 help
0469 Say Y to enable support for CPCAP PMIC charger driver for Motorola
0470 mobile devices such as Droid 4.
0471
0472 config CHARGER_ISP1704
0473 tristate "ISP1704 USB Charger Detection"
0474 depends on USB_PHY
0475 depends on USB_GADGET || !USB_GADGET # if USB_GADGET=m, this can't be 'y'
0476 help
0477 Say Y to enable support for USB Charger Detection with
0478 ISP1707/ISP1704 USB transceivers.
0479
0480 config CHARGER_MAX8903
0481 tristate "MAX8903 Battery DC-DC Charger for USB and Adapter Power"
0482 help
0483 Say Y to enable support for the MAX8903 DC-DC charger and sysfs.
0484 The driver supports controlling charger-enable and current-limit
0485 pins based on the status of charger connections with interrupt
0486 handlers.
0487
0488 config CHARGER_TWL4030
0489 tristate "OMAP TWL4030 BCI charger driver"
0490 depends on IIO && TWL4030_CORE
0491 help
0492 Say Y here to enable support for TWL4030 Battery Charge Interface.
0493
0494 config CHARGER_LP8727
0495 tristate "TI/National Semiconductor LP8727 charger driver"
0496 depends on I2C
0497 help
0498 Say Y here to enable support for LP8727 Charger Driver.
0499
0500 config CHARGER_LP8788
0501 tristate "TI LP8788 charger driver"
0502 depends on MFD_LP8788
0503 depends on LP8788_ADC
0504 depends on IIO
0505 help
0506 Say Y to enable support for the LP8788 linear charger.
0507
0508 config CHARGER_GPIO
0509 tristate "GPIO charger"
0510 depends on GPIOLIB || COMPILE_TEST
0511 help
0512 Say Y to include support for chargers which report their online status
0513 through a GPIO pin.
0514
0515 This driver can be build as a module. If so, the module will be
0516 called gpio-charger.
0517
0518 config CHARGER_MANAGER
0519 tristate "Battery charger manager for multiple chargers"
0520 depends on REGULATOR
0521 select EXTCON
0522 help
0523 Say Y to enable charger-manager support, which allows multiple
0524 chargers attached to a battery and multiple batteries attached to a
0525 system. The charger-manager also can monitor charging status in
0526 runtime and in suspend-to-RAM by waking up the system periodically
0527 with help of suspend_again support.
0528
0529 config CHARGER_LT3651
0530 tristate "Analog Devices LT3651 charger"
0531 depends on GPIOLIB
0532 help
0533 Say Y to include support for the Analog Devices (Linear Technology)
0534 LT3651 battery charger which reports its status via GPIO lines.
0535
0536 config CHARGER_LTC4162L
0537 tristate "LTC4162-L charger"
0538 depends on I2C
0539 select REGMAP_I2C
0540 help
0541 Say Y to include support for the Analog Devices (Linear Technology)
0542 LTC4162-L battery charger connected to I2C.
0543
0544 config CHARGER_MAX14577
0545 tristate "Maxim MAX14577/77836 battery charger driver"
0546 depends on MFD_MAX14577
0547 help
0548 Say Y to enable support for the battery charger control sysfs and
0549 platform data of MAX14577/77836 MUICs.
0550
0551 config CHARGER_DETECTOR_MAX14656
0552 tristate "Maxim MAX14656 USB charger detector"
0553 depends on I2C
0554 depends on OF
0555 help
0556 Say Y to enable support for the Maxim MAX14656 USB charger detector.
0557 The device is compliant with the USB Battery Charging Specification
0558 Revision 1.2 and can be found e.g. in Kindle 4/5th generation
0559 readers and certain LG devices.
0560
0561 config CHARGER_MAX77650
0562 tristate "Maxim MAX77650 battery charger driver"
0563 depends on MFD_MAX77650
0564 help
0565 Say Y to enable support for the battery charger control of MAX77650
0566 PMICs.
0567
0568 config CHARGER_MAX77693
0569 tristate "Maxim MAX77693 battery charger driver"
0570 depends on MFD_MAX77693
0571 help
0572 Say Y to enable support for the Maxim MAX77693 battery charger.
0573
0574 config CHARGER_MAX77976
0575 tristate "Maxim MAX77976 battery charger driver"
0576 depends on I2C
0577 select REGMAP_I2C
0578 help
0579 The Maxim MAX77976 is a 19 Vin, 5.5A 1-Cell Li+ Battery Charger
0580 USB OTG support. It has an I2C interface for configuration.
0581
0582 Say Y to enable support for the Maxim MAX77976 battery charger.
0583 This driver can also be built as a module. If so, the module will be
0584 called max77976_charger.
0585
0586 config CHARGER_MAX8997
0587 tristate "Maxim MAX8997/MAX8966 PMIC battery charger driver"
0588 depends on MFD_MAX8997 && REGULATOR_MAX8997
0589 depends on EXTCON || !EXTCON
0590 help
0591 Say Y to enable support for the battery charger control sysfs and
0592 platform data of MAX8997/LP3974 PMICs.
0593
0594 config CHARGER_MAX8998
0595 tristate "Maxim MAX8998/LP3974 PMIC battery charger driver"
0596 depends on MFD_MAX8998 && REGULATOR_MAX8998
0597 help
0598 Say Y to enable support for the battery charger control sysfs and
0599 platform data of MAX8998/LP3974 PMICs.
0600
0601 config CHARGER_MP2629
0602 tristate "Monolithic power system MP2629 Battery charger"
0603 depends on MFD_MP2629
0604 depends on MP2629_ADC
0605 depends on IIO
0606 help
0607 Select this option to enable support for Monolithic power system
0608 Battery charger. This driver provides Battery charger power management
0609 functions on the systems.
0610
0611 config CHARGER_MT6360
0612 tristate "Mediatek MT6360 Charger Driver"
0613 depends on MFD_MT6360
0614 depends on REGULATOR
0615 select LINEAR_RANGES
0616 help
0617 Say Y here to enable MT6360 Charger Part.
0618 The device supports High-Accuracy Voltage/Current Regulation,
0619 Average Input Current Regulation, Battery Temperature Sensing,
0620 Over-Temperature Protection, DPDM Detection for BC1.2.
0621
0622 config CHARGER_QCOM_SMBB
0623 tristate "Qualcomm Switch-Mode Battery Charger and Boost"
0624 depends on MFD_SPMI_PMIC || COMPILE_TEST
0625 depends on OF
0626 depends on EXTCON
0627 depends on REGULATOR
0628 help
0629 Say Y to include support for the Switch-Mode Battery Charger and
0630 Boost (SMBB) hardware found in Qualcomm PM8941 PMICs. The charger
0631 is an integrated, single-cell lithium-ion battery charger. DT
0632 configuration is required for loading, see the devicetree
0633 documentation for more detail. The base name for this driver is
0634 'pm8941_charger'.
0635
0636 config CHARGER_BQ2415X
0637 tristate "TI BQ2415x battery charger driver"
0638 depends on I2C
0639 help
0640 Say Y to enable support for the TI BQ2415x battery charger
0641 PMICs.
0642
0643 You'll need this driver to charge batteries on e.g. Nokia
0644 RX-51/N900.
0645
0646 config CHARGER_BQ24190
0647 tristate "TI BQ24190 battery charger driver"
0648 depends on I2C
0649 depends on EXTCON
0650 depends on GPIOLIB || COMPILE_TEST
0651 help
0652 Say Y to enable support for the TI BQ24190 battery charger.
0653
0654 config CHARGER_BQ24257
0655 tristate "TI BQ24250/24251/24257 battery charger driver"
0656 depends on I2C
0657 depends on GPIOLIB || COMPILE_TEST
0658 select REGMAP_I2C
0659 help
0660 Say Y to enable support for the TI BQ24250, BQ24251, and BQ24257 battery
0661 chargers.
0662
0663 config CHARGER_BQ24735
0664 tristate "TI BQ24735 battery charger support"
0665 depends on I2C
0666 depends on GPIOLIB || COMPILE_TEST
0667 help
0668 Say Y to enable support for the TI BQ24735 battery charger.
0669
0670 config CHARGER_BQ2515X
0671 tristate "TI BQ2515X battery charger family"
0672 depends on I2C
0673 depends on GPIOLIB || COMPILE_TEST
0674 select REGMAP_I2C
0675 help
0676 Say Y to enable support for the TI BQ2515X family of battery
0677 charging integrated circuits. The BQ2515X are highly integrated
0678 battery charge management ICs that integrate the most common
0679 functions for wearable devices, namely a charger, an output voltage
0680 rail, ADC for battery and system monitoring, and push-button
0681 controller.
0682
0683 config CHARGER_BQ25890
0684 tristate "TI BQ25890 battery charger driver"
0685 depends on I2C
0686 depends on GPIOLIB || COMPILE_TEST
0687 select REGMAP_I2C
0688 help
0689 Say Y to enable support for the TI BQ25890 battery charger.
0690
0691 config CHARGER_BQ25980
0692 tristate "TI BQ25980 battery charger driver"
0693 depends on I2C
0694 depends on GPIOLIB || COMPILE_TEST
0695 select REGMAP_I2C
0696 help
0697 Say Y to enable support for the TI BQ25980, BQ25975 and BQ25960
0698 series of fast battery chargers.
0699
0700 config CHARGER_BQ256XX
0701 tristate "TI BQ256XX battery charger driver"
0702 depends on I2C
0703 depends on GPIOLIB || COMPILE_TEST
0704 select REGMAP_I2C
0705 help
0706 Say Y to enable support for the TI BQ256XX battery chargers. The
0707 BQ256XX family of devices are highly-integrated, switch-mode battery
0708 charge management and system power path management devices for single
0709 cell Li-ion and Li-polymer batteries.
0710
0711 config CHARGER_SMB347
0712 tristate "Summit Microelectronics SMB3XX Battery Charger"
0713 depends on I2C
0714 depends on REGULATOR
0715 select REGMAP_I2C
0716 help
0717 Say Y to include support for Summit Microelectronics SMB345,
0718 SMB347 or SMB358 Battery Charger.
0719
0720 config CHARGER_TPS65090
0721 tristate "TPS65090 battery charger driver"
0722 depends on MFD_TPS65090
0723 help
0724 Say Y here to enable support for battery charging with TPS65090
0725 PMIC chips.
0726
0727 config CHARGER_TPS65217
0728 tristate "TPS65217 battery charger driver"
0729 depends on MFD_TPS65217
0730 help
0731 Say Y here to enable support for battery charging with TPS65217
0732 PMIC chips.
0733
0734 config BATTERY_GAUGE_LTC2941
0735 tristate "LTC2941/LTC2943 Battery Gauge Driver"
0736 depends on I2C
0737 help
0738 Say Y here to include support for LTC2941 and LTC2943 Battery
0739 Gauge IC. The driver reports the charge count continuously, and
0740 measures the voltage and temperature every 10 seconds.
0741
0742 config AB8500_BM
0743 bool "AB8500 Battery Management Driver"
0744 depends on AB8500_CORE && AB8500_GPADC && (IIO = y) && OF
0745 select THERMAL
0746 select THERMAL_OF
0747 help
0748 Say Y to include support for AB8500 battery management.
0749
0750 config BATTERY_GOLDFISH
0751 tristate "Goldfish battery driver"
0752 depends on HAS_IOMEM
0753 help
0754 Say Y to enable support for the Goldfish battery and AC power
0755 driver. Originated in the Android Studio Emulator (goldfish) it is
0756 going to be used in other emulators.
0757
0758 config BATTERY_RT5033
0759 tristate "RT5033 fuel gauge support"
0760 depends on I2C
0761 select REGMAP_I2C
0762 help
0763 This adds support for battery fuel gauge in Richtek RT5033 PMIC.
0764 The fuelgauge calculates and determines the battery state of charge
0765 according to battery open circuit voltage.
0766
0767 config CHARGER_RT9455
0768 tristate "Richtek RT9455 battery charger driver"
0769 depends on I2C
0770 depends on GPIOLIB || COMPILE_TEST
0771 select REGMAP_I2C
0772 help
0773 Say Y to enable support for Richtek RT9455 battery charger.
0774
0775 config CHARGER_CROS_USBPD
0776 tristate "ChromeOS EC based USBPD charger"
0777 depends on CROS_USBPD_NOTIFY
0778 help
0779 Say Y here to enable ChromeOS EC based USBPD charger
0780 driver. This driver gets various bits of information about
0781 what is connected to USB PD ports from the EC and converts
0782 that into power_supply properties.
0783
0784 config CHARGER_CROS_PCHG
0785 tristate "ChromeOS EC based peripheral charger"
0786 depends on MFD_CROS_EC_DEV
0787 default MFD_CROS_EC_DEV
0788 help
0789 Say Y here to enable ChromeOS EC based peripheral charge driver.
0790 This driver gets various information about the devices connected to
0791 the peripheral charge ports from the EC and converts that into
0792 power_supply properties.
0793
0794 config CHARGER_SC2731
0795 tristate "Spreadtrum SC2731 charger driver"
0796 depends on MFD_SC27XX_PMIC || COMPILE_TEST
0797 help
0798 Say Y here to enable support for battery charging with SC2731
0799 PMIC chips.
0800
0801 config FUEL_GAUGE_SC27XX
0802 tristate "Spreadtrum SC27XX fuel gauge driver"
0803 depends on MFD_SC27XX_PMIC || COMPILE_TEST
0804 depends on IIO
0805 help
0806 Say Y here to enable support for fuel gauge with SC27XX
0807 PMIC chips.
0808
0809 config CHARGER_UCS1002
0810 tristate "Microchip UCS1002 USB Port Power Controller"
0811 depends on I2C
0812 depends on OF
0813 depends on REGULATOR
0814 select REGMAP_I2C
0815 help
0816 Say Y to enable support for Microchip UCS1002 Programmable
0817 USB Port Power Controller with Charger Emulation.
0818
0819 config CHARGER_BD99954
0820 tristate "ROHM bd99954 charger driver"
0821 depends on I2C
0822 select LINEAR_RANGES
0823 help
0824 Say Y here to enable support for getting battery and charger
0825 information and altering charger configurations from the ROHM
0826 BD99954 charger IC.
0827
0828 config CHARGER_WILCO
0829 tristate "Wilco EC based charger for ChromeOS"
0830 depends on WILCO_EC
0831 help
0832 Say Y here to enable control of the charging routines performed
0833 by the Embedded Controller on the Chromebook named Wilco. Further
0834 information can be found in
0835 Documentation/ABI/testing/sysfs-class-power-wilco
0836
0837 config RN5T618_POWER
0838 tristate "RN5T618 charger/fuel gauge support"
0839 depends on MFD_RN5T618
0840 depends on RN5T618_ADC
0841 depends on IIO
0842 help
0843 Say Y here to have support for RN5T618 PMIC family fuel gauge and charger.
0844 This driver can also be built as a module. If so, the module will be
0845 called rn5t618_power.
0846
0847 config BATTERY_ACER_A500
0848 tristate "Acer Iconia Tab A500 battery driver"
0849 depends on MFD_ACER_A500_EC
0850 help
0851 Say Y to include support for Acer Iconia Tab A500 battery fuel gauge.
0852
0853 config BATTERY_SURFACE
0854 tristate "Battery driver for 7th-generation Microsoft Surface devices"
0855 depends on SURFACE_AGGREGATOR_REGISTRY
0856 help
0857 Driver for battery devices connected via/managed by the Surface System
0858 Aggregator Module (SSAM).
0859
0860 This driver provides battery-information and -status support for
0861 Surface devices where said data is not exposed via the standard ACPI
0862 devices. On those models (7th-generation), battery-information is
0863 instead handled directly via SSAM client devices and this driver.
0864
0865 Say M or Y here to include battery status support for 7th-generation
0866 Microsoft Surface devices, i.e. Surface Pro 7, Surface Laptop 3,
0867 Surface Book 3, and Surface Laptop Go.
0868
0869 config CHARGER_SURFACE
0870 tristate "AC driver for 7th-generation Microsoft Surface devices"
0871 depends on SURFACE_AGGREGATOR_REGISTRY
0872 help
0873 Driver for AC devices connected via/managed by the Surface System
0874 Aggregator Module (SSAM).
0875
0876 This driver provides AC-information and -status support for Surface
0877 devices where said data is not exposed via the standard ACPI devices.
0878 On those models (7th-generation), AC-information is instead handled
0879 directly via a SSAM client device and this driver.
0880
0881 Say M or Y here to include AC status support for 7th-generation
0882 Microsoft Surface devices, i.e. Surface Pro 7, Surface Laptop 3,
0883 Surface Book 3, and Surface Laptop Go.
0884
0885 config BATTERY_UG3105
0886 tristate "uPI uG3105 battery monitor driver"
0887 depends on I2C
0888 help
0889 Battery monitor driver for the uPI uG3105 battery monitor.
0890
0891 Note the uG3105 is not a full-featured autonomous fuel-gauge. Instead
0892 it is expected to be use in combination with some always on
0893 microcontroller reading its coulomb-counter before it can wrap
0894 (it must be read every 400 seconds!).
0895
0896 Since Linux does not monitor coulomb-counter changes while the
0897 device is off or suspended, the functionality of this driver is
0898 limited to reporting capacity only.
0899
0900 endif # POWER_SUPPLY