diff options
author | David E. Box <david.e.box@linux.intel.com> | 2025-07-03 05:28:27 +0300 |
---|---|---|
committer | Ilpo Järvinen <ilpo.jarvinen@linux.intel.com> | 2025-07-03 11:09:38 +0300 |
commit | c9699057521834862616ce159a47bd33920f0d9f (patch) | |
tree | 89bb385bda5902a8db74cadbbb6906b9769a9336 | |
parent | a885a2780937afac4f31f00d11663f50d05dfb35 (diff) | |
download | linux-c9699057521834862616ce159a47bd33920f0d9f.tar.xz |
platform/x86/intel/tpmi: Get OOBMSM CPU mapping from TPMI
Copy TPMI’s OOBMSM platform info into a common area within VSEC private
data via intel_vsec_set_mapping(). This enables other Intel VSEC features
to access the CPU mapping without additional queries.
Additionally, designate the TPMI driver as a supplier for the Telemetry
driver, ensuring it can obtain the necessary platform information for
future feature extensions.
Signed-off-by: David E. Box <david.e.box@linux.intel.com>
Link: https://lore.kernel.org/r/20250703022832.1302928-13-david.e.box@linux.intel.com
Reviewed-by: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com>
Signed-off-by: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com>
-rw-r--r-- | drivers/platform/x86/intel/vsec.c | 2 | ||||
-rw-r--r-- | drivers/platform/x86/intel/vsec_tpmi.c | 4 |
2 files changed, 5 insertions, 1 deletions
diff --git a/drivers/platform/x86/intel/vsec.c b/drivers/platform/x86/intel/vsec.c index 711ff4edfe21..f66f0ce8559b 100644 --- a/drivers/platform/x86/intel/vsec.c +++ b/drivers/platform/x86/intel/vsec.c @@ -725,7 +725,7 @@ static const struct intel_vsec_platform_info mtl_info = { static const struct vsec_feature_dependency oobmsm_deps[] = { { .feature = VSEC_CAP_TELEMETRY, - .supplier_bitmap = VSEC_CAP_DISCOVERY, + .supplier_bitmap = VSEC_CAP_DISCOVERY | VSEC_CAP_TPMI, }, }; diff --git a/drivers/platform/x86/intel/vsec_tpmi.c b/drivers/platform/x86/intel/vsec_tpmi.c index d95a0d994546..7748b5557a18 100644 --- a/drivers/platform/x86/intel/vsec_tpmi.c +++ b/drivers/platform/x86/intel/vsec_tpmi.c @@ -799,6 +799,10 @@ static int intel_vsec_tpmi_init(struct auxiliary_device *auxdev) ret = tpmi_process_info(tpmi_info, pfs); if (ret) return ret; + + ret = intel_vsec_set_mapping(&tpmi_info->plat_info, vsec_dev); + if (ret) + return ret; } if (pfs->pfs_header.tpmi_id == TPMI_CONTROL_ID) |