5#include "sw/device/lib/testing/sram_ctrl_testutils.h"
11#include "sw/device/lib/testing/test_framework/check.h"
13#define MODULE_ID MAKE_MODULE_ID('s', 'c', 't')
15void sram_ctrl_testutils_write(uintptr_t address,
16 const sram_ctrl_testutils_data_t data) {
18 for (
size_t index = 0; index < data.len; ++index) {
19 ptrdiff_t offset = (ptrdiff_t)(
sizeof(uint32_t)) * (ptrdiff_t)index;
20 mmio_region_write32(region, offset, data.words[index]);
34status_t sram_ctrl_testutils_scramble(
const dif_sram_ctrl_t *sram_ctrl) {
35 TRY(dif_sram_ctrl_request_new_key(sram_ctrl));
52 uint32_t usec = (uint32_t)udiv64_slow(
56 LOG_INFO(
"Waiting for SRAM scrambling to finish");
63 CHECK_DIF_OK(dif_sram_ctrl_wipe(sram_ctrl));
65 uint32_t usec = (uint32_t)udiv64_slow(
67 LOG_INFO(
"Waiting for SRAM wipe to finish");