[sw] Add option to configure sideload in kmac dif
Signed-off-by: Timothy Chen <timothytim@google.com>
diff --git a/sw/device/lib/dif/dif_kmac.c b/sw/device/lib/dif/dif_kmac.c
index 42d1fe2..420fc92 100644
--- a/sw/device/lib/dif/dif_kmac.c
+++ b/sw/device/lib/dif/dif_kmac.c
@@ -187,6 +187,8 @@
cfg_reg = bitfield_bit32_write(cfg_reg, KMAC_CFG_ENTROPY_FAST_PROCESS_BIT,
config.entropy_fast_process);
cfg_reg =
+ bitfield_bit32_write(cfg_reg, KMAC_CFG_SIDELOAD_BIT, config.sideload);
+ cfg_reg =
bitfield_bit32_write(cfg_reg, KMAC_CFG_ENTROPY_READY_BIT, entropy_ready);
mmio_region_write32(kmac->params.base_addr, KMAC_CFG_REG_OFFSET, cfg_reg);
diff --git a/sw/device/lib/dif/dif_kmac.h b/sw/device/lib/dif/dif_kmac.h
index 7009044..2b9a04d 100644
--- a/sw/device/lib/dif/dif_kmac.h
+++ b/sw/device/lib/dif/dif_kmac.h
@@ -155,6 +155,12 @@
* granularity.
*/
bool output_big_endian;
+
+ /**
+ * Place kmac inside key sideload mode
+ */
+ bool sideload;
+
} dif_kmac_config_t;
/**