Subject: NetBSD >= 3.0 ate my USB drive
To: None <netbsd-help@netbsd.org>
From: Stephen Borrill <netbsd@precedence.co.uk>
List: netbsd-help
Date: 08/25/2006 14:40:30
Got a Freecom Classic 250GB USB drive which works fine on NetBSD 
2.0_STABLE:

ehci0 at pci0 dev 29 function 7: Intel 82801EB/ER USB EHCI Controller (rev. 0x0)
ehci0: interrupting at irq 11
ehci0: EHCI version 1.0
ehci0: companion controllers, 2 ports each: uhci0 uhci1 uhci2 uhci3
usb4 at ehci0: USB revision 2.0
uhub4 at usb4
[snip]
umass0 at uhub4 port 5 configuration 1 
interface 0
umass0: Freecom product 0xfccd, rev 2.00/4.06, addr 2
umass0: using SCSI over Bulk-Only
scsibus1 at umass0: 2 targets, 1 lun per target
sd0 at scsibus1 target 0 lun 0: <HDS72252, 5VLAT80, V36O> disk fixed
sd0: fabricating a geometry
sd0: 232 GB, 238475 cyl, 64 head, 32 sec, 512 bytes/sect x 488397169 sectors

However on NetBSD 3.0 and later (inc. 3.1_RC1 and 4.99.1) I get the 
following:
ehci0 at pci0 dev 29 function 7: Intel 82801GB/GR USB EHCI Controller (rev. 0x01)
ehci0: interrupting at irq 5
ehci0: BIOS has given up ownership
ehci0: EHCI version 1.0
ehci0: companion controllers, 2 ports each: uhci0 uhci1 uhci2
usb3 at ehci0: USB revision 2.0
uhub3 at usb3
uhub3: Intel EHCI root hub, class 9/0, rev 2.00/1.00, addr 1
uhub3: 6 ports with 6 removable, self powered
[snip]
umass0 at uhub3 port 2 configuration 1 interface 0
umass0: Freecom product 0xfccd, rev 2.00/4.06, addr 2
umass0: using SCSI over Bulk-Only
umass0: Get Max Lun failed: IOERROR
umass0: unable to get Max Lun: IOERROR

(Yes, these are different machines because of available hardware round the 
office, but it's reproducible even on the same hardware - it was first 
noticed during a 2.0 to 3.0 upgrade).

umass.c doesn't seem to have altered in any pertinent way, so I guess the 
problem lies elsewhere. Might be good to solve this for 3.1 and 4.0 before 
they get released...

-- 
Stephen