Loading
platform/x86: ISST: Parse SST MMIO and update instance
mainline inclusion from mainline-v6.4-rc1 commit 0ab147bb category: feature bugzilla: https://gitee.com/openeuler/intel-kernel/issues/I8WOEO Reference: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=0ab147bb840fca2bc3bca88f320b34c5b5cc013c ------------------------------------- SST registers are presented to OS in multi-layer structures starting with a SST header showing version information freezing current definition. For details on SST terminology refer to Documentation/admin-guide/pm/intel-speed-select.rst under the kernel documentation SST TPMI details are published in the following document: https://github.com/intel/tpmi_power_management/blob/main/SST_TPMI_public_disclosure_FINAL.docx SST MMIO structure layout follows: SST-HEADER SST-CP Header SST-CP CONTROL SST-CP STATUS SST-CP CONFIG0 SST-CP CONFIG1 ... ... SST-PP Header SST-PP OFFSET_0 SST-PP OFFSET_1 SST_PP_0_INFO SST_PP_1_INFO SST_PP_2_INFO SST_PP_3_INFO SST-PP CONTROL SST-PP STATUS Each register bank contains information to get to next lower level information. This information is parsed and stored in the struct tpmi_per_power_domain_info for each domain. This information is used to process each SST requests. Intel-SIG: commit 0ab147bb platform/x86: ISST: Parse SST MMIO and update instance. Backport Intel speed select ISST driver support on TPMI. Signed-off-by:Srinivas Pandruvada <srinivas.pandruvada@linux.intel.com> Reviewed-by:
Zhang Rui <rui.zhang@intel.com> Tested-by:
Pragya Tanwar <pragya.tanwar@intel.com> Link: https://lore.kernel.org/r/20230308070642.1727167-4-srinivas.pandruvada@linux.intel.com Signed-off-by:
Hans de Goede <hdegoede@redhat.com> [ Yingbao Jia: amend commit log ] Signed-off-by:
Yingbao Jia <yingbao.jia@intel.com>