0001 // SPDX-License-Identifier: GPL-2.0
0002
0003 / {
0004 #address-cells = <1>;
0005 #size-cells = <1>;
0006 compatible = "ralink,mt7628a-soc";
0007
0008 cpus {
0009 #address-cells = <1>;
0010 #size-cells = <0>;
0011
0012 cpu@0 {
0013 compatible = "mti,mips24KEc";
0014 device_type = "cpu";
0015 reg = <0>;
0016 };
0017 };
0018
0019 resetc: reset-controller {
0020 compatible = "ralink,rt2880-reset";
0021 #reset-cells = <1>;
0022 };
0023
0024 cpuintc: interrupt-controller {
0025 #address-cells = <0>;
0026 #interrupt-cells = <1>;
0027 interrupt-controller;
0028 compatible = "mti,cpu-interrupt-controller";
0029 };
0030
0031 palmbus@10000000 {
0032 compatible = "palmbus";
0033 reg = <0x10000000 0x200000>;
0034 ranges = <0x0 0x10000000 0x1FFFFF>;
0035
0036 #address-cells = <1>;
0037 #size-cells = <1>;
0038
0039 sysc: system-controller@0 {
0040 compatible = "ralink,mt7620a-sysc", "syscon";
0041 reg = <0x0 0x60>;
0042 };
0043
0044 pinmux: pinmux@60 {
0045 compatible = "pinctrl-single";
0046 reg = <0x60 0x8>;
0047 #address-cells = <1>;
0048 #size-cells = <0>;
0049 #pinctrl-cells = <2>;
0050 pinctrl-single,bit-per-mux;
0051 pinctrl-single,register-width = <32>;
0052 pinctrl-single,function-mask = <0x1>;
0053
0054 pinmux_gpio_gpio: pinmux_gpio_gpio {
0055 pinctrl-single,bits = <0x0 0x0 0x3>;
0056 };
0057
0058 pinmux_spi_cs1_cs: pinmux_spi_cs1_cs {
0059 pinctrl-single,bits = <0x0 0x0 0x30>;
0060 };
0061
0062 pinmux_i2s_gpio: pinmux_i2s_gpio {
0063 pinctrl-single,bits = <0x0 0x40 0xc0>;
0064 };
0065
0066 pinmux_uart0_uart: pinmux_uart0_uart0 {
0067 pinctrl-single,bits = <0x0 0x0 0x300>;
0068 };
0069
0070 pinmux_sdmode_sdxc: pinmux_sdmode_sdxc {
0071 pinctrl-single,bits = <0x0 0x0 0xc00>;
0072 };
0073
0074 pinmux_sdmode_gpio: pinmux_sdmode_gpio {
0075 pinctrl-single,bits = <0x0 0x400 0xc00>;
0076 };
0077
0078 pinmux_spi_spi: pinmux_spi_spi {
0079 pinctrl-single,bits = <0x0 0x0 0x1000>;
0080 };
0081
0082 pinmux_refclk_gpio: pinmux_refclk_gpio {
0083 pinctrl-single,bits = <0x0 0x40000 0x40000>;
0084 };
0085
0086 pinmux_i2c_i2c: pinmux_i2c_i2c {
0087 pinctrl-single,bits = <0x0 0x0 0x300000>;
0088 };
0089
0090 pinmux_uart1_uart: pinmux_uart1_uart1 {
0091 pinctrl-single,bits = <0x0 0x0 0x3000000>;
0092 };
0093
0094 pinmux_uart2_uart: pinmux_uart2_uart {
0095 pinctrl-single,bits = <0x0 0x0 0xc000000>;
0096 };
0097
0098 pinmux_pwm0_pwm: pinmux_pwm0_pwm {
0099 pinctrl-single,bits = <0x0 0x0 0x30000000>;
0100 };
0101
0102 pinmux_pwm0_gpio: pinmux_pwm0_gpio {
0103 pinctrl-single,bits = <0x0 0x10000000
0104 0x30000000>;
0105 };
0106
0107 pinmux_pwm1_pwm: pinmux_pwm1_pwm {
0108 pinctrl-single,bits = <0x0 0x0 0xc0000000>;
0109 };
0110
0111 pinmux_pwm1_gpio: pinmux_pwm1_gpio {
0112 pinctrl-single,bits = <0x0 0x40000000
0113 0xc0000000>;
0114 };
0115
0116 pinmux_p0led_an_gpio: pinmux_p0led_an_gpio {
0117 pinctrl-single,bits = <0x4 0x4 0xc>;
0118 };
0119
0120 pinmux_p1led_an_gpio: pinmux_p1led_an_gpio {
0121 pinctrl-single,bits = <0x4 0x10 0x30>;
0122 };
0123
0124 pinmux_p2led_an_gpio: pinmux_p2led_an_gpio {
0125 pinctrl-single,bits = <0x4 0x40 0xc0>;
0126 };
0127
0128 pinmux_p3led_an_gpio: pinmux_p3led_an_gpio {
0129 pinctrl-single,bits = <0x4 0x100 0x300>;
0130 };
0131
0132 pinmux_p4led_an_gpio: pinmux_p4led_an_gpio {
0133 pinctrl-single,bits = <0x4 0x400 0xc00>;
0134 };
0135 };
0136
0137 watchdog: watchdog@100 {
0138 compatible = "mediatek,mt7621-wdt";
0139 reg = <0x100 0x30>;
0140
0141 resets = <&resetc 8>;
0142 reset-names = "wdt";
0143
0144 interrupt-parent = <&intc>;
0145 interrupts = <24>;
0146
0147 status = "disabled";
0148 };
0149
0150 intc: interrupt-controller@200 {
0151 compatible = "ralink,rt2880-intc";
0152 reg = <0x200 0x100>;
0153
0154 interrupt-controller;
0155 #interrupt-cells = <1>;
0156
0157 resets = <&resetc 9>;
0158 reset-names = "intc";
0159
0160 interrupt-parent = <&cpuintc>;
0161 interrupts = <2>;
0162
0163 ralink,intc-registers = <0x9c 0xa0
0164 0x6c 0xa4
0165 0x80 0x78>;
0166 };
0167
0168 memory-controller@300 {
0169 compatible = "ralink,mt7620a-memc";
0170 reg = <0x300 0x100>;
0171 };
0172
0173 gpio: gpio@600 {
0174 compatible = "mediatek,mt7621-gpio";
0175 reg = <0x600 0x100>;
0176
0177 gpio-controller;
0178 interrupt-controller;
0179 #gpio-cells = <2>;
0180 #interrupt-cells = <2>;
0181
0182 interrupt-parent = <&intc>;
0183 interrupts = <6>;
0184 };
0185
0186 spi: spi@b00 {
0187 compatible = "ralink,mt7621-spi";
0188 reg = <0xb00 0x100>;
0189
0190 pinctrl-names = "default";
0191 pinctrl-0 = <&pinmux_spi_spi>;
0192
0193 resets = <&resetc 18>;
0194 reset-names = "spi";
0195
0196 #address-cells = <1>;
0197 #size-cells = <0>;
0198
0199 status = "disabled";
0200 };
0201
0202 i2c: i2c@900 {
0203 compatible = "mediatek,mt7621-i2c";
0204 reg = <0x900 0x100>;
0205
0206 pinctrl-names = "default";
0207 pinctrl-0 = <&pinmux_i2c_i2c>;
0208
0209 resets = <&resetc 16>;
0210 reset-names = "i2c";
0211
0212 #address-cells = <1>;
0213 #size-cells = <0>;
0214
0215 status = "disabled";
0216 };
0217
0218 uart0: uartlite@c00 {
0219 compatible = "ns16550a";
0220 reg = <0xc00 0x100>;
0221
0222 pinctrl-names = "default";
0223 pinctrl-0 = <&pinmux_uart0_uart>;
0224
0225 resets = <&resetc 12>;
0226 reset-names = "uart0";
0227
0228 interrupt-parent = <&intc>;
0229 interrupts = <20>;
0230
0231 reg-shift = <2>;
0232 };
0233
0234 uart1: uart1@d00 {
0235 compatible = "ns16550a";
0236 reg = <0xd00 0x100>;
0237
0238 pinctrl-names = "default";
0239 pinctrl-0 = <&pinmux_uart1_uart>;
0240
0241 resets = <&resetc 19>;
0242 reset-names = "uart1";
0243
0244 interrupt-parent = <&intc>;
0245 interrupts = <21>;
0246
0247 reg-shift = <2>;
0248 };
0249
0250 uart2: uart2@e00 {
0251 compatible = "ns16550a";
0252 reg = <0xe00 0x100>;
0253
0254 pinctrl-names = "default";
0255 pinctrl-0 = <&pinmux_uart2_uart>;
0256
0257 resets = <&resetc 20>;
0258 reset-names = "uart2";
0259
0260 interrupt-parent = <&intc>;
0261 interrupts = <22>;
0262
0263 reg-shift = <2>;
0264 };
0265 };
0266
0267 usb_phy: usb-phy@10120000 {
0268 compatible = "mediatek,mt7628-usbphy";
0269 reg = <0x10120000 0x1000>;
0270
0271 #phy-cells = <0>;
0272
0273 ralink,sysctl = <&sysc>;
0274 resets = <&resetc 22 &resetc 25>;
0275 reset-names = "host", "device";
0276 };
0277
0278 usb@101c0000 {
0279 compatible = "generic-ehci";
0280 reg = <0x101c0000 0x1000>;
0281
0282 phys = <&usb_phy>;
0283 phy-names = "usb";
0284
0285 interrupt-parent = <&intc>;
0286 interrupts = <18>;
0287 };
0288
0289 wmac: wmac@10300000 {
0290 compatible = "mediatek,mt7628-wmac";
0291 reg = <0x10300000 0x100000>;
0292
0293 interrupt-parent = <&cpuintc>;
0294 interrupts = <6>;
0295
0296 status = "disabled";
0297 };
0298 };