72 lines
2.3 KiB
ReStructuredText
72 lines
2.3 KiB
ReStructuredText
.. _edac_ibecc_tests:
|
|
|
|
Testing Error Detection and Correction
|
|
######################################
|
|
|
|
Tests verify API and use error injection method to inject errors.
|
|
|
|
Prerequisites
|
|
*************
|
|
|
|
IBECC should be enabled in BIOS. This is usually enabled in the default
|
|
BIOS configuration. Verify following is enabled::
|
|
|
|
:menuselection:`Intel Advanced Menu --> Memory Configuration --> In-Band ECC --> Enabled`
|
|
|
|
Verify also operational mode with::
|
|
|
|
:menuselection:`Intel Advanced Menu --> Memory Configuration --> In-Band ECC Operation Mode --> 2`
|
|
|
|
For injection test Error Injection should be enabled.
|
|
|
|
Error Injection
|
|
===============
|
|
|
|
IBECC includes a feature to ease the verification effort such as Error
|
|
Injection capability. This helps to test the error checking, logging and
|
|
reporting mechanism within IBECC.
|
|
|
|
In order to use Error Injection user need to use BIOS Boot Guard 0 profile.
|
|
|
|
Additionally Error Injection need to be enabled in the following BIOS menu::
|
|
|
|
:menuselection:`Intel Advanced Menu --> Memory Configuration --> In-Band ECC Error --> Enabled`
|
|
|
|
.. note::
|
|
|
|
Due to high security risk Error Injection capability should not be
|
|
enabled for production. Due to this reason test has production configuration
|
|
and debug configuration. The main difference is that debug configuration
|
|
includes Error Injection.
|
|
|
|
Building and Running
|
|
********************
|
|
|
|
This project can be built as follows for the :ref:`intel_ehl_crb` board:
|
|
|
|
.. zephyr-app-commands::
|
|
:zephyr-app: tests/subsys/edac/ibecc
|
|
:board: intel_ehl_crb
|
|
:goals: build
|
|
:compact:
|
|
|
|
Sample output
|
|
=============
|
|
|
|
.. code-block:: console
|
|
|
|
*** Booting Zephyr OS build zephyr-v3.2.0-747-gd421737f433e ***
|
|
Running TESTSUITE ibecc
|
|
===================================================================
|
|
START - test_edac_dummy_api
|
|
PASS - test_edac_dummy_api in 0.001 seconds
|
|
===================================================================
|
|
START - test_ibecc_initialized
|
|
Test ibecc driver is initialized
|
|
PASS - test_ibecc_initialized in 0.004 seconds
|
|
===================================================================
|
|
START - test_ibecc_injection
|
|
SKIP - test_ibecc_injection in 0.001 seconds
|
|
===================================================================
|
|
TESTSUITE ibecc succeeded
|