The controller we use is xc7z100 and we chose tusb1210 as usb phy just like zedboard. Linux kernel is downloaded from https://github.com/analogdevicesinc/linux ,version 4.9.0. When kernel is be loaded we find that usb phy vid/pid cannot be read through ulpi in ulpi_init(). error message: "ci_hdrc ci_hdrc.0: unable to init phy: -110 ci_hdrc: probe of ci_hdrc.0 failed with error -110" It's interesting that signal like 60M clock out of phy and reset gpio from zynq pl is working right. At the begining,we doubt that we bought the fake IC(-_-),so we switched the phy on zedboard and our own board. The fact that the phy we bought is just work fine on the zedboard. After weeks' frustrating answer seeking,we notice that xilinx board kit use USB3320 as usb phy. So we change the 1210 to 3320 and modified peripheral circuit. Finally,this measures worked!Usb can work properly.So 1210 may be cann't be use with xc7z100 or our circuit is not right.Whatever,hope this experience can help developers who meet the same problem.