From e619dd2493ea5fd17ed63a0eba06319dc9a979b3 Mon Sep 17 00:00:00 2001 From: joevt Date: Sun, 10 Mar 2024 21:14:50 -0700 Subject: [PATCH] sc53c94: CMD_COMPLETE and XFER_END goes to IDLE. CMD_COMPLETE and XFER_END goes to the IDLE sequence state so that reentry doesn't cause a second interrupt. --- devices/common/scsi/sc53c94.cpp | 2 ++ 1 file changed, 2 insertions(+) diff --git a/devices/common/scsi/sc53c94.cpp b/devices/common/scsi/sc53c94.cpp index 514e331..29bada3 100644 --- a/devices/common/scsi/sc53c94.cpp +++ b/devices/common/scsi/sc53c94.cpp @@ -504,6 +504,7 @@ void Sc53C94::sequencer() case SeqState::CMD_COMPLETE: this->seq_step = this->cmd_steps->step_num; this->int_status = this->cmd_steps->status; + this->cur_state = SeqState::IDLE; this->update_irq(); exec_next_command(); break; @@ -535,6 +536,7 @@ void Sc53C94::sequencer() this->bus_obj->target_next_step(); } this->int_status = INTSTAT_SR; + this->cur_state = SeqState::IDLE; this->update_irq(); exec_next_command(); break;