Hello. I am not familiar with mx25, but can say some hints. Четверг, 6 марта 2014, 7:23 -03:00 от Fabio Estevam <festevam@xxxxxxxxx>: > On Thu, Mar 6, 2014 at 1:36 AM, Peter Chen <Peter.Chen@xxxxxxxxxxxxx> wrote: > > > Do you have usbmisc node? usbmisc is not probed or its probe has failed. > > Thanks, Peter. usbmisc node was 'disabled' at imx25.dtsi. I removed > the 'disabled' and now the probe goes a bit further: > > ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver > usbcore: registered new interface driver usb-storage > 53ff4400.usb supply vbus not found, using dummy regulator > ci_hdrc ci_hdrc.0: doesn't support gadget > ci_hdrc ci_hdrc.0: EHCI Host Controller > ci_hdrc ci_hdrc.0: new USB bus registered, assigned bus number 1 > ci_hdrc ci_hdrc.0: USB 2.0 started, EHCI 1.00 > hub 1-0:1.0: USB hub found > hub 1-0:1.0: 1 port detected > .... > usb 1-1: new low-speed USB device number 2 using ci_hdrc > usb 1-1: device descriptor read/64, error -71 > usb 1-1: device descriptor read/64, error -71 > usb 1-1: new low-speed USB device number 3 using ci_hdrc > usb 1-1: device descriptor read/64, error -71 > usb 1-1: device descriptor read/64, error -71 > usb 1-1: new low-speed USB device number 4 using ci_hdrc > usb 1-1: device not accepting address 4, error -71 > ... > usb 1-1: new low-speed USB device number 5 using ci_hdrc > usb 1-1: device not accepting address 5, error -71 > hub 1-0:1.0: unable to enumerate USB device on port 1 > > My changes now look like this: > > diff --git a/arch/arm/boot/dts/imx25-pdk.dts b/arch/arm/boot/dts/imx25-pdk.dts > index 7a6d21f..6f17d11 100644 > --- a/arch/arm/boot/dts/imx25-pdk.dts > +++ b/arch/arm/boot/dts/imx25-pdk.dts > @@ -107,3 +107,8 @@ > fsl,uart-has-rtscts; > status = "okay"; > }; > + > +&usbhost1 { > + phy_type = "serial"; > + status = "okay"; > +}; > diff --git a/arch/arm/boot/dts/imx25.dtsi b/arch/arm/boot/dts/imx25.dtsi > index 32f760e..7fa123b 100644 > --- a/arch/arm/boot/dts/imx25.dtsi > +++ b/arch/arm/boot/dts/imx25.dtsi > @@ -482,13 +482,17 @@ > }; > > usbphy1: usbphy@1 { > - compatible = "nop-usbphy"; > - status = "disabled"; > + compatible = "usb-nop-xceiv"; > + clocks = <&clks 0>; Dummy clk? > + clock-names = "main_clk"; > + status = "okay"; > }; > > usbphy2: usbphy@2 { > - compatible = "nop-usbphy"; > - status = "disabled"; > + compatible = "usb-nop-xceiv"; > + clocks = <&clks 0>; > + clock-names = "main_clk"; > + status = "okay"; > }; > > usbotg: usb@53ff4000 { > @@ -498,6 +502,7 @@ > clocks = <&clks 9>, <&clks 70>, <&clks 8>; > clock-names = "ipg", "ahb", "per"; Why here three clk? Chipidea driver requires only one. > fsl,usbmisc = <&usbmisc 0>; > + fsl,usbphy = <&usbphy1>; > status = "disabled"; > }; > > @@ -508,6 +513,7 @@ > clocks = <&clks 9>, <&clks 70>, <&clks 8>; > clock-names = "ipg", "ahb", "per"; > fsl,usbmisc = <&usbmisc 1>; > + fsl,usbphy = <&usbphy2>; > status = "disabled"; > }; > > @@ -517,7 +523,6 @@ > clocks = <&clks 9>, <&clks 70>, <&clks 8>; > clock-names = "ipg", "ahb", "per"; > reg = <0x53ff4600 0x00f>; > - status = "disabled"; > }; > > dryice@53ffc000 { > > Let me know if you have some other suggestion. I have added support for i.MX27 recently. You can use this as an example for i.MX25. https://git.kernel.org/cgit/linux/kernel/git/next/linux-next.git/commit/?id=a2e502c214ae65a3e0871e6216f1bc105524d9ad https://git.kernel.org/cgit/linux/kernel/git/next/linux-next.git/commit/?id=9089ce520f6fdcb3c921a12d24834197251bd56f --- ��.n��������+%������w��{.n�����{���)��jg��������ݢj����G�������j:+v���w�m������w�������h�����٥