Lines Matching +full:test +full:- +full:cpu
1 /* SPDX-License-Identifier: GPL-2.0-only */
8 * DOC: In-Field Scan
11 * In-Field Scan
15 * ------------
18 * a CPU core to detect problems that are not caught by parity or ECC checks.
19 * Future CPUs will support more than one type of test which will show up
20 * with a new platform-device instance-id.
24 * ---------
28 * family-model-stepping. IFS Images are not applicable for some test types.
34 * -----------------
36 * The driver loads the tests into memory reserved BIOS local to each CPU
38 * SHA hashes for the test. Then the tests themselves. Status MSRs provide
41 * The test files are kept in a fixed location: /lib/firmware/intel/ifs_<n>/
42 * For e.g if there are 3 test files, they would be named in the following
44 * ff-mm-ss-01.scan
45 * ff-mm-ss-02.scan
46 * ff-mm-ss-03.scan
49 * A different test file can be loaded by writing the numerical portion
51 * To load ff-mm-ss-02.scan, the following command can be used::
58 * -------------
66 * 3) A test detected a problem.
69 * DURATION OF THE TEST. This can be up to 200 milliseconds. If the system
72 * to migrate those applications to other cores before running a core test.
75 * In all cases reading the corresponding test's STATUS MSR provides details on what
82 * Test a specific core::
84 * # echo <cpu#> > /sys/devices/virtual/misc/intel_ifs_<n>/run_test
86 * when HT is enabled any of the sibling cpu# can be specified to test
89 * to run a core test. It is only necessary to test one thread.
91 * For e.g. to test core corresponding to cpu5
95 * Results of the last test is provided in /sys::
102 * Additional details of the last test is provided by the details file::
107 * The details file reports the hex value of the test specific status MSR.
112 * +------+--------------------+
114 * +------+--------------------+
116 * +------+--------------------+
119 * ---------------------
123 * uses the subrange feature to restart an interrupted test.
257 * Driver populated error-codes
258 * 0xFD: Test timed out before completing all the chunks.
270 * struct ifs_data - attributes related to intel IFS driver
272 * @loaded: If a valid test binary has been loaded into the memory
273 * @loading_error: Error occurred on another CPU while loading image
277 * @cur_batch: number indicating the currently loaded test file
278 * @generation: IFS test generation enumerated by hardware
279 * @chunk_size: size of a test chunk
280 * @array_gen: test generation of array test
311 return &d->rw_data; in ifs_get_data()
319 return d->test_caps; in ifs_get_test_caps()
324 int do_core_test(int cpu, struct device *dev);