02-20-2017 02:13 PM
I am trying to port our application from petalinux14.4 to petalinux 16.4.
the old dts files contained the following node entry for EHCI controller
usb@e0002000 {
compatible = "xlnx,zynq-usb-2.20a", "chipidea,usb2"; #PLEASE NOTE THESE STRINGS
status = "okay";
clocks = <0x00000001 0x0000001c>;
interrupt-parent = <0x00000003>;
interrupts = <0x00000000 0x00000015 0x00000004>;
reg = <0xe0002000 0x00001000>;
phy_type = "ulpi";
dr_mode = "host";
usb-reset = <0x00000005 0x00000007 0x00000000>;
};
The 2016.4 EHCI driver's compatibility string is very different (work-shared/plnx_arm/kernel-source/drivers/usb/host/
ehci-xilinx-of.c)
static const struct of_device_id ehci_hcd_xilinx_of_match[] = {
{.compatible = "xlnx,xps-usb-host-1.00.a",},
{},
};
MODULE_DEVICE_TABLE(of, ehci_hcd_xilinx_of_match);
As a result, the echi controller does not get initialized.
Shall I get Vivado 2016.4 to re-generate the hdf file and use that one? (Manually changing the string alone did not make it work; there may be other changes involved, I presume)
Thanks
Om.
02-21-2017 12:49 AM
hi,
you are right. the information about configuring the kernel and a sample dts is documented in this link.
http://www.wiki.xilinx.com/Zynq+Linux+USB+Device+Driver
--hs
02-20-2017 07:27 PM
I realized that I needed to select the chipidea EHCI controller. The problem ceased to exist once I made that selection.
02-21-2017 12:49 AM
hi,
you are right. the information about configuring the kernel and a sample dts is documented in this link.
http://www.wiki.xilinx.com/Zynq+Linux+USB+Device+Driver
--hs