mtd: Fix trx check after partition rename ("linux" to "firmware")
authorFelix Fietkau <nbd@openwrt.org>
Tue, 2 Sep 2014 17:13:42 +0000 (17:13 +0000)
committerFelix Fietkau <nbd@openwrt.org>
Tue, 2 Sep 2014 17:13:42 +0000 (17:13 +0000)
On brcm47xx (Huawei E970), I noticed that sysupgrade now tries to flash trx images which don't fit into the flash, resulting in non-booting system.

I found that mtd does trx size checking only when flashing to a partition called "linux". This patch changes this to be "firmware".

This matches the following patch which changed partition name in bcm47xxpart.c driver to "firmware":

commit 86b4d5ef68ca77ff6724ebb9bddd6b93239c87fc
Author: hauke <hauke@3c298f89-4303-0410-b956-a3cf2f4a3e73>
 Date:   Sun Dec 1 16:32:32 2013 +0000

    brcm47xx: use "firmware" partition name
    ...
Signed-off-by: Rafał Miłecki <zajec5@gmail.com>
    SVN-Revision: 38973

Signed-off-by: Mathias Adam <m.adam--openwrt@adamis.de>
SVN-Revision: 42403

package/system/mtd/src/trx.c

index 65c24404c2c1fe771acf0f78936b7bbe187a944c..86d62fc19e7ebf5884fc33212eefcdce75f879db 100644 (file)
@@ -107,7 +107,7 @@ trx_check(int imagefd, const char *mtd, char *buf, int *len)
        const struct trx_header *trx = (const struct trx_header *) buf;
        int fd;
 
-       if (strcmp(mtd, "linux") != 0)
+       if (strcmp(mtd, "firmware") != 0)
                return 1;
 
        *len = read(imagefd, buf, 32);