2007-05-04 04:27:45 +08:00
|
|
|
menuconfig POWER_SUPPLY
|
power_supply: Make the core a boolean instead of a tristate
On Mon, Apr 02, 2012 at 01:53:23PM +1000, Benjamin Herrenschmidt wrote:
> > drivers/built-in.o: In function `.nouveau_pm_trigger':
> > (.text+0xa56e8): undefined reference to `.power_supply_is_system_supplied'
> >
> > nouveau probably needs to depends on CONFIG_POWER_SUPPLY to force a module
> > build with the latter is =m
>
> Ok, not that trivial...
>
> The problem is more like POWER_SUPPLY should be a bool, not a tristate.
>
> If you think about it: you don't want things like nouveau to depend on a
> random subsystem like that, people will never get it. In fact,
> POWER_SUPPLY provides empty inline stubs when not enabled, so that's
> really designed to not have depends...
>
> However that -cannot- work if POWER_SUPPLY is modular and the drivers
> who use it are not.
>
> The only fixes here that make sense I can think of
> that don't also involve Kconfig horrors are:
>
> - Ugly: in power_supply.h, use the extern variant if
>
> defined(CONFIG_POWER_SUPPLY) ||
> (defined(CONFIG_POWER_SUPPLY_MODULE) && defined(MODULE))
>
> IE. use the stub if power supply is a module and what is being built is
> built-in. Of course that's not only ugly, it somewhat sucks from a user
> perspective as the subsystem now exists but can't be used by some
> drivers...
>
> - Better: Just make the bloody thing a bool :-) The power supply
> framework itself is small enough, just make it a boolean option and
> avoid the problem entirely. The actual power supply sub drivers can
> remain modular of course.
Suggested-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Anton Vorontsov <cbouatmailru@gmail.com>
2012-05-05 12:06:19 +08:00
|
|
|
bool "Power supply class support"
|
2007-05-04 04:27:45 +08:00
|
|
|
help
|
|
|
|
Say Y here to enable power supply class support. This allows
|
|
|
|
power supply (batteries, AC, USB) monitoring by userspace
|
|
|
|
via sysfs and uevent (if available) and/or APM kernel interface
|
|
|
|
(if selected below).
|
|
|
|
|
|
|
|
if POWER_SUPPLY
|
|
|
|
|
|
|
|
config POWER_SUPPLY_DEBUG
|
|
|
|
bool "Power supply debug"
|
|
|
|
help
|
|
|
|
Say Y here to enable debugging messages for power supply class
|
|
|
|
and drivers.
|
|
|
|
|
2007-05-04 04:32:17 +08:00
|
|
|
config PDA_POWER
|
|
|
|
tristate "Generic PDA/phone power driver"
|
2007-07-16 04:00:01 +08:00
|
|
|
depends on !S390
|
2007-05-04 04:32:17 +08:00
|
|
|
help
|
|
|
|
Say Y here to enable generic power driver for PDAs and phones with
|
|
|
|
one or two external power supplies (AC/USB) connected to main and
|
|
|
|
backup batteries, and optional builtin charger.
|
|
|
|
|
2007-05-04 04:43:24 +08:00
|
|
|
config APM_POWER
|
|
|
|
tristate "APM emulation for class batteries"
|
|
|
|
depends on APM_EMULATION
|
|
|
|
help
|
|
|
|
Say Y here to enable support APM status emulation using
|
|
|
|
battery class devices.
|
|
|
|
|
2010-01-25 23:38:35 +08:00
|
|
|
config MAX8925_POWER
|
|
|
|
tristate "MAX8925 battery charger support"
|
|
|
|
depends on MFD_MAX8925
|
|
|
|
help
|
|
|
|
Say Y here to enable support for the battery charger in the Maxim
|
|
|
|
MAX8925 PMIC.
|
|
|
|
|
2009-10-01 22:41:06 +08:00
|
|
|
config WM831X_BACKUP
|
|
|
|
tristate "WM831X backup battery charger support"
|
|
|
|
depends on MFD_WM831X
|
|
|
|
help
|
|
|
|
Say Y here to enable support for the backup battery charger
|
|
|
|
in the Wolfson Microelectronics WM831x PMICs.
|
|
|
|
|
2009-08-11 00:43:53 +08:00
|
|
|
config WM831X_POWER
|
|
|
|
tristate "WM831X PMU support"
|
|
|
|
depends on MFD_WM831X
|
|
|
|
help
|
|
|
|
Say Y here to enable support for the power management unit
|
|
|
|
provided by Wolfson Microelectronics WM831x PMICs.
|
|
|
|
|
2008-11-17 03:16:47 +08:00
|
|
|
config WM8350_POWER
|
|
|
|
tristate "WM8350 PMU support"
|
|
|
|
depends on MFD_WM8350
|
|
|
|
help
|
|
|
|
Say Y here to enable support for the power management unit
|
|
|
|
provided by the Wolfson Microelectronics WM8350 PMIC.
|
|
|
|
|
2010-05-18 03:46:45 +08:00
|
|
|
config TEST_POWER
|
|
|
|
tristate "Test power driver"
|
|
|
|
help
|
|
|
|
This driver is used for testing. It's safe to say M here.
|
|
|
|
|
2007-05-04 04:45:39 +08:00
|
|
|
config BATTERY_DS2760
|
|
|
|
tristate "DS2760 battery driver (HP iPAQ & others)"
|
2010-09-23 21:21:36 +08:00
|
|
|
depends on W1 && W1_SLAVE_DS2760
|
2007-05-04 04:45:39 +08:00
|
|
|
help
|
|
|
|
Say Y here to enable support for batteries with ds2760 chip.
|
|
|
|
|
2011-05-27 07:26:04 +08:00
|
|
|
config BATTERY_DS2780
|
|
|
|
tristate "DS2780 battery driver"
|
2011-08-19 03:11:59 +08:00
|
|
|
depends on HAS_IOMEM
|
2011-05-27 07:26:04 +08:00
|
|
|
select W1
|
|
|
|
select W1_SLAVE_DS2780
|
|
|
|
help
|
|
|
|
Say Y here to enable support for batteries with ds2780 chip.
|
|
|
|
|
2012-02-29 21:58:53 +08:00
|
|
|
config BATTERY_DS2781
|
2012-03-17 15:33:10 +08:00
|
|
|
tristate "DS2781 battery driver"
|
2012-02-29 21:58:53 +08:00
|
|
|
depends on HAS_IOMEM
|
|
|
|
select W1
|
|
|
|
select W1_SLAVE_DS2781
|
|
|
|
help
|
|
|
|
If you enable this you will have the DS2781 battery driver support.
|
|
|
|
|
|
|
|
The battery monitor chip is used in many batteries/devices
|
|
|
|
as the one who is responsible for charging/discharging/monitoring
|
|
|
|
Li+ batteries.
|
|
|
|
|
|
|
|
If you are unsure, say N.
|
|
|
|
|
2009-06-18 07:26:26 +08:00
|
|
|
config BATTERY_DS2782
|
2010-04-26 19:05:25 +08:00
|
|
|
tristate "DS2782/DS2786 standalone gas-gauge"
|
2009-06-18 07:26:26 +08:00
|
|
|
depends on I2C
|
|
|
|
help
|
2010-04-26 19:05:25 +08:00
|
|
|
Say Y here to enable support for the DS2782/DS2786 standalone battery
|
2009-06-18 07:26:26 +08:00
|
|
|
gas-gauge.
|
|
|
|
|
2007-05-04 04:47:40 +08:00
|
|
|
config BATTERY_PMU
|
|
|
|
tristate "Apple PMU battery"
|
2007-07-22 08:41:39 +08:00
|
|
|
depends on PPC32 && ADB_PMU
|
2007-05-04 04:47:40 +08:00
|
|
|
help
|
|
|
|
Say Y here to expose battery information on Apple machines
|
|
|
|
through the generic battery class.
|
|
|
|
|
2007-05-04 04:51:18 +08:00
|
|
|
config BATTERY_OLPC
|
|
|
|
tristate "One Laptop Per Child battery"
|
|
|
|
depends on X86_32 && OLPC
|
|
|
|
help
|
|
|
|
Say Y to enable support for the battery on the OLPC laptop.
|
|
|
|
|
2008-06-24 22:51:07 +08:00
|
|
|
config BATTERY_TOSA
|
|
|
|
tristate "Sharp SL-6000 (tosa) battery"
|
2008-09-23 05:06:01 +08:00
|
|
|
depends on MACH_TOSA && MFD_TC6393XB && TOUCHSCREEN_WM97XX
|
2008-06-24 22:51:07 +08:00
|
|
|
help
|
|
|
|
Say Y to enable support for the battery on the Sharp Zaurus
|
|
|
|
SL-6000 (tosa) models.
|
|
|
|
|
2009-02-10 21:12:29 +08:00
|
|
|
config BATTERY_COLLIE
|
|
|
|
tristate "Sharp SL-5500 (collie) battery"
|
|
|
|
depends on SA1100_COLLIE && MCP_UCB1200
|
|
|
|
help
|
|
|
|
Say Y to enable support for the battery on the Sharp Zaurus
|
|
|
|
SL-5500 (collie) models.
|
|
|
|
|
2008-09-12 02:37:32 +08:00
|
|
|
config BATTERY_WM97XX
|
|
|
|
bool "WM97xx generic battery driver"
|
2008-10-13 03:37:16 +08:00
|
|
|
depends on TOUCHSCREEN_WM97XX=y
|
2008-07-08 00:31:58 +08:00
|
|
|
help
|
2008-09-12 02:37:32 +08:00
|
|
|
Say Y to enable support for battery measured by WM97xx aux port.
|
2008-07-08 00:31:58 +08:00
|
|
|
|
2011-12-06 09:50:45 +08:00
|
|
|
config BATTERY_SBS
|
|
|
|
tristate "SBS Compliant gas gauge"
|
2010-09-06 06:31:23 +08:00
|
|
|
depends on I2C
|
|
|
|
help
|
2011-12-06 09:50:45 +08:00
|
|
|
Say Y to include support for SBS battery driver for SBS-compliant
|
|
|
|
gas gauges.
|
2010-09-06 06:31:23 +08:00
|
|
|
|
2008-08-21 07:52:58 +08:00
|
|
|
config BATTERY_BQ27x00
|
2010-02-13 05:57:23 +08:00
|
|
|
tristate "BQ27x00 battery driver"
|
2010-05-25 01:55:27 +08:00
|
|
|
help
|
|
|
|
Say Y here to enable support for batteries with BQ27x00 (I2C/HDQ) chips.
|
|
|
|
|
|
|
|
config BATTERY_BQ27X00_I2C
|
|
|
|
bool "BQ27200/BQ27500 support"
|
|
|
|
depends on BATTERY_BQ27x00
|
2008-08-21 07:52:58 +08:00
|
|
|
depends on I2C
|
2010-05-25 01:55:27 +08:00
|
|
|
default y
|
2008-08-21 07:52:58 +08:00
|
|
|
help
|
2010-02-13 05:57:23 +08:00
|
|
|
Say Y here to enable support for batteries with BQ27x00 (I2C) chips.
|
2008-08-21 07:52:58 +08:00
|
|
|
|
2010-05-25 01:55:27 +08:00
|
|
|
config BATTERY_BQ27X00_PLATFORM
|
|
|
|
bool "BQ27000 support"
|
|
|
|
depends on BATTERY_BQ27x00
|
|
|
|
default y
|
|
|
|
help
|
|
|
|
Say Y here to enable support for batteries with BQ27000 (HDQ) chips.
|
|
|
|
|
2008-12-31 05:44:53 +08:00
|
|
|
config BATTERY_DA9030
|
|
|
|
tristate "DA9030 battery driver"
|
|
|
|
depends on PMIC_DA903X
|
|
|
|
help
|
|
|
|
Say Y here to enable support for batteries charger integrated into
|
|
|
|
DA9030 PMIC.
|
|
|
|
|
2011-12-14 20:27:56 +08:00
|
|
|
config BATTERY_DA9052
|
|
|
|
tristate "Dialog DA9052 Battery"
|
|
|
|
depends on PMIC_DA9052
|
2012-01-10 08:53:37 +08:00
|
|
|
depends on BROKEN
|
2011-12-14 20:27:56 +08:00
|
|
|
help
|
|
|
|
Say Y here to enable support for batteries charger integrated into
|
|
|
|
DA9052 PMIC.
|
|
|
|
|
2009-06-05 14:33:04 +08:00
|
|
|
config BATTERY_MAX17040
|
|
|
|
tristate "Maxim MAX17040 Fuel Gauge"
|
|
|
|
depends on I2C
|
|
|
|
help
|
|
|
|
MAX17040 is fuel-gauge systems for lithium-ion (Li+) batteries
|
|
|
|
in handheld and portable equipment. The MAX17040 is configured
|
|
|
|
to operate with a single lithium cell
|
|
|
|
|
2011-01-14 13:46:11 +08:00
|
|
|
config BATTERY_MAX17042
|
2012-05-05 17:04:26 +08:00
|
|
|
tristate "Maxim MAX17042/17047/17050/8997/8966 Fuel Gauge"
|
2011-01-14 13:46:11 +08:00
|
|
|
depends on I2C
|
|
|
|
help
|
|
|
|
MAX17042 is fuel-gauge systems for lithium-ion (Li+) batteries
|
|
|
|
in handheld and portable equipment. The MAX17042 is configured
|
|
|
|
to operate with a single lithium cell. MAX8997 and MAX8966 are
|
|
|
|
multi-function devices that include fuel gauages that are compatible
|
2012-05-05 17:04:26 +08:00
|
|
|
with MAX17042. This driver also supports max17047/50 chips which are
|
|
|
|
improved version of max17042.
|
2011-01-14 13:46:11 +08:00
|
|
|
|
2010-02-28 19:47:49 +08:00
|
|
|
config BATTERY_Z2
|
|
|
|
tristate "Z2 battery driver"
|
|
|
|
depends on I2C && MACH_ZIPIT2
|
|
|
|
help
|
|
|
|
Say Y to include support for the battery on the Zipit Z2.
|
|
|
|
|
2010-07-17 18:57:03 +08:00
|
|
|
config BATTERY_S3C_ADC
|
|
|
|
tristate "Battery driver for Samsung ADC based monitoring"
|
|
|
|
depends on S3C_ADC
|
|
|
|
help
|
|
|
|
Say Y here to enable support for iPAQ h1930/h1940/rx1950 battery
|
|
|
|
|
2009-01-09 08:50:55 +08:00
|
|
|
config CHARGER_PCF50633
|
|
|
|
tristate "NXP PCF50633 MBC"
|
|
|
|
depends on MFD_PCF50633
|
|
|
|
help
|
|
|
|
Say Y to include support for NXP PCF50633 Main Battery Charger.
|
|
|
|
|
2010-06-19 12:08:29 +08:00
|
|
|
config BATTERY_JZ4740
|
|
|
|
tristate "Ingenic JZ4740 battery"
|
|
|
|
depends on MACH_JZ4740
|
|
|
|
depends on MFD_JZ4740_ADC
|
|
|
|
help
|
|
|
|
Say Y to enable support for the battery on Ingenic JZ4740 based
|
|
|
|
boards.
|
|
|
|
|
|
|
|
This driver can be build as a module. If so, the module will be
|
|
|
|
called jz4740-battery.
|
|
|
|
|
2010-06-18 01:12:36 +08:00
|
|
|
config BATTERY_INTEL_MID
|
|
|
|
tristate "Battery driver for Intel MID platforms"
|
|
|
|
depends on INTEL_SCU_IPC && SPI
|
|
|
|
help
|
|
|
|
Say Y here to enable the battery driver on Intel MID
|
|
|
|
platforms.
|
|
|
|
|
2010-08-19 20:09:36 +08:00
|
|
|
config CHARGER_ISP1704
|
|
|
|
tristate "ISP1704 USB Charger Detection"
|
|
|
|
depends on USB_OTG_UTILS
|
|
|
|
help
|
|
|
|
Say Y to enable support for USB Charger Detection with
|
|
|
|
ISP1707/ISP1704 USB transceivers.
|
|
|
|
|
2011-03-29 09:10:16 +08:00
|
|
|
config CHARGER_MAX8903
|
|
|
|
tristate "MAX8903 Battery DC-DC Charger for USB and Adapter Power"
|
2011-04-22 07:08:22 +08:00
|
|
|
depends on GENERIC_HARDIRQS
|
2011-03-29 09:10:16 +08:00
|
|
|
help
|
|
|
|
Say Y to enable support for the MAX8903 DC-DC charger and sysfs.
|
|
|
|
The driver supports controlling charger-enable and current-limit
|
|
|
|
pins based on the status of charger connections with interrupt
|
|
|
|
handlers.
|
|
|
|
|
2010-09-28 04:18:24 +08:00
|
|
|
config CHARGER_TWL4030
|
|
|
|
tristate "OMAP TWL4030 BCI charger driver"
|
|
|
|
depends on TWL4030_CORE
|
|
|
|
help
|
|
|
|
Say Y here to enable support for TWL4030 Battery Charge Interface.
|
|
|
|
|
2012-01-04 12:27:43 +08:00
|
|
|
config CHARGER_LP8727
|
2012-01-30 09:28:18 +08:00
|
|
|
tristate "TI/National Semiconductor LP8727 charger driver"
|
2012-01-04 12:27:43 +08:00
|
|
|
depends on I2C
|
|
|
|
help
|
|
|
|
Say Y here to enable support for LP8727 Charger Driver.
|
|
|
|
|
2010-10-21 23:55:01 +08:00
|
|
|
config CHARGER_GPIO
|
|
|
|
tristate "GPIO charger"
|
|
|
|
depends on GPIOLIB
|
|
|
|
help
|
|
|
|
Say Y to include support for chargers which report their online status
|
|
|
|
through a GPIO pin.
|
|
|
|
|
|
|
|
This driver can be build as a module. If so, the module will be
|
|
|
|
called gpio-charger.
|
|
|
|
|
2011-12-27 17:47:48 +08:00
|
|
|
config CHARGER_MANAGER
|
|
|
|
bool "Battery charger manager for multiple chargers"
|
|
|
|
depends on REGULATOR && RTC_CLASS
|
2012-07-16 12:46:14 +08:00
|
|
|
select EXTCON
|
2011-12-27 17:47:48 +08:00
|
|
|
help
|
|
|
|
Say Y to enable charger-manager support, which allows multiple
|
|
|
|
chargers attached to a battery and multiple batteries attached to a
|
|
|
|
system. The charger-manager also can monitor charging status in
|
|
|
|
runtime and in suspend-to-RAM by waking up the system periodically
|
|
|
|
with help of suspend_again support.
|
|
|
|
|
2011-06-22 18:40:06 +08:00
|
|
|
config CHARGER_MAX8997
|
|
|
|
tristate "Maxim MAX8997/MAX8966 PMIC battery charger driver"
|
|
|
|
depends on MFD_MAX8997 && REGULATOR_MAX8997
|
|
|
|
help
|
|
|
|
Say Y to enable support for the battery charger control sysfs and
|
|
|
|
platform data of MAX8997/LP3974 PMICs.
|
|
|
|
|
2011-06-24 18:04:18 +08:00
|
|
|
config CHARGER_MAX8998
|
|
|
|
tristate "Maxim MAX8998/LP3974 PMIC battery charger driver"
|
|
|
|
depends on MFD_MAX8998 && REGULATOR_MAX8998
|
|
|
|
help
|
|
|
|
Say Y to enable support for the battery charger control sysfs and
|
|
|
|
platform data of MAX8998/LP3974 PMICs.
|
|
|
|
|
2012-02-06 23:59:01 +08:00
|
|
|
config CHARGER_SMB347
|
|
|
|
tristate "Summit Microelectronics SMB347 Battery Charger"
|
|
|
|
depends on I2C
|
2012-04-16 16:48:41 +08:00
|
|
|
select REGMAP_I2C
|
2012-02-06 23:59:01 +08:00
|
|
|
help
|
|
|
|
Say Y to include support for Summit Microelectronics SMB347
|
|
|
|
Battery Charger.
|
|
|
|
|
2012-03-01 00:24:28 +08:00
|
|
|
config AB8500_BM
|
|
|
|
bool "AB8500 Battery Management Driver"
|
|
|
|
depends on AB8500_CORE && AB8500_GPADC
|
|
|
|
help
|
2012-06-07 05:28:23 +08:00
|
|
|
Say Y to include support for AB8500 battery management.
|
2012-03-01 00:24:28 +08:00
|
|
|
|
|
|
|
config AB8500_BATTERY_THERM_ON_BATCTRL
|
|
|
|
bool "Thermistor connected on BATCTRL ADC"
|
|
|
|
depends on AB8500_BM
|
|
|
|
help
|
|
|
|
Say Y to enable battery temperature measurements using
|
|
|
|
thermistor connected on BATCTRL ADC.
|
2007-05-04 04:27:45 +08:00
|
|
|
endif # POWER_SUPPLY
|
2012-04-25 19:13:17 +08:00
|
|
|
|
|
|
|
source "drivers/power/avs/Kconfig"
|