Subject: Re: USB card readers?
To: Brian Buhrow <buhrow@lothlorien.nfbcal.org>
From: Simon J. Gerraty <sjg@crufty.net>
List: port-i386
Date: 03/28/2006 00:57:51
So I updated my kernel to:


NetBSD very.crufty.net 2.1_STABLE NetBSD 2.1_STABLE (CRUFTY) #0: Mon Mar 27 11:29:04 PST 2006  root@void.crufty.net:/j/obj/sys/compile/CRUFTY i386

and rebooted.  It probed nicely:

umass0 at uhub0 port 2 configuration 1 interface 0
umass0: Acer Labs USB 2.0 Storage Device, rev 2.00/0.80, addr 2
umass0: using SCSI over Bulk-Only
scsibus1 at umass0: 2 targets, 4 luns per target
sd0 at scsibus1 target 0 lun 0: <USB2.0, SMARTMEDIA/XD, \001> disk removable
sd0: drive offline
sd6 at scsibus1 target 0 lun 1: <USB2.0, CompactFlashCard, \001> disk removable
sd6: drive offline
sd7 at scsibus1 target 0 lun 2: <USB2.0, SD/MMC     card, \001> disk removable
sd7: drive offline
sd8 at scsibus1 target 0 lun 3: <USB2.0, MemoryStick Card, \001> disk removable
sd8: drive offline

so plugged in an SD card and tried to read the disklabel.
The system froze after saying something about an operation stalling.

Mar 27 21:41:50 very /netbsd: umass0: BBB bulk-out stall clear failed, STALLED
Mar 27 21:41:50 very /netbsd: umass0: BBB reset failed, STALLED
Mar 27 21:41:50 very /netbsd: umass0: BBB bulk-in clear stall failed, STALLED
Mar 27 21:41:50 very /netbsd: umass0: BBB bulk-out clear stall failed, STALLED
Mar 27 21:41:50 very /netbsd: umass0: BBB reset failed, STALLED
Mar 27 21:41:50 very /netbsd: umass0: BBB bulk-in clear stall failed, STALLED
Mar 27 21:41:50 very /netbsd: umass0: BBB bulk-out clear stall failed, STALLED
Mar 27 21:41:50 very /netbsd: umass0: BBB reset failed, STALLED

Ok, so I rebooted and this time left the SD card in there, it kept
looping reporting events for sd0 and sd6 (neither of which had
anything in them) - this is a 7 in 1 card reader btw.

At one point I booted it with a CF card in it and it spotted that:

Mar 27 21:35:40 very /netbsd: sd6 at scsibus1 target 0 lun 1: <USB2.0, CompactFl
ashCard, \001> disk removable
Mar 27 21:35:40 very /netbsd: sd6: fabricating a geometry
Mar 27 21:35:40 very /netbsd: sd6: 16000 KB, 15 cyl, 64 head, 32 sec, 512 bytes/
sect x 32000 sectors

Ok, this could all be pilot error.

If I plug in a CF card and then

# scsictl /dev/scsibus1 scan 0 1
# disklabel sd6
...
5 partitions:
#        size    offset     fstype [fsize bsize cpg/sgs]
 d:     32000         0     unused      0     0        # (Cyl.      0 -     15*)
 e:     31920        16      MSDOS                     # (Cyl.      0*-     15*)
#

if I plug in an SD card though:

# scsictl /dev/scsibus1 scan 0 2
# disklabel sd7
disklabel: Can't read master boot record 0: Operation not supported by device
disklabel: ioctl DIOCGDINFO: Operation not supported by device
#

Anyone read SD cards?  Perhaps I was being too optimistic to think
they'd provide the same functionality as a CF...

Thanks
--sjg