diff options
author | florian <florian@3c298f89-4303-0410-b956-a3cf2f4a3e73> | 2012-07-06 22:10:37 +0000 |
---|---|---|
committer | florian <florian@3c298f89-4303-0410-b956-a3cf2f4a3e73> | 2012-07-06 22:10:37 +0000 |
commit | eb9c638ec8e06498140e1b3ef1e599fa13a48b11 (patch) | |
tree | f0268679b70201290b119611017442f3e517359e /target/linux/brcm63xx/patches-3.3/107-cfe_version_mod.patch | |
parent | c2e7896dea3b1834be3f35961da53dcfd2c61a04 (diff) |
[brcm63xx] Detect alternative "cfe-" version bootloaders (found in 963281T_TEF board)
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@32643 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'target/linux/brcm63xx/patches-3.3/107-cfe_version_mod.patch')
-rw-r--r-- | target/linux/brcm63xx/patches-3.3/107-cfe_version_mod.patch | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/target/linux/brcm63xx/patches-3.3/107-cfe_version_mod.patch b/target/linux/brcm63xx/patches-3.3/107-cfe_version_mod.patch new file mode 100644 index 000000000..c00ed113e --- /dev/null +++ b/target/linux/brcm63xx/patches-3.3/107-cfe_version_mod.patch @@ -0,0 +1,26 @@ +--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c ++++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c +@@ -724,6 +724,8 @@ void __init board_prom_init(void) + if (!memcmp(cfe, "cfe-v", 5)) + snprintf(cfe_version, sizeof(cfe_version), "%u.%u.%u-%u.%u", + cfe[5], cfe[6], cfe[7], cfe[8], cfe[9]); ++ else if (!memcmp(cfe, "cfe-", 4)) ++ snprintf(cfe_version, 16, "%s", (char *) &cfe[4]); + else + strcpy(cfe_version, "unknown"); + printk(KERN_INFO PFX "CFE version: %s\n", cfe_version); +--- a/drivers/mtd/bcm63xxpart.c ++++ b/drivers/mtd/bcm63xxpart.c +@@ -54,10 +54,10 @@ static int bcm63xx_detect_cfe(struct mtd + if (ret) + return ret; + +- if (strncmp("cfe-v", buf, 5) == 0) ++ if (strncmp("cfe-", buf, 4) == 0) + return 0; + +- /* very old CFE's do not have the cfe-v string, so check for magic */ ++ /* very old CFE's do not have the cfe- string, so check for magic */ + ret = mtd_read(master, BCM63XX_CFE_MAGIC_OFFSET, 8, &retlen, + (void *)buf); + buf[retlen] = 0; |