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 | }; |
