1# SPDX-License-Identifier: GPL-2.0-only 2menuconfig POWER_SUPPLY 3 bool "Power supply class support" 4 help 5 Say Y here to enable power supply class support. This allows 6 power supply (batteries, AC, USB) monitoring by userspace 7 via sysfs and uevent (if available) and/or APM kernel interface 8 (if selected below). 9 10if POWER_SUPPLY 11 12config POWER_SUPPLY_DEBUG 13 bool "Power supply debug" 14 help 15 Say Y here to enable debugging messages for power supply class 16 and drivers. 17 18config POWER_SUPPLY_HWMON 19 bool 20 prompt "Expose power supply sensors as hwmon device" 21 depends on HWMON=y || HWMON=POWER_SUPPLY 22 default y 23 help 24 This options enables API that allows sensors found on a 25 power supply device (current, voltage, temperature) to be 26 exposed as a hwmon device. 27 28 Say 'Y' here if you want power supplies to 29 have hwmon sysfs interface too. 30 31 32config PDA_POWER 33 tristate "Generic PDA/phone power driver" 34 depends on !S390 35 help 36 Say Y here to enable generic power driver for PDAs and phones with 37 one or two external power supplies (AC/USB) connected to main and 38 backup batteries, and optional builtin charger. 39 40config APM_POWER 41 tristate "APM emulation for class batteries" 42 depends on APM_EMULATION 43 help 44 Say Y here to enable support APM status emulation using 45 battery class devices. 46 47config GENERIC_ADC_BATTERY 48 tristate "Generic battery support using IIO" 49 depends on IIO 50 help 51 Say Y here to enable support for the generic battery driver 52 which uses IIO framework to read adc. 53 54config IP5XXX_POWER 55 tristate "Injoinic IP5xxx power bank IC driver" 56 depends on I2C 57 select REGMAP_I2C 58 help 59 Say Y to include support for Injoinic IP5xxx power bank ICs, 60 which include a battery charger and a boost converter. 61 62config MAX8925_POWER 63 tristate "MAX8925 battery charger support" 64 depends on MFD_MAX8925 65 help 66 Say Y here to enable support for the battery charger in the Maxim 67 MAX8925 PMIC. 68 69config WM831X_BACKUP 70 tristate "WM831X backup battery charger support" 71 depends on MFD_WM831X 72 help 73 Say Y here to enable support for the backup battery charger 74 in the Wolfson Microelectronics WM831x PMICs. 75 76config WM831X_POWER 77 tristate "WM831X PMU support" 78 depends on MFD_WM831X 79 help 80 Say Y here to enable support for the power management unit 81 provided by Wolfson Microelectronics WM831x PMICs. 82 83config WM8350_POWER 84 tristate "WM8350 PMU support" 85 depends on MFD_WM8350 86 help 87 Say Y here to enable support for the power management unit 88 provided by the Wolfson Microelectronics WM8350 PMIC. 89 90config TEST_POWER 91 tristate "Test power driver" 92 help 93 This driver is used for testing. It's safe to say M here. 94 95config BATTERY_88PM860X 96 tristate "Marvell 88PM860x battery driver" 97 depends on MFD_88PM860X 98 help 99 Say Y here to enable battery monitor for Marvell 88PM860x chip. 100 101config CHARGER_ADP5061 102 tristate "ADP5061 battery charger driver" 103 depends on I2C 104 select REGMAP_I2C 105 help 106 Say Y here to enable support for the ADP5061 standalone battery 107 charger. 108 109 This driver can be built as a module. If so, the module will be 110 called adp5061. 111 112config BATTERY_ACT8945A 113 tristate "Active-semi ACT8945A charger driver" 114 depends on MFD_ACT8945A || COMPILE_TEST 115 help 116 Say Y here to enable support for power supply provided by 117 Active-semi ActivePath ACT8945A charger. 118 119config BATTERY_CPCAP 120 tristate "Motorola CPCAP PMIC battery driver" 121 depends on MFD_CPCAP && IIO 122 default MFD_CPCAP 123 help 124 Say Y here to enable support for battery on Motorola 125 phones and tablets such as droid 4. 126 127config BATTERY_CW2015 128 tristate "CW2015 Battery driver" 129 depends on I2C 130 select REGMAP_I2C 131 help 132 Say Y here to enable support for the cellwise cw2015 133 battery fuel gauge (used in the Pinebook Pro & others) 134 135 This driver can also be built as a module. If so, the module will be 136 called cw2015_battery. 137 138config BATTERY_DS2760 139 tristate "DS2760 battery driver (HP iPAQ & others)" 140 depends on W1 141 help 142 Say Y here to enable support for batteries with ds2760 chip. 143 144config BATTERY_DS2780 145 tristate "DS2780 battery driver" 146 depends on HAS_IOMEM 147 select W1 148 select W1_SLAVE_DS2780 149 help 150 Say Y here to enable support for batteries with ds2780 chip. 151 152config BATTERY_DS2781 153 tristate "DS2781 battery driver" 154 depends on HAS_IOMEM 155 select W1 156 select W1_SLAVE_DS2781 157 help 158 If you enable this you will have the DS2781 battery driver support. 159 160 The battery monitor chip is used in many batteries/devices 161 as the one who is responsible for charging/discharging/monitoring 162 Li+ batteries. 163 164 If you are unsure, say N. 165 166config BATTERY_DS2782 167 tristate "DS2782/DS2786 standalone gas-gauge" 168 depends on I2C 169 help 170 Say Y here to enable support for the DS2782/DS2786 standalone battery 171 gas-gauge. 172 173config BATTERY_LEGO_EV3 174 tristate "LEGO MINDSTORMS EV3 battery" 175 depends on OF && IIO && GPIOLIB && (ARCH_DAVINCI_DA850 || COMPILE_TEST) 176 help 177 Say Y here to enable support for the LEGO MINDSTORMS EV3 battery. 178 179config BATTERY_PMU 180 tristate "Apple PMU battery" 181 depends on PPC32 && ADB_PMU 182 help 183 Say Y here to expose battery information on Apple machines 184 through the generic battery class. 185 186config BATTERY_QCOM_BATTMGR 187 tristate "Qualcomm PMIC GLINK battery manager support" 188 depends on QCOM_PMIC_GLINK 189 select AUXILIARY_BUS 190 help 191 Say Y here to enable the Qualcomm PMIC GLINK power supply driver, 192 which is used on modern Qualcomm platforms to provide battery and 193 power supply information. 194 195config BATTERY_OLPC 196 tristate "One Laptop Per Child battery" 197 depends on OLPC_EC 198 help 199 Say Y to enable support for the battery on the OLPC laptop. 200 201config BATTERY_SAMSUNG_SDI 202 bool "Samsung SDI batteries" 203 help 204 Say Y to enable support for Samsung SDI battery data. 205 These batteries are used in Samsung mobile phones. 206 207config BATTERY_TOSA 208 tristate "Sharp SL-6000 (tosa) battery" 209 depends on MACH_TOSA && MFD_TC6393XB && TOUCHSCREEN_WM97XX 210 help 211 Say Y to enable support for the battery on the Sharp Zaurus 212 SL-6000 (tosa) models. 213 214config BATTERY_COLLIE 215 tristate "Sharp SL-5500 (collie) battery" 216 depends on SA1100_COLLIE && MCP_UCB1200 217 help 218 Say Y to enable support for the battery on the Sharp Zaurus 219 SL-5500 (collie) models. 220 221config BATTERY_INGENIC 222 tristate "Ingenic JZ47xx SoCs battery driver" 223 depends on MIPS || COMPILE_TEST 224 depends on INGENIC_ADC 225 help 226 Choose this option if you want to monitor battery status on 227 Ingenic JZ47xx SoC based devices. 228 229 This driver can also be built as a module. If so, the module will be 230 called ingenic-battery. 231 232config BATTERY_IPAQ_MICRO 233 tristate "iPAQ Atmel Micro ASIC battery driver" 234 depends on MFD_IPAQ_MICRO 235 help 236 Choose this option if you want to monitor battery status on 237 Compaq/HP iPAQ h3100 and h3600. 238 239config BATTERY_WM97XX 240 bool "WM97xx generic battery driver" 241 depends on TOUCHSCREEN_WM97XX=y 242 help 243 Say Y to enable support for battery measured by WM97xx aux port. 244 245config BATTERY_SBS 246 tristate "SBS Compliant gas gauge" 247 depends on I2C 248 help 249 Say Y to include support for SBS battery driver for SBS-compliant 250 gas gauges. 251 252config CHARGER_SBS 253 tristate "SBS Compliant charger" 254 depends on I2C 255 select REGMAP_I2C 256 help 257 Say Y to include support for SBS compliant battery chargers. 258 259config MANAGER_SBS 260 tristate "Smart Battery System Manager" 261 depends on I2C && I2C_MUX && GPIOLIB 262 select I2C_SMBUS 263 help 264 Say Y here to include support for Smart Battery System Manager 265 ICs. The driver reports online and charging status via sysfs. 266 It presents itself also as I2C mux which allows to bind 267 smart battery driver to its ports. 268 Supported is for example LTC1760. 269 270 This driver can also be built as a module. If so, the module will be 271 called sbs-manager. 272 273config BATTERY_BQ27XXX 274 tristate "BQ27xxx battery driver" 275 help 276 Say Y here to enable support for batteries with BQ27xxx chips. 277 278config BATTERY_BQ27XXX_I2C 279 tristate "BQ27xxx I2C support" 280 depends on BATTERY_BQ27XXX 281 depends on I2C 282 default y 283 help 284 Say Y here to enable support for batteries with BQ27xxx chips 285 connected over an I2C bus. 286 287config BATTERY_BQ27XXX_HDQ 288 tristate "BQ27xxx HDQ support" 289 depends on BATTERY_BQ27XXX 290 depends on W1 291 default y 292 help 293 Say Y here to enable support for batteries with BQ27xxx chips 294 connected over an HDQ bus. 295 296config BATTERY_BQ27XXX_DT_UPDATES_NVM 297 bool "BQ27xxx support for update of NVM/flash data memory" 298 depends on BATTERY_BQ27XXX_I2C 299 help 300 Say Y here to enable devicetree monitored-battery config to update 301 NVM/flash data memory. Only enable this option for devices with a 302 fuel gauge mounted on the circuit board, and a battery that cannot 303 easily be replaced with one of a different type. Not for 304 general-purpose kernels, as this can cause misconfiguration of a 305 smart battery with embedded NVM/flash. 306 307config BATTERY_DA9030 308 tristate "DA9030 battery driver" 309 depends on PMIC_DA903X 310 help 311 Say Y here to enable support for batteries charger integrated into 312 DA9030 PMIC. 313 314config BATTERY_DA9052 315 tristate "Dialog DA9052 Battery" 316 depends on PMIC_DA9052 317 help 318 Say Y here to enable support for batteries charger integrated into 319 DA9052 PMIC. 320 321config CHARGER_DA9150 322 tristate "Dialog Semiconductor DA9150 Charger support" 323 depends on MFD_DA9150 324 depends on DA9150_GPADC 325 depends on IIO 326 help 327 Say Y here to enable support for charger unit of the DA9150 328 Integrated Charger & Fuel-Gauge IC. 329 330 This driver can also be built as a module. If so, the module will be 331 called da9150-charger. 332 333config BATTERY_DA9150 334 tristate "Dialog Semiconductor DA9150 Fuel Gauge support" 335 depends on MFD_DA9150 336 help 337 Say Y here to enable support for the Fuel-Gauge unit of the DA9150 338 Integrated Charger & Fuel-Gauge IC 339 340 This driver can also be built as a module. If so, the module will be 341 called da9150-fg. 342 343config CHARGER_AXP20X 344 tristate "X-Powers AXP20X and AXP22X AC power supply driver" 345 depends on MFD_AXP20X 346 depends on AXP20X_ADC 347 depends on IIO 348 help 349 Say Y here to enable support for X-Powers AXP20X and AXP22X PMICs' AC 350 power supply. 351 352 This driver can also be built as a module. If so, the module will be 353 called axp20x_ac_power. 354 355config BATTERY_AXP20X 356 tristate "X-Powers AXP20X battery driver" 357 depends on MFD_AXP20X 358 depends on AXP20X_ADC 359 depends on IIO 360 help 361 Say Y here to enable support for X-Powers AXP20X PMICs' battery power 362 supply. 363 364 This driver can also be built as a module. If so, the module will be 365 called axp20x_battery. 366 367config AXP20X_POWER 368 tristate "AXP20x power supply driver" 369 depends on MFD_AXP20X 370 depends on IIO 371 help 372 This driver provides support for the power supply features of 373 AXP20x PMIC. 374 375config AXP288_CHARGER 376 tristate "X-Powers AXP288 Charger" 377 depends on MFD_AXP20X && EXTCON_AXP288 && IOSF_MBI && ACPI 378 help 379 Say yes here to have support X-Power AXP288 power management IC (PMIC) 380 integrated charger. 381 382config AXP288_FUEL_GAUGE 383 tristate "X-Powers AXP288 Fuel Gauge" 384 depends on MFD_AXP20X && IIO && IOSF_MBI && ACPI 385 help 386 Say yes here to have support for X-Power power management IC (PMIC) 387 Fuel Gauge. The device provides battery statistics and status 388 monitoring as well as alerts for battery over/under voltage and 389 over/under temperature. 390 391config BATTERY_MAX17040 392 tristate "Maxim MAX17040/17041/17043 family Fuel Gauge" 393 depends on I2C 394 select REGMAP_I2C 395 help 396 Driver supports Maxim fuel-gauge systems for lithium-ion (Li+) 397 batteries used mainly in handheld and portable equipment. 398 Supported devices: max17040, max17041, max17043, max17044, max17048, 399 max17049, max17058, max17059, max77836. 400 401 Driver supports reporting SOC (State of Charge, i.e capacity), 402 voltage and configurable low-SOC wakeup interrupt. 403 404 Driver can be build as a module (max17040_battery). 405 406config BATTERY_MAX17042 407 tristate "Maxim MAX17042/17047/17050/8997/8966 family Fuel Gauge" 408 depends on I2C 409 select REGMAP_I2C 410 help 411 MAX17042 is fuel-gauge systems for lithium-ion (Li+) batteries 412 in handheld and portable equipment. The MAX17042 is configured 413 to operate with a single lithium cell. MAX8997 and MAX8966 are 414 multi-function devices that include fuel gauages that are compatible 415 with MAX17042. 416 Supported devices: max8966, max8997, max17042, max17047, max17050, 417 max17055, max77693, max77849. 418 419 Driver can be build as a module (max17042_battery). 420 421config BATTERY_MAX1721X 422 tristate "MAX17211/MAX17215 standalone gas-gauge" 423 depends on W1 424 select REGMAP_W1 425 help 426 MAX1721x is fuel-gauge systems for lithium-ion (Li+) batteries 427 in handheld and portable equipment. MAX17211 used with single cell 428 battery. MAX17215 designed for muticell battery. Both them have 429 OneWire (W1) host interface. 430 431 Say Y here to enable support for the MAX17211/MAX17215 standalone 432 battery gas-gauge. 433 434config BATTERY_Z2 435 tristate "Z2 battery driver" 436 depends on I2C && MACH_ZIPIT2 437 help 438 Say Y to include support for the battery on the Zipit Z2. 439 440config BATTERY_S3C_ADC 441 tristate "Battery driver for Samsung ADC based monitoring" 442 depends on S3C_ADC 443 help 444 Say Y here to enable support for iPAQ h1930/h1940/rx1950 battery 445 446config BATTERY_TWL4030_MADC 447 tristate "TWL4030 MADC battery driver" 448 depends on TWL4030_MADC 449 help 450 Say Y here to enable this dumb driver for batteries managed 451 through the TWL4030 MADC. 452 453config CHARGER_88PM860X 454 tristate "Marvell 88PM860x Charger driver" 455 depends on MFD_88PM860X && BATTERY_88PM860X 456 help 457 Say Y here to enable charger for Marvell 88PM860x chip. 458 459config CHARGER_PCF50633 460 tristate "NXP PCF50633 MBC" 461 depends on MFD_PCF50633 462 help 463 Say Y to include support for NXP PCF50633 Main Battery Charger. 464 465config BATTERY_RX51 466 tristate "Nokia RX-51 (N900) battery driver" 467 depends on TWL4030_MADC 468 help 469 Say Y here to enable support for battery information on Nokia 470 RX-51, also known as N900 tablet. 471 472config CHARGER_CPCAP 473 tristate "CPCAP PMIC Charger Driver" 474 depends on MFD_CPCAP && IIO 475 depends on OMAP_USB2 || (!OMAP_USB2 && COMPILE_TEST) 476 default MFD_CPCAP 477 help 478 Say Y to enable support for CPCAP PMIC charger driver for Motorola 479 mobile devices such as Droid 4. 480 481config CHARGER_ISP1704 482 tristate "ISP1704 USB Charger Detection" 483 depends on USB_PHY 484 depends on USB_GADGET || !USB_GADGET # if USB_GADGET=m, this can't be 'y' 485 help 486 Say Y to enable support for USB Charger Detection with 487 ISP1707/ISP1704 USB transceivers. 488 489config CHARGER_MAX8903 490 tristate "MAX8903 Battery DC-DC Charger for USB and Adapter Power" 491 help 492 Say Y to enable support for the MAX8903 DC-DC charger and sysfs. 493 The driver supports controlling charger-enable and current-limit 494 pins based on the status of charger connections with interrupt 495 handlers. 496 497config CHARGER_TWL4030 498 tristate "OMAP TWL4030 BCI charger driver" 499 depends on IIO && TWL4030_CORE 500 help 501 Say Y here to enable support for TWL4030 Battery Charge Interface. 502 503config CHARGER_LP8727 504 tristate "TI/National Semiconductor LP8727 charger driver" 505 depends on I2C 506 help 507 Say Y here to enable support for LP8727 Charger Driver. 508 509config CHARGER_LP8788 510 tristate "TI LP8788 charger driver" 511 depends on MFD_LP8788 512 depends on LP8788_ADC 513 depends on IIO 514 help 515 Say Y to enable support for the LP8788 linear charger. 516 517config CHARGER_GPIO 518 tristate "GPIO charger" 519 depends on GPIOLIB || COMPILE_TEST 520 help 521 Say Y to include support for chargers which report their online status 522 through a GPIO pin. 523 524 This driver can be build as a module. If so, the module will be 525 called gpio-charger. 526 527config CHARGER_MANAGER 528 tristate "Battery charger manager for multiple chargers" 529 depends on REGULATOR 530 select EXTCON 531 help 532 Say Y to enable charger-manager support, which allows multiple 533 chargers attached to a battery and multiple batteries attached to a 534 system. The charger-manager also can monitor charging status in 535 runtime and in suspend-to-RAM by waking up the system periodically 536 with help of suspend_again support. 537 538config CHARGER_LT3651 539 tristate "Analog Devices LT3651 charger" 540 depends on GPIOLIB 541 help 542 Say Y to include support for the Analog Devices (Linear Technology) 543 LT3651 battery charger which reports its status via GPIO lines. 544 545config CHARGER_LTC4162L 546 tristate "LTC4162-L charger" 547 depends on I2C 548 select REGMAP_I2C 549 help 550 Say Y to include support for the Analog Devices (Linear Technology) 551 LTC4162-L battery charger connected to I2C. 552 553config CHARGER_MAX14577 554 tristate "Maxim MAX14577/77836 battery charger driver" 555 depends on MFD_MAX14577 556 help 557 Say Y to enable support for the battery charger control sysfs and 558 platform data of MAX14577/77836 MUICs. 559 560config CHARGER_DETECTOR_MAX14656 561 tristate "Maxim MAX14656 USB charger detector" 562 depends on I2C 563 depends on OF 564 help 565 Say Y to enable support for the Maxim MAX14656 USB charger detector. 566 The device is compliant with the USB Battery Charging Specification 567 Revision 1.2 and can be found e.g. in Kindle 4/5th generation 568 readers and certain LG devices. 569 570config CHARGER_MAX77650 571 tristate "Maxim MAX77650 battery charger driver" 572 depends on MFD_MAX77650 573 help 574 Say Y to enable support for the battery charger control of MAX77650 575 PMICs. 576 577config CHARGER_MAX77693 578 tristate "Maxim MAX77693 battery charger driver" 579 depends on MFD_MAX77693 580 help 581 Say Y to enable support for the Maxim MAX77693 battery charger. 582 583config CHARGER_MAX77976 584 tristate "Maxim MAX77976 battery charger driver" 585 depends on I2C 586 select REGMAP_I2C 587 help 588 The Maxim MAX77976 is a 19 Vin, 5.5A 1-Cell Li+ Battery Charger 589 USB OTG support. It has an I2C interface for configuration. 590 591 Say Y to enable support for the Maxim MAX77976 battery charger. 592 This driver can also be built as a module. If so, the module will be 593 called max77976_charger. 594 595config CHARGER_MAX8997 596 tristate "Maxim MAX8997/MAX8966 PMIC battery charger driver" 597 depends on MFD_MAX8997 && REGULATOR_MAX8997 598 depends on EXTCON || !EXTCON 599 help 600 Say Y to enable support for the battery charger control sysfs and 601 platform data of MAX8997/LP3974 PMICs. 602 603config CHARGER_MAX8998 604 tristate "Maxim MAX8998/LP3974 PMIC battery charger driver" 605 depends on MFD_MAX8998 && REGULATOR_MAX8998 606 help 607 Say Y to enable support for the battery charger control sysfs and 608 platform data of MAX8998/LP3974 PMICs. 609 610config CHARGER_MP2629 611 tristate "Monolithic power system MP2629 Battery charger" 612 depends on MFD_MP2629 613 depends on MP2629_ADC 614 depends on IIO 615 help 616 Select this option to enable support for Monolithic power system 617 Battery charger. This driver provides Battery charger power management 618 functions on the systems. 619 620config CHARGER_MT6360 621 tristate "Mediatek MT6360 Charger Driver" 622 depends on MFD_MT6360 623 depends on REGULATOR 624 select LINEAR_RANGES 625 help 626 Say Y here to enable MT6360 Charger Part. 627 The device supports High-Accuracy Voltage/Current Regulation, 628 Average Input Current Regulation, Battery Temperature Sensing, 629 Over-Temperature Protection, DPDM Detection for BC1.2. 630 631config CHARGER_MT6370 632 tristate "MediaTek MT6370 Charger Driver" 633 depends on MFD_MT6370 634 depends on REGULATOR 635 depends on IIO 636 select LINEAR_RANGES 637 help 638 Say Y here to enable MT6370 Charger Part. 639 The device supports High-Accuracy Voltage/Current Regulation, 640 Average Input Current Regulation, Battery Temperature Sensing, 641 Over-Temperature Protection, DPDM Detection for BC1.2. 642 643 This driver can also be built as a module. If so, the module 644 will be called "mt6370-charger". 645 646config CHARGER_QCOM_SMBB 647 tristate "Qualcomm Switch-Mode Battery Charger and Boost" 648 depends on MFD_SPMI_PMIC || COMPILE_TEST 649 depends on OF 650 depends on EXTCON 651 depends on REGULATOR 652 help 653 Say Y to include support for the Switch-Mode Battery Charger and 654 Boost (SMBB) hardware found in Qualcomm PM8941 PMICs. The charger 655 is an integrated, single-cell lithium-ion battery charger. DT 656 configuration is required for loading, see the devicetree 657 documentation for more detail. The base name for this driver is 658 'pm8941_charger'. 659 660config CHARGER_BQ2415X 661 tristate "TI BQ2415x battery charger driver" 662 depends on I2C 663 help 664 Say Y to enable support for the TI BQ2415x battery charger 665 PMICs. 666 667 You'll need this driver to charge batteries on e.g. Nokia 668 RX-51/N900. 669 670config CHARGER_BQ24190 671 tristate "TI BQ24190 battery charger driver" 672 depends on I2C 673 depends on EXTCON 674 depends on GPIOLIB || COMPILE_TEST 675 help 676 Say Y to enable support for the TI BQ24190 battery charger. 677 678config CHARGER_BQ24257 679 tristate "TI BQ24250/24251/24257 battery charger driver" 680 depends on I2C 681 depends on GPIOLIB || COMPILE_TEST 682 select REGMAP_I2C 683 help 684 Say Y to enable support for the TI BQ24250, BQ24251, and BQ24257 battery 685 chargers. 686 687config CHARGER_BQ24735 688 tristate "TI BQ24735 battery charger support" 689 depends on I2C 690 depends on GPIOLIB || COMPILE_TEST 691 help 692 Say Y to enable support for the TI BQ24735 battery charger. 693 694config CHARGER_BQ2515X 695 tristate "TI BQ2515X battery charger family" 696 depends on I2C 697 depends on GPIOLIB || COMPILE_TEST 698 select REGMAP_I2C 699 help 700 Say Y to enable support for the TI BQ2515X family of battery 701 charging integrated circuits. The BQ2515X are highly integrated 702 battery charge management ICs that integrate the most common 703 functions for wearable devices, namely a charger, an output voltage 704 rail, ADC for battery and system monitoring, and push-button 705 controller. 706 707config CHARGER_BQ25890 708 tristate "TI BQ25890 battery charger driver" 709 depends on I2C 710 depends on GPIOLIB || COMPILE_TEST 711 select REGMAP_I2C 712 help 713 Say Y to enable support for the TI BQ25890 battery charger. 714 715config CHARGER_BQ25980 716 tristate "TI BQ25980 battery charger driver" 717 depends on I2C 718 depends on GPIOLIB || COMPILE_TEST 719 select REGMAP_I2C 720 help 721 Say Y to enable support for the TI BQ25980, BQ25975 and BQ25960 722 series of fast battery chargers. 723 724config CHARGER_BQ256XX 725 tristate "TI BQ256XX battery charger driver" 726 depends on I2C 727 depends on GPIOLIB || COMPILE_TEST 728 select REGMAP_I2C 729 help 730 Say Y to enable support for the TI BQ256XX battery chargers. The 731 BQ256XX family of devices are highly-integrated, switch-mode battery 732 charge management and system power path management devices for single 733 cell Li-ion and Li-polymer batteries. 734 735config CHARGER_RK817 736 tristate "Rockchip RK817 PMIC Battery Charger" 737 depends on MFD_RK808 738 help 739 Say Y to include support for Rockchip RK817 Battery Charger. 740 741config CHARGER_SMB347 742 tristate "Summit Microelectronics SMB3XX Battery Charger" 743 depends on I2C 744 depends on REGULATOR 745 select REGMAP_I2C 746 help 747 Say Y to include support for Summit Microelectronics SMB345, 748 SMB347 or SMB358 Battery Charger. 749 750config CHARGER_TPS65090 751 tristate "TPS65090 battery charger driver" 752 depends on MFD_TPS65090 753 help 754 Say Y here to enable support for battery charging with TPS65090 755 PMIC chips. 756 757config CHARGER_TPS65217 758 tristate "TPS65217 battery charger driver" 759 depends on MFD_TPS65217 760 help 761 Say Y here to enable support for battery charging with TPS65217 762 PMIC chips. 763 764config BATTERY_GAUGE_LTC2941 765 tristate "LTC2941/LTC2943 Battery Gauge Driver" 766 depends on I2C 767 help 768 Say Y here to include support for LTC2941 and LTC2943 Battery 769 Gauge IC. The driver reports the charge count continuously, and 770 measures the voltage and temperature every 10 seconds. 771 772config AB8500_BM 773 bool "AB8500 Battery Management Driver" 774 depends on AB8500_CORE && AB8500_GPADC && (IIO = y) && OF 775 select THERMAL 776 select THERMAL_OF 777 help 778 Say Y to include support for AB8500 battery management. 779 780config BATTERY_GOLDFISH 781 tristate "Goldfish battery driver" 782 depends on HAS_IOMEM 783 help 784 Say Y to enable support for the Goldfish battery and AC power 785 driver. Originated in the Android Studio Emulator (goldfish) it is 786 going to be used in other emulators. 787 788config BATTERY_RT5033 789 tristate "RT5033 fuel gauge support" 790 depends on I2C 791 select REGMAP_I2C 792 help 793 This adds support for battery fuel gauge in Richtek RT5033 PMIC. 794 The fuelgauge calculates and determines the battery state of charge 795 according to battery open circuit voltage. 796 797config CHARGER_RT9455 798 tristate "Richtek RT9455 battery charger driver" 799 depends on I2C 800 depends on GPIOLIB || COMPILE_TEST 801 select REGMAP_I2C 802 help 803 Say Y to enable support for Richtek RT9455 battery charger. 804 805config CHARGER_CROS_USBPD 806 tristate "ChromeOS EC based USBPD charger" 807 depends on CROS_USBPD_NOTIFY 808 help 809 Say Y here to enable ChromeOS EC based USBPD charger 810 driver. This driver gets various bits of information about 811 what is connected to USB PD ports from the EC and converts 812 that into power_supply properties. 813 814config CHARGER_CROS_PCHG 815 tristate "ChromeOS EC based peripheral charger" 816 depends on MFD_CROS_EC_DEV 817 default MFD_CROS_EC_DEV 818 help 819 Say Y here to enable ChromeOS EC based peripheral charge driver. 820 This driver gets various information about the devices connected to 821 the peripheral charge ports from the EC and converts that into 822 power_supply properties. 823 824config CHARGER_SC2731 825 tristate "Spreadtrum SC2731 charger driver" 826 depends on MFD_SC27XX_PMIC || COMPILE_TEST 827 help 828 Say Y here to enable support for battery charging with SC2731 829 PMIC chips. 830 831config FUEL_GAUGE_SC27XX 832 tristate "Spreadtrum SC27XX fuel gauge driver" 833 depends on MFD_SC27XX_PMIC || COMPILE_TEST 834 depends on IIO 835 help 836 Say Y here to enable support for fuel gauge with SC27XX 837 PMIC chips. 838 839config CHARGER_UCS1002 840 tristate "Microchip UCS1002 USB Port Power Controller" 841 depends on I2C 842 depends on OF 843 depends on REGULATOR 844 select REGMAP_I2C 845 help 846 Say Y to enable support for Microchip UCS1002 Programmable 847 USB Port Power Controller with Charger Emulation. 848 849config CHARGER_BD99954 850 tristate "ROHM bd99954 charger driver" 851 depends on I2C 852 select LINEAR_RANGES 853 help 854 Say Y here to enable support for getting battery and charger 855 information and altering charger configurations from the ROHM 856 BD99954 charger IC. 857 858config CHARGER_WILCO 859 tristate "Wilco EC based charger for ChromeOS" 860 depends on WILCO_EC 861 help 862 Say Y here to enable control of the charging routines performed 863 by the Embedded Controller on the Chromebook named Wilco. Further 864 information can be found in 865 Documentation/ABI/testing/sysfs-class-power-wilco 866 867config RN5T618_POWER 868 tristate "RN5T618 charger/fuel gauge support" 869 depends on MFD_RN5T618 870 depends on RN5T618_ADC 871 depends on IIO 872 help 873 Say Y here to have support for RN5T618 PMIC family fuel gauge and charger. 874 This driver can also be built as a module. If so, the module will be 875 called rn5t618_power. 876 877config BATTERY_ACER_A500 878 tristate "Acer Iconia Tab A500 battery driver" 879 depends on MFD_ACER_A500_EC 880 help 881 Say Y to include support for Acer Iconia Tab A500 battery fuel gauge. 882 883config BATTERY_SURFACE 884 tristate "Battery driver for 7th-generation Microsoft Surface devices" 885 depends on SURFACE_AGGREGATOR_REGISTRY 886 help 887 Driver for battery devices connected via/managed by the Surface System 888 Aggregator Module (SSAM). 889 890 This driver provides battery-information and -status support for 891 Surface devices where said data is not exposed via the standard ACPI 892 devices. On those models (7th-generation), battery-information is 893 instead handled directly via SSAM client devices and this driver. 894 895 Say M or Y here to include battery status support for 7th-generation 896 Microsoft Surface devices, i.e. Surface Pro 7, Surface Laptop 3, 897 Surface Book 3, and Surface Laptop Go. 898 899config CHARGER_SURFACE 900 tristate "AC driver for 7th-generation Microsoft Surface devices" 901 depends on SURFACE_AGGREGATOR_REGISTRY 902 help 903 Driver for AC devices connected via/managed by the Surface System 904 Aggregator Module (SSAM). 905 906 This driver provides AC-information and -status support for Surface 907 devices where said data is not exposed via the standard ACPI devices. 908 On those models (7th-generation), AC-information is instead handled 909 directly via a SSAM client device and this driver. 910 911 Say M or Y here to include AC status support for 7th-generation 912 Microsoft Surface devices, i.e. Surface Pro 7, Surface Laptop 3, 913 Surface Book 3, and Surface Laptop Go. 914 915config BATTERY_UG3105 916 tristate "uPI uG3105 battery monitor driver" 917 depends on I2C 918 help 919 Battery monitor driver for the uPI uG3105 battery monitor. 920 921 Note the uG3105 is not a full-featured autonomous fuel-gauge. Instead 922 it is expected to be use in combination with some always on 923 microcontroller reading its coulomb-counter before it can wrap 924 (it must be read every 400 seconds!). 925 926 Since Linux does not monitor coulomb-counter changes while the 927 device is off or suspended, the functionality of this driver is 928 limited to reporting capacity only. 929 930endif # POWER_SUPPLY 931