diff options
Diffstat (limited to 'hw/lsi53c895a.c')
-rw-r--r-- | hw/lsi53c895a.c | 9 |
1 files changed, 2 insertions, 7 deletions
diff --git a/hw/lsi53c895a.c b/hw/lsi53c895a.c index 1643a63ee8..75a03a74b9 100644 --- a/hw/lsi53c895a.c +++ b/hw/lsi53c895a.c @@ -15,7 +15,6 @@ #include "hw.h" #include "pci.h" #include "scsi.h" -#include "block_int.h" //#define DEBUG_LSI //#define DEBUG_LSI_REG @@ -883,7 +882,6 @@ static void lsi_do_msgout(LSIState *s) int len; uint32_t current_tag; lsi_request *current_req, *p, *p_next; - int id; if (s->current) { current_tag = s->current->tag; @@ -892,7 +890,6 @@ static void lsi_do_msgout(LSIState *s) current_tag = s->select_tag; current_req = lsi_find_by_tag(s, current_tag); } - id = (current_tag >> 8) & 0xf; DPRINTF("MSG out len=%d\n", s->dbc); while (s->dbc) { @@ -977,9 +974,8 @@ static void lsi_do_msgout(LSIState *s) device, but this is currently not implemented (and seems not to be really necessary). So let's simply clear all queued commands for the current device: */ - id = current_tag & 0x0000ff00; QTAILQ_FOREACH_SAFE(p, &s->queue, next, p_next) { - if ((p->tag & 0x0000ff00) == id) { + if ((p->tag & 0x0000ff00) == (current_tag & 0x0000ff00)) { scsi_req_cancel(p->req); } } @@ -2110,8 +2106,7 @@ static int lsi_scsi_init(PCIDevice *dev) /* PCI latency timer = 255 */ pci_conf[PCI_LATENCY_TIMER] = 0xff; - /* TODO: RST# value should be 0 */ - /* Interrupt pin 1 */ + /* Interrupt pin A */ pci_conf[PCI_INTERRUPT_PIN] = 0x01; memory_region_init_io(&s->mmio_io, &lsi_mmio_ops, s, "lsi-mmio", 0x400); |