ramips: add RB750Gr3 native support

This patch adds support of MikroTik RouterBOARD 750Gr3, without the need
to reflashing the bootloader.

Installation through RouterBoot follows the usual MikroTik method
https://openwrt.org/toh/mikrotik/common

Since the image isn't compatible with RouterBOARD 750Gr3 installations
which have replaced the bootloader, the former used userspace boardname
is not added to the SUPPORTED_DEVICES, to prevent a brick while trying
to upgrade to the image with native support.

Signed-off-by: Anton Arapov <arapov@gmail.com>
Signed-off-by: Thibaut VARÈNE <hacks@slashdirt.org>
Signed-off-by: Mathias Kresin <dev@kresin.me>
This commit is contained in:
Anton Arapov 2018-12-29 01:28:27 +01:00 committed by Mathias Kresin
parent a54129d8aa
commit 52f2d7d2a9
5 changed files with 48 additions and 31 deletions

View File

@ -222,9 +222,9 @@ ramips_setup_interfaces()
jhr-n805r|\
jhr-n825r|\
jhr-n926r|\
mikrotik,rb750gr3|\
mikrotik,rbm33g|\
mzk-wdpr|\
rb750gr3|\
rt-n14u|\
skylab,skw92a|\
tplink,c20-v4|\

View File

@ -415,9 +415,6 @@ ramips_board_detect() {
*"R6220")
name="r6220"
;;
*"RB750Gr3")
name="rb750gr3"
;;
*"RE350 v1")
name="re350-v1"
;;

View File

@ -13,6 +13,7 @@ platform_pre_upgrade() {
local board=$(board_name)
case "$board" in
mikrotik,rb750gr3|\
mikrotik,rbm11g|\
mikrotik,rbm33g)
[ -z "$(rootfs_type)" ] && mtd erase firmware

View File

@ -22,7 +22,7 @@
};
chosen {
bootargs = "console=ttyS0,57600";
bootargs = "console=ttyS0,115200";
};
gpio-leds {
@ -89,34 +89,54 @@
#size-cells = <1>;
partition@0 {
label = "u-boot";
reg = <0x0 0x30000>;
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@30000 {
label = "u-boot-env";
reg = <0x30000 0x10000>;
read-only;
};
factory: partition@40000 {
label = "factory";
reg = <0x40000 0x10000>;
read-only;
};
partition@50000 {
compatible = "denx,uimage";
partition@40000 {
compatible = "mikrotik,minor";
label = "firmware";
reg = <0x50000 0xfb0000>;
reg = <0x040000 0xfc0000>;
};
};
};
};
&ethernet {
mtd-mac-address = <&factory 0xe000>;
mtd-mac-address = <&hard_config 0x0010>;
mtd-mac-address-increment = <1>;
};

View File

@ -324,14 +324,6 @@ define Device/netgear_r6350
endef
TARGET_DEVICES += netgear_r6350
define Device/rb750gr3
DTS := RB750Gr3
IMAGE_SIZE := $(ralink_default_fw_size_16M)
DEVICE_TITLE := MikroTik RB750Gr3
DEVICE_PACKAGES := kmod-usb3 uboot-envtools
endef
TARGET_DEVICES += rb750gr3
define Device/MikroTik
BLOCKSIZE := 64k
IMAGE_SIZE := 16128k
@ -343,6 +335,13 @@ define Device/MikroTik
append-rootfs | pad-rootfs | append-metadata | check-size $$$$(IMAGE_SIZE)
endef
define Device/mikrotik_rb750gr3
$(Device/MikroTik)
DTS := RB750Gr3
DEVICE_TITLE := MikroTik RouterBOARD RB750Gr3
endef
TARGET_DEVICES += mikrotik_rb750gr3
define Device/mikrotik_rbm33g
$(Device/MikroTik)
DTS := RBM33G