5 #ifndef OPENTITAN_SW_DEVICE_LIB_TESTING_HMAC_TESTUTILS_H_
6 #define OPENTITAN_SW_DEVICE_LIB_TESTING_HMAC_TESTUTILS_H_
13 #include "sw/device/lib/base/status.h"
15 #include "sw/device/lib/testing/test_framework/check.h"
17 #define MODULE_ID MAKE_MODULE_ID('h', 'm', 'h')
39 static inline status_t compute_hmac_testutils_fifo_empty_usec(
42 TRY_CHECK(result <= UINT32_MAX,
"timeout must fit in uint32_t");
43 *out_usec = (uint32_t)result;
53 static inline status_t compute_hmac_testutils_finish_timeout_usec(
57 TRY_CHECK(result <= UINT32_MAX,
"timeout must fit in uint32_t");
58 *out_usec = (uint32_t)result;
82 extern const uint8_t kHmacRefLongKey[100];
93 extern const char kHmacRefData[34];
109 status_t hmac_testutils_check_message_length(
const dif_hmac_t *hmac,
110 uint64_t expected_sent_bits);
120 status_t hmac_testutils_fifo_empty_polled(
const dif_hmac_t *hmac);
131 status_t hmac_testutils_finish_polled(
const dif_hmac_t *hmac,
144 status_t hmac_testutils_finish_and_check_polled(
158 status_t hmac_testutils_push_message(
const dif_hmac_t *hmac,
const char *data,