Commit 5d7bd8aa authored by Andrzej Pietrasiewicz's avatar Andrzej Pietrasiewicz Committed by Daniel Lezcano

thermal: Simplify or eliminate unnecessary set_mode() methods

Setting polling_delay is now done at thermal_core level (by not polling
DISABLED devices), so no need to repeat this code.

int340x: Checking for an impossible enum value is unnecessary.
acpi/thermal: It only prints debug messages.
Signed-off-by: default avatarAndrzej Pietrasiewicz <andrzej.p@collabora.com>
[for acerhdf]
Acked-by: default avatarPeter Kaestle <peter@piie.net>
Reviewed-by: default avatarBartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com>
Reviewed-by: default avatarAmit Kucheria <amit.kucheria@linaro.org>
Signed-off-by: default avatarDaniel Lezcano <daniel.lezcano@linaro.org>
Link: https://lore.kernel.org/r/20200629122925.21729-11-andrzej.p@collabora.com
parent b56bdff7
...@@ -525,31 +525,6 @@ static int thermal_get_temp(struct thermal_zone_device *thermal, int *temp) ...@@ -525,31 +525,6 @@ static int thermal_get_temp(struct thermal_zone_device *thermal, int *temp)
return 0; return 0;
} }
static int thermal_set_mode(struct thermal_zone_device *thermal,
enum thermal_device_mode mode)
{
struct acpi_thermal *tz = thermal->devdata;
if (!tz)
return -EINVAL;
if (mode != THERMAL_DEVICE_DISABLED &&
mode != THERMAL_DEVICE_ENABLED)
return -EINVAL;
/*
* enable/disable thermal management from ACPI thermal driver
*/
if (mode == THERMAL_DEVICE_DISABLED)
pr_warn("thermal zone will be disabled\n");
ACPI_DEBUG_PRINT((ACPI_DB_INFO,
"%s kernel ACPI thermal control\n",
mode == THERMAL_DEVICE_ENABLED ?
"Enable" : "Disable"));
return 0;
}
static int thermal_get_trip_type(struct thermal_zone_device *thermal, static int thermal_get_trip_type(struct thermal_zone_device *thermal,
int trip, enum thermal_trip_type *type) int trip, enum thermal_trip_type *type)
{ {
...@@ -836,7 +811,6 @@ static struct thermal_zone_device_ops acpi_thermal_zone_ops = { ...@@ -836,7 +811,6 @@ static struct thermal_zone_device_ops acpi_thermal_zone_ops = {
.bind = acpi_thermal_bind_cooling_device, .bind = acpi_thermal_bind_cooling_device,
.unbind = acpi_thermal_unbind_cooling_device, .unbind = acpi_thermal_unbind_cooling_device,
.get_temp = thermal_get_temp, .get_temp = thermal_get_temp,
.set_mode = thermal_set_mode,
.get_trip_type = thermal_get_trip_type, .get_trip_type = thermal_get_trip_type,
.get_trip_temp = thermal_get_trip_temp, .get_trip_temp = thermal_get_trip_temp,
.get_crit_temp = thermal_get_crit_temp, .get_crit_temp = thermal_get_crit_temp,
......
...@@ -275,19 +275,6 @@ static int mlxsw_thermal_unbind(struct thermal_zone_device *tzdev, ...@@ -275,19 +275,6 @@ static int mlxsw_thermal_unbind(struct thermal_zone_device *tzdev,
return 0; return 0;
} }
static int mlxsw_thermal_set_mode(struct thermal_zone_device *tzdev,
enum thermal_device_mode mode)
{
struct mlxsw_thermal *thermal = tzdev->devdata;
if (mode == THERMAL_DEVICE_ENABLED)
tzdev->polling_delay = thermal->polling_delay;
else
tzdev->polling_delay = 0;
return 0;
}
static int mlxsw_thermal_get_temp(struct thermal_zone_device *tzdev, static int mlxsw_thermal_get_temp(struct thermal_zone_device *tzdev,
int *p_temp) int *p_temp)
{ {
...@@ -387,7 +374,6 @@ static int mlxsw_thermal_trend_get(struct thermal_zone_device *tzdev, ...@@ -387,7 +374,6 @@ static int mlxsw_thermal_trend_get(struct thermal_zone_device *tzdev,
static struct thermal_zone_device_ops mlxsw_thermal_ops = { static struct thermal_zone_device_ops mlxsw_thermal_ops = {
.bind = mlxsw_thermal_bind, .bind = mlxsw_thermal_bind,
.unbind = mlxsw_thermal_unbind, .unbind = mlxsw_thermal_unbind,
.set_mode = mlxsw_thermal_set_mode,
.get_temp = mlxsw_thermal_get_temp, .get_temp = mlxsw_thermal_get_temp,
.get_trip_type = mlxsw_thermal_get_trip_type, .get_trip_type = mlxsw_thermal_get_trip_type,
.get_trip_temp = mlxsw_thermal_get_trip_temp, .get_trip_temp = mlxsw_thermal_get_trip_temp,
...@@ -445,20 +431,6 @@ static int mlxsw_thermal_module_unbind(struct thermal_zone_device *tzdev, ...@@ -445,20 +431,6 @@ static int mlxsw_thermal_module_unbind(struct thermal_zone_device *tzdev,
return err; return err;
} }
static int mlxsw_thermal_module_mode_set(struct thermal_zone_device *tzdev,
enum thermal_device_mode mode)
{
struct mlxsw_thermal_module *tz = tzdev->devdata;
struct mlxsw_thermal *thermal = tz->parent;
if (mode == THERMAL_DEVICE_ENABLED)
tzdev->polling_delay = thermal->polling_delay;
else
tzdev->polling_delay = 0;
return 0;
}
static int mlxsw_thermal_module_temp_get(struct thermal_zone_device *tzdev, static int mlxsw_thermal_module_temp_get(struct thermal_zone_device *tzdev,
int *p_temp) int *p_temp)
{ {
...@@ -574,7 +546,6 @@ static int mlxsw_thermal_module_trend_get(struct thermal_zone_device *tzdev, ...@@ -574,7 +546,6 @@ static int mlxsw_thermal_module_trend_get(struct thermal_zone_device *tzdev,
static struct thermal_zone_device_ops mlxsw_thermal_module_ops = { static struct thermal_zone_device_ops mlxsw_thermal_module_ops = {
.bind = mlxsw_thermal_module_bind, .bind = mlxsw_thermal_module_bind,
.unbind = mlxsw_thermal_module_unbind, .unbind = mlxsw_thermal_module_unbind,
.set_mode = mlxsw_thermal_module_mode_set,
.get_temp = mlxsw_thermal_module_temp_get, .get_temp = mlxsw_thermal_module_temp_get,
.get_trip_type = mlxsw_thermal_module_trip_type_get, .get_trip_type = mlxsw_thermal_module_trip_type_get,
.get_trip_temp = mlxsw_thermal_module_trip_temp_get, .get_trip_temp = mlxsw_thermal_module_trip_temp_get,
...@@ -612,7 +583,6 @@ static int mlxsw_thermal_gearbox_temp_get(struct thermal_zone_device *tzdev, ...@@ -612,7 +583,6 @@ static int mlxsw_thermal_gearbox_temp_get(struct thermal_zone_device *tzdev,
static struct thermal_zone_device_ops mlxsw_thermal_gearbox_ops = { static struct thermal_zone_device_ops mlxsw_thermal_gearbox_ops = {
.bind = mlxsw_thermal_module_bind, .bind = mlxsw_thermal_module_bind,
.unbind = mlxsw_thermal_module_unbind, .unbind = mlxsw_thermal_module_unbind,
.set_mode = mlxsw_thermal_module_mode_set,
.get_temp = mlxsw_thermal_gearbox_temp_get, .get_temp = mlxsw_thermal_gearbox_temp_get,
.get_trip_type = mlxsw_thermal_module_trip_type_get, .get_trip_type = mlxsw_thermal_module_trip_type_get,
.get_trip_temp = mlxsw_thermal_module_trip_temp_get, .get_trip_temp = mlxsw_thermal_module_trip_temp_get,
......
...@@ -397,8 +397,6 @@ static inline void acerhdf_revert_to_bios_mode(void) ...@@ -397,8 +397,6 @@ static inline void acerhdf_revert_to_bios_mode(void)
{ {
acerhdf_change_fanstate(ACERHDF_FAN_AUTO); acerhdf_change_fanstate(ACERHDF_FAN_AUTO);
kernelmode = 0; kernelmode = 0;
if (thz_dev)
thz_dev->polling_delay = 0;
pr_notice("kernel mode fan control OFF\n"); pr_notice("kernel mode fan control OFF\n");
} }
...@@ -406,7 +404,6 @@ static inline void acerhdf_enable_kernelmode(void) ...@@ -406,7 +404,6 @@ static inline void acerhdf_enable_kernelmode(void)
{ {
kernelmode = 1; kernelmode = 1;
thz_dev->polling_delay = interval*1000;
pr_notice("kernel mode fan control ON\n"); pr_notice("kernel mode fan control ON\n");
} }
......
...@@ -338,9 +338,6 @@ static int imx_set_mode(struct thermal_zone_device *tz, ...@@ -338,9 +338,6 @@ static int imx_set_mode(struct thermal_zone_device *tz,
const struct thermal_soc_data *soc_data = data->socdata; const struct thermal_soc_data *soc_data = data->socdata;
if (mode == THERMAL_DEVICE_ENABLED) { if (mode == THERMAL_DEVICE_ENABLED) {
tz->polling_delay = IMX_POLLING_DELAY;
tz->passive_delay = IMX_PASSIVE_DELAY;
regmap_write(map, soc_data->sensor_ctrl + REG_CLR, regmap_write(map, soc_data->sensor_ctrl + REG_CLR,
soc_data->power_down_mask); soc_data->power_down_mask);
regmap_write(map, soc_data->sensor_ctrl + REG_SET, regmap_write(map, soc_data->sensor_ctrl + REG_SET,
...@@ -356,9 +353,6 @@ static int imx_set_mode(struct thermal_zone_device *tz, ...@@ -356,9 +353,6 @@ static int imx_set_mode(struct thermal_zone_device *tz,
regmap_write(map, soc_data->sensor_ctrl + REG_SET, regmap_write(map, soc_data->sensor_ctrl + REG_SET,
soc_data->power_down_mask); soc_data->power_down_mask);
tz->polling_delay = 0;
tz->passive_delay = 0;
if (data->irq_enabled) { if (data->irq_enabled) {
disable_irq(data->irq); disable_irq(data->irq);
data->irq_enabled = false; data->irq_enabled = false;
......
...@@ -386,10 +386,6 @@ static int int3400_thermal_set_mode(struct thermal_zone_device *thermal, ...@@ -386,10 +386,6 @@ static int int3400_thermal_set_mode(struct thermal_zone_device *thermal,
if (!priv) if (!priv)
return -EINVAL; return -EINVAL;
if (mode != THERMAL_DEVICE_ENABLED &&
mode != THERMAL_DEVICE_DISABLED)
return -EINVAL;
if (mode != thermal->mode) if (mode != thermal->mode)
result = int3400_thermal_run_osc(priv->adev->handle, result = int3400_thermal_run_osc(priv->adev->handle,
priv->current_uuid_index, priv->current_uuid_index,
......
...@@ -267,22 +267,6 @@ static int of_thermal_unbind(struct thermal_zone_device *thermal, ...@@ -267,22 +267,6 @@ static int of_thermal_unbind(struct thermal_zone_device *thermal,
return 0; return 0;
} }
static int of_thermal_set_mode(struct thermal_zone_device *tz,
enum thermal_device_mode mode)
{
struct __thermal_zone *data = tz->devdata;
if (mode == THERMAL_DEVICE_ENABLED) {
tz->polling_delay = data->polling_delay;
tz->passive_delay = data->passive_delay;
} else {
tz->polling_delay = 0;
tz->passive_delay = 0;
}
return 0;
}
static int of_thermal_get_trip_type(struct thermal_zone_device *tz, int trip, static int of_thermal_get_trip_type(struct thermal_zone_device *tz, int trip,
enum thermal_trip_type *type) enum thermal_trip_type *type)
{ {
...@@ -374,8 +358,6 @@ static int of_thermal_get_crit_temp(struct thermal_zone_device *tz, ...@@ -374,8 +358,6 @@ static int of_thermal_get_crit_temp(struct thermal_zone_device *tz,
} }
static struct thermal_zone_device_ops of_thermal_ops = { static struct thermal_zone_device_ops of_thermal_ops = {
.set_mode = of_thermal_set_mode,
.get_trip_type = of_thermal_get_trip_type, .get_trip_type = of_thermal_get_trip_type,
.get_trip_temp = of_thermal_get_trip_temp, .get_trip_temp = of_thermal_get_trip_temp,
.set_trip_temp = of_thermal_set_trip_temp, .set_trip_temp = of_thermal_set_trip_temp,
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment