thermal: remove get_mode() operation of drivers
authorAndrzej Pietrasiewicz <andrzej.p@collabora.com>
Mon, 29 Jun 2020 12:29:19 +0000 (14:29 +0200)
committerDaniel Lezcano <daniel.lezcano@linaro.org>
Mon, 29 Jun 2020 18:26:35 +0000 (20:26 +0200)
get_mode() is now redundant, as the state is stored in struct
thermal_zone_device.

Consequently the "mode" attribute in sysfs can always be visible, because
it is always possible to get the mode from struct tzd.

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-6-andrzej.p@collabora.com
drivers/acpi/thermal.c
drivers/net/ethernet/mellanox/mlxsw/core_thermal.c
drivers/platform/x86/acerhdf.c
drivers/thermal/da9062-thermal.c
drivers/thermal/imx_thermal.c
drivers/thermal/intel/int340x_thermal/int3400_thermal.c
drivers/thermal/intel/intel_quark_dts_thermal.c
drivers/thermal/thermal_core.c
drivers/thermal/thermal_of.c
drivers/thermal/thermal_sysfs.c
include/linux/thermal.h

index 4ba273f..592be97 100644 (file)
@@ -525,14 +525,6 @@ static int thermal_get_temp(struct thermal_zone_device *thermal, int *temp)
        return 0;
 }
 
