mediatek: fix ubi size for zbtlink zbt z8102ax v2
authorTianling Shen <cnsztl@immortalwrt.org>
Thu, 13 Nov 2025 13:41:30 +0000 (21:41 +0800)
committerRobert Marko <robimarko@gmail.com>
Mon, 8 Dec 2025 16:27:20 +0000 (17:27 +0100)
According to the factory uboot and firmware[1], the ubi size is set
to 512 MiB (0x20000000) and it exceeds the size of the flash, after
that the uboot and kernel resizes it to 114.5 MiB (0x7280000) instead
of 114.125 MiB (0x7220000). The mismatch of the ubi size causes
kernel fails to read ubi volumes and throws panic.

Trim whitespaces while at it.

1. https://github.com/immortalwrt/immortalwrt/issues/2123#issuecomment-3523744128

Fixes: c908fc7d9591 ("mediatek: add support for Zbtlink ZBT-Z8102AX v2")
Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
Link: https://github.com/openwrt/openwrt/pull/20769
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit d2fa070f7014e8b1144a23e343b31390e7f565ff)
[rebased upon 24.10 branch]
Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
Link: https://github.com/openwrt/openwrt/pull/21085
Signed-off-by: Robert Marko <robimarko@gmail.com>
target/linux/mediatek/dts/mt7981b-zbtlink-zbt-z8102ax-v2.dts
target/linux/mediatek/filogic/base-files/etc/board.d/05_compat-version
target/linux/mediatek/image/filogic.mk

index 08fc4b977a18f007b5af56d90e306dd98217a5cd..f96be22355149efae772e9de4108866f5df2a6da 100644 (file)
@@ -38,7 +38,7 @@
                        linux,code = <KEY_WPS_BUTTON>;
                        gpios = <&pio 0 GPIO_ACTIVE_LOW>;
                };
-               
+
        };
 
        leds {
                        color = <LED_COLOR_ID_GREEN>;
                        function = LED_FUNCTION_STATUS;
                };
-               
+
                led_status_blue: blue {
                        gpios = <&pio 11 GPIO_ACTIVE_LOW>;
                        color = <LED_COLOR_ID_BLUE>;
                        function = LED_FUNCTION_STATUS;
                };
-               
+
                led_status_5g1: 5g1 {
                        gpios = <&pio 8 GPIO_ACTIVE_LOW>;
                        color = <LED_COLOR_ID_BLUE>;
                        function = LED_FUNCTION_USB;
                        function-enumerator = <0>;
                };
-               
+
                led_status_5g2: 5g2 {
                        gpios = <&pio 13 GPIO_ACTIVE_LOW>;
                        color = <LED_COLOR_ID_BLUE>;
                        pause;
                };
        };
-       
+
        gmac1: mac@1 {
                compatible = "mediatek,eth-mac";
                reg = <1>;
 
                        nand_rootfs: partition@580000 {
                                label = "ubi";
-                               reg = <0x0580000 0x7220000>;
+                               reg = <0x0580000 0x7280000>;
                        };
                };
        };
index 9b704b983cb7f0db3392042db1b2312b8b7a1a43..74591b7b0fa95fb5cae28eecd50a5792b7eedfef 100644 (file)
@@ -8,7 +8,8 @@ case "$(board_name)" in
        bananapi,bpi-r3)
                ucidef_set_compat_version "1.2"
                ;;
-       routerich,ax3000)
+       routerich,ax3000|\
+       zbtlink,zbt-z8102ax-v2)
                ucidef_set_compat_version "1.1"
                ;;
 esac
index 78e77ea28d52b75584c9412a951c0b2c1b668be1..da2a01b51c1b9ce6d772c0c2dd3049511d512c8a 100644 (file)
@@ -2096,6 +2096,8 @@ define Device/zbtlink_zbt-z8102ax-v2
   IMAGES += factory.bin
   IMAGE/factory.bin := append-ubi | check-size $$(IMAGE_SIZE)
   IMAGE/sysupgrade.bin := sysupgrade-tar | append-metadata
+  DEVICE_COMPAT_VERSION := 1.1
+  DEVICE_COMPAT_MESSAGE := Partition layout has been changed to fit the bootloader
 endef
 TARGET_DEVICES += zbtlink_zbt-z8102ax-v2