Skip to content

Commit 9a0f025

Browse files
committed
[ot] hw/opentitan: ot_keymgr: Only go idle on reset & op_status write
The keymgr should only change its `OP_STATUS` to idle upon reset, or if it is explicitly cleared by SW. The `DONE_ERROR` and `DONE_SUCCESS` operation status values need to be latched to be queried by software, but subsequent FSM ticks (e.g. scheduled by the BH) can then change the operation status back to idle. In HW, this value is latched and only updated when `op_start`, i.e. when the operation is ongoing. When the operation is not ongoing, the value is thus not reset back to idle outside of SW writes/resets. Signed-off-by: Alex Jones <[email protected]>
1 parent 287b82d commit 9a0f025

File tree

1 file changed

+0
-2
lines changed

1 file changed

+0
-2
lines changed

hw/opentitan/ot_keymgr.c

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1836,8 +1836,6 @@ static bool ot_keymgr_main_fsm_tick(OtKeyMgrState *s)
18361836
ot_keymgr_update_irq(s);
18371837
} else if (op_start) {
18381838
ot_keymgr_change_op_status(s, KEYMGR_OP_STATUS_WIP);
1839-
} else {
1840-
ot_keymgr_change_op_status(s, KEYMGR_OP_STATUS_IDLE);
18411839
}
18421840

18431841
/* lock CFG_REGWEN when an operation is ongoing */

0 commit comments

Comments
 (0)