From: Ni Wade Date: Mon, 17 Feb 2014 03:02:55 +0000 (+0800) Subject: Thermal: Allow first update of cooling device state X-Git-Tag: firefly_0821_release~3680^2~36^2~22^2~6 X-Git-Url: http://demsky.eecs.uci.edu/git/?a=commitdiff_plain;h=ed835be313220380ccacadc959f7d4d64324d9ee;p=firefly-linux-kernel-4.4.55.git Thermal: Allow first update of cooling device state In initialization, if the cooling device is initialized at max cooling state, and the thermal zone temperature is below the first trip point, then the cooling state can't be updated to the right state, untill the first trip point be triggered. To fix this issue, allow first update of cooling device state during registration, initialized "updated" device field as "false" (instead of "true"). Signed-off-by: Wei Ni Signed-off-by: Zhang Rui (cherry picked from commit 5ca0cce5622bf476e3e6bf627fe8e9381d6ae174) Signed-off-by: Alex Shi --- diff --git a/drivers/thermal/thermal_core.c b/drivers/thermal/thermal_core.c index 561d61d72137..07d80cc0a91b 100644 --- a/drivers/thermal/thermal_core.c +++ b/drivers/thermal/thermal_core.c @@ -1099,7 +1099,7 @@ __thermal_cooling_device_register(struct device_node *np, INIT_LIST_HEAD(&cdev->thermal_instances); cdev->np = np; cdev->ops = ops; - cdev->updated = true; + cdev->updated = false; cdev->device.class = &thermal_class; cdev->devdata = devdata; dev_set_name(&cdev->device, "cooling_device%d", cdev->id);