thermal/drivers/int340x: Fix RFIM mailbox write commands
authorSumeet Pawnikar <sumeet.r.pawnikar@intel.com>
Thu, 23 Dec 2021 09:42:36 +0000 (15:12 +0530)
committerRafael J. Wysocki <rafael.j.wysocki@intel.com>
Thu, 30 Dec 2021 15:42:53 +0000 (16:42 +0100)
commit2685c77b80a80c57e2a25a726b82fb31e6e212ab
treebd6e34f6c72d3a5600f11f76b02d4bcaa8a10862
parent9c33eef84e3110963d6f41d87d63bc40d716eb1f
thermal/drivers/int340x: Fix RFIM mailbox write commands

The existing mail mechanism only supports writing of workload types.

However, mailbox command for RFIM (cmd = 0x08) also requires write
operation which is ignored. This results in failing to store RFI
restriction.

Fixint this requires enhancing mailbox writes for non workload
commands too, so remove the check for MBOX_CMD_WORKLOAD_TYPE_WRITE
in mailbox write to allow this other write commands to be supoorted.

At the same time, however, we have to make sure that there is no
impact on read commands, by avoiding to write anything into the
mailbox data register.

To properly implement that, add two separate functions for mbox read
and write commands for the processor thermal workload command type.
This helps to distinguish the read and write workload command types
from each other while sending mbox commands.

Fixes: 5d6fbc96bd36 ("thermal/drivers/int340x: processor_thermal: Export additional attributes")
Signed-off-by: Sumeet Pawnikar <sumeet.r.pawnikar@intel.com>
Cc: 5.14+ <stable@vger.kernel.org> # 5.14+
Acked-by: Srinivas Pandruvada <srinivas.pandruvada@linux.intel.com>
[ rjw: Changelog edits ]
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
drivers/thermal/intel/int340x_thermal/processor_thermal_device.h
drivers/thermal/intel/int340x_thermal/processor_thermal_mbox.c
drivers/thermal/intel/int340x_thermal/processor_thermal_rfim.c