On Thu, 7 Sep 2006, Peter Rasmussen wrote:

> > It looks all right to me too.  As far as I can tell from just the 
> > debugging messages.  It would be better to post the output from dmesg; 
> > that includes _all_ the kernel messages, not just the debugging ones.
> >
> >   
> In general I hate cluttering up a mailing list with unuseful info so I 
> attempted to do do as you told, posting the debugging logs, which I 
> parsed as being /var/log/debug.

My fault; I should have been more explicit.


> I insert the MP3 device and it seems to be OK. I can mount it with the 
> following command:
> 
> # mount -t vfat /dev/sda1 /mnt/mp3
> 
> And I can execute the following:
> 
> # ls -l /mnt/mp3/
> total 16
> drwxr-xr-x 2 root root 4096 2000-10-30 14:45 fm
> drwxr-xr-x 7 root root 4096 2004-12-13 05:43 music
> -r-xr-xr-x 1 root root  438 2000-10-30 14:45 settings.dat
> drwxr-xr-x 2 root root 4096 2000-10-30 14:45 voice
> 
> 
> But when I attempt the following:
> # df
> Filesystem           1K-blocks      Used Available Use% Mounted on
> /dev/hda2              9459936   7329428   1642208  82% /
> /dev/hda3              9612636   8746544    377792  96% /disk/hda3
> /dev/hda4             19328820  16558392   1788564  91% /disk/hda4
> df: `/mnt/mp3': Input/output error
> 
> 
> I get this in /var/log/messages:
> 
> Sep  7 22:09:22 kultorvet kernel: usb 1-2: reset full speed USB device 
> using ohci_hcd and address 10
> Sep  7 22:09:29 kultorvet last message repeated 5 times
> Sep  7 22:09:29 kultorvet kernel: sd 4:0:0:0: SCSI error: return code = 
> 0x00070000
> 
> And this in /var/log/debug:

...

> Sep  7 22:09:21 kultorvet kernel: usb-storage: 
> usb_stor_bulk_transfer_sglist: xfer 512 bytes, 1 entries
> Sep  7 22:09:21 kultorvet kernel: ohci_hcd 0000:00:02.0: urb c484b6c0 
> path 2 ep1in 1e120000 cc 1 --> status -84
> Sep  7 22:09:21 kultorvet kernel: usb-storage: Status code -84; 
> transferred 448/512

This is where the problem starts.  The device was asked to transfer 512 
bytes.  It sent 7 64-byte packets and then a protocol error occurred;
probably the computer received no response at all from the device when it 
asked for the last packet.

> Sep  7 22:09:21 kultorvet kernel: usb-storage: -- unknown error
> Sep  7 22:09:21 kultorvet kernel: usb-storage: Bulk data transfer result 0x4
> Sep  7 22:09:21 kultorvet kernel: usb-storage: -- transport indicates 
> error, resetting
> Sep  7 22:09:21 kultorvet kernel: usb-storage: storage_pre_reset
> Sep  7 22:09:21 kultorvet kernel: ohci_hcd 0000:00:02.0: GetStatus 
> roothub.portstatus [1] = 0x00100103 PRSC PPS PES CCS
> Sep  7 22:09:22 kultorvet kernel: hub 1-0:1.0: state 7 ports 3 chg 0000 
> evt 0004
> Sep  7 22:09:22 kultorvet kernel: ohci_hcd 0000:00:02.0: GetStatus 
> roothub.portstatus [1] = 0x00100103 PRSC PPS PES CCS
> Sep  7 22:09:22 kultorvet kernel:  usbdev1.10_ep81: ep_device_release 
> called for usbdev1.10_ep81
> Sep  7 22:09:22 kultorvet kernel:  usbdev1.10_ep04: ep_device_release 
> called for usbdev1.10_ep04
> Sep  7 22:09:22 kultorvet kernel: usb-storage: storage_post_reset
> Sep  7 22:09:22 kultorvet kernel: usb-storage: 
> usb_reset_composite_device returns 0

The device was reset successfully.

> Sep  7 22:09:22 kultorvet kernel: usb-storage: scsi cmd done, result=0x70000
> Sep  7 22:09:22 kultorvet kernel: usb-storage: *** thread sleeping.
> Sep  7 22:09:22 kultorvet kernel: usb-storage: queuecommand called
> Sep  7 22:09:22 kultorvet kernel: usb-storage: *** thread awakened.
> Sep  7 22:09:22 kultorvet kernel: usb-storage: Command READ_10 (10 bytes)
> Sep  7 22:09:22 kultorvet kernel: usb-storage:  28 00 00 00 00 38 00 00 
> 01 00
> Sep  7 22:09:22 kultorvet kernel: usb-storage: Bulk Command S 0x43425355 
> T 0x35 L 512 F 128 Trg 0 LUN 0 CL 10
> Sep  7 22:09:22 kultorvet kernel: usb-storage: 
> usb_stor_bulk_transfer_buf: xfer 31 bytes
> Sep  7 22:09:24 kultorvet kernel: ohci_hcd 0000:00:02.0: urb c484b0c0 
> path 2 ep4out 6e0e0000 cc 6 --> status -71
> Sep  7 22:09:24 kultorvet kernel: usb-storage: Status code -71; 
> transferred 0/31

The command was retried.  This time the device didn't accept the command 
at all.  The rest of the log shows repeated failed attempts to retry the 
command.

> And following eg.: ls -l /mnt/mp3/music
> 
> Doesn't return on the command line, but continues with stuff like this 
> in /var/log/debug:

Once the device has stopped responding, nothing more you try to do with
it can succeed.

> So even if this at some point looks like it works, it doesn't look like 
> it works all the way, or perhaps all the time.
> 
> The command "lsusb -v" provides the following for this device:
> 
> Bus 001 Device 010: ID 066f:8000 SigmaTel, Inc.
> Device Descriptor:
>   bLength                18
>   bDescriptorType         1
>   bcdUSB               1.10
>   bDeviceClass            0 (Defined at Interface level)
>   bDeviceSubClass         0
>   bDeviceProtocol         0
>   bMaxPacketSize0        64
>   idVendor           0x066f SigmaTel, Inc.
>   idProduct          0x8000
>   bcdDevice           10.01
>   iManufacturer           1 <FOXDA Technology Industrial>
>   iProduct                2 <FM6602 MP3 PLAYER>  
>   iSerial                 3 5044C10525BC4309
>   bNumConfigurations      1
>   Configuration Descriptor:
>     bLength                 9
>     bDescriptorType         2
>     wTotalLength           32
>     bNumInterfaces          1
>     bConfigurationValue     1
>     iConfiguration          4 USB/MSC LCD Player
>     bmAttributes         0xc0
>       Self Powered
>     MaxPower              100mA
>     Interface Descriptor:
>       bLength                 9
>       bDescriptorType         4
>       bInterfaceNumber        0
>       bAlternateSetting       0
>       bNumEndpoints           2
>       bInterfaceClass         8 Mass Storage
>       bInterfaceSubClass      6 SCSI
>       bInterfaceProtocol     80 Bulk (Zip)
>       iInterface              5 Internal Device
>       Endpoint Descriptor:
>         bLength                 7
>         bDescriptorType         5
>         bEndpointAddress     0x81  EP 1 IN
>         bmAttributes            2
>           Transfer Type            Bulk
>           Synch Type               None
>           Usage Type               Data
>         wMaxPacketSize     0x0040  bytes 64 once
>         bInterval               0
>       Endpoint Descriptor:
>         bLength                 7
>         bDescriptorType         5
>         bEndpointAddress     0x04  EP 4 OUT
>         bmAttributes            2
>           Transfer Type            Bulk
>           Synch Type               None
>           Usage Type               Data
>         wMaxPacketSize     0x0040  bytes 64 once
>         bInterval               0
> 
> Let me know if there is a test case you want me to do.

I spent a very long time with someone else trying to get his FOXDA device 
to work.  We never succeeded.  He even mailed the device to me so I could 
try it on my computer; I didn't see quite the same sorts of errors as he 
did but it was still extremely finicky.  For instance, filling more than 
about 2/3 of its memory would usually cause it to crash.

Apparently the device has some special requirements that we don't know 
about.  Without knowing what they are, it's impossible to fulfill them.

About the only approach I can think of is to get in touch with the 
manufacturer.

Alan Stern



-------------------------------------------------------------------------
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
_______________________________________________
Linux-usb-users@lists.sourceforge.net
To unsubscribe, use the last form field at:
https://lists.sourceforge.net/lists/listinfo/linux-usb-users

Reply via email to