aboutsummaryrefslogtreecommitdiffstats
path: root/arch
diff options
context:
space:
mode:
authorStefan Agner <stefan@agner.ch>2014-08-18 16:07:11 -0400
committerShawn Guo <shawn.guo@freescale.com>2014-09-15 22:25:54 -0400
commite34a68a316e71290d1d46a24ec6d80420c785759 (patch)
tree0f445dd0e3f41fe193e55a6109c951aca5aa520f /arch
parent17c63dd0c3f285a78d9becd36bd5db4d7d7e8e7b (diff)
ARM: dts: vf610: Add USB PHY and controller
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@agner.ch> Signed-off-by: Shawn Guo <shawn.guo@freescale.com>
Diffstat (limited to 'arch')
-rw-r--r--arch/arm/boot/dts/vf610.dtsi46
1 files changed, 43 insertions, 3 deletions
diff --git a/arch/arm/boot/dts/vf610.dtsi b/arch/arm/boot/dts/vf610.dtsi
index 583dd363c9dc..dc5cd11379d3 100644
--- a/arch/arm/boot/dts/vf610.dtsi
+++ b/arch/arm/boot/dts/vf610.dtsi
@@ -27,6 +27,8 @@
27 gpio2 = &gpio3; 27 gpio2 = &gpio3;
28 gpio3 = &gpio4; 28 gpio3 = &gpio4;
29 gpio4 = &gpio5; 29 gpio4 = &gpio5;
30 usbphy0 = &usbphy0;
31 usbphy1 = &usbphy1;
30 }; 32 };
31 33
32 cpus { 34 cpus {
@@ -297,9 +299,25 @@
297 gpio-ranges = <&iomuxc 0 128 7>; 299 gpio-ranges = <&iomuxc 0 128 7>;
298 }; 300 };
299 301
300 anatop@40050000 { 302 anatop: anatop@40050000 {
301 compatible = "fsl,vf610-anatop"; 303 compatible = "fsl,vf610-anatop", "syscon";
302 reg = <0x40050000 0x1000>; 304 reg = <0x40050000 0x400>;
305 };
306
307 usbphy0: usbphy@40050800 {
308 compatible = "fsl,vf610-usbphy";
309 reg = <0x40050800 0x400>;
310 interrupts = <0 50 IRQ_TYPE_LEVEL_HIGH>;
311 clocks = <&clks VF610_CLK_USBPHY0>;
312 fsl,anatop = <&anatop>;
313 };
314
315 usbphy1: usbphy@40050c00 {
316 compatible = "fsl,vf610-usbphy";
317 reg = <0x40050c00 0x400>;
318 interrupts = <0 51 IRQ_TYPE_LEVEL_HIGH>;
319 clocks = <&clks VF610_CLK_USBPHY1>;
320 fsl,anatop = <&anatop>;
303 }; 321 };
304 322
305 i2c0: i2c@40066000 { 323 i2c0: i2c@40066000 {
@@ -321,6 +339,18 @@
321 reg = <0x4006b000 0x1000>; 339 reg = <0x4006b000 0x1000>;
322 #clock-cells = <1>; 340 #clock-cells = <1>;
323 }; 341 };
342
343 usbdev0: usb@40034000 {
344 compatible = "fsl,vf610-usb", "fsl,imx27-usb";
345 reg = <0x40034000 0x800>;
346 interrupts = <0 75 IRQ_TYPE_LEVEL_HIGH>;
347 clocks = <&clks VF610_CLK_USBC0>;
348 fsl,usbphy = <&usbphy0>;
349 dr_mode = "peripheral";
350 status = "disabled";
351 };
352
353
324 }; 354 };
325 355
326 aips1: aips-bus@40080000 { 356 aips1: aips-bus@40080000 {
@@ -383,6 +413,16 @@
383 status = "disabled"; 413 status = "disabled";
384 }; 414 };
385 415
416 usbh1: usb@400b4000 {
417 compatible = "fsl,vf610-usb", "fsl,imx27-usb";
418 reg = <0x400b4000 0x800>;
419 interrupts = <0 76 IRQ_TYPE_LEVEL_HIGH>;
420 clocks = <&clks VF610_CLK_USBC1>;
421 fsl,usbphy = <&usbphy1>;
422 dr_mode = "host";
423 status = "disabled";
424 };
425
386 ftm: ftm@400b8000 { 426 ftm: ftm@400b8000 {
387 compatible = "fsl,ftm-timer"; 427 compatible = "fsl,ftm-timer";
388 reg = <0x400b8000 0x1000 0x400b9000 0x1000>; 428 reg = <0x400b8000 0x1000 0x400b9000 0x1000>;