ramips: add support for mqmaker witi 512mb version
authorDavide Ammirata <list@davidea.it>
Thu, 3 May 2018 15:59:27 +0000 (15:59 +0000)
committerMathias Kresin <dev@kresin.me>
Mon, 7 May 2018 16:54:23 +0000 (18:54 +0200)
Splitted out the dts file and create the new dts for the 256 MByte RAM and
the 512 MB RAM version.

Migrate both versions to the common board detection.

The install the 512 MByte Version on a board running the 256 MByte image,
a forceful sysupgrade with the -F flag is required.

Signed-off-by: Davide Ammirata <list@davidea.it>
target/linux/ramips/base-files/etc/board.d/02_network
target/linux/ramips/base-files/etc/diag.sh
target/linux/ramips/base-files/lib/ramips.sh
target/linux/ramips/base-files/lib/upgrade/platform.sh
target/linux/ramips/base-files/sbin/fixup-mac-address
target/linux/ramips/dts/WITI-256M.dts [new file with mode: 0644]
target/linux/ramips/dts/WITI-512M.dts [new file with mode: 0644]
target/linux/ramips/dts/WITI.dts [deleted file]
target/linux/ramips/dts/WITI.dtsi [new file with mode: 0644]
target/linux/ramips/image/mt7621.mk

index 5d25cdb..2c92a6a 100755 (executable)
@@ -113,7 +113,8 @@ ramips_setup_interfaces()
        vr500|\
        wf-2881|\
        whr-g300n|\
-       witi|\
+       mqmaker,witi-256m|\
+       mqmaker,witi-512m|\
        wl-wn575a3|\
        wndr3700v5|\
        youku-yk1|\
index d84bdff..6a51778 100644 (file)
@@ -279,7 +279,8 @@ get_status_led() {
                status_led="$boardname:green:status"
                ;;
        w306r-v20|\
-       witi|\
+       mqmaker,witi-256m|\
+       mqmaker,witi-512m|\
        zbt-wr8305rt)
                status_led="$boardname:green:sys"
                ;;
index 75474fb..8c15155 100755 (executable)
@@ -577,9 +577,6 @@ ramips_board_detect() {
        *"WHR-G300N")
                name="whr-g300n"
                ;;
-       *"WiTi")
-                name="witi"
-               ;;
        *"WIZARD 8800")
                name="wizard8800"
                ;;
index ff73d64..e90b560 100755 (executable)
@@ -173,7 +173,8 @@ platform_check_image() {
        whr-g300n|\
        widora,neo-16m|\
        widora,neo-32m|\
-       witi|\
+       mqmaker,witi-256m|\
+       mqmaker,witi-512m|\
        wizfi630a|\
        wl-330n|\
        wl-330n3g|\
index 98264c0..309db8c 100755 (executable)
@@ -9,7 +9,8 @@ YES=
 
 board=$(board_name)
 case $board in
-       witi)
+       mqmaker,witi-256m|\
+       mqmaker,witi-512m)
                partname=factory
                offset=$((0xe000))
        ;;
