Commit d92ed2c9 authored by Andrzej Pietrasiewicz's avatar Andrzej Pietrasiewicz Committed by Daniel Lezcano
Browse files

thermal: imx: Use driver's local data to decide whether to run a measurement



Use driver's local data to evaluate the need to run or not to run a
measurement.

Signed-off-by: default avatarAndrzej Pietrasiewicz <andrzej.p@collabora.com>
Signed-off-by: default avatarDaniel Lezcano <daniel.lezcano@linaro.org>
Link: https://lore.kernel.org/r/20200703104354.19657-3-andrzej.p@collabora.com
parent 7a7d66f2
Loading
Loading
Loading
Loading
+4 −3
Original line number Diff line number Diff line
@@ -252,10 +252,11 @@ static int imx_get_temp(struct thermal_zone_device *tz, int *temp)
	const struct thermal_soc_data *soc_data = data->socdata;
	struct regmap *map = data->tempmon;
	unsigned int n_meas;
	bool wait;
	bool wait, run_measurement;
	u32 val;

	if (thermal_zone_device_is_enabled(tz)) {
	run_measurement = !data->irq_enabled;
	if (!run_measurement) {
		/* Check if a measurement is currently in progress */
		regmap_read(map, soc_data->temp_data, &val);
		wait = !(val & soc_data->temp_valid_mask);
@@ -282,7 +283,7 @@ static int imx_get_temp(struct thermal_zone_device *tz, int *temp)

	regmap_read(map, soc_data->temp_data, &val);

	if (!thermal_zone_device_is_enabled(tz)) {
	if (run_measurement) {
		regmap_write(map, soc_data->sensor_ctrl + REG_CLR,
			     soc_data->measure_temp_mask);
		regmap_write(map, soc_data->sensor_ctrl + REG_SET,