[openwrt/openwrt] ramips: fix/tidy up 4M tplink-v2-image flash layouts

LEDE Commits lede-commits at lists.infradead.org
Mon Aug 3 06:52:59 EDT 2020


adrian pushed a commit to openwrt/openwrt.git, branch master:
https://git.openwrt.org/1deaf695ec02d765c9ae28b1bac264798ca54a05

commit 1deaf695ec02d765c9ae28b1bac264798ca54a05
Author: Adrian Schmutzler <freifunk at adrianschmutzler.de>
AuthorDate: Mon Aug 3 12:02:48 2020 +0200

    ramips: fix/tidy up 4M tplink-v2-image flash layouts
    
    For the TP-Link 4M devices with tplink-v2-image recipe
    (mktplinkfw2.c), there are two different flash layouts based
    on the size of the (u)boot partition:
    
    device         uboot    OEM firmware  OpenWrt (incl. config)
    tl-wr840n-v5   0x20000  0x3c0000      0x3d0000
    tl-wr841n-v14  0x10000  0x3d0000      0x3e0000
    
    In both cases, the 0x10000 config partition is used for the firmware
    partition as well due to the limited space available and since it's
    recreated by the OEM firmware anyway.
    
    However, the TFTP flashing process will only copy data up to the
    size of the initial (OEM) firmware size. Therefore, while we can
    use the bigger partition to have additional erase blocks on the
    device, we have to limit the image sizes to the TFTP limits.
    
    So far, only one layout definition has been set up in mktplinkfw2.c
    for 4M mediatek devices. This adds a second one and assigns them
    to the devices so the image sizes are correctly restrained.
    
    Signed-off-by: Adrian Schmutzler <freifunk at adrianschmutzler.de>
---
 target/linux/ramips/image/mt76x8.mk    | 2 +-
 tools/firmware-utils/src/mktplinkfw2.c | 6 ++++++
 2 files changed, 7 insertions(+), 1 deletion(-)

diff --git a/target/linux/ramips/image/mt76x8.mk b/target/linux/ramips/image/mt76x8.mk
index 00c8fbe43e..9ec469d32d 100644
--- a/target/linux/ramips/image/mt76x8.mk
+++ b/target/linux/ramips/image/mt76x8.mk
@@ -528,7 +528,7 @@ define Device/tplink_tl-wr841n-v14
   IMAGE_SIZE := 3968k
   DEVICE_MODEL := TL-WR841N
   DEVICE_VARIANT := v14
-  TPLINK_FLASHLAYOUT := 4Mmtk
+  TPLINK_FLASHLAYOUT := 4MLmtk
   TPLINK_HWID := 0x08410014
   TPLINK_HWREVADD := 0x14
   IMAGES := sysupgrade.bin tftp-recovery.bin
diff --git a/tools/firmware-utils/src/mktplinkfw2.c b/tools/firmware-utils/src/mktplinkfw2.c
index 102d72b1cc..e1c28e6347 100644
--- a/tools/firmware-utils/src/mktplinkfw2.c
+++ b/tools/firmware-utils/src/mktplinkfw2.c
@@ -124,6 +124,12 @@ char md5salt_boot[MD5SUM_LEN] = {
 static struct flash_layout layouts[] = {
 	{
 		.id		= "4Mmtk",
+		.fw_max_len	= 0x3c0000,
+		.kernel_la	= 0x80000000,
+		.kernel_ep	= 0x80000000,
+		.rootfs_ofs	= 0x140000,
+	}, {
+		.id		= "4MLmtk",
 		.fw_max_len	= 0x3d0000,
 		.kernel_la	= 0x80000000,
 		.kernel_ep	= 0x80000000,



More information about the lede-commits mailing list