aboutsummaryrefslogtreecommitdiff
path: root/hw/scsi/lsi53c895a.c
diff options
context:
space:
mode:
authorHervé Poussineau <hpoussin@reactos.org>2013-09-14 17:51:06 +0200
committerPaolo Bonzini <pbonzini@redhat.com>2013-09-16 12:42:18 +0200
commitc7ac9f403af37439da0ce650b68bbcb13439768e (patch)
tree2b5d25e5acb4492330340586d2709a68f0855520 /hw/scsi/lsi53c895a.c
parent16b8ed1d09e9535457a09b9faf7a7e6c6e8da255 (diff)
lsi: check ssid versus sdid only if ssid is valid
This prevents some (invalid) error messages on console. Signed-off-by: Hervé Poussineau <hpoussin@reactos.org> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Diffstat (limited to 'hw/scsi/lsi53c895a.c')
-rw-r--r--hw/scsi/lsi53c895a.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/hw/scsi/lsi53c895a.c b/hw/scsi/lsi53c895a.c
index 4cc0c6adbc..4314efe9f0 100644
--- a/hw/scsi/lsi53c895a.c
+++ b/hw/scsi/lsi53c895a.c
@@ -1699,8 +1699,9 @@ static void lsi_reg_writeb(LSIState *s, int offset, uint8_t val)
s->sxfer = val;
break;
case 0x06: /* SDID */
- if ((val & 0xf) != (s->ssid & 0xf))
+ if ((s->ssid & 0x80) && (val & 0xf) != (s->ssid & 0xf)) {
BADF("Destination ID does not match SSID\n");
+ }
s->sdid = val & 0xf;
break;
case 0x07: /* GPREG0 */