Software APIs
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_COMMANDS_H_
6 #define OPENTITAN_SW_DEVICE_TESTS_PENETRATIONTESTS_JSON_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 COMMAND(_, value) \
15  value(_, AesSca) \
16  value(_, AlertInfo) \
17  value(_, CryptoFi) \
18  value(_, EdnSca) \
19  value(_, ExtClkScaFi) \
20  value(_, HmacSca) \
21  value(_, IbexFi) \
22  value(_, IbexSca) \
23  value(_, KmacSca) \
24  value(_, LCCtrlFi) \
25  value(_, OtbnFi) \
26  value(_, OtbnSca) \
27  value(_, OtpFi) \
28  value(_, PrngSca) \
29  value(_, RngFi) \
30  value(_, RomFi) \
31  value(_, Sha3Sca) \
32  value(_, TriggerSca)
33 UJSON_SERDE_ENUM(PenetrationtestCommand, penetrationtest_cmd_t, COMMAND);
34 
35 #define PENTEST_NUM_ENC(field, string) \
36  field(num_enc, uint32_t)
37 UJSON_SERDE_STRUCT(PenetrationtestCommandNumEnc, penetrationtest_num_enc_t, PENTEST_NUM_ENC);
38 
39 // clang-format on
40 
41 #ifdef __cplusplus
42 }
43 #endif
44 #endif // OPENTITAN_SW_DEVICE_TESTS_PENETRATIONTESTS_JSON_COMMANDS_H_