diff options
-rw-r--r-- | arch/arm/boot/dts/stih415-clock.dtsi | 14 | ||||
-rw-r--r-- | arch/arm/boot/dts/stih415-pinctrl.dtsi | 121 | ||||
-rw-r--r-- | arch/arm/boot/dts/stih415.dtsi | 48 | ||||
-rw-r--r-- | arch/arm/boot/dts/stih41x-b2000.dtsi | 22 | ||||
-rw-r--r-- | arch/arm/boot/dts/stih41x-b2020.dtsi | 13 |
5 files changed, 218 insertions, 0 deletions
diff --git a/arch/arm/boot/dts/stih415-clock.dtsi b/arch/arm/boot/dts/stih415-clock.dtsi index 174c799df741..d047dbc28d61 100644 --- a/arch/arm/boot/dts/stih415-clock.dtsi +++ b/arch/arm/boot/dts/stih415-clock.dtsi | |||
@@ -34,5 +34,19 @@ | |||
34 | compatible = "fixed-clock"; | 34 | compatible = "fixed-clock"; |
35 | clock-frequency = <100000000>; | 35 | clock-frequency = <100000000>; |
36 | }; | 36 | }; |
37 | |||
38 | CLKS_GMAC0_PHY: clockgenA1@7 { | ||
39 | #clock-cells = <0>; | ||
40 | compatible = "fixed-clock"; | ||
41 | clock-frequency = <25000000>; | ||
42 | clock-output-names = "CLKS_GMAC0_PHY"; | ||
43 | }; | ||
44 | |||
45 | CLKS_ETH1_PHY: clockgenA0@7 { | ||
46 | #clock-cells = <0>; | ||
47 | compatible = "fixed-clock"; | ||
48 | clock-frequency = <25000000>; | ||
49 | clock-output-names = "CLKS_ETH1_PHY"; | ||
50 | }; | ||
37 | }; | 51 | }; |
38 | }; | 52 | }; |
diff --git a/arch/arm/boot/dts/stih415-pinctrl.dtsi b/arch/arm/boot/dts/stih415-pinctrl.dtsi index 887c5e59c73e..9ca20aafba24 100644 --- a/arch/arm/boot/dts/stih415-pinctrl.dtsi +++ b/arch/arm/boot/dts/stih415-pinctrl.dtsi | |||
@@ -119,6 +119,56 @@ | |||
119 | }; | 119 | }; |
120 | }; | 120 | }; |
121 | }; | 121 | }; |
122 | |||
123 | gmac1 { | ||
124 | pinctrl_mii1: mii1 { | ||
125 | st,pins { | ||
126 | txd0 = <&PIO0 0 ALT1 OUT SE_NICLK_IO 0 CLK_A>; | ||
127 | txd1 = <&PIO0 1 ALT1 OUT SE_NICLK_IO 0 CLK_A>; | ||
128 | txd2 = <&PIO0 2 ALT1 OUT SE_NICLK_IO 0 CLK_A>; | ||
129 | txd3 = <&PIO0 3 ALT1 OUT SE_NICLK_IO 0 CLK_A>; | ||
130 | txer = <&PIO0 4 ALT1 OUT SE_NICLK_IO 0 CLK_A>; | ||
131 | txen = <&PIO0 5 ALT1 OUT SE_NICLK_IO 0 CLK_A>; | ||
132 | txclk = <&PIO0 6 ALT1 IN NICLK 0 CLK_A>; | ||
133 | col = <&PIO0 7 ALT1 IN BYPASS 1000>; | ||
134 | mdio = <&PIO1 0 ALT1 OUT BYPASS 0>; | ||
135 | mdc = <&PIO1 1 ALT1 OUT NICLK 0 CLK_A>; | ||
136 | crs = <&PIO1 2 ALT1 IN BYPASS 1000>; | ||
137 | mdint = <&PIO1 3 ALT1 IN BYPASS 0>; | ||
138 | rxd0 = <&PIO1 4 ALT1 IN SE_NICLK_IO 0 CLK_A>; | ||
139 | rxd1 = <&PIO1 5 ALT1 IN SE_NICLK_IO 0 CLK_A>; | ||
140 | rxd2 = <&PIO1 6 ALT1 IN SE_NICLK_IO 0 CLK_A>; | ||
141 | rxd3 = <&PIO1 7 ALT1 IN SE_NICLK_IO 0 CLK_A>; | ||
142 | rxdv = <&PIO2 0 ALT1 IN SE_NICLK_IO 0 CLK_A>; | ||
143 | rx_er = <&PIO2 1 ALT1 IN SE_NICLK_IO 0 CLK_A>; | ||
144 | rxclk = <&PIO2 2 ALT1 IN NICLK 0 CLK_A>; | ||
145 | phyclk = <&PIO2 3 ALT1 IN NICLK 1000 CLK_A>; | ||
146 | }; | ||
147 | }; | ||
148 | |||
149 | pinctrl_rgmii1: rgmii1-0 { | ||
150 | st,pins { | ||
151 | txd0 = <&PIO0 0 ALT1 OUT DE_IO 1000 CLK_A>; | ||
152 | txd1 = <&PIO0 1 ALT1 OUT DE_IO 1000 CLK_A>; | ||
153 | txd2 = <&PIO0 2 ALT1 OUT DE_IO 1000 CLK_A>; | ||
154 | txd3 = <&PIO0 3 ALT1 OUT DE_IO 1000 CLK_A>; | ||
155 | txen = <&PIO0 5 ALT1 OUT DE_IO 0 CLK_A>; | ||
156 | txclk = <&PIO0 6 ALT1 IN NICLK 0 CLK_A>; | ||
157 | mdio = <&PIO1 0 ALT1 OUT BYPASS 0>; | ||
158 | mdc = <&PIO1 1 ALT1 OUT NICLK 0 CLK_A>; | ||
159 | rxd0 = <&PIO1 4 ALT1 IN DE_IO 0 CLK_A>; | ||
160 | rxd1 = <&PIO1 5 ALT1 IN DE_IO 0 CLK_A>; | ||
161 | rxd2 = <&PIO1 6 ALT1 IN DE_IO 0 CLK_A>; | ||
162 | rxd3 = <&PIO1 7 ALT1 IN DE_IO 0 CLK_A>; | ||
163 | |||
164 | rxdv = <&PIO2 0 ALT1 IN DE_IO 500 CLK_A>; | ||
165 | rxclk = <&PIO2 2 ALT1 IN NICLK 0 CLK_A>; | ||
166 | phyclk = <&PIO2 3 ALT4 OUT NICLK 0 CLK_B>; | ||
167 | |||
168 | clk125= <&PIO3 7 ALT4 IN NICLK 0 CLK_A>; | ||
169 | }; | ||
170 | }; | ||
171 | }; | ||
122 | }; | 172 | }; |
123 | 173 | ||
124 | pin-controller-front { | 174 | pin-controller-front { |
@@ -284,6 +334,77 @@ | |||
284 | }; | 334 | }; |
285 | }; | 335 | }; |
286 | }; | 336 | }; |
337 | |||
338 | gmac0{ | ||
339 | pinctrl_mii0: mii0 { | ||
340 | st,pins { | ||
341 | mdint = <&PIO13 6 ALT2 IN BYPASS 0>; | ||
342 | txen = <&PIO13 7 ALT2 OUT SE_NICLK_IO 0 CLK_A>; | ||
343 | |||
344 | txd0 = <&PIO14 0 ALT2 OUT SE_NICLK_IO 0 CLK_A>; | ||
345 | txd1 = <&PIO14 1 ALT2 OUT SE_NICLK_IO 0 CLK_A>; | ||
346 | txd2 = <&PIO14 2 ALT2 OUT SE_NICLK_IO 0 CLK_B>; | ||
347 | txd3 = <&PIO14 3 ALT2 OUT SE_NICLK_IO 0 CLK_B>; | ||
348 | |||
349 | txclk = <&PIO15 0 ALT2 IN NICLK 0 CLK_A>; | ||
350 | txer = <&PIO15 1 ALT2 OUT SE_NICLK_IO 0 CLK_A>; | ||
351 | crs = <&PIO15 2 ALT2 IN BYPASS 1000>; | ||
352 | col = <&PIO15 3 ALT2 IN BYPASS 1000>; | ||
353 | mdio = <&PIO15 4 ALT2 OUT BYPASS 3000>; | ||
354 | mdc = <&PIO15 5 ALT2 OUT NICLK 0 CLK_B>; | ||
355 | |||
356 | rxd0 = <&PIO16 0 ALT2 IN SE_NICLK_IO 0 CLK_A>; | ||
357 | rxd1 = <&PIO16 1 ALT2 IN SE_NICLK_IO 0 CLK_A>; | ||
358 | rxd2 = <&PIO16 2 ALT2 IN SE_NICLK_IO 0 CLK_A>; | ||
359 | rxd3 = <&PIO16 3 ALT2 IN SE_NICLK_IO 0 CLK_A>; | ||
360 | rxdv = <&PIO15 6 ALT2 IN SE_NICLK_IO 0 CLK_A>; | ||
361 | rx_er = <&PIO15 7 ALT2 IN SE_NICLK_IO 0 CLK_A>; | ||
362 | rxclk = <&PIO17 0 ALT2 IN NICLK 0 CLK_A>; | ||
363 | phyclk = <&PIO13 5 ALT2 OUT NICLK 1000 CLK_A>; | ||
364 | |||
365 | }; | ||
366 | }; | ||
367 | |||
368 | pinctrl_gmii0: gmii0 { | ||
369 | st,pins { | ||
370 | mdint = <&PIO13 6 ALT2 IN BYPASS 0>; | ||
371 | mdio = <&PIO15 4 ALT2 OUT BYPASS 3000>; | ||
372 | mdc = <&PIO15 5 ALT2 OUT NICLK 0 CLK_B>; | ||
373 | txen = <&PIO13 7 ALT2 OUT SE_NICLK_IO 3000 CLK_A>; | ||
374 | |||
375 | txd0 = <&PIO14 0 ALT2 OUT SE_NICLK_IO 3000 CLK_A>; | ||
376 | txd1 = <&PIO14 1 ALT2 OUT SE_NICLK_IO 3000 CLK_A>; | ||
377 | txd2 = <&PIO14 2 ALT2 OUT SE_NICLK_IO 3000 CLK_B>; | ||
378 | txd3 = <&PIO14 3 ALT2 OUT SE_NICLK_IO 3000 CLK_B>; | ||
379 | txd4 = <&PIO14 4 ALT2 OUT SE_NICLK_IO 3000 CLK_B>; | ||
380 | txd5 = <&PIO14 5 ALT2 OUT SE_NICLK_IO 3000 CLK_B>; | ||
381 | txd6 = <&PIO14 6 ALT2 OUT SE_NICLK_IO 3000 CLK_B>; | ||
382 | txd7 = <&PIO14 7 ALT2 OUT SE_NICLK_IO 3000 CLK_B>; | ||
383 | |||
384 | txclk = <&PIO15 0 ALT2 IN NICLK 0 CLK_A>; | ||
385 | txer = <&PIO15 1 ALT2 OUT SE_NICLK_IO 3000 CLK_A>; | ||
386 | crs = <&PIO15 2 ALT2 IN BYPASS 1000>; | ||
387 | col = <&PIO15 3 ALT2 IN BYPASS 1000>; | ||
388 | rxdv = <&PIO15 6 ALT2 IN SE_NICLK_IO 1500 CLK_A>; | ||
389 | rx_er = <&PIO15 7 ALT2 IN SE_NICLK_IO 1500 CLK_A>; | ||
390 | |||
391 | rxd0 = <&PIO16 0 ALT2 IN SE_NICLK_IO 1500 CLK_A>; | ||
392 | rxd1 = <&PIO16 1 ALT2 IN SE_NICLK_IO 1500 CLK_A>; | ||
393 | rxd2 = <&PIO16 2 ALT2 IN SE_NICLK_IO 1500 CLK_A>; | ||
394 | rxd3 = <&PIO16 3 ALT2 IN SE_NICLK_IO 1500 CLK_A>; | ||
395 | rxd4 = <&PIO16 4 ALT2 IN SE_NICLK_IO 1500 CLK_A>; | ||
396 | rxd5 = <&PIO16 5 ALT2 IN SE_NICLK_IO 1500 CLK_A>; | ||
397 | rxd6 = <&PIO16 6 ALT2 IN SE_NICLK_IO 1500 CLK_A>; | ||
398 | rxd7 = <&PIO16 7 ALT2 IN SE_NICLK_IO 1500 CLK_A>; | ||
399 | |||
400 | rxclk = <&PIO17 0 ALT2 IN NICLK 0 CLK_A>; | ||
401 | clk125 = <&PIO17 6 ALT1 IN NICLK 0 CLK_A>; | ||
402 | phyclk = <&PIO13 5 ALT4 OUT NICLK 0 CLK_B>; | ||
403 | |||
404 | |||
405 | }; | ||
406 | }; | ||
407 | }; | ||
287 | }; | 408 | }; |
288 | 409 | ||
289 | pin-controller-left { | 410 | pin-controller-left { |
diff --git a/arch/arm/boot/dts/stih415.dtsi b/arch/arm/boot/dts/stih415.dtsi index d52207c1168e..cc9b22bc7472 100644 --- a/arch/arm/boot/dts/stih415.dtsi +++ b/arch/arm/boot/dts/stih415.dtsi | |||
@@ -147,5 +147,53 @@ | |||
147 | 147 | ||
148 | status = "disabled"; | 148 | status = "disabled"; |
149 | }; | 149 | }; |
150 | |||
151 | ethernet0: dwmac@fe810000 { | ||
152 | device_type = "network"; | ||
153 | compatible = "st,stih415-dwmac", "snps,dwmac", "snps,dwmac-3.610"; | ||
154 | status = "disabled"; | ||
155 | |||
156 | reg = <0xfe810000 0x8000>, <0x148 0x4>; | ||
157 | reg-names = "stmmaceth", "sti-ethconf"; | ||
158 | |||
159 | interrupts = <0 147 0>, <0 148 0>, <0 149 0>; | ||
160 | interrupt-names = "macirq", "eth_wake_irq", "eth_lpi"; | ||
161 | resets = <&softreset STIH415_ETH0_SOFTRESET>; | ||
162 | reset-names = "stmmaceth"; | ||
163 | |||
164 | snps,pbl = <32>; | ||
165 | snps,mixed-burst; | ||
166 | snps,force_sf_dma_mode; | ||
167 | |||
168 | st,syscon = <&syscfg_rear>; | ||
169 | |||
170 | pinctrl-names = "default"; | ||
171 | pinctrl-0 = <&pinctrl_mii0>; | ||
172 | clock-names = "stmmaceth"; | ||
173 | clocks = <&CLKS_GMAC0_PHY>; | ||
174 | }; | ||
175 | |||
176 | ethernet1: dwmac@fef08000 { | ||
177 | device_type = "network"; | ||
178 | compatible = "st,stih415-dwmac", "snps,dwmac", "snps,dwmac-3.610"; | ||
179 | status = "disabled"; | ||
180 | reg = <0xfef08000 0x8000>, <0x74 0x4>; | ||
181 | reg-names = "stmmaceth", "sti-ethconf"; | ||
182 | interrupts = <0 150 0>, <0 151 0>, <0 152 0>; | ||
183 | interrupt-names = "macirq", "eth_wake_irq", "eth_lpi"; | ||
184 | |||
185 | snps,pbl = <32>; | ||
186 | snps,mixed-burst; | ||
187 | snps,force_sf_dma_mode; | ||
188 | |||
189 | st,syscon = <&syscfg_sbc>; | ||
190 | |||
191 | resets = <&softreset STIH415_ETH1_SOFTRESET>; | ||
192 | reset-names = "stmmaceth"; | ||
193 | pinctrl-names = "default"; | ||
194 | pinctrl-0 = <&pinctrl_mii1>; | ||
195 | clock-names = "stmmaceth"; | ||
196 | clocks = <&CLKS_ETH1_PHY>; | ||
197 | }; | ||
150 | }; | 198 | }; |
151 | }; | 199 | }; |
diff --git a/arch/arm/boot/dts/stih41x-b2000.dtsi b/arch/arm/boot/dts/stih41x-b2000.dtsi index 1e6aa92772f5..bf65c49095af 100644 --- a/arch/arm/boot/dts/stih41x-b2000.dtsi +++ b/arch/arm/boot/dts/stih41x-b2000.dtsi | |||
@@ -20,6 +20,8 @@ | |||
20 | 20 | ||
21 | aliases { | 21 | aliases { |
22 | ttyAS0 = &serial2; | 22 | ttyAS0 = &serial2; |
23 | ethernet0 = ðernet0; | ||
24 | ethernet1 = ðernet1; | ||
23 | }; | 25 | }; |
24 | 26 | ||
25 | soc { | 27 | soc { |
@@ -46,5 +48,25 @@ | |||
46 | 48 | ||
47 | status = "okay"; | 49 | status = "okay"; |
48 | }; | 50 | }; |
51 | |||
52 | ethernet0: dwmac@fe810000 { | ||
53 | status = "okay"; | ||
54 | phy-mode = "mii"; | ||
55 | pinctrl-0 = <&pinctrl_mii0>; | ||
56 | |||
57 | snps,reset-gpio = <&PIO106 2>; | ||
58 | snps,reset-active-low; | ||
59 | snps,reset-delays-us = <0 10000 10000>; | ||
60 | }; | ||
61 | |||
62 | ethernet1: dwmac@fef08000 { | ||
63 | status = "disabled"; | ||
64 | phy-mode = "mii"; | ||
65 | st,tx-retime-src = "txclk"; | ||
66 | |||
67 | snps,reset-gpio = <&PIO4 7>; | ||
68 | snps,reset-active-low; | ||
69 | snps,reset-delays-us = <0 10000 10000>; | ||
70 | }; | ||
49 | }; | 71 | }; |
50 | }; | 72 | }; |
diff --git a/arch/arm/boot/dts/stih41x-b2020.dtsi b/arch/arm/boot/dts/stih41x-b2020.dtsi index 0ef0a69df8ea..3dc74c25a57b 100644 --- a/arch/arm/boot/dts/stih41x-b2020.dtsi +++ b/arch/arm/boot/dts/stih41x-b2020.dtsi | |||
@@ -19,6 +19,7 @@ | |||
19 | 19 | ||
20 | aliases { | 20 | aliases { |
21 | ttyAS0 = &sbc_serial1; | 21 | ttyAS0 = &sbc_serial1; |
22 | ethernet1 = ðernet1; | ||
22 | }; | 23 | }; |
23 | soc { | 24 | soc { |
24 | sbc_serial1: serial@fe531000 { | 25 | sbc_serial1: serial@fe531000 { |
@@ -60,5 +61,17 @@ | |||
60 | i2c@fe541000 { | 61 | i2c@fe541000 { |
61 | status = "okay"; | 62 | status = "okay"; |
62 | }; | 63 | }; |
64 | |||
65 | ethernet1: dwmac@fef08000 { | ||
66 | status = "okay"; | ||
67 | phy-mode = "rgmii-id"; | ||
68 | max-speed = <1000>; | ||
69 | st,tx-retime-src = "clk_125"; | ||
70 | snps,reset-gpio = <&PIO3 0>; | ||
71 | snps,reset-active-low; | ||
72 | snps,reset-delays-us = <0 10000 10000>; | ||
73 | |||
74 | pinctrl-0 = <&pinctrl_rgmii1>; | ||
75 | }; | ||
63 | }; | 76 | }; |
64 | }; | 77 | }; |