1.. _edac_ibecc_tests: 2 3Testing Error Detection and Correction 4###################################### 5 6Tests verify API and use error injection method to inject errors. 7 8Prerequisites 9************* 10 11IBECC should be enabled in BIOS. This is usually enabled in the default 12BIOS configuration. Verify following is enabled:: 13 14:menuselection:`Intel Advanced Menu --> Memory Configuration --> In-Band ECC --> Enabled` 15 16Verify also operational mode with:: 17 18:menuselection:`Intel Advanced Menu --> Memory Configuration --> In-Band ECC Operation Mode --> 2` 19 20For injection test Error Injection should be enabled. 21 22Error Injection 23=============== 24 25IBECC includes a feature to ease the verification effort such as Error 26Injection capability. This helps to test the error checking, logging and 27reporting mechanism within IBECC. 28 29In order to use Error Injection user need to use BIOS Boot Guard 0 profile. 30 31Additionally Error Injection need to be enabled in the following BIOS menu:: 32 33:menuselection:`Intel Advanced Menu --> Memory Configuration --> In-Band ECC Error --> Enabled` 34 35.. note:: 36 37 Due to high security risk Error Injection capability should not be 38 enabled for production. Due to this reason test has production configuration 39 and debug configuration. The main difference is that debug configuration 40 includes Error Injection. 41 42Building and Running 43******************** 44 45This project can be built as follows for the :ref:`intel_ehl_crb` board: 46 47.. zephyr-app-commands:: 48 :zephyr-app: tests/subsys/edac/ibecc 49 :board: intel_ehl_crb 50 :goals: build 51 :compact: 52 53Sample output 54============= 55 56.. code-block:: console 57 58 *** Booting Zephyr OS build zephyr-v3.2.0-747-gd421737f433e *** 59 Running TESTSUITE ibecc 60 =================================================================== 61 START - test_edac_dummy_api 62 PASS - test_edac_dummy_api in 0.001 seconds 63 =================================================================== 64 START - test_ibecc_initialized 65 Test ibecc driver is initialized 66 PASS - test_ibecc_initialized in 0.004 seconds 67 =================================================================== 68 START - test_ibecc_injection 69 SKIP - test_ibecc_injection in 0.001 seconds 70 =================================================================== 71 TESTSUITE ibecc succeeded 72