USB Host mass storage device driver problems

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

USB Host mass storage device driver problems

738 Views
Dec
Contributor III

Hi,

 

I'm very new to USB and currently trying to write a driver for a usb mass storage device using the MCF53010.

As the advertised USB stack isn't available I've start with an example for the MCF537X which only communicated with a mouse.

 

I can enumerate the device, read various config data, manufacturer strings etc but I cannot seem to get a response to any bulk transfer commands.

The command gets sent without error (according to the USB OTG registers) but I never get any reply from the device.

My problem seems very similar to one reported here https://community.freescale.com/thread/36970 but the OP didn't follow up any solution.

 

I don't have a USB logger, however I've used USBLYZER with the device on the pc to compare data etc.

The only thing I can see which is different is when requesting the device descriptor...

PC : 09 02 20 00 01 01 00 80 64 09 04 00 00 02 08 06 50 00 07 05 81 02 00 02 00 07 05 02 02 00 02 00

CF : 09 02 20 00 01 01 00 80 32 09 04 00 00 02 08 06 50 00 07 05 81 02 40 00 00 07 05 02 02 40 00 00

 

When connected to CF the device is reported 0x64 for max power but 0x32 on my CF.

Also, for each endpoint the PC sees a data size of 0x0200 (512 bytes) wheres the CF sees 0x0040 (64 bytes).

 

I'm completey stuck for ideas at the moment and don't understand how or why the above data would be different.  Can anyone help or suggest what i should be looking at ?

Thanks

Paul

Labels (1)
0 Kudos
Reply
1 Reply

257 Views
Dec
Contributor III

I've now accounted for the difference in the reported max data size and current requirements.

This appears to be due to the speed at which the msd is connecting to the Coldfire.

 

I'm completely stuck on the rest of the problem.  I USB analyzer would be good, but I've not got one of those :smileysad:

0 Kudos
Reply