-static int thermal_get_mode(struct thermal_zone_device *thermal,
-                               enum thermal_device_mode *mode)
-{
-       *mode = thermal->mode;
-
-       return 0;
-}
-
 static int thermal_set_mode(struct thermal_zone_device *thermal,
                                enum thermal_device_mode mode)
 {
@@ -847,7 +839,6 @@ static struct thermal_zone_device_ops acpi_thermal_zone_ops = {
        .bind = acpi_thermal_bind_cooling_device,
        .unbind = acpi_thermal_unbind_cooling_device,
        .get_temp = thermal_get_temp,
-       .get_mode = thermal_get_mode,
        .set_mode = thermal_set_mode,
        .get_trip_type = thermal_get_trip_type,
        .get_trip_temp = thermal_get_trip_temp,
index 51667ed..ad61b2d 100644 (file)
@@ -275,14 +275,6 @@ static int mlxsw_thermal_unbind(struct thermal_zone_device *tzdev,
        return 0;
 }
 
-static int mlxsw_thermal_get_mode(struct thermal_zone_device *tzdev,
-                                 enum thermal_device_mode *mode)
-{
-       *mode = tzdev->mode;
-
-       return 0;
-}
-
 static int mlxsw_thermal_set_mode(struct thermal_zone_device *tzdev,
                                  enum thermal_device_mode mode)
 {
@@ -402,7 +394,6 @@ static int mlxsw_thermal_trend_get(struct thermal_zone_device *tzdev,
 static struct thermal_zone_device_ops mlxsw_thermal_ops = {
        .bind = mlxsw_thermal_bind,
        .unbind = mlxsw_thermal_unbind,
-       .get_mode = mlxsw_thermal_get_mode,
        .set_mode = mlxsw_thermal_set_mode,
        .get_temp = mlxsw_thermal_get_temp,
        .get_trip_type  = mlxsw_thermal_get_trip_type,
@@ -461,14 +452,6 @@ static int mlxsw_thermal_module_unbind(struct thermal_zone_device *tzdev,
        return err;
 }
 
-static int mlxsw_thermal_module_mode_get(struct thermal_zone_device *tzdev,
-                                        enum thermal_device_mode *mode)
-{
-       *mode = tzdev->mode;
-
-       return 0;
-}
-
 static int mlxsw_thermal_module_mode_set(struct thermal_zone_device *tzdev,
                                         enum thermal_device_mode mode)
 {
@@ -606,7 +589,6 @@ static int mlxsw_thermal_module_trend_get(struct thermal_zone_device *tzdev,
 static struct thermal_zone_device_ops mlxsw_thermal_module_ops = {
        .bind           = mlxsw_thermal_module_bind,
        .unbind         = mlxsw_thermal_module_unbind,
-       .get_mode       = mlxsw_thermal_module_mode_get,
        .set_mode       = mlxsw_thermal_module_mode_set,
        .get_temp       = mlxsw_thermal_module_temp_get,
        .get_trip_type  = mlxsw_thermal_module_trip_type_get,
@@ -645,7 +627,6 @@ static int mlxsw_thermal_gearbox_temp_get(struct thermal_zone_device *tzdev,
 static struct thermal_zone_device_ops mlxsw_thermal_gearbox_ops = {
        .bind           = mlxsw_thermal_module_bind,
        .unbind         = mlxsw_thermal_module_unbind,
-       .get_mode       = mlxsw_thermal_module_mode_get,
        .set_mode       = mlxsw_thermal_module_mode_set,
        .get_temp       = mlxsw_thermal_gearbox_temp_get,
        .get_trip_type  = mlxsw_thermal_module_trip_type_get,
index 6f21015..58c4e1c 100644 (file)
@@ -413,17 +413,6 @@ static inline void acerhdf_enable_kernelmode(void)
        pr_notice("kernel mode fan control ON\n");
 }
 
-static int acerhdf_get_mode(struct thermal_zone_device *thermal,
-                           enum thermal_device_mode *mode)
-{
-       if (verbose)
-               pr_notice("kernel mode fan control %d\n", kernelmode);
-
-       *mode = thermal->mode;
-
-       return 0;
-}
-
 /*
  * set operation mode;
  * enabled: the thermal layer of the kernel takes care about
@@ -490,7 +479,6 @@ static struct thermal_zone_device_ops acerhdf_dev_ops = {
        .bind = acerhdf_bind,
        .unbind = acerhdf_unbind,
        .get_temp = acerhdf_get_ec_temp,
-       .get_mode = acerhdf_get_mode,
        .set_mode = acerhdf_set_mode,
        .get_trip_type = acerhdf_get_trip_type,
        .get_trip_hyst = acerhdf_get_trip_hyst,
index a14c798..a7ac8af 100644 (file)
@@ -120,13 +120,6 @@ static irqreturn_t da9062_thermal_irq_handler(int irq, void *data)
        return IRQ_HANDLED;
 }
 
-static int da9062_thermal_get_mode(struct thermal_zone_device *z,
-                                  enum thermal_device_mode *mode)
-{
-       *mode = z->mode;
-       return 0;
-}
-
 static int da9062_thermal_get_trip_type(struct thermal_zone_device *z,
                                        int trip,
                                        enum thermal_trip_type *type)
@@ -179,7 +172,6 @@ static int da9062_thermal_get_temp(struct thermal_zone_device *z,
 
 static struct thermal_zone_device_ops da9062_thermal_ops = {
        .get_temp       = da9062_thermal_get_temp,
-       .get_mode       = da9062_thermal_get_mode,
        .get_trip_type  = da9062_thermal_get_trip_type,
        .get_trip_temp  = da9062_thermal_get_trip_temp,
 };
index 9a1114d..2c7ee5d 100644 (file)
@@ -330,14 +330,6 @@ static int imx_get_temp(struct thermal_zone_device *tz, int *temp)
        return 0;
 }
 
-static int imx_get_mode(struct thermal_zone_device *tz,
-                       enum thermal_device_mode *mode)
-{
-       *mode = tz->mode;
-
-       return 0;
-}
-
 static int imx_set_mode(struct thermal_zone_device *tz,
                        enum thermal_device_mode mode)
 {
@@ -464,7 +456,6 @@ static struct thermal_zone_device_ops imx_tz_ops = {
        .bind = imx_bind,
        .unbind = imx_unbind,
        .get_temp = imx_get_temp,
-       .get_mode = imx_get_mode,
        .set_mode = imx_set_mode,
        .get_trip_type = imx_get_trip_type,
        .get_trip_temp = imx_get_trip_temp,
index f65b2fc..9a622aa 100644 (file)
@@ -377,14 +377,6 @@ static int int3400_thermal_get_temp(struct thermal_zone_device *thermal,
        return 0;
 }
 
-static int int3400_thermal_get_mode(struct thermal_zone_device *thermal,
-                               enum thermal_device_mode *mode)
-{
-       *mode = thermal->mode;
-
-       return 0;
-}
-
 static int int3400_thermal_set_mode(struct thermal_zone_device *thermal,
                                enum thermal_device_mode mode)
 {
@@ -412,7 +404,6 @@ static int int3400_thermal_set_mode(struct thermal_zone_device *thermal,
 
 static struct thermal_zone_device_ops int3400_thermal_ops = {
        .get_temp = int3400_thermal_get_temp,
-       .get_mode = int3400_thermal_get_mode,
        .set_mode = int3400_thermal_set_mode,
 };
 
index d77cb3d..c4879b4 100644 (file)
@@ -308,13 +308,6 @@ static int sys_get_curr_temp(struct thermal_zone_device *tzd,
        return 0;
 }
 
-static int sys_get_mode(struct thermal_zone_device *tzd,
-                               enum thermal_device_mode *mode)
-{
-       *mode = tzd->mode;
-       return 0;
-}
-
 static int sys_set_mode(struct thermal_zone_device *tzd,
                                enum thermal_device_mode mode)
 {
@@ -336,7 +329,6 @@ static struct thermal_zone_device_ops tzone_ops = {
        .get_trip_type = sys_get_trip_type,
        .set_trip_temp = sys_set_trip_temp,
        .get_crit_temp = sys_get_crit_temp,
-       .get_mode = sys_get_mode,
        .set_mode = sys_set_mode,
 };
 
index b71196e..14d3b1b 100644 (file)
@@ -1456,7 +1456,6 @@ static int thermal_pm_notify(struct notifier_block *nb,
                             unsigned long mode, void *_unused)
 {
        struct thermal_zone_device *tz;
-       enum thermal_device_mode tz_mode;
 
        switch (mode) {
        case PM_HIBERNATION_PREPARE:
@@ -1469,11 +1468,7 @@ static int thermal_pm_notify(struct notifier_block *nb,
        case PM_POST_SUSPEND:
                atomic_set(&in_suspend, 0);
                list_for_each_entry(tz, &thermal_tz_list, node) {
-                       tz_mode = THERMAL_DEVICE_ENABLED;
-                       if (tz->ops->get_mode)
-                               tz->ops->get_mode(tz, &tz_mode);
-
-                       if (tz_mode == THERMAL_DEVICE_DISABLED)
+                       if (tz->mode == THERMAL_DEVICE_DISABLED)
                                continue;
 
                        thermal_zone_device_init(tz);
index c495b1e..ba65d48 100644 (file)
@@ -267,14 +267,6 @@ static int of_thermal_unbind(struct thermal_zone_device *thermal,
        return 0;
 }
 
-static int of_thermal_get_mode(struct thermal_zone_device *tz,
-                              enum thermal_device_mode *mode)
-{
-       *mode = tz->mode;
-
-       return 0;
-}
-
 static int of_thermal_set_mode(struct thermal_zone_device *tz,
                               enum thermal_device_mode mode)
 {
@@ -389,7 +381,6 @@ static int of_thermal_get_crit_temp(struct thermal_zone_device *tz,
 }
 
 static struct thermal_zone_device_ops of_thermal_ops = {
-       .get_mode = of_thermal_get_mode,
        .set_mode = of_thermal_set_mode,
 
        .get_trip_type = of_thermal_get_trip_type,
index aa99edb..0963709 100644 (file)
@@ -49,18 +49,9 @@ static ssize_t
 mode_show(struct device *dev, struct device_attribute *attr, char *buf)
 {
        struct thermal_zone_device *tz = to_thermal_zone(dev);
-       enum thermal_device_mode mode;
-       int result;
-
-       if (!tz->ops->get_mode)
-               return -EPERM;
 
-       result = tz->ops->get_mode(tz, &mode);
-       if (result)
-               return result;
-
-       return sprintf(buf, "%s\n", mode == THERMAL_DEVICE_ENABLED ? "enabled"
-                      : "disabled");
+       return sprintf(buf, "%s\n", tz->mode == THERMAL_DEVICE_ENABLED ?
+                      "enabled" : "disabled");
 }
 
 static ssize_t
@@ -428,30 +419,13 @@ static struct attribute_group thermal_zone_attribute_group = {
        .attrs = thermal_zone_dev_attrs,
 };
 
-/* We expose mode only if .get_mode is present */
 static struct attribute *thermal_zone_mode_attrs[] = {
        &dev_attr_mode.attr,
        NULL,
 };
 
-static umode_t thermal_zone_mode_is_visible(struct kobject *kobj,
-                                           struct attribute *attr,
-                                           int attrno)
-{
-       struct device *dev = container_of(kobj, struct device, kobj);
-       struct thermal_zone_device *tz;
-
-       tz = container_of(dev, struct thermal_zone_device, device);
-
-       if (tz->ops->get_mode)
-               return attr->mode;
-
-       return 0;
-}
-
 static struct attribute_group thermal_zone_mode_attribute_group = {
        .attrs = thermal_zone_mode_attrs,
-       .is_visible = thermal_zone_mode_is_visible,
 };
 
 /* We expose passive only if passive trips are present */
index 5f91d7f..a808f6f 100644 (file)
@@ -76,8 +76,6 @@ struct thermal_zone_device_ops {
                       struct thermal_cooling_device *);
        int (*get_temp) (struct thermal_zone_device *, int *);
        int (*set_trips) (struct thermal_zone_device *, int, int);
-       int (*get_mode) (struct thermal_zone_device *,
-                        enum thermal_device_mode *);
        int (*set_mode) (struct thermal_zone_device *,
                enum thermal_device_mode);
        int (*get_trip_type) (struct thermal_zone_device *, int,