Software APIs
pentest_lib_commands.h
1 // Copyright lowRISC contributors (OpenTitan project).
2 // Licensed under the Apache License, Version 2.0, see LICENSE for details.
3 // SPDX-License-Identifier: Apache-2.0
4 
5 #ifndef OPENTITAN_SW_DEVICE_TESTS_PENETRATIONTESTS_JSON_PENTEST_LIB_COMMANDS_H_
6 #define OPENTITAN_SW_DEVICE_TESTS_PENETRATIONTESTS_JSON_PENTEST_LIB_COMMANDS_H_
7 #include "sw/device/lib/ujson/ujson_derive.h"
8 #ifdef __cplusplus
9 extern "C" {
10 #endif
11 
12 // clang-format off
13 
14 #define PENETRATIONTEST_DEVICE_INFO(field, string) \
15  field(device_id, uint32_t, 8) \
16  field(clock_jitter_locked, bool) \
17  field(clock_jitter_en, bool) \
18  field(sram_main_readback_locked, bool) \
19  field(sram_main_readback_en, bool) \
20  field(sram_ret_readback_locked, bool) \
21  field(sram_ret_readback_en, bool)
22 UJSON_SERDE_STRUCT(PenetrationtestDeviceInfo, penetrationtest_device_info_t, PENETRATIONTEST_DEVICE_INFO);
23 
24 #define PENETRATIONTEST_CPUCTRL(field, string) \
25  field(icache_disable, bool) \
26  field(dummy_instr_disable, bool) \
27  field(enable_jittery_clock, bool) \
28  field(enable_sram_readback, bool)
29 UJSON_SERDE_STRUCT(PenetrationtesCpuctrl, penetrationtest_cpuctrl_t, PENETRATIONTEST_CPUCTRL);
30 
31 // clang-format on
32 
33 #ifdef __cplusplus
34 }
35 #endif
36 #endif // OPENTITAN_SW_DEVICE_TESTS_PENETRATIONTESTS_JSON_PENTEST_LIB_COMMANDS_H_