diff --git a/target/linux/ramips/dts/WITI-256M.dts b/target/linux/ramips/dts/WITI-256M.dts
new file mode 100644 (file)
index 0000000..4c12d8c
--- /dev/null
@@ -0,0 +1,13 @@
+/dts-v1/;
+
+#include "WITI.dtsi"
+
+/ {
+       compatible = "mqmaker,witi-256m", "mqmaker,witi", "mediatek,mt7621-soc";
+       model = "MQmaker WiTi (256MB RAM)";
+
+       memory@0 {
+               device_type = "memory";
+               reg = <0x0 0x10000000>;
+       };
+};
diff --git a/target/linux/ramips/dts/WITI-512M.dts b/target/linux/ramips/dts/WITI-512M.dts
new file mode 100644 (file)
index 0000000..b249075
--- /dev/null
@@ -0,0 +1,13 @@
+/dts-v1/;
+
+#include "WITI.dtsi"
+
+/ {
+       compatible = "mqmaker,witi-512m", "mqmaker,witi", "mediatek,mt7621-soc";
+       model = "MQmaker WiTi (512MB RAM)";
+
+       memory@0 {
+               device_type = "memory";
+               reg = <0x0 0x1c000000>, <0x20000000 0x4000000>;
+       };
+};
diff --git a/target/linux/ramips/dts/WITI.dts b/target/linux/ramips/dts/WITI.dts
deleted file mode 100644 (file)
index 097c816..0000000
+++ /dev/null
@@ -1,121 +0,0 @@
-/dts-v1/;
-
-#include "mt7621.dtsi"
-
-#include <dt-bindings/gpio/gpio.h>
-#include <dt-bindings/input/input.h>
-
-/ {
-       compatible = "mqmaker,witi", "mediatek,mt7621-soc";
-       model = "MQmaker WiTi";
-
-       memory@0 {
-               device_type = "memory";
-               reg = <0x0 0x10000000>;
-       };
-
-       chosen {
-               bootargs = "console=ttyS0,57600";
-       };
-
-       palmbus: palmbus@1E000000 {
-               i2c@900 {
-                       status = "okay";
-
-                       pcf8563: rtc@51 {
-                               status = "okay";
-                               compatible = "nxp,pcf8563";
-                               reg = <0x51>;
-                       };
-               };
-       };
-
-       gpio-keys-polled {
-               compatible = "gpio-keys-polled";
-               #address-cells = <1>;
-               #size-cells = <0>;
-               poll-interval = <20>;
-
-               reset {
-                       label = "reset";
-                       gpios = <&gpio0 18 GPIO_ACTIVE_LOW>;
-                       linux,code = <KEY_RESTART>;
-               };
-       };
-};
-
-&sdhci {
-       status = "okay";
-};
-
-&spi0 {
-       status = "okay";
-
-       m25p80@0 {
-               #address-cells = <1>;
-               #size-cells = <1>;
-               compatible = "jedec,spi-nor";
-               reg = <0>;
-               spi-max-frequency = <10000000>;
-               m25p,chunked-io = <32>;
-
-               partition@0 {
-                       label = "u-boot";
-                       reg = <0x0 0x30000>;
-                       read-only;
-               };
-
-               partition@30000 {
-                       label = "u-boot-env";
-                       reg = <0x30000 0x10000>;
-                       read-only;
-               };
-
-               factory: partition@40000 {
-                       label = "factory";
-                       reg = <0x40000 0x10000>;
-               };
-
-               partition@50000 {
-                       label = "firmware";
-                       reg = <0x50000 0xfb0000>;
-               };
-       };
-};
-
-&pcie {
-       status = "okay";
-
-       pcie0 {
-               mt76@0,0 {
-                       reg = <0x0000 0 0 0 0>;
-                       device_type = "pci";
-                       mediatek,mtd-eeprom = <&factory 0x8000>;
-                       ieee80211-freq-limit = <5000000 6000000>;
-                       mtd-mac-address = <&factory 0xe000>;
-               };
-       };
-
-       pcie1 {
-               mt76@1,0 {
-                       reg = <0x0000 0 0 0 0>;
-                       device_type = "pci";
-                       mediatek,mtd-eeprom = <&factory 0x0000>;
-                       ieee80211-freq-limit = <2400000 2500000>;
-                       mtd-mac-address = <&factory 0xe000>;
-               };
-       };
-};
-
-&ethernet {
-       mtd-mac-address = <&factory 0xe000>;
-};
-
-&pinctrl {
-       state_default: pinctrl0 {
-               gpio {
-                       ralink,group = "wdt", "rgmii2", "jtag", "mdio";
-                       ralink,function = "gpio";
-               };
-       };
-};
diff --git a/target/linux/ramips/dts/WITI.dtsi b/target/linux/ramips/dts/WITI.dtsi
new file mode 100644 (file)
index 0000000..767ea03
--- /dev/null
@@ -0,0 +1,115 @@
+/dts-v1/;
+
+#include "mt7621.dtsi"
+
+#include <dt-bindings/gpio/gpio.h>
+#include <dt-bindings/input/input.h>
+
+/ {
+       compatible = "mqmaker,witi", "mediatek,mt7621-soc";
+
+       chosen {
+               bootargs = "console=ttyS0,57600";
+       };
+
+       palmbus: palmbus@1E000000 {
+               i2c@900 {
+                       status = "okay";
+
+                       pcf8563: rtc@51 {
+                               status = "okay";
+                               compatible = "nxp,pcf8563";
+                               reg = <0x51>;
+                       };
+               };
+       };
+
+       gpio-keys-polled {
+               compatible = "gpio-keys-polled";
+               #address-cells = <1>;
+               #size-cells = <0>;
+               poll-interval = <20>;
+
+               reset {
+                       label = "reset";
+                       gpios = <&gpio0 18 GPIO_ACTIVE_LOW>;
+                       linux,code = <KEY_RESTART>;
+               };
+       };
+};
+
+&sdhci {
+       status = "okay";
+};
+
+&spi0 {
+       status = "okay";
+
+       m25p80@0 {
+               #address-cells = <1>;
+               #size-cells = <1>;
+               compatible = "jedec,spi-nor";
+               reg = <0>;
+               spi-max-frequency = <10000000>;
+               m25p,chunked-io = <32>;
+
+               partition@0 {
+                       label = "u-boot";
+                       reg = <0x0 0x30000>;
+                       read-only;
+               };
+
+               partition@30000 {
+                       label = "u-boot-env";
+                       reg = <0x30000 0x10000>;
+                       read-only;
+               };
+
+               factory: partition@40000 {
+                       label = "factory";
+                       reg = <0x40000 0x10000>;
+               };
+
+               partition@50000 {
+                       label = "firmware";
+                       reg = <0x50000 0xfb0000>;
+               };
+       };
+};
+
+&pcie {
+       status = "okay";
+
+       pcie0 {
+               mt76@0,0 {
+                       reg = <0x0000 0 0 0 0>;
+                       device_type = "pci";
+                       mediatek,mtd-eeprom = <&factory 0x8000>;
+                       ieee80211-freq-limit = <5000000 6000000>;
+                       mtd-mac-address = <&factory 0xe000>;
+               };
+       };
+
+       pcie1 {
+               mt76@1,0 {
+                       reg = <0x0000 0 0 0 0>;
+                       device_type = "pci";
+                       mediatek,mtd-eeprom = <&factory 0x0000>;
+                       ieee80211-freq-limit = <2400000 2500000>;
+                       mtd-mac-address = <&factory 0xe000>;
+               };
+       };
+};
+
+&ethernet {
+       mtd-mac-address = <&factory 0xe000>;
+};
+
+&pinctrl {
+       state_default: pinctrl0 {
+               gpio {
+                       ralink,group = "wdt", "rgmii2", "jtag", "mdio";
+                       ralink,function = "gpio";
+               };
+       };
+};
index d78175c..b84b74a 100644 (file)
@@ -310,15 +310,26 @@ define Device/wf-2881
 endef
 TARGET_DEVICES += wf-2881
 
