Hello, On Wednesday 27 June 2012 10:54:46 Álvaro Fernández Rojas wrote: > Correctly detect CFE bootloaders starting with "cfe-" instead of "cfe-v". > > Signed-off-by: Álvaro Fernández Rojas <nolt...@gmail.com> > > Index: target/linux/brcm63xx/patches-3.3/802-cfe_version_mod.patch > =================================================================== > --- target/linux/brcm63xx/patches-3.3/802-cfe_version_mod.patch > (revisión: 0) > +++ target/linux/brcm63xx/patches-3.3/802-cfe_version_mod.patch > (revisión: 0) > @@ -0,0 +1,30 @@ > +--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c > ++++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c > +@@ -2882,6 +2882,12 @@ 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)) { > ++ for(i = 0; i < 0x10; i++) { > ++ cfe_version[i] = cfe[4 + i]; > ++ } > ++ cfe_version[i] = 0; > ++ }
Cannot we use the following: snprintf(cfe_version, 16), "%s", (char *)&cfe[4]); or maybe there was a reason for this loop? Btw, I'd prefer using 16 instead of 0x10 ;) > + 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 > +@@ -55,10 +55,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; > _______________________________________________ > openwrt-devel mailing list > openwrt-devel@lists.openwrt.org > https://lists.openwrt.org/mailman/listinfo/openwrt-devel _______________________________________________ openwrt-devel mailing list openwrt-devel@lists.openwrt.org https://lists.openwrt.org/mailman/listinfo/openwrt-devel