]> www.infradead.org Git - users/jedix/linux-maple.git/commit
platform/x86/intel/ifs: Add SBAF test support
authorJithu Joseph <jithu.joseph@intel.com>
Thu, 1 Aug 2024 05:18:13 +0000 (05:18 +0000)
committerHans de Goede <hdegoede@redhat.com>
Mon, 12 Aug 2024 14:36:11 +0000 (16:36 +0200)
commit3c4d06bd6e3713235fba5aa5eed9d1898239ec1f
treec4c68f98d317dba8ee93c7519bbbc56ec856e3a2
parent0a3e4e94d137daacd5ec092365080eed847f8f01
platform/x86/intel/ifs: Add SBAF test support

In a core, the SBAF test engine is shared between sibling CPUs.

An SBAF test image contains multiple bundles. Each bundle is further
composed of subunits called programs. When a SBAF test (for a particular
core) is triggered by the user, each SBAF bundle from the loaded test
image is executed sequentially on all the threads on the core using
the stop_core_cpuslocked mechanism. Each bundle execution is initiated by
writing to MSR_ACTIVATE_SBAF.

SBAF test bundle execution may be aborted when an interrupt occurs or
if the CPU does not have enough power budget for the test. In these
cases the kernel restarts the test from the aborted bundle. SBAF
execution is not retried if the test fails or if the test makes no
forward progress after 5 retries.

Reviewed-by: Ashok Raj <ashok.raj@intel.com>
Reviewed-by: Tony Luck <tony.luck@intel.com>
Reviewed-by: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com>
Signed-off-by: Jithu Joseph <jithu.joseph@intel.com>
Signed-off-by: Kuppuswamy Sathyanarayanan <sathyanarayanan.kuppuswamy@linux.intel.com>
Link: https://lore.kernel.org/r/20240801051814.1935149-4-sathyanarayanan.kuppuswamy@linux.intel.com
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
drivers/platform/x86/intel/ifs/ifs.h
drivers/platform/x86/intel/ifs/runtest.c