-define Device/witi
-  DTS := WITI
+define Device/mqmaker_witi-256m
+  DTS := WITI-256M
   IMAGE_SIZE := $(ralink_default_fw_size_16M)
-  DEVICE_TITLE := MQmaker WiTi
+  DEVICE_TITLE := MQmaker WiTi (256MB RAM)
   DEVICE_PACKAGES := \
        kmod-ata-core kmod-ata-ahci kmod-mt76x2 kmod-sdhci-mt7620 kmod-usb3 \
        kmod-usb-ledtrig-usbport wpad-mini
+  SUPPORTED_DEVICES += witi
 endef
-TARGET_DEVICES += witi
+TARGET_DEVICES += mqmaker_witi-256m
+
+define Device/mqmaker_witi-512m
+  DTS := WITI-512M
+  IMAGE_SIZE := $(ralink_default_fw_size_16M)
+  DEVICE_TITLE := MQmaker WiTi (512MB RAM)
+  DEVICE_PACKAGES := \
+       kmod-ata-core kmod-ata-ahci kmod-mt76x2 kmod-sdhci-mt7620 kmod-usb3 \
+       kmod-usb-ledtrig-usbport wpad-mini
+endef
+TARGET_DEVICES += mqmaker_witi-512m
 
 define Device/wndr3700v5
   DTS := WNDR3700V5