On Wed, Aug 6, 2014 at 9:44 AM, Priebe, Sebastian <Sebastian.Priebe@xxxxxxxxx> wrote: > And in our dts we have: > &usbotg { > compatible = "imx-udc-mx27"; This is not correct. > pinctrl-names = "default"; > pinctrl-0 = <&pinctrl_usbotg>; > dr_mode = "peripheral"; > phy_type = "utmi_wide"; No utmi in mx27. > status = "okay"; > /* what to do with workaround = FLS_USB2_WORKAROUND_ENGCM09152 ??? */ This erratum does not apply to mx27. > }; > > In our config we have: > CONFIG_IMX_HAVE_PLATFORM_FSL_USB2_UDC=y This option is for the non-dt driver. Device tree driver needs the chipidea that I showed earlier. As I mentioned before: in your dts file you should do something like arch/arm/boot/dts/imx27- eukrea-cpuimx27.dtsi: &usbotg { pinctrl-names = "default"; pinctrl-0 = <&pinctrl_usbotg>; dr_mode = "otg"; phy_type = "ulpi"; disable-over-current; status = "okay"; }; You don't need to pass the compatible line there. The compatible line is already passed in the imx27.dtsi file: usbotg: usb@10024000 { compatible = "fsl,imx27-usb"; reg = <0x10024000 0x200>; interrupts = <56>; clocks = <&clks IMX27_CLK_USB_IPG_GATE>; fsl,usbmisc = <&usbmisc 0>; status = "disabled"; }; Also, if you still have issues please start a thread at arm linux kernel or usb-devel mailing list as it would be a better place to discuss this -- To unsubscribe from this list: send the line "unsubscribe devicetree" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html