* [Qemu-devel] esp (sparc32) Extra scsi data.
@ 2009-08-30 22:57 Artyom Tarasenko
2009-08-31 17:03 ` [Qemu-devel] [PATCH] " Artyom Tarasenko
0 siblings, 1 reply; 2+ messages in thread
From: Artyom Tarasenko @ 2009-08-30 22:57 UTC (permalink / raw)
To: qemu-devel, Blue Swirl
got past scsi-controller initialization. Next stop is disks probing:
ok probe-scsi
Extra scsi data. Fatal error.Extra scsi data. Fatal error.
ok
Is it a known problem? The esp log (qemu started with -hda netbsd.img
-cdrom cd.iso):
ok probe-scsi
ESP: write reg[3]: 0x03 -> 0x02
ESP: Chip reset (02)
ESP: write reg[3]: 0x02 -> 0x00
ESP: NOP (00)
ESP: write reg[5]: 0x00 -> 0x93
ESP: write reg[7]: 0x00 -> 0x00
ESP: write reg[9]: 0x00 -> 0x00
ESP: write reg[8]: 0x00 -> 0x07
ESP: read reg[5]: 0x00
ESP: write reg[3]: 0x00 -> 0x03
ESP: Bus reset (03)
ESP: read reg[5]: 0x80
ESP: read reg[5]: 0x00
ESP: read reg[5]: 0x00
ESP: write reg[1]: 0x00 -> 0x00
ESP: write reg[0]: 0x00 -> 0x06
ESP: write reg[4]: 0x00 -> 0x00
ESP: write reg[3]: 0x03 -> 0xc1
ESP: Select without ATN (c1)
ESP: get_cmd: len 6 target 0
ESP: do_cmd: busid 0x0
ESP: SCSI Command complete
ESP: read reg[5]: 0x18
ESP: read reg[4]: 0x03
ESP: write reg[3]: 0xc1 -> 0x00
ESP: NOP (00)
ESP: read reg[6]: 0x04
ESP: write reg[3]: 0x00 -> 0x11
ESP: Initiator Command Complete Sequence (11)
ESP: Transfer status (sense=0)
ESP: read reg[5]: 0x08
ESP: read reg[4]: 0x07
ESP: read reg[7]: 0x02
ESP: read reg[7]: 0x02
ESP: read reg[2]: 0x00
ESP: read reg[7]: 0x02
ESP: read reg[7]: 0x02
ESP: read reg[2]: 0x00
ESP: write reg[3]: 0x11 -> 0x12
ESP: Message Accepted (12)
ESP: Transfer status (sense=0)
ESP: read reg[5]: 0x20
ESP: read reg[4]: 0x07
ESP: read reg[7]: 0x02
Extra scsi data. Fatal error.ESP: read reg[5]: 0x00
ESP: write reg[1]: 0x00 -> 0x00
ESP: write reg[0]: 0x06 -> 0x06
ESP: write reg[4]: 0x00 -> 0x01
ESP: write reg[3]: 0x12 -> 0xc1
ESP: Select without ATN (c1)
ESP: get_cmd: len 6 target 1
ESP: read reg[5]: 0x20
ESP: read reg[4]: 0x00
ESP: read reg[5]: 0x00
ESP: write reg[1]: 0x00 -> 0x00
ESP: write reg[0]: 0x06 -> 0x06
ESP: write reg[4]: 0x01 -> 0x02
ESP: write reg[3]: 0xc1 -> 0xc1
ESP: Select without ATN (c1)
ESP: get_cmd: len 6 target 2
ESP: do_cmd: busid 0x0
ESP: SCSI Command complete
ESP: read reg[5]: 0x18
ESP: read reg[4]: 0x03
ESP: write reg[3]: 0xc1 -> 0x00
ESP: NOP (00)
ESP: read reg[6]: 0x04
ESP: write reg[3]: 0x00 -> 0x11
ESP: Initiator Command Complete Sequence (11)
ESP: Transfer status (sense=0)
ESP: read reg[5]: 0x08
ESP: read reg[4]: 0x07
ESP: read reg[7]: 0x02
ESP: read reg[7]: 0x02
ESP: read reg[2]: 0x00
ESP: read reg[7]: 0x02
ESP: read reg[7]: 0x02
ESP: read reg[2]: 0x00
ESP: write reg[3]: 0x11 -> 0x12
ESP: Message Accepted (12)
ESP: Transfer status (sense=0)
ESP: read reg[5]: 0x20
ESP: read reg[4]: 0x07
ESP: read reg[7]: 0x02
Extra scsi data. Fatal error.ESP: read reg[5]: 0x00
ESP: write reg[1]: 0x00 -> 0x00
ESP: write reg[0]: 0x06 -> 0x06
ESP: write reg[4]: 0x02 -> 0x03
ESP: write reg[3]: 0x12 -> 0xc1
ESP: Select without ATN (c1)
ESP: get_cmd: len 6 target 3
ESP: read reg[5]: 0x20
ESP: read reg[4]: 0x00
ESP: read reg[5]: 0x00
ESP: write reg[1]: 0x00 -> 0x00
ESP: write reg[0]: 0x06 -> 0x06
ESP: write reg[4]: 0x03 -> 0x04
ESP: write reg[3]: 0xc1 -> 0xc1
ESP: Select without ATN (c1)
ESP: get_cmd: len 6 target 4
[skipped targets 4-6, no errors here, just like target 3]
ESP: Select without ATN (c1)
ESP: get_cmd: len 6 target 7
ESP: read reg[5]: 0x20
ESP: read reg[4]: 0x00
ok
^ permalink raw reply [flat|nested] 2+ messages in thread
* [Qemu-devel] [PATCH] esp (sparc32) Extra scsi data.
2009-08-30 22:57 [Qemu-devel] esp (sparc32) Extra scsi data Artyom Tarasenko
@ 2009-08-31 17:03 ` Artyom Tarasenko
0 siblings, 0 replies; 2+ messages in thread
From: Artyom Tarasenko @ 2009-08-31 17:03 UTC (permalink / raw)
To: qemu-devel, Blue Swirl
[-- Attachment #1: Type: text/plain, Size: 962 bytes --]
> ESP: Message Accepted (12)
> ESP: Transfer status (sense=0)
> ESP: read reg[5]: 0x20
> ESP: read reg[4]: 0x07
> ESP: read reg[7]: 0x02
> Extra scsi data. Fatal error.
It looks like "Message Accepted" shouldn't write a response. At least
ESP_RFLAGS must definetely be 0. With the following fix OBP goes one
step further:
Signed-off-by: Artyom Tarasenko <atar4qemu@gmail.com>
---
diff --git a/hw/esp.c b/hw/esp.c
index aad547e..cc97eb4 100644
--- a/hw/esp.c
+++ b/hw/esp.c
@@ -528,9 +528,10 @@ static void esp_mem_writeb(void *opaque,
target_phys_addr_t addr, uint32_t val)
break;
case CMD_MSGACC:
DPRINTF("Message Accepted (%2.2x)\n", val);
- write_response(s);
s->rregs[ESP_RINTR] = INTR_DC;
s->rregs[ESP_RSEQ] = 0;
+ s->rregs[ESP_RFLAGS] = 0;
+ esp_raise_irq(s);
break;
case CMD_PAD:
DPRINTF("Transfer padding (%2.2x)\n", val);
[-- Attachment #2: 0001-esp-message-accepted-no-response.patch --]
[-- Type: text/plain, Size: 638 bytes --]
Signed-off-by: Artyom Tarasenko <atar4qemu@gmail.com>
---
diff --git a/hw/esp.c b/hw/esp.c
index aad547e..cc97eb4 100644
--- a/hw/esp.c
+++ b/hw/esp.c
@@ -528,9 +528,10 @@ static void esp_mem_writeb(void *opaque, target_phys_addr_t addr, uint32_t val)
break;
case CMD_MSGACC:
DPRINTF("Message Accepted (%2.2x)\n", val);
- write_response(s);
s->rregs[ESP_RINTR] = INTR_DC;
s->rregs[ESP_RSEQ] = 0;
+ s->rregs[ESP_RFLAGS] = 0;
+ esp_raise_irq(s);
break;
case CMD_PAD:
DPRINTF("Transfer padding (%2.2x)\n", val);
^ permalink raw reply related [flat|nested] 2+ messages in thread
end of thread, other threads:[~2009-08-31 17:04 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-08-30 22:57 [Qemu-devel] esp (sparc32) Extra scsi data Artyom Tarasenko
2009-08-31 17:03 ` [Qemu-devel] [PATCH] " Artyom Tarasenko
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).