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

USB Host on Microzed with Petalinux 2017.2

4 posts / 0 new
inchara's picture
USB Host on Microzed with Petalinux 2017.2

Does anyone have the USB host working on Microzed SOM board with 2017.2 tools? Tried all options and all the solutions out there on the Avnet and Xilinx forums but still can't get it working.
1) USB Host works with prebuilt Pulsar Linux image available on
2) USB Host works with prebuilt Vivado / Petalinux 2014.4 image available on
3) USB host doesn't work with 2017.2 tools  - a basic platform design (no custom PL components) and then Petalinux build.
Followed several suggestions across Xilinx/Microzed forums, app notes, tutorials, etc. -- looked at the device tree entries, interrupts,reset and others.. still the USB is not detected.
(1) and (2) means that the hardware is good. Checked reset, 5V etc.. all good. The board is not configured for the USB device mode, it is still what came out of factory - USB Host mode.
with (3) there is hardly anything in the hdf / bit file because it is just opening the Vivado and adding a Zynq IP and then generating the bit/hdf files. So I guess the platform is also good. That leaves the Petalinux 2017.2.
Opened a ticket with Xilinx support, and have been exchanging files/logs and they keep telling what is available on the internet forums (for other boards / tool versions) and have been of zero help even after several days.
Would Avnet or be able to provide a Petalinux 2017.2 project for Microzed SOM with all the peripherals working?
Any help would be appreciated.

zedhed's picture
RE: USB Host on Microzed with Petalinux 2017.2

Hi inchara,

We ran into the same problems when putting together the 2017.2 PetaLinux BSPs for Microzed with no progress on this either. There do not appear to be any changes to the Linux USB Device Driver so I am not sure why this is not working:

My next step is to try PetaLinux 2017.2 on a ZC702
board. Please let us know if you discover a solution.

Best Regards,


inchara's picture

We rolled back to 2014.4 (Vivado + petalinux)  just for the sake of that feature which is very important to one of our projects.  We also tested 2016.4 suite which didn't work either. We thought of testing 2015.4, but had to take a call not spending unnecessary effort on debugging the tool issues, anyways both 2015 and 2014 are more than 3 years old  so decided to stick to the working 2014.4.
I'm surprised that this problem hasn't surfaced well enough for Xilinx/Avnet to act. Either Microzed board users are very small in number OR whoever is using Microzed are using old Vivado versions!! 
ZC702 should be working because it is Xilinx's board (or at least Xilinx MUST own the problem and support ). Looks like issue is something related to the phandle  / interrupt configuration in the petalinux driver or dts.
I'm afraid that the same USB phy (3320) is used in many other boards which we use on other projects and petalinux might break USB feature on many other boards if it is something related to SW/ driver compatibility with HW. If it is only SW then it is good, there is a hope that sometime in future Xilinx  will resolve this (when it fails on many boards and lots of users are affected).
You also kindly let us know if you get it working on 2017.2 +.
Best regards,

urbite's picture
My last customer project used

My last customer project used a Picozed board and Petalinux 2015.4. USB host mode worked as a USB thumb drive was recognized and accessible when plugging it in. However, I seem to recall that it wasn't 100% reliable between either builds or reboots - can't remember exactly. I don't remember having to do any manual fixup of device tree - it just (gasp!) worked when first tried.