Skip to content

Commit

Permalink
realtek: merge Zyxel GS1900 firmware partitions
Browse files Browse the repository at this point in the history
The dual-boot partition layout for the Zyxel GS1900 switches results in
6.9MB for both kernel and rootfs. Depending on the package selection,
this may already leave no space for the user overlay.

Merge the two firmware partitions, effectively dropping dual boot
support with OpenWrt. This results in a firmware partition of 13.9MB,
which should leave some room for the future.

To maintain install capabilites on new devices, an image is required
that still fits inside the original partition. The initramfs is used as
factory install image, so ensure this meets the old size constraints.
The factory image can be flashed via the same procedure as vendor images
when reverting to stock, can be installed from stock, or can be launched
via tftpboot.

Link: openwrt/openwrt#16439
Link: openwrt/openwrt#16442
Tested-by: Stijn Segers <[email protected]>
Signed-off-by: Sander Vanheule <[email protected]>
(cherry picked from commit 35acdbe)
  • Loading branch information
svanheule committed Dec 22, 2024
1 parent feb7a2a commit 654c973
Show file tree
Hide file tree
Showing 3 changed files with 8 additions and 12 deletions.
6 changes: 1 addition & 5 deletions target/linux/realtek/dts/rtl8380_zyxel_gs1900.dtsi
Original file line number Diff line number Diff line change
Expand Up @@ -91,14 +91,10 @@
};
partition@b260000 {
label = "firmware";
reg = <0x260000 0x6d0000>;
reg = <0x260000 0xda0000>;
compatible = "openwrt,uimage", "denx,uimage";
openwrt,ih-magic = <0x83800000>;
};
partition@930000 {
label = "runtime2";
reg = <0x930000 0x6d0000>;
};
};
};
};
Expand Down
6 changes: 1 addition & 5 deletions target/linux/realtek/dts/rtl8393_zyxel_gs1900-48.dts
Original file line number Diff line number Diff line change
Expand Up @@ -126,14 +126,10 @@
};
partition@260000 {
label = "firmware";
reg = <0x260000 0x6d0000>;
reg = <0x260000 0xda0000>;
compatible = "openwrt,uimage", "denx,uimage";
openwrt,ih-magic = <0x83800000>;
};
partition@930000 {
label = "runtime2";
reg = <0x930000 0x6d0000>;
};
};
};
};
Expand Down
8 changes: 6 additions & 2 deletions target/linux/realtek/image/common.mk
Original file line number Diff line number Diff line change
Expand Up @@ -57,13 +57,17 @@ define Device/hpe_1920
endef

define Device/zyxel_gs1900
DEVICE_COMPAT_VERSION := 2.0
DEVICE_COMPAT_MESSAGE := Dual firmware paritition merged due to size constraints. \
Upgrade requires a new factory install. Regular sysupgrade is not possible.
DEVICE_VENDOR := Zyxel
IMAGE_SIZE := 6976k
IMAGE_SIZE := 13952k
UIMAGE_MAGIC := 0x83800000
KERNEL_INITRAMFS := \
kernel-bin | \
append-dtb | \
libdeflate-gzip | \
zyxel-vers | \
uImage gzip
uImage gzip | \
check-size 6976k
endef

0 comments on commit 654c973

Please sign in to comment.