diff options
author | NĂcolas F. R. A. Prado <nfraprado@collabora.com> | 2023-07-06 18:37:37 +0300 |
---|---|---|
committer | Daniel Lezcano <daniel.lezcano@linaro.org> | 2023-08-16 10:54:32 +0300 |
commit | 2bba1acf7a4cbe62abbb4c686e0414209ec5943b (patch) | |
tree | 01b9f60ed5e8fdb858aeae09fd5a2e40f8832e23 /rust | |
parent | 77354eaef8218bc40d6b37e783b0b8dcca22a7d9 (diff) | |
download | linux-2bba1acf7a4cbe62abbb4c686e0414209ec5943b.tar.xz |
thermal/drivers/mediatek/lvts_thermal: Manage threshold between sensors
Each LVTS thermal controller can have up to four sensors, each capable
of triggering its own interrupt when its measured temperature crosses
the configured threshold. The threshold for each sensor is handled
separately by the thermal framework, since each one is registered with
its own thermal zone and trips. However, the temperature thresholds are
configured on the controller, and therefore are shared between all
sensors on that controller.
When the temperature measured by the sensors is different enough to
cause the thermal framework to configure different thresholds for each
one, interrupts start triggering on sensors outside the last threshold
configured.
To address the issue, track the thresholds required by each sensor and
only actually set the highest one in the hardware, and disable
interrupts for all sensors outside the current configured range.
Fixes: f5f633b18234 ("thermal/drivers/mediatek: Add the Low Voltage Thermal Sensor driver")
Signed-off-by: NĂcolas F. R. A. Prado <nfraprado@collabora.com>
Reviewed-by: Alexandre Mergnat <amergnat@baylibre.com>
Reviewed-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
Link: https://lore.kernel.org/r/20230706153823.201943-7-nfraprado@collabora.com
Diffstat (limited to 'rust')
0 files changed, 0 insertions, 0 deletions