ipq806x: convert TP-Link Archer VR2600v to denx,uimage

The recent device-tree modification that added pre-cal
nvmem-cells pushed the device's kernel+dtb over the
allotted 3072k KERNEL_SIZE.

> WARNING: Image file tplink_vr2600v-uImage is too big: 3147214 > 3145728

There was a previous kernel partition size upgrade:
commit 0c967d92b3 ("ipq806x: increase kernel partition size for the TP-Link Archer VR2600v")
It has been seemingly upgraded from a 2048k KERNEL_SIZE in the past.
The commit talks about using the MTD_SPLIT_TPLINK_FW. But looking at
the image make recipe, there is no code that adds a TPLINK header.
So instead the board will use "denx,umimage". This requires
MTD_SPLIT_UIMAGE_FW, but this is present thanks to some NEC devices.

(Maybe the MTD_CONFIG_ARGS can be removed as well? But it could be
there because of the padding at the beginning. This needs testing.)

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
This commit is contained in:
Christian Lamparter 2022-02-06 14:24:32 +01:00
parent 4d904524ef
commit f6a01d7f5c
3 changed files with 7 additions and 11 deletions

View File

@ -57,7 +57,6 @@ platform_do_upgrade() {
default_do_upgrade "$1" default_do_upgrade "$1"
;; ;;
tplink,vr2600v) tplink,vr2600v)
PART_NAME="kernel:rootfs"
MTD_CONFIG_ARGS="-s 0x200000" MTD_CONFIG_ARGS="-s 0x200000"
default_do_upgrade "$1" default_do_upgrade "$1"
;; ;;

View File

@ -249,15 +249,13 @@
read-only; read-only;
}; };
kernel@320000 { partition@320000 {
label = "kernel"; label = "firmware";
reg = <0x320000 0x300000>; reg = <0x320000 0xc60000>;
compatible = "denx,uimage";
}; };
rootfs@620000 { /* hole 0xf80000 - 0xfaf100 */
label = "rootfs";
reg = <0x620000 0x960000>;
};
defaultmac: default-mac@0xfaf100 { defaultmac: default-mac@0xfaf100 {
label = "default-mac"; label = "default-mac";

View File

@ -408,7 +408,7 @@ define Device/tplink_vr2600v
KERNEL_SUFFIX := -uImage KERNEL_SUFFIX := -uImage
KERNEL = kernel-bin | append-dtb | uImage none KERNEL = kernel-bin | append-dtb | uImage none
KERNEL_NAME := zImage KERNEL_NAME := zImage
KERNEL_SIZE := 3072k IMAGE_SIZE := 12672k
SOC := qcom-ipq8064 SOC := qcom-ipq8064
BLOCKSIZE := 128k BLOCKSIZE := 128k
PAGESIZE := 2048 PAGESIZE := 2048
@ -416,8 +416,7 @@ define Device/tplink_vr2600v
SUPPORTED_DEVICES += vr2600v SUPPORTED_DEVICES += vr2600v
DEVICE_PACKAGES := ath10k-firmware-qca99x0-ct DEVICE_PACKAGES := ath10k-firmware-qca99x0-ct
IMAGE/sysupgrade.bin := pad-extra 512 | append-kernel | \ IMAGE/sysupgrade.bin := pad-extra 512 | append-kernel | \
pad-to $$$$(KERNEL_SIZE) | append-rootfs | pad-rootfs | \ append-rootfs | pad-rootfs | append-metadata
append-metadata
endef endef
TARGET_DEVICES += tplink_vr2600v TARGET_DEVICES += tplink_vr2600v