aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/gemini/patches-4.19/0018-ARM-dts-Add-the-FOTG210-USB-host-to-Gemini-boards.patch
diff options
context:
space:
mode:
Diffstat (limited to 'target/linux/gemini/patches-4.19/0018-ARM-dts-Add-the-FOTG210-USB-host-to-Gemini-boards.patch')
-rw-r--r--target/linux/gemini/patches-4.19/0018-ARM-dts-Add-the-FOTG210-USB-host-to-Gemini-boards.patch210
1 files changed, 210 insertions, 0 deletions
diff --git a/target/linux/gemini/patches-4.19/0018-ARM-dts-Add-the-FOTG210-USB-host-to-Gemini-boards.patch b/target/linux/gemini/patches-4.19/0018-ARM-dts-Add-the-FOTG210-USB-host-to-Gemini-boards.patch
new file mode 100644
index 0000000000..9247f0b421
--- /dev/null
+++ b/target/linux/gemini/patches-4.19/0018-ARM-dts-Add-the-FOTG210-USB-host-to-Gemini-boards.patch
@@ -0,0 +1,210 @@
+From 1ff9a279dbeb0034929042faef186ce934474c2b Mon Sep 17 00:00:00 2001
+From: Linus Walleij <linus.walleij@linaro.org>
+Date: Fri, 21 Apr 2017 20:50:22 +0200
+Subject: [PATCH 18/18] ARM: dts: Add the FOTG210 USB host to Gemini boards
+
+This adds the FOTG210 USB host controller to the Gemini
+device trees. In the main SoC DTSI it is flagged as disabled
+and then it is selectively enabled on the devices that utilize
+it.
+
+Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
+---
+ChangeLog v1->v2:
+- Rebased to kernel v4.19-rc1
+- Drop pinctrl-0 handle from the second USB port
+- Add comment on how to deal with the USB pin control
+---
+ arch/arm/boot/dts/gemini-dlink-dir-685.dts | 8 ++++++
+ arch/arm/boot/dts/gemini-nas4220b.dts | 8 ++++++
+ arch/arm/boot/dts/gemini-rut1xx.dts | 20 ++++++++++++++
+ arch/arm/boot/dts/gemini-sl93512r.dts | 8 ++++++
+ arch/arm/boot/dts/gemini-sq201.dts | 8 ++++++
+ arch/arm/boot/dts/gemini-wbd111.dts | 8 ++++++
+ arch/arm/boot/dts/gemini-wbd222.dts | 8 ++++++
+ arch/arm/boot/dts/gemini.dtsi | 32 ++++++++++++++++++++++
+ 8 files changed, 100 insertions(+)
+
+diff --git a/arch/arm/boot/dts/gemini-dlink-dir-685.dts b/arch/arm/boot/dts/gemini-dlink-dir-685.dts
+index 850a605124eb..848b16375873 100644
+--- a/arch/arm/boot/dts/gemini-dlink-dir-685.dts
++++ b/arch/arm/boot/dts/gemini-dlink-dir-685.dts
+@@ -452,5 +452,13 @@
+ };
+ };
+ };
++
++ usb@68000000 {
++ status = "okay";
++ };
++
++ usb@69000000 {
++ status = "okay";
++ };
+ };
+ };
+diff --git a/arch/arm/boot/dts/gemini-nas4220b.dts b/arch/arm/boot/dts/gemini-nas4220b.dts
+index 963ea890c87f..53b65ebe8454 100644
+--- a/arch/arm/boot/dts/gemini-nas4220b.dts
++++ b/arch/arm/boot/dts/gemini-nas4220b.dts
+@@ -204,5 +204,13 @@
+ ata@63400000 {
+ status = "okay";
+ };
++
++ usb@68000000 {
++ status = "okay";
++ };
++
++ usb@69000000 {
++ status = "okay";
++ };
+ };
+ };
+diff --git a/arch/arm/boot/dts/gemini-rut1xx.dts b/arch/arm/boot/dts/gemini-rut1xx.dts
+index eb4f0bf074da..b2354c215a84 100644
+--- a/arch/arm/boot/dts/gemini-rut1xx.dts
++++ b/arch/arm/boot/dts/gemini-rut1xx.dts
+@@ -124,5 +124,25 @@
+ /* Not used in this platform */
+ };
+ };
++
++ ethernet@60000000 {
++ status = "okay";
++
++ ethernet-port@0 {
++ phy-mode = "rgmii";
++ phy-handle = <&phy0>;
++ };
++ ethernet-port@1 {
++ /* Not used in this platform */
++ };
++ };
++
++ usb@68000000 {
++ status = "okay";
++ };
++
++ usb@69000000 {
++ status = "okay";
++ };
+ };
+ };
+diff --git a/arch/arm/boot/dts/gemini-sl93512r.dts b/arch/arm/boot/dts/gemini-sl93512r.dts
+index ebefb7297379..2bb953440793 100644
+--- a/arch/arm/boot/dts/gemini-sl93512r.dts
++++ b/arch/arm/boot/dts/gemini-sl93512r.dts
+@@ -324,5 +324,13 @@
+ ata@63400000 {
+ status = "okay";
+ };
++
++ usb@68000000 {
++ status = "okay";
++ };
++
++ usb@69000000 {
++ status = "okay";
++ };
+ };
+ };
+diff --git a/arch/arm/boot/dts/gemini-sq201.dts b/arch/arm/boot/dts/gemini-sq201.dts
+index c5bb24102b75..ecbc27d93b2d 100644
+--- a/arch/arm/boot/dts/gemini-sq201.dts
++++ b/arch/arm/boot/dts/gemini-sq201.dts
+@@ -292,5 +292,13 @@
+ ata@63000000 {
+ status = "okay";
+ };
++
++ usb@68000000 {
++ status = "okay";
++ };
++
++ usb@69000000 {
++ status = "okay";
++ };
+ };
+ };
+diff --git a/arch/arm/boot/dts/gemini-wbd111.dts b/arch/arm/boot/dts/gemini-wbd111.dts
+index 29af86cd10f7..6831d2aed17a 100644
+--- a/arch/arm/boot/dts/gemini-wbd111.dts
++++ b/arch/arm/boot/dts/gemini-wbd111.dts
+@@ -171,5 +171,13 @@
+ /* Not used in this platform */
+ };
+ };
++
++ usb@68000000 {
++ status = "okay";
++ };
++
++ usb@69000000 {
++ status = "okay";
++ };
+ };
+ };
+diff --git a/arch/arm/boot/dts/gemini-wbd222.dts b/arch/arm/boot/dts/gemini-wbd222.dts
+index 24e6ae3616f7..ed38d48ef5f6 100644
+--- a/arch/arm/boot/dts/gemini-wbd222.dts
++++ b/arch/arm/boot/dts/gemini-wbd222.dts
+@@ -183,5 +183,13 @@
+ phy-handle = <&phy1>;
+ };
+ };
++
++ usb@68000000 {
++ status = "okay";
++ };
++
++ usb@69000000 {
++ status = "okay";
++ };
+ };
+ };
+diff --git a/arch/arm/boot/dts/gemini.dtsi b/arch/arm/boot/dts/gemini.dtsi
+index eb752e9495de..8cf67b11751f 100644
+--- a/arch/arm/boot/dts/gemini.dtsi
++++ b/arch/arm/boot/dts/gemini.dtsi
+@@ -409,5 +409,37 @@
+ #size-cells = <0>;
+ status = "disabled";
+ };
++
++ usb@68000000 {
++ compatible = "cortina,gemini-usb", "faraday,fotg210";
++ reg = <0x68000000 0x1000>;
++ interrupts = <10 IRQ_TYPE_LEVEL_HIGH>;
++ resets = <&syscon GEMINI_RESET_USB0>;
++ clocks = <&syscon GEMINI_CLK_GATE_USB0>;
++ clock-names = "PCLK";
++ /*
++ * This will claim pins for USB0 and USB1 at the same
++ * time as they are using some common pins. If you for
++ * some reason have a system using USB1 at 96000000 but
++ * NOT using USB0 at 68000000 you wll have to add the
++ * usb_default_pins to the USB controller at 96000000
++ * in your .dts for the board.
++ */
++ pinctrl-names = "default";
++ pinctrl-0 = <&usb_default_pins>;
++ syscon = <&syscon>;
++ status = "disabled";
++ };
++
++ usb@69000000 {
++ compatible = "cortina,gemini-usb", "faraday,fotg210";
++ reg = <0x69000000 0x1000>;
++ interrupts = <11 IRQ_TYPE_LEVEL_HIGH>;
++ resets = <&syscon GEMINI_RESET_USB1>;
++ clocks = <&syscon GEMINI_CLK_GATE_USB1>;
++ clock-names = "PCLK";
++ syscon = <&syscon>;
++ status = "disabled";
++ };
+ };
+ };
+--
+2.19.2
+