# CONFIG_ARM_CHARLCD is not set
# CONFIG_ARM_CPU_SUSPEND is not set
# CONFIG_ARM_ERRATA_430973 is not set
-# CONFIG_ARM_ERRATA_458693 is not set
-# CONFIG_ARM_ERRATA_460075 is not set
CONFIG_ARM_ERRATA_720789=y
-# CONFIG_ARM_ERRATA_742230 is not set
-# CONFIG_ARM_ERRATA_742231 is not set
-# CONFIG_ARM_ERRATA_743622 is not set
-CONFIG_ARM_ERRATA_751472=y
# CONFIG_ARM_ERRATA_754322 is not set
# CONFIG_ARM_ERRATA_754327 is not set
# CONFIG_ARM_ERRATA_764369 is not set
# CONFIG_THUMB2_KERNEL is not set
CONFIG_TICK_CPU_ACCOUNTING=y
CONFIG_TIMER_STATS=y
-# CONFIG_TINY_RCU is not set
CONFIG_TREE_RCU=y
CONFIG_UDF_FS=m
CONFIG_UID16=y
CONFIG_UIDGID_CONVERTED=y
# CONFIG_USB_ARCH_HAS_OHCI is not set
# CONFIG_USB_ARCH_HAS_XHCI is not set
+CONFIG_USB_SUPPORT=y
CONFIG_USE_GENERIC_SMP_HELPERS=y
CONFIG_USE_OF=y
CONFIG_VECTORS_BASE=0xffff0000
CONFIG_VFP=y
CONFIG_VFPv3=y
# CONFIG_XEN is not set
+CONFIG_XPS=y
CONFIG_XZ_DEC_ARM=y
CONFIG_XZ_DEC_BCJ=y
-CONFIG_XPS=y
CONFIG_ZBOOT_ROM_BSS=0x0
CONFIG_ZBOOT_ROM_TEXT=0x0
CONFIG_ZONE_DMA_FLAG=0
--- /dev/null
+The Armada 370 and Armada XP SoC has an Orion EHCI USB controller.
+This patch adds support for this controller in Armada 370
+and Armada XP SoC common device tree files.
+
+Cc: Lior Amsalem <alior@marvell.com>
+Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+Signed-off-by: Gregory CLEMENT <gregory.clement@free-electrons.com>
+Signed-off-by: Ezequiel Garcia <ezequiel.garcia@free-electrons.com>
+---
+ arch/arm/boot/dts/armada-370-xp.dtsi | 15 +++++++++++++++
+ arch/arm/boot/dts/armada-370.dtsi | 9 +++++++++
+ arch/arm/boot/dts/armada-xp.dtsi | 17 +++++++++++++++++
+ arch/arm/mach-mvebu/Kconfig | 1 +
+ 4 files changed, 42 insertions(+), 0 deletions(-)
+
+diff --git a/arch/arm/boot/dts/armada-370-xp.dtsi b/arch/arm/boot/dts/armada-370-xp.dtsi
+index 28276fe..fa025c4 100644
+--- a/arch/arm/boot/dts/armada-370-xp.dtsi
++++ b/arch/arm/boot/dts/armada-370-xp.dtsi
+@@ -145,6 +145,21 @@
+ clocks = <&gateclk 17>;
+ status = "disabled";
+ };
++
++ usb@d0050000 {
++ compatible = "marvell,orion-ehci";
++ reg = <0xd0050000 0x500>;
++ interrupts = <45>;
++ status = "disabled";
++ };
++
++ usb@d0051000 {
++ compatible = "marvell,orion-ehci";
++ reg = <0xd0051000 0x500>;
++ interrupts = <46>;
++ status = "disabled";
++ };
++
+ };
+ };
+
+diff --git a/arch/arm/boot/dts/armada-370.dtsi b/arch/arm/boot/dts/armada-370.dtsi
+index 88f9bab..8188d13 100644
+--- a/arch/arm/boot/dts/armada-370.dtsi
++++ b/arch/arm/boot/dts/armada-370.dtsi
+@@ -144,5 +144,14 @@
+ dmacap,memset;
+ };
+ };
++
++ usb@d0050000 {
++ clocks = <&coreclk 0>;
++ };
++
++ usb@d0051000 {
++ clocks = <&coreclk 0>;
++ };
++
+ };
+ };
+diff --git a/arch/arm/boot/dts/armada-xp.dtsi b/arch/arm/boot/dts/armada-xp.dtsi
+index 390ba98..1443949 100644
+--- a/arch/arm/boot/dts/armada-xp.dtsi
++++ b/arch/arm/boot/dts/armada-xp.dtsi
+@@ -134,5 +134,22 @@
+ dmacap,memset;
+ };
+ };
++
++ usb@d0050000 {
++ clocks = <&gateclk 18>;
++ };
++
++ usb@d0051000 {
++ clocks = <&gateclk 19>;
++ };
++
++ usb@d0052000 {
++ compatible = "marvell,orion-ehci";
++ reg = <0xd0052000 0x500>;
++ interrupts = <47>;
++ clocks = <&gateclk 20>;
++ status = "disabled";
++ };
++
+ };
+ };
+diff --git a/arch/arm/mach-mvebu/Kconfig b/arch/arm/mach-mvebu/Kconfig
+index 440b13e..5e4fcde 100644
+--- a/arch/arm/mach-mvebu/Kconfig
++++ b/arch/arm/mach-mvebu/Kconfig
+@@ -24,6 +24,7 @@ config MACH_ARMADA_370_XP
+ select HAVE_SMP
+ select CACHE_L2X0
+ select CPU_PJ4B
++ select USB_ARCH_HAS_EHCI if USB_SUPPORT
+
+ config MACH_ARMADA_370
+ bool "Marvell Armada 370 boards"
+--
+1.7.8.6
--- /dev/null
+Cc: Lior Amsalem <alior@marvell.com>
+Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+Cc: Gregory CLEMENT <gregory.clement@free-electrons.com>
+Signed-off-by: Ezequiel Garcia <ezequiel.garcia@free-electrons.com>
+---
+ arch/arm/boot/dts/armada-370-db.dts | 8 ++++++++
+ 1 files changed, 8 insertions(+), 0 deletions(-)
+
+diff --git a/arch/arm/boot/dts/armada-370-db.dts b/arch/arm/boot/dts/armada-370-db.dts
+index 8e66a7c..3d93902 100644
+--- a/arch/arm/boot/dts/armada-370-db.dts
++++ b/arch/arm/boot/dts/armada-370-db.dts
+@@ -74,5 +74,13 @@
+ status = "disabled";
+ /* No CD or WP GPIOs */
+ };
++
++ usb@d0050000 {
++ status = "okay";
++ };
++
++ usb@d0051000 {
++ status = "okay";
++ };
+ };
+ };
+--
+1.7.8.6
+
+
--- /dev/null
+Cc: Lior Amsalem <alior@marvell.com>
+Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+Cc: Gregory CLEMENT <gregory.clement@free-electrons.com>
+Signed-off-by: Ezequiel Garcia <ezequiel.garcia@free-electrons.com>
+---
+ arch/arm/boot/dts/armada-370-mirabox.dts | 8 ++++++++
+ 1 files changed, 8 insertions(+), 0 deletions(-)
+
+diff --git a/arch/arm/boot/dts/armada-370-mirabox.dts b/arch/arm/boot/dts/armada-370-mirabox.dts
+index 1864820..dd0c57d 100644
+--- a/arch/arm/boot/dts/armada-370-mirabox.dts
++++ b/arch/arm/boot/dts/armada-370-mirabox.dts
+@@ -62,5 +62,13 @@
+ * Wifi/Bluetooth chip
+ */
+ };
++
++ usb@d0050000 {
++ status = "okay";
++ };
++
++ usb@d0051000 {
++ status = "okay";
++ };
+ };
+ };
+--
+1.7.8.6
--- /dev/null
+Cc: Lior Amsalem <alior@marvell.com>
+Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+Cc: Gregory CLEMENT <gregory.clement@free-electrons.com>
+Signed-off-by: Ezequiel Garcia <ezequiel.garcia@free-electrons.com>
+---
+ arch/arm/boot/dts/armada-xp-db.dts | 12 ++++++++++++
+ 1 files changed, 12 insertions(+), 0 deletions(-)
+
+diff --git a/arch/arm/boot/dts/armada-xp-db.dts b/arch/arm/boot/dts/armada-xp-db.dts
+index c7035c5..c84e1fe 100644
+--- a/arch/arm/boot/dts/armada-xp-db.dts
++++ b/arch/arm/boot/dts/armada-xp-db.dts
+@@ -97,5 +97,17 @@
+ status = "okay";
+ /* No CD or WP GPIOs */
+ };
++
++ usb@d0050000 {
++ status = "okay";
++ };
++
++ usb@d0051000 {
++ status = "okay";
++ };
++
++ usb@d0052000 {
++ status = "okay";
++ };
+ };
+ };
+--
+1.7.8.6
--- /dev/null
+Cc: Lior Amsalem <alior@marvell.com>
+Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+Cc: Gregory CLEMENT <gregory.clement@free-electrons.com>
+Signed-off-by: Ezequiel Garcia <ezequiel.garcia@free-electrons.com>
+---
+ arch/arm/boot/dts/armada-xp-openblocks-ax3-4.dts | 9 +++++++++
+ 1 files changed, 9 insertions(+), 0 deletions(-)
+
+diff --git a/arch/arm/boot/dts/armada-xp-openblocks-ax3-4.dts b/arch/arm/boot/dts/armada-xp-openblocks-ax3-4.dts
+index b24644f..55f5b6f 100644
+--- a/arch/arm/boot/dts/armada-xp-openblocks-ax3-4.dts
++++ b/arch/arm/boot/dts/armada-xp-openblocks-ax3-4.dts
+@@ -127,5 +127,14 @@
+ nr-ports = <2>;
+ status = "okay";
+ };
++ usb@d0050000 {
++ status = "okay";
++ };
++ usb@d0051000 {
++ status = "okay";
++ };
++ usb@d0052000 {
++ status = "okay";
++ };
+ };
+ };
+--
+1.7.8.6
+
+