thermal: intel: hfi: Disable an HFI instance when all its CPUs go offline
authorRicardo Neri <ricardo.neri-calderon@linux.intel.com>
Wed, 3 Jan 2024 04:14:58 +0000 (20:14 -0800)
committerRafael J. Wysocki <rafael.j.wysocki@intel.com>
Wed, 3 Jan 2024 13:06:40 +0000 (14:06 +0100)
commit1c53081d773c2cb4461636559b0d55b46559ceec
treef16eab1543f6e9e32c50c342d223f461d0359d1d
parentac1f9230d92a04619331c600dbcead0e32b3e80e
thermal: intel: hfi: Disable an HFI instance when all its CPUs go offline

In preparation to support hibernation, add functionality to disable an HFI
instance during CPU offline. The last CPU of an instance that goes offline
will disable such instance.

The Intel Software Development Manual states that the operating system must
wait for the hardware to set MSR_IA32_PACKAGE_THERM_STATUS[26] after
disabling an HFI instance to ensure that it will no longer write on the HFI
memory. Some processors, however, do not ever set such bit. Wait a minimum
of 2ms to give time hardware to complete any pending memory writes.

Signed-off-by: Ricardo Neri <ricardo.neri-calderon@linux.intel.com>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
drivers/thermal/intel/intel_hfi.c