Is USB stick dead ? Would someone like it to investigate ?
Julian H. Stacey
jhs at berklix.com
Fri Mar 7 14:08:20 UTC 2014
I have a "Hama" USB stick, 16G that creates no /dev/da* any more, though
it used to (tested on 2 PCs). Maybe it's dead ? The LED still flashes. Or just
gone weird ? Something I could fix with some CAM magic ?
Is it exhibit strangeness worthy of someone debugging ? (for
the sake of FreeSBD, not the stick) in which case I could post it to
whoever fancies improving FreeBSD ? (No valuable data on it).
9.2-RELEASE shows:
(da0:umass-sim0:0:0:0): READ(10). CDB: 28 00 01 d5 37 fe 00 00 01 00
(da0:umass-sim0:0:0:0): CAM status: CCB request completed with an error
(da0:umass-sim0:0:0:0): Retrying command
ugen1.3: <USB2.0> at usbus1 (disconnected)
umass0: at uhub3, port 1, addr 3 (disconnected)
(da0:umass-sim0:0:0:0): READ(10). CDB: 28 00 01 d5 37 fe 00 00 01 00
(da0:umass-sim0:0:0:0): CAM status: CCB request completed with an error
(da0:umass-sim0:0:0:0): Retrying command
(da0:umass-sim0:0:0:0): READ(10). CDB: 28 00 01 d5 37 fe 00 00 01 00
(da0:umass-sim0:0:0:0): CAM status: CCB request completed with an error
(da0:umass-sim0:0:0:0): Retrying command
(da0:umass-sim0:0:0:0): READ(10). CDB: 28 00 01 d5 37 fe 00 00 01 00
(da0:umass-sim0:0:0:0): CAM status: CCB request completed with an error
(da0:umass-sim0:0:0:0): Retrying command
(da0:umass-sim0:0:0:0): READ(10). CDB: 28 00 01 d5 37 fe 00 00 01 00
(da0:umass-sim0:0:0:0): CAM status: CCB request completed with an error
(da0:umass-sim0:0:0:0): Error 5, Retries exhausted
(da0:umass-sim0:0:0:0): SYNCHRONIZE CACHE(10). CDB: 35 00 00 00 00 00 00 00 00 00
(da0:umass-sim0:0:0:0): CAM status: CCB request completed with an error
(da0:umass-sim0:0:0:0): Retrying command
(da0:umass-sim0:0:0:0): SYNCHRONIZE CACHE(10). CDB: 35 00 00 00 00 00 00 00 00 00
(da0:umass-sim0:0:0:0): CAM status: CCB request completed with an error
(da0:umass-sim0:0:0:0): Error 5, Retries exhausted
(da0:umass-sim0:0:0:0): got CAM status 0x44
(da0:umass-sim0:0:0:0): fatal error, failed to attach to device
(da0:umass-sim0:0:0:0): lost device - 0 outstanding, 5 refs
(da0:umass-sim0:0:0:0): removing device entry
ugen1.3: <USB2.0> at usbus1
umass0: <USB2.0 DISK, class 0/0, rev 2.00/1.00, addr 3> on usbus1
umass0: SCSI over Bulk-Only; quirks = 0x0100
umass0:2:0:-1: Attached to scbus2
da0 at umass-sim0 bus 0 scbus2 target 0 lun 0
da0: <USB2.0 DISK 0.00> Removable Direct Access SCSI-4 device
da0: 40.000MB/s transfers
da0: 15015MB (30750720 512 byte sectors: 255H 63S/T 1914C)
da0: quirks=0x2<NO_6_BYTE>
10.0 similar
devd -d does start doing the right thing eg:
Processing event '+umass0 at bus=2 hubaddr=1 port=1 devaddr=3
interface=0 vendor=0x048d product=0x1170 devclass=0x00 devsubclass=0x00
sernum="0000000004DA3CC3" release=0x0100 mode=host intclass=0x08
intsubclass=0x06 intprotocol=0x50 on uhub2'
Executing 'sleep 4; rm -f /devusb/hama16g; ln -s /dev/`echo
umass0|sed -e s/umass/da/`s1 /devusb/hama16g;mkdir /media/hama16g;
chmod 777 /media/hama16g; chown jhs:staff /media/hama16g;
`/site/usr/local/bin/fsck.sh` -y -t msdosfs /devusb/hama16g;mount
-t msdosfs /devusb/hama16g /media/hama16g'
Can't stat /devusb/hama16g
** /devusb/hama16g
Can't open `/devusb/hama16g'
mount_msdosfs: /devusb/hama16g:
My /devusb/hama16g@ -> /dev/da0s1 (works for other sticks) is left
dangling as no /dev/da* to point to.
2nd PC usbconfig shows:
ugen5.2: <DISK USB2.0> at usbus5, cfg=0 md=HOST spd=HIGH (480Mbps) pwr=ON (480mA)
(seems a lot of power for a stick)
(A same size 16G USB3 stick (on same USB 2 socket) reports
ugen5.2: <Mass Storage Device JetFlash> at usbus5, cfg=0 md=HOST spd=HIGH (480Mbps) pwr=ON (500mA)
(& the USB3 stick mounts OK))
usbconfig -u 5 -a 2 do_request 0x81 0x06 0x2200 0 0x100
REQUEST = <ERROR>
usbconfig -u 5 -a 2 dump_curr_config_desc
ugen5.2: <DISK USB2.0> at usbus5, cfg=0 md=HOST spd=HIGH (480Mbps) pwr=ON (480mA)
Configuration index 0
bLength = 0x0009
bDescriptorType = 0x0002
wTotalLength = 0x0020
bNumInterfaces = 0x0001
bConfigurationValue = 0x0001
iConfiguration = 0x0000 <no string>
bmAttributes = 0x0080
bMaxPower = 0x00f0
Interface 0
bLength = 0x0009
bDescriptorType = 0x0004
bInterfaceNumber = 0x0000
bAlternateSetting = 0x0000
bNumEndpoints = 0x0002
bInterfaceClass = 0x0008
bInterfaceSubClass = 0x0006
bInterfaceProtocol = 0x0050
iInterface = 0x0000 <no string>
Endpoint 0
bLength = 0x0007
bDescriptorType = 0x0005
bEndpointAddress = 0x0001 <OUT>
bmAttributes = 0x0002 <BULK>
wMaxPacketSize = 0x0200
bInterval = 0x0001
bRefresh = 0x0000
bSynchAddress = 0x0000
Endpoint 1
bLength = 0x0007
bDescriptorType = 0x0005
bEndpointAddress = 0x0082 <IN>
bmAttributes = 0x0002 <BULK>
wMaxPacketSize = 0x0200
bInterval = 0x0001
bRefresh = 0x0000
bSynchAddress = 0x0000
usbconfig -u 5 -a 2 dump_device_desc
ugen5.2: <DISK USB2.0> at usbus5, cfg=0 md=HOST spd=HIGH (480Mbps) pwr=ON (480mA)
bLength = 0x0012
bDescriptorType = 0x0001
bcdUSB = 0x0200
bDeviceClass = 0x0000
bDeviceSubClass = 0x0000
bDeviceProtocol = 0x0000
bMaxPacketSize0 = 0x0040
idVendor = 0x048d
idProduct = 0x1170
bcdDevice = 0x0100
iManufacturer = 0x0001 <retrieving string failed>
iProduct = 0x0002 <retrieving string failed>
iSerialNumber = 0x0003 <retrieving string failed>
bNumConfigurations = 0x0001
usbconfig -u 5 -a 2 power_on
ls /dev/da*
ls: No match.
xs usbconfig -u 5 -a 2 power_off
shell hangs
Cheers,
Julian
--
Julian Stacey, BSD Unix Linux C Sys Eng Consultant, Munich http://berklix.com
Reply below not above, like a play script. Indent old text with "> ".
Send plain text. No quoted-printable, HTML, base64, multipart/alternative.
Boycott Putin's Russia, invaders of Ukraine
More information about the freebsd-usb
mailing list