thermal: intel: intel_soc_dts_iosf: Always assume notification support
authorRafael J. Wysocki <rafael.j.wysocki@intel.com>
Thu, 10 Aug 2023 19:09:54 +0000 (21:09 +0200)
committerRafael J. Wysocki <rafael.j.wysocki@intel.com>
Fri, 11 Aug 2023 16:44:44 +0000 (18:44 +0200)
None of the existing callers of intel_soc_dts_iosf_init() passes
INTEL_SOC_DTS_INTERRUPT_NONE as the first argument to it, so the
notification local variable in it is always true and the
notification_support argument of add_dts_thermal_zone() is always
true either.

For this reason, drop the notification local variable from
intel_soc_dts_iosf_init() and the notification_support argument from
add_dts_thermal_zone() and rearrange the latter to always set
writable_trip_cnt and trip_mask.

No intentional functional impact.

Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Reviewed-by: Srinivas Pandruvada <srinivas.pandruvada@linux.intel.com>
drivers/thermal/intel/intel_soc_dts_iosf.c

index 60bdca9..5c5790d 100644 (file)
@@ -247,12 +247,12 @@ static void remove_dts_thermal_zone(struct intel_soc_dts_sensor_entry *dts)
 }
 
 static int add_dts_thermal_zone(int id, struct intel_soc_dts_sensor_entry *dts,
-                               bool notification_support, int read_only_trip_cnt)
+                               int read_only_trip_cnt)
 {
        char name[10];
        unsigned long trip;
-       int trip_mask = 0;
-       int writable_trip_cnt = 0;
+       int writable_trip_cnt;
+       int trip_mask;
        unsigned long ptps;
        u32 store_ptps;
        unsigned long i;
@@ -265,10 +265,9 @@ static int add_dts_thermal_zone(int id, struct intel_soc_dts_sensor_entry *dts,
                goto err_ret;
 
        dts->id = id;
-       if (notification_support) {
-               writable_trip_cnt = SOC_MAX_DTS_TRIPS - read_only_trip_cnt;
-               trip_mask = GENMASK(writable_trip_cnt - 1, 0);
-       }
+
+       writable_trip_cnt = SOC_MAX_DTS_TRIPS - read_only_trip_cnt;
+       trip_mask = GENMASK(writable_trip_cnt - 1, 0);
 
        /* Check if the writable trip we provide is not used by BIOS */
        ret = iosf_mbi_read(BT_MBI_UNIT_PMC, MBI_REG_READ,
@@ -364,7 +363,6 @@ struct intel_soc_dts_sensors *intel_soc_dts_iosf_init(
        enum intel_soc_dts_interrupt_type intr_type, int read_only_trip_count)
 {
        struct intel_soc_dts_sensors *sensors;
-       bool notification;
        int tj_max;
        int ret;
        int i;
@@ -387,14 +385,11 @@ struct intel_soc_dts_sensors *intel_soc_dts_iosf_init(
        mutex_init(&sensors->dts_update_lock);
        sensors->intr_type = intr_type;
        sensors->tj_max = tj_max * 1000;
-       if (intr_type == INTEL_SOC_DTS_INTERRUPT_NONE)
-               notification = false;
-       else
-               notification = true;
+
        for (i = 0; i < SOC_MAX_DTS_SENSORS; ++i) {
                sensors->soc_dts[i].sensors = sensors;
                ret = add_dts_thermal_zone(i, &sensors->soc_dts[i],
-                                          notification, read_only_trip_count);
+                                          read_only_trip_count);
                if (ret)
                        goto err_free;
        }