dnsmasq: move feature detection inside a shell func
[openwrt/openwrt.git] / target / linux / gemini / patches-4.19 / 0018-ARM-dts-Add-the-FOTG210-USB-host-to-Gemini-boards.patch
1 From 1ff9a279dbeb0034929042faef186ce934474c2b Mon Sep 17 00:00:00 2001
2 From: Linus Walleij <linus.walleij@linaro.org>
3 Date: Fri, 21 Apr 2017 20:50:22 +0200
4 Subject: [PATCH 18/18] ARM: dts: Add the FOTG210 USB host to Gemini boards
5
6 This adds the FOTG210 USB host controller to the Gemini
7 device trees. In the main SoC DTSI it is flagged as disabled
8 and then it is selectively enabled on the devices that utilize
9 it.
10
11 Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
12 ---
13 ChangeLog v1->v2:
14 - Rebased to kernel v4.19-rc1
15 - Drop pinctrl-0 handle from the second USB port
16 - Add comment on how to deal with the USB pin control
17 ---
18 arch/arm/boot/dts/gemini-dlink-dir-685.dts | 8 ++++++
19 arch/arm/boot/dts/gemini-nas4220b.dts | 8 ++++++
20 arch/arm/boot/dts/gemini-rut1xx.dts | 20 ++++++++++++++
21 arch/arm/boot/dts/gemini-sl93512r.dts | 8 ++++++
22 arch/arm/boot/dts/gemini-sq201.dts | 8 ++++++
23 arch/arm/boot/dts/gemini-wbd111.dts | 8 ++++++
24 arch/arm/boot/dts/gemini-wbd222.dts | 8 ++++++
25 arch/arm/boot/dts/gemini.dtsi | 32 ++++++++++++++++++++++
26 8 files changed, 100 insertions(+)
27
28 --- a/arch/arm/boot/dts/gemini-dlink-dir-685.dts
29 +++ b/arch/arm/boot/dts/gemini-dlink-dir-685.dts
30 @@ -452,5 +452,13 @@
31 };
32 };
33 };
34 +
35 + usb@68000000 {
36 + status = "okay";
37 + };
38 +
39 + usb@69000000 {
40 + status = "okay";
41 + };
42 };
43 };
44 --- a/arch/arm/boot/dts/gemini-nas4220b.dts
45 +++ b/arch/arm/boot/dts/gemini-nas4220b.dts
46 @@ -204,5 +204,13 @@
47 ata@63400000 {
48 status = "okay";
49 };
50 +
51 + usb@68000000 {
52 + status = "okay";
53 + };
54 +
55 + usb@69000000 {
56 + status = "okay";
57 + };
58 };
59 };
60 --- a/arch/arm/boot/dts/gemini-rut1xx.dts
61 +++ b/arch/arm/boot/dts/gemini-rut1xx.dts
62 @@ -124,5 +124,25 @@
63 /* Not used in this platform */
64 };
65 };
66 +
67 + ethernet@60000000 {
68 + status = "okay";
69 +
70 + ethernet-port@0 {
71 + phy-mode = "rgmii";
72 + phy-handle = <&phy0>;
73 + };
74 + ethernet-port@1 {
75 + /* Not used in this platform */
76 + };
77 + };
78 +
79 + usb@68000000 {
80 + status = "okay";
81 + };
82 +
83 + usb@69000000 {
84 + status = "okay";
85 + };
86 };
87 };
88 --- a/arch/arm/boot/dts/gemini-sl93512r.dts
89 +++ b/arch/arm/boot/dts/gemini-sl93512r.dts
90 @@ -324,5 +324,13 @@
91 ata@63400000 {
92 status = "okay";
93 };
94 +
95 + usb@68000000 {
96 + status = "okay";
97 + };
98 +
99 + usb@69000000 {
100 + status = "okay";
101 + };
102 };
103 };
104 --- a/arch/arm/boot/dts/gemini-sq201.dts
105 +++ b/arch/arm/boot/dts/gemini-sq201.dts
106 @@ -292,5 +292,13 @@
107 ata@63000000 {
108 status = "okay";
109 };
110 +
111 + usb@68000000 {
112 + status = "okay";
113 + };
114 +
115 + usb@69000000 {
116 + status = "okay";
117 + };
118 };
119 };
120 --- a/arch/arm/boot/dts/gemini-wbd111.dts
121 +++ b/arch/arm/boot/dts/gemini-wbd111.dts
122 @@ -171,5 +171,13 @@
123 /* Not used in this platform */
124 };
125 };
126 +
127 + usb@68000000 {
128 + status = "okay";
129 + };
130 +
131 + usb@69000000 {
132 + status = "okay";
133 + };
134 };
135 };
136 --- a/arch/arm/boot/dts/gemini-wbd222.dts
137 +++ b/arch/arm/boot/dts/gemini-wbd222.dts
138 @@ -183,5 +183,13 @@
139 phy-handle = <&phy1>;
140 };
141 };
142 +
143 + usb@68000000 {
144 + status = "okay";
145 + };
146 +
147 + usb@69000000 {
148 + status = "okay";
149 + };
150 };
151 };
152 --- a/arch/arm/boot/dts/gemini.dtsi
153 +++ b/arch/arm/boot/dts/gemini.dtsi
154 @@ -409,5 +409,37 @@
155 #size-cells = <0>;
156 status = "disabled";
157 };
158 +
159 + usb@68000000 {
160 + compatible = "cortina,gemini-usb", "faraday,fotg210";
161 + reg = <0x68000000 0x1000>;
162 + interrupts = <10 IRQ_TYPE_LEVEL_HIGH>;
163 + resets = <&syscon GEMINI_RESET_USB0>;
164 + clocks = <&syscon GEMINI_CLK_GATE_USB0>;
165 + clock-names = "PCLK";
166 + /*
167 + * This will claim pins for USB0 and USB1 at the same
168 + * time as they are using some common pins. If you for
169 + * some reason have a system using USB1 at 96000000 but
170 + * NOT using USB0 at 68000000 you wll have to add the
171 + * usb_default_pins to the USB controller at 96000000
172 + * in your .dts for the board.
173 + */
174 + pinctrl-names = "default";
175 + pinctrl-0 = <&usb_default_pins>;
176 + syscon = <&syscon>;
177 + status = "disabled";
178 + };
179 +
180 + usb@69000000 {
181 + compatible = "cortina,gemini-usb", "faraday,fotg210";
182 + reg = <0x69000000 0x1000>;
183 + interrupts = <11 IRQ_TYPE_LEVEL_HIGH>;
184 + resets = <&syscon GEMINI_RESET_USB1>;
185 + clocks = <&syscon GEMINI_CLK_GATE_USB1>;
186 + clock-names = "PCLK";
187 + syscon = <&syscon>;
188 + status = "disabled";
189 + };
190 };
191 };