blob: 16037140fb35fbfa37b14abe1190f5e4031f27f6 [file] [log] [blame]
developer1b76b3f2021-12-22 19:53:19 +08001/dts-v1/;
2#include "mt7986b.dtsi"
3#include "mt7986b-pinctrl.dtsi"
4#include "mt7986-spim-nand-partition.dtsi"
5/ {
6 model = "MediaTek MT7986b gsw RFB";
developerbd0dd0e2022-04-18 18:28:19 +08007 compatible = "mediatek,mt7986b-2500wan-gsw-spim-snand-rfb";
developer1b76b3f2021-12-22 19:53:19 +08008 chosen {
9 bootargs = "console=ttyS0,115200n1 loglevel=8 \
10 earlycon=uart8250,mmio32,0x11002000";
11 };
12
13 gsw: gsw@0 {
14 compatible = "mediatek,mt753x";
15 mediatek,ethsys = <&ethsys>;
16 #address-cells = <1>;
17 #size-cells = <0>;
18 };
19
20 memory {
21 reg = <0 0x40000000 0 0x10000000>;
22 };
23};
24
25&uart0 {
26 status = "okay";
27};
28
29/* Warning: pins shared with &snand */
30&uart1 {
31 pinctrl-names = "default";
32 pinctrl-0 = <&uart1_pins>;
33 status = "disabled";
34};
35
36/* Warning: pins shared with &spi1 */
37&uart2 {
38 pinctrl-names = "default";
39 pinctrl-0 = <&uart2_pins>;
40 status = "disabled";
41};
42
43&i2c0 {
44 pinctrl-names = "default";
45 pinctrl-0 = <&i2c_pins>;
46 status = "okay";
47};
48
49&watchdog {
50 status = "okay";
51};
52
53&eth {
54 status = "okay";
55
56 gmac0: mac@0 {
57 compatible = "mediatek,eth-mac";
58 reg = <0>;
59 phy-mode = "2500base-x";
developer283fc452022-08-18 19:50:33 +080060
61 fixed-link {
62 speed = <2500>;
63 full-duplex;
64 pause;
65 link-gpio = <&pio 47 0>;
66 phy-handle = <&phy5>;
67 label = "lan5";
68 };
developer1b76b3f2021-12-22 19:53:19 +080069 };
70
71 gmac1: mac@1 {
72 compatible = "mediatek,eth-mac";
73 reg = <1>;
74 phy-mode = "2500base-x";
developerf0a1e452022-08-15 12:06:11 +080075 phy-handle = <&phy6>;
developer1b76b3f2021-12-22 19:53:19 +080076 };
77
78 mdio: mdio-bus {
79 #address-cells = <1>;
80 #size-cells = <0>;
81
developerf0a1e452022-08-15 12:06:11 +080082 reset-gpios = <&pio 6 1>;
83 reset-delay-us = <600>;
84
developer1b76b3f2021-12-22 19:53:19 +080085 phy5: phy@5 {
developer283fc452022-08-18 19:50:33 +080086 compatible = "ethernet-phy-id67c9.de0a";
developer1b76b3f2021-12-22 19:53:19 +080087 reg = <5>;
developer1b76b3f2021-12-22 19:53:19 +080088 };
89
90 phy6: phy@6 {
developerf0a1e452022-08-15 12:06:11 +080091 compatible = "ethernet-phy-ieee802.3-c45";
developer1b76b3f2021-12-22 19:53:19 +080092 reg = <6>;
developer1b76b3f2021-12-22 19:53:19 +080093 };
developer1b76b3f2021-12-22 19:53:19 +080094 };
95};
96
97&gsw {
98 mediatek,mdio = <&mdio>;
99 mediatek,portmap = "lllll";
100 mediatek,mdio_master_pinmux = <1>;
101 reset-gpios = <&pio 5 0>;
102 interrupt-parent = <&pio>;
103 interrupts = <66 IRQ_TYPE_LEVEL_HIGH>;
104 status = "okay";
105
106 port5: port@5 {
107 compatible = "mediatek,mt753x-port";
108 reg = <5>;
109 phy-mode = "sgmii";
110
111 fixed-link {
112 speed = <2500>;
113 full-duplex;
114 };
115
116 };
117
118 port6: port@6 {
119 compatible = "mediatek,mt753x-port";
developer3c21f192022-03-14 20:37:51 +0800120 /* mediatek,ssc-on; */
developer1b76b3f2021-12-22 19:53:19 +0800121 reg = <6>;
122 phy-mode = "sgmii";
123 fixed-link {
124 speed = <2500>;
125 full-duplex;
126 };
127 };
128};
129
130&hnat {
131 mtketh-wan = "eth1";
developer3c21f192022-03-14 20:37:51 +0800132 mtketh-lan = "eth0";
developer1b76b3f2021-12-22 19:53:19 +0800133 mtketh-max-gmac = <2>;
134 status = "okay";
135};
136
137&spi0 {
138 pinctrl-names = "default";
139 pinctrl-0 = <&spi_flash_pins>;
140 cs-gpios = <0>, <0>;
141 status = "okay";
142
143 spi_nor@0 {
144 #address-cells = <1>;
145 #size-cells = <1>;
146 compatible = "jedec,spi-nor";
147 reg = <0>;
148 spi-max-frequency = <20000000>;
149 spi-tx-buswidth = <4>;
150 spi-rx-buswidth = <4>;
151 };
152
153 spi_nand: spi_nand@1 {
154 #address-cells = <1>;
155 #size-cells = <1>;
156 compatible = "spi-nand";
157 reg = <1>;
158 spi-max-frequency = <20000000>;
159 spi-tx-buswidth = <4>;
160 spi-rx-buswidth = <4>;
161 };
162};
163
164/* Warning: pins shared with &uart2 */
165&spi1 {
166 pinctrl-names = "default";
167 pinctrl-0 = <&spic_pins>;
168 status = "okay";
169};
170
171&wbsys {
172 mediatek,mtd-eeprom = <&factory 0x0000>;
173 status = "okay";
174};
175
176&pio {
177 spi_flash_pins: spi-flash-pins-33-to-38 {
178 mux {
179 function = "flash";
180 groups = "spi0", "spi0_wp_hold";
181 };
182 conf-pu {
183 pins = "SPI2_CS", "SPI2_HOLD", "SPI2_WP";
184 drive-strength = <MTK_DRIVE_8mA>;
developerb5a819c2022-05-16 19:16:07 +0800185 bias-pull-up = <MTK_PUPD_SET_R1R0_11>;
developer1b76b3f2021-12-22 19:53:19 +0800186 };
187 conf-pd {
188 pins = "SPI2_CLK", "SPI2_MOSI", "SPI2_MISO";
189 drive-strength = <MTK_DRIVE_8mA>;
developerb5a819c2022-05-16 19:16:07 +0800190 bias-pull-down = <MTK_PUPD_SET_R1R0_11>;
developer1b76b3f2021-12-22 19:53:19 +0800191 };
192
193 };
194};