UPGRADE YOUR BROWSER

We have detected your current browser version is not the latest one. Xilinx.com uses the latest web technologies to bring you the best online experience possible. Please upgrade to a Xilinx.com supported browser:Chrome, Firefox, Internet Explorer 11, Safari. Thank you!

cancel
Showing results for 
Search instead for 
Did you mean: 
5,195 Views
Registered: ‎12-23-2011

USB storage using bare metal application On Zedboard

Hello,

 

  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

Monali

 

 

0 Kudos
6 Replies
Xilinx Employee
Xilinx Employee
5,187 Views
Registered: ‎08-02-2007

Re: USB storage using bare metal application On Zedboard

hi,

 

you can refer the bist design targeting zc706 given in this link.

https://www.xilinx.com/support/documentation/boards_and_kits/zc706/2014_4/xtp242-zc706-bist-c-2014-4.pdf

 

the usb is used as a storage element in this design.

 

-hs

----------------------------------------------------------------------------------------------
Kindly note- Please mark the Answer as "Accept as solution" if information provided is helpful.

Give Kudos to a post which you think is helpful and reply oriented.
----------------------------------------------------------------------------------------------
0 Kudos
5,183 Views
Registered: ‎12-23-2011

Re: USB storage using bare metal application On Zedboard

Hi

 

Thanks for immediate response. I checked the link you shared but it also contains an example which takes ZC702 board as USB storage. What I need is Board to act as host and some USB flash drive e.g. pendrive connected externally to USB port available on the board act as storage device. I want to save data stored on PS DDR to external USB flash drive.

 

 

 

Thank you

Monali

0 Kudos
5,125 Views
Registered: ‎12-23-2011

Re: USB storage using bare metal application On Zedboard

Hello hs,
Will you please check this link once. 
http://www.wiki.xilinx.com/Zynq+Standalone+USB+device+driver
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,
Monali

0 Kudos
Visitor haydendekker
Visitor
2,531 Views
Registered: ‎04-03-2018

Re: USB storage using bare metal application On Zedboard

I'm having this same problem. I want to connect a USB stick to the zynq ps so I'm trying to use the standalone bsp in Host mode and I'm having trouble understanding how to use the UsbPs API in HOST mode. I was being sent to the API documentation directly and as such did not see the page Monali has referenced stating that there is no support for Host mode in the Znyq standalone ps system. Could you confirm this is the case?

0 Kudos
Xilinx Employee
Xilinx Employee
2,521 Views
Registered: ‎01-21-2008

Re: USB storage using bare metal application On Zedboard

Hi haydendekker,

 

Yes, Xilinx has two sets of USB driver support. One is called Standalone OS (Bare-metal drivers) and Embedded Linux OS sets of drivers. So Standalone OS (Bare metal) drivers, we do have support for Mass storage (Peripheral mode) device drivers only. Rest of the USB mode i.e. HOST and OTG driver supports are available in only Embedded Linux drivers (http://www.wiki.xilinx.com/Linux+Drivers)

 

Writing customized Bare-metal drivers for HOST/OTG, is possible but it is very tricky and time consuming. But in Embedded Linux OS, there are xHSI and Design-ware driver layers which help HOST/OTG mode support very efficiently as there are other File System layers involved on top of it for HOST/OTG mode in Linux OS layers. If you want to write your own customized HOST drivers then all the h/w USB IF register information is available in TRM. But we prefer Embedded Linux OS, if user are going for HOST or OTG driver support.

0 Kudos
Visitor koray
Visitor
1,255 Views
Registered: ‎09-19-2018

Re: USB storage using bare metal application On Zedboard

I would like to write my customized bare-metal drivers for HOST/OTG.
Could you please advise me about it? What is the initial steps? Any kind of user guide to do this?

Thanks,
Koray
0 Kudos