Hello.

I am not familiar with mx25, but can say some hints.

Четверг,  6 марта 2014, 7:23 -03:00 от Fabio Estevam <feste...@gmail.com>:
> On Thu, Mar 6, 2014 at 1:36 AM, Peter Chen <peter.c...@freescale.com> 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

---

Reply via email to