Subject: esp0: illegal command
To: None <port-macppc@netbsd.org>
From: Michael P Ferguson <mpf7@cornell.edu>
List: port-macppc
Date: 03/18/2001 14:18:24
Well then, since I can't boot off of a non-zero partition on my 8600 
(thanks for the tip), I installed NetBSD on an external scsi disk, id 
6. However, there were some mysterious errors (esp0: illegal command 
... ) during the install, and then when I booted the kernel hung 
while loading, and then I tried install again (this time I set 
real-base before booting the floppy, which I don't think I did right 
the first time) but the installer reported the same mysterious errors 
as well as others that made it unable to make or to mount the new 
filesystems (see below for the details).

Basically, I have no idea what's going on, so I've put lots of garble 
below about things I do know. If you have any ideas, they'd sure be 
appreciated! Also, its reasonably possible that these problems are 
hardware; its an old micropolis disk that's been around.. But the 
drive does work in MacOS, so I know its not completely dead!

-michael ferguson

(here is the garble):

- My 8600/250 has two SCSI controllers; there's the internal mesh and 
the external.

- In MacOS, the System Profiler tells me that my external drive is on 
bus 1, and my internal devices (2 hard drives, cdrom and zip) are on 
bus 0. This is the opposite of the numbering that NetBSD uses.

- The "mysterious error" I was getting while trying to do anything 
really with the external disk (in installing, all that) was this:
esp0: illegal command 0xc2 (state 2, phase 3, prevphase 1)
esp0: SCSI bus reset
and when it was running newfs, it was followed by:
read error:48
rdfs: Input/output error
(which cause newfs to fail miserably).

- When I boot from the install floppy without my external drive plugged in,
I get:
esp0 at obio0 offset 0x10000 irq 12:NCR53C94, 25MHz, SCSI ID 7
scsibus0 at esp0: 8 targets, 8 luns per target
mesh0 at obio0 offset 0x18000 irq 13: 50 MHz, SCSI ID 7
scsibus1 at mesh0: 8 targest, 8 luns per target
sd0 at scsibus1 (internal drive #1)
sd1 at scsibus1 (internal drive #2) ... etc

- When I boot from the install floppy with the external drive plugged in,
I get these things:
(an esp0 line I didn't copy down)
mesh0 at obio0 offset 0x18000 irq:13 50 MHz, SCSI ID 7
(somewhere in there it said mesh0 was scsibus1, esp0 was scsibus0)
scsibus0: waiting 2 seconds for devices to settle
Then
probe(esp0:6:0): max sync rate 6.25 MB/s

probe(esp0:6:0) esp0: timed out [ecb 0xe02a48d0 (flags 0x3, dleft 41, 
[stsomething] 0)], <state 4, nexus 0xe02a48d0, phase (l 21, c 1, p 
1), resid 4a, msg(q 0, o 0) DMA active>

probe(esp:0:6:0):sync negotiation disabled.

probe(esp:0:6:0): esp0: timed out [ecb 0xe02a48d0 (flags 0x43, dleft 
41, [stsomething] 0)], <state 4, nexus 0xe02a48d0, phase (l 21, c 1, 
p 1), resid 4a, msg(q 20, o 0) DMA active> AGAIN

([stsomething] is a word I didn't copy legibly.. maybe state.)
Then
esp0: SCSI bus reset

Then it assigns the drive labels and all that:
sd0 at scsibus0 is my external drive
sd1 at scsibus1 is internal drive #1
sd2 at scsibus1 is internal drive #2