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

Reply via email to