Re: problem with isp1760 and mass storage

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Fri, 31 Jul 2009, David MOUSSAUD wrote:

> Hi all,
> 
> I use a nxp isp1760 connected to a freescale mpc8270 (custom board).
> 
> I'm using the driver from the kernel tree. the controller is well 
> initialized and my devices are created by udev.
> The running kernel is a 2.6.26.8.
> 
> I have problems when I try to access to my device /dev/sda1 either with 
> dd, fdisk or mount.

...

> I think i have the turnarround error described by NXP in their FAQ. But 
> reading the messages of the mailing list, I think i am not the only only 
> one in this case and the problem comes often from the mass storage devices.
> 
> It might appends that during a data transfer, the devices stops sending 
> an ack and the host received only part of the data which might lead to 
> problems.
> 
> Here is the complete trace :

The problem is here at the end:

> usb-storage: *** thread awakened.
> usb-storage: Command READ_10 (10 bytes)
> usb-storage:  28 00 00 00 00 00 00 00 20 00
> usb-storage: Bulk Command S 0x43425355 T 0xf L 16384 F 128 Trg 0 LUN 0 CL 10
> usb-storage: usb_stor_bulk_transfer_buf: xfer 31 bytes
> usb-storage: Status code 0; transferred 31/31
> usb-storage: -- transfer complete
> usb-storage: Bulk command transfer result=0
> usb-storage: usb_stor_bulk_transfer_sglist: xfer 16384 bytes, 4 entries

The kernel submits 4 URBs, each of length 4096, and each with 
URB_SHORT_NOT_OK set.

> Reloading ptd c79621e0/c7daf140... qh c796334c readed: 512 of 4096 done: 
> 00000000 cur: 00000001
> Reloading ptd c7962200/c7daf1c0... qh c796334c readed: 0 of 4096 done: 
> 00000000 cur: 00000001

Somewhere in here the isp1760 should have returned an error because it
got a short read and URB_SHORT_NOT_OK was set.  But it didn't.  Instead
it continued trying to read.

> isp1760 isp1760.0: short bulk, 13 instead 4096 with URB_SHORT_NOT_OK flag.

This time it did return an error because it got 13 bytes rather than
4096.  However the damage has already been done.

> Reloading ptd c7962220/c7daf240... qh c796334c readed: 0 of 4096 done: 
> 00000000 cur: 00000001
> usb-storage: command_abort called
> usb-storage: usb_stor_stop_transport called
> usb-storage: -- cancelling sg request

Alan Stern

--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Media]     [Linux Input]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Old Linux USB Devel Archive]

  Powered by Linux