]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
platform/x86: ISST: Restore SST-PP control to all domains
authorSrinivas Pandruvada <srinivas.pandruvada@intel.com>
Thu, 28 May 2026 20:45:21 +0000 (13:45 -0700)
committerIlpo Järvinen <ilpo.jarvinen@linux.intel.com>
Wed, 10 Jun 2026 13:17:17 +0000 (16:17 +0300)
The SST-PP control offset is only restored to power domain 0 after
resume. During suspend, control values are read and stored for all
power domains.

Use pd_info->sst_base instead of power_domain_info->sst_base, which
only points to power domain 0 base address.

Fixes: dc7901b5a156 ("platform/x86: ISST: Store and restore all domains data")
Reported-by: Yi Lai <yi1.lai@intel.com>
Signed-off-by: Srinivas Pandruvada <srinivas.pandruvada@intel.com>
Cc: stable@vger.kernel.org
Link: https://patch.msgid.link/20260528204521.3531456-1-srinivas.pandruvada@linux.intel.com
Reviewed-by: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com>
Signed-off-by: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com>
drivers/platform/x86/intel/speed_select_if/isst_tpmi_core.c

index b804cb753f94280d017b373755f42c6e1db91f64..24334ae70d82520d36df9a09c62fca2fa410926a 100644 (file)
@@ -1804,7 +1804,7 @@ process_pp_resume:
                if (!(pd_info->sst_header.cap_mask & SST_PP_CAP_PP_ENABLE))
                        continue;
 
-               writeq(pd_info->saved_pp_control, power_domain_info->sst_base +
+               writeq(pd_info->saved_pp_control, pd_info->sst_base +
                       pd_info->sst_header.pp_offset + SST_PP_CONTROL_OFFSET);
        }
 }