Fix kelvin fpga_tests Change-Id: I0b0888d16bd058f7c17f3ea80f243a195873688e
diff --git a/sw/device/tests/kelvin/fpga_tests/kelvin_test_smc.c b/sw/device/tests/kelvin/fpga_tests/kelvin_test_smc.c index 197f259..2c8cf63 100644 --- a/sw/device/tests/kelvin/fpga_tests/kelvin_test_smc.c +++ b/sw/device/tests/kelvin/fpga_tests/kelvin_test_smc.c
@@ -68,6 +68,11 @@ mmio_region_t base_addr = mmio_region_from_addr(TOP_MATCHA_ML_TOP_CORE_BASE_ADDR); // Reset and halt Kelvin + // NB: Kelvin needs a few cycles in reset with a clock, + // so set the reset bit and the gate in two transactions. + mmio_region_write32( + base_addr, ML_TOP_CTRL_REG_OFFSET, + ML_TOP_CTRL_REG_RESVAL); mmio_region_write32( base_addr, ML_TOP_CTRL_REG_OFFSET, ML_TOP_CTRL_REG_RESVAL | (1 << ML_TOP_CTRL_FREEZE_BIT));