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