[PATCH 1/6] ARM: dts: vf610: add USB PHY and controller
Shawn Guo
shawn.guo at freescale.com
Mon Jul 21 19:22:33 PDT 2014
On Fri, Jul 18, 2014 at 07:01:37PM +0200, Stefan Agner wrote:
> This adds USB PHY and USB controller nodes. Vybrid SoCs have two
> independent USB cores which each supports DR (dual role). However,
> real OTG is not supported since the OTG ID pin is not available.
>
> The PHYs are located within the anadig register range, hence we need
> to change the length of the anadig registers.
>
> Signed-off-by: Stefan Agner <stefan at agner.ch>
> ---
> arch/arm/boot/dts/vf610.dtsi | 46 +++++++++++++++++++++++++++++++++++++++++---
> 1 file changed, 43 insertions(+), 3 deletions(-)
>
> diff --git a/arch/arm/boot/dts/vf610.dtsi b/arch/arm/boot/dts/vf610.dtsi
> index 6a6190c..f6c3f02 100644
> --- a/arch/arm/boot/dts/vf610.dtsi
> +++ b/arch/arm/boot/dts/vf610.dtsi
> @@ -25,6 +25,8 @@
> gpio2 = &gpio3;
> gpio3 = &gpio4;
> gpio4 = &gpio5;
> + usbphy0 = &usbphy0;
> + usbphy1 = &usbphy1;
> };
>
> cpus {
> @@ -285,9 +287,25 @@
> gpio-ranges = <&iomuxc 0 128 7>;
> };
>
> - anatop at 40050000 {
> - compatible = "fsl,vf610-anatop";
> - reg = <0x40050000 0x1000>;
> + anatop: anatop at 40050000 {
> + compatible = "fsl,vf610-anatop", "syscon";
> + reg = <0x40050000 0x400>;
> + };
> +
> + usbphy0: usbphy at 40050800 {
> + compatible = "fsl,vf610-usbphy", "fsl,imx23-usbphy";
Since phy driver will match "fsl,vf610-usbphy" anyway, we do not need
"fsl,imx23-usbphy" here.
> + reg = <0x40050800 0x400>;
> + interrupts = <0 50 IRQ_TYPE_LEVEL_HIGH>;
> + clocks = <&clks VF610_CLK_USBPHY0>;
> + fsl,anatop = <&anatop>;
> + };
> +
> + usbphy1: usbphy at 40050c00 {
> + compatible = "fsl,vf610-usbphy", "fsl,imx23-usbphy";
> + reg = <0x40050c00 0x400>;
> + interrupts = <0 51 IRQ_TYPE_LEVEL_HIGH>;
> + clocks = <&clks VF610_CLK_USBPHY1>;
> + fsl,anatop = <&anatop>;
> };
>
> i2c0: i2c at 40066000 {
> @@ -309,6 +327,18 @@
> reg = <0x4006b000 0x1000>;
> #clock-cells = <1>;
> };
> +
> + usbdev0: usb at 40034000 {
> + compatible = "fsl,imx6q-usb", "fsl,imx27-usb";
It doesn't really make any sense to have "fsl,imx6q-usb" here. The
following one should be less confusing.
compatible = "fsl,vf610-usb", "fsl,imx27-usb";
Shawn
> + reg = <0x40034000 0x800>;
> + interrupts = <0 75 IRQ_TYPE_LEVEL_HIGH>;
> + clocks = <&clks VF610_CLK_USBC0>;
> + fsl,usbphy = <&usbphy0>;
> + dr_mode = "peripheral";
> + status = "disabled";
> + };
> +
> +
> };
>
> aips1: aips-bus at 40080000 {
> @@ -371,6 +401,16 @@
> status = "disabled";
> };
>
> + usbh1: usb at 400b4000 {
> + compatible = "fsl,imx6q-usb", "fsl,imx27-usb";
> + reg = <0x400b4000 0x800>;
> + interrupts = <0 76 IRQ_TYPE_LEVEL_HIGH>;
> + clocks = <&clks VF610_CLK_USBC1>;
> + fsl,usbphy = <&usbphy1>;
> + dr_mode = "host";
> + status = "disabled";
> + };
> +
> ftm: ftm at 400b8000 {
> compatible = "fsl,ftm-timer";
> reg = <0x400b8000 0x1000 0x400b9000 0x1000>;
> --
> 2.0.1
>
More information about the linux-arm-kernel
mailing list