Hi John,
what you mention about device tree is really interesting. I am also using Petalinux 2017.1 to get a template of the device tree. Then, I modify this template according to my project (for example, to add "spidev" devices or to set parameters of different Linux drivers).
If I don't modify the device tree for USB with the TE0820 + our carrier, USB is working perfectly, but as an USB2 device. USB3 peripherals also work, but as USB2 peripherals (in compatibility mode). So, I modify the device tree to tell the Linux driver that my USB is 3.0 . The modifications are:
On the node dwc3@fe200000 (USB Phy), which is inside the node usb0, I include these lines:
snps,usb3_lpm_capable; #to indicate that USB3 is compatible with link power management
phy-names = "usb3-phy"; #to indicate that there is a USB3 Phy (in this case the zynq)
phys = <&lane1 0x4 0x0 0x2 0x5f5e100>; #phy configuration
It would be really helpful for me if you could confirm that in your case USB is working as USB3 host. Could I have a look at the device tree (.dts or .dtc)?
Thanks in advance,
Ignacio