Commit 4f164435 authored by Rafael J. Wysocki's avatar Rafael J. Wysocki
Browse files

thermal: intel: intel_soc_dts_iosf: Always assume notification support



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: default avatarRafael J. Wysocki <rafael.j.wysocki@intel.com>
Reviewed-by: default avatarSrinivas Pandruvada <srinivas.pandruvada@linux.intel.com>
parent a39524ac
Loading
Loading
Loading
Loading
+8 −13
Original line number Diff line number Diff line
@@ -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);
	}

	/* 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;
	}