esp: only assert INTR_DC interrupt flag if selection fails
The datasheet sequence tables confirm that when a target selection fails, only
the INTR_DC interrupt flag should be asserted.
Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>
Fixes: cf47a41e05
("esp: latch individual bits in ESP_RINTR register")
Message-Id: <20210518212511.21688-2-mark.cave-ayland@ilande.co.uk>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
This commit is contained in:
parent
6e1da3d305
commit
cf1a7a9b37
@ -213,7 +213,7 @@ static int esp_select(ESPState *s)
|
|||||||
if (!s->current_dev) {
|
if (!s->current_dev) {
|
||||||
/* No such drive */
|
/* No such drive */
|
||||||
s->rregs[ESP_RSTAT] = 0;
|
s->rregs[ESP_RSTAT] = 0;
|
||||||
s->rregs[ESP_RINTR] |= INTR_DC;
|
s->rregs[ESP_RINTR] = INTR_DC;
|
||||||
s->rregs[ESP_RSEQ] = SEQ_0;
|
s->rregs[ESP_RSEQ] = SEQ_0;
|
||||||
esp_raise_irq(s);
|
esp_raise_irq(s);
|
||||||
return -1;
|
return -1;
|
||||||
|
Loading…
Reference in New Issue
Block a user