Sorry, you need to enable JavaScript to visit this website.

USB storage using bare metal application On Zedboard

5 posts / 0 new
USB storage using bare metal application On Zedboard

  It seems many people have tried to access USB storage device connected to Zynq PS externally, through bare metal application. But unfortunately I could not get any solution on it. We are trying the same again.
We could initialise USB storage device trough bare metal application, but unable to get its interrupt event so that we can start storage.
We are using Zedboard
Tool : SDK 2015.4
We cannot move to linux as we have other limitations. If anyone has gone beyond initialising USB trough bare metal, please provide some direction.
Or is it like it is very difficult to implement USB storage in bare metal?
Thank you

Hi Monali,

Hi Monali,

Have you looked at the usb and usbps examples located in SDK located at 


to see if any of them cover what you are trying to do?



Yes, we have checked the usbps examples. Most of them are configuring USB device as HID or as Slave device. we want to configure ZYNQ device as host and to store streaming data through VDMA S2MM channel  to PS DDR and from DDR to slave device ( USB mass storage device ).

Hello Josh,

Hello Josh,
Will you please check this link once.
It says HOST and OTG mode are not supported by standalone drivers. But it is stated as limitation to the driver. Does that mean it is not at all possible to implement OTG mode using standalone drivers.
Thanks and Regards,

RE: USB storage using bare metal application On Zedboard

Hi Monali,

Use of the USB interface has been best supported under Linux. It should be possible to get it working under standalone, but I am guessing that you would spend a lot of development work to get it to the point where you can enumerate client devices and move data in the direction you want.

You are correct, HOST and OTG functionality are not supported by the standalone drivers since you need different USB stack functionality for those modes.

Have you looked into Micrium RTOS?

Micrium also has a USB host stack that works with the Xilinx EHCI controller.