USB Host mass storage device driver problems

取消
显示结果 
显示  仅  | 搜索替代 
您的意思是: 

USB Host mass storage device driver problems

755 次查看
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

标签 (1)
0 项奖励
回复
1 回复

274 次查看
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 项奖励
回复