AR# 70625

2017.3-2018.1 Zynq UltraScale+ MPSoC: How to get a USB 2.0 standard interface working in PetaLinux

Description

To use the USB controller in Zynq UltraScale+ MPSoC in USB 2.0 only mode, you are required to disable the USB 3.0 in the Processor Configuration Wizard (PCW)

However, just disabling this checkbox does not apply required changes to the device-tree in PetaLinux 2017.3-2018.1.

To make these changes in PetaLinux 2017.3-2018.1, manual updates to the device-tree are required.

Solution

To manually add the required changes to the device-tree and enable USB 2.0, please add the following entry into the <plnx-proj-root>/project-spec/meta-user/recipes-bsp/device-tree/files/system-user.dtsi:

&dwc3_0 {
  status = "okay";
  dr_mode = "peripheral";
  snps,dis_u2_susphy_quirk;
  snps,dis_u3_susphy_quirk;
  maximum-speed = "high-speed";
};
 
&usb0 {
    status = "okay";
    /delete-property/ clocks;
    /delete-property/ clock-names;
    clocks = <0x3 0x20>;
    clock-names = "bus_clk";
};
AR# 70625
Date 04/23/2018
Status Active
Type General Article
Devices
Tools
IP
Boards & Kits