ramips: rb750gr3: License DTS as GPL-2.0-or-later OR MIT
[openwrt/openwrt.git] / target / linux / ramips / dts / RB750Gr3.dts
index bf1c2ba495bc1634eb4f405e59d3d82fb5b4d640..4a303edddb8d527c95df94084eaec64ceda81bc1 100644 (file)
@@ -1,3 +1,4 @@
+// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
 /dts-v1/;
 
 #include "mt7621.dtsi"
@@ -6,7 +7,15 @@
 #include <dt-bindings/gpio/gpio.h>
 
 / {
-       model = "MikroTik RB750Gr3";
+       compatible = "mikrotik,rb750gr3", "mediatek,mt7621-soc";
+       model = "MikroTik RouterBOARD 750Gr3";
+
+       aliases {
+               led-boot = &led_usr;
+               led-failsafe = &led_usr;
+               led-running = &led_usr;
+               led-upgrade = &led_usr;
+       };
 
        memory@0 {
                device_type = "memory";
        };
 
        chosen {
-               bootargs = "console=ttyS0,57600";
+               bootargs = "console=ttyS0,115200";
        };
 
-       gpio-leds {
+       leds {
                compatible = "gpio-leds";
 
-               usr {
+               pwr {
+                       label = "rb750gr3:blue:pwr";
+                       gpios = <&gpio0 16 GPIO_ACTIVE_HIGH>;
+                       default-state = "on";
+               };
+
+               led_usr: usr {
                        label = "rb750gr3:green:usr";
                        gpios = <&gpio0 0 GPIO_ACTIVE_HIGH>;
                };
        };
 
-       gpio-keys-polled {
+       keys {
                compatible = "gpio-keys-polled";
-               #address-cells = <1>;
-               #size-cells = <0>;
                poll-interval = <20>;
 
                mode {
                        label = "mode";
                        gpios = <&gpio0 13 GPIO_ACTIVE_LOW>;
-                       linux,code = <KEY_RFKILL>;
+                       linux,code = <BTN_0>;
                };
 
-               res {
-                       label = "res";
+               reset {
+                       label = "reset";
                        gpios = <&gpio0 18 GPIO_ACTIVE_LOW>;
                        linux,code = <KEY_RESTART>;
                };
        };
 
+       beeper {
+               compatible = "gpio-beeper";
+               gpios = <&gpio0 15 GPIO_ACTIVE_HIGH>;
+       };
+
        gpio_export {
                compatible = "gpio-export";
                #size-cells = <0>;
 
-               usb {
-                       gpio-export,name = "usb";
+               usb_power {
+                       gpio-export,name = "usb_power";
                        gpio-export,output = <1>;
                        gpios = <&gpio0 12 GPIO_ACTIVE_HIGH>;
                };
 &spi0 {
        status = "okay";
 
-       m25p80@0 {
-               #address-cells = <1>;
-               #size-cells = <1>;
+       flash@0 {
                compatible = "jedec,spi-nor";
                reg = <0>;
-               spi-max-frequency = <10000000>;
-               m25p,chunked-io = <32>;
-
-               partition@0 {
-                       label = "u-boot";
-                       reg = <0x0 0x30000>;
-                       read-only;
+               spi-max-frequency = <20000000>;
+
+               partitions {
+                       compatible = "fixed-partitions";
+                       #address-cells = <1>;
+                       #size-cells = <1>;
+
+                       partition@0 {
+                               label = "RouterBoot";
+                               reg = <0x0 0x40000>;
+                               read-only;
+                               compatible = "fixed-partitions";
+                               #address-cells = <1>;
+                               #size-cells = <1>;
+
+                               partition@0 {
+                                       label = "bootloader1";
+                                       reg = <0x0 0xf000>;
+                                       read-only;
+                               };
+
+                               hard_config: partition@f000 {
+                                       label = "hard_config";
+                                       reg = <0xf000 0x1000>;
+                                       read-only;
+                               };
+
+                               partition@10000 {
+                                       label = "bootloader2";
+                                       reg = <0x10000 0xf000>;
+                                       read-only;
+                               };
+
+                               partition@20000 {
+                                       label = "soft_config";
+                                       reg = <0x20000 0x1000>;
+                               };
+
+                               partition@30000 {
+                                       label = "bios";
+                                       reg = <0x30000 0x1000>;
+                                       read-only;
+                               };
+                       };
+
+                       partition@40000 {
+                               compatible = "mikrotik,minor";
+                               label = "firmware";
+                               reg = <0x040000 0xfc0000>;
+                       };
                };
-
-               partition@30000 {
-                       label = "u-boot-env";
-                       reg = <0x30000 0x10000>;
-                       read-only;
-               };
-
-               factory: partition@40000 {
-                       label = "factory";
-                       reg = <0x40000 0x10000>;
-                       read-only;
-               };
-
-               partition@50000 {
-                       label = "firmware";
-                       reg = <0x50000 0xfb0000>;
-               };
-
        };
 };
 
 &ethernet {
-       mtd-mac-address = <&factory 0xe000>;
+       mtd-mac-address = <&hard_config 0x0010>;
        mtd-mac-address-increment = <1>;
 };
 
 &pinctrl {
        state_default: pinctrl0 {
                gpio {
-                       ralink,group = "i2c", "rgmii2", "sdhci";
+                       /* via gpio7 (uart3 group) the PoE status can be read */
+                       ralink,group = "uart2", "uart3", "jtag", "wdt";
                        ralink,function = "gpio";
                };
        };