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: Andrzej Pietrasiewicz <andrzej.p@collabora.com> [for acerhdf] Acked-by: Peter Kaestle <peter@piie.net> Reviewed-by: Bartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com> Reviewed-by: Amit Kucheria <amit.kucheria@linaro.org> Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org> Link: https://lore.kernel.org/r/20200629122925.21729-11-andrzej.p@collabora.com
This commit is contained in:
parent
b56bdff78e
commit
5d7bd8aa7c
|
@ -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 = {
|
||||||
.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,
|
||||||
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,
|
||||||
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,
|
||||||
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,
|
||||||
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,
|
||||||
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)
|
||||||
{
|
{
|
||||||
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)
|
||||||
{
|
{
|
||||||
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,
|
||||||
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,
|
||||||
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,
|
||||||
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,
|
||||||
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,
|
||||||
}
|
}
|
||||||
|
|
||||||
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,
|
||||||
|
|
Loading…
Reference in New Issue