@@ -23,6 +23,7 @@ module caliptra_ss_lc_ctrl_fsm
2323 // need the clock and reset for the assertions.
2424 input clk_i,
2525 input rst_ni,
26+ input RMA_strap,
2627 // Initialization request from power manager.
2728 input init_req_i,
2829 output logic init_done_o,
@@ -463,7 +464,7 @@ module caliptra_ss_lc_ctrl_fsm
463464 // Flash RMA state. Note that we check the flash response again
464465 // two times later below.
465466 FlashRmaSt: begin
466- if (trans_target_i == { DecLcStateNumRep{ DecLcStRma}} ) begin
467+ if (trans_target_i == { DecLcStateNumRep{ DecLcStRma}} && RMA_strap ) begin
467468 caliptra_ss_lc_flash_rma_req = On;
468469 if (caliptra_ss_lc_tx_test_true_strict (caliptra_ss_lc_flash_rma_ack_buf[0 ])) begin
469470 fsm_state_d = TokenCheck0St;
@@ -489,7 +490,8 @@ module caliptra_ss_lc_ctrl_fsm
489490 caliptra_ss_lc_tx_test_false_strict (caliptra_ss_lc_flash_rma_ack_buf[1 ])) ||
490491 (trans_target_i == { DecLcStateNumRep{ DecLcStRma}} &&
491492 caliptra_ss_lc_tx_test_true_strict (caliptra_ss_lc_flash_rma_req_o) &&
492- caliptra_ss_lc_tx_test_true_strict (caliptra_ss_lc_flash_rma_ack_buf[1 ]))) begin
493+ caliptra_ss_lc_tx_test_true_strict (caliptra_ss_lc_flash_rma_ack_buf[1 ])
494+ && RMA_strap)) begin
493495 if (hashed_token_i == hashed_token_mux &&
494496 ! token_hash_err_i &&
495497 & hashed_token_valid_mux) begin
@@ -529,7 +531,8 @@ module caliptra_ss_lc_ctrl_fsm
529531 end else if ((trans_target_i != { DecLcStateNumRep{ DecLcStRma}} &&
530532 (caliptra_ss_lc_flash_rma_req_o != Off || caliptra_ss_lc_flash_rma_ack_buf[2 ] != Off)) ||
531533 (trans_target_i == { DecLcStateNumRep{ DecLcStRma}} &&
532- (caliptra_ss_lc_flash_rma_req_o != On || caliptra_ss_lc_flash_rma_ack_buf[2 ] != On))) begin
534+ (caliptra_ss_lc_flash_rma_req_o != On || caliptra_ss_lc_flash_rma_ack_buf[2 ] != On)
535+ && RMA_strap)) begin
533536 fsm_state_d = PostTransSt;
534537 flash_rma_error_o = 1'b1 ;
535538 end else if (otp_prog_ack_i) begin
0 commit comments