thermal/intel: Introduce Intel TCC library
authorZhang Rui <rui.zhang@intel.com>
Mon, 19 Dec 2022 15:46:15 +0000 (23:46 +0800)
committerRafael J. Wysocki <rafael.j.wysocki@intel.com>
Fri, 30 Dec 2022 18:57:38 +0000 (19:57 +0100)
commita3c1f066e1c514ac819f5dae288cc8a59c384158
tree6489ae4f2daea5b11977dc04d82b092de4874c50
parentb878d3ba9bb41cddb73ba4b56e5552f0a638daca
thermal/intel: Introduce Intel TCC library

There are several different drivers that accesses the Intel TCC
(thermal control circuitry) MSRs, and each of them has its own
implementation for the same functionalities, e.g. getting the current
temperature, getting the tj_max, and getting/setting the tj_max offset.

Introduce a library to unify the code for Intel CPU TCC MSR access.

At the same time, ensure the temperature is got based on the updated
tjmax value because tjmax can be changed at runtime for cases like
the Intel SST-PP (Intel Speed Select Technology - Performance Profile)
level change.

Signed-off-by: Zhang Rui <rui.zhang@intel.com>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
drivers/thermal/intel/Kconfig
drivers/thermal/intel/Makefile
drivers/thermal/intel/intel_tcc.c [new file with mode: 0644]
include/linux/intel_tcc.h [new file with mode: 0644]