power_supply: Add no_thermal property to prevent recursive get_temp calls
authorKrzysztof Kozlowski <k.kozlowski@samsung.com>
Tue, 7 Oct 2014 15:47:36 +0000 (17:47 +0200)
committerSebastian Reichel <sre@kernel.org>
Tue, 28 Oct 2014 02:30:19 +0000 (03:30 +0100)
commita69d82b9bdf1e53e94423048e8bda8c5f5a3dd4e
tree0ae915d15ee164e2682f03b636504f05722babc4
parent21e863b233553998737e1b506c823a00bf012e00
power_supply: Add no_thermal property to prevent recursive get_temp calls

Add a 'no_thermal' property to the power supply class. If true then
thermal zone won't be created for this power supply in
power_supply_register().

Power supply drivers may want to set it if they support
POWER_SUPPLY_PROP_TEMP and they are forwarding this get property call to
other thermal zone.

If they won't set it lockdep may report false positive deadlock for
thermal zone's mutex because of nested calls to thermal_zone_get_temp().
First is the call to thermal_zone_get_temp() of the driver's thermal
zone. Thermal core gets POWER_SUPPLY_PROP_TEMP property from this
driver. The driver then calls other thermal zone thermal_zone_get_temp()
and returns result.

Example of such driver is charger manager.

Signed-off-by: Krzysztof Kozlowski <k.kozlowski@samsung.com>
Signed-off-by: Sebastian Reichel <sre@kernel.org>
drivers/power/power_supply_core.c
include/linux/power_supply.h
This page took 0.026731 seconds and 5 git commands to generate.