brcm47xx: add missing breaks into the nvram read code in the switch case statements
authorHauke Mehrtens <hauke@hauke-m.de>
Thu, 29 Mar 2012 15:43:16 +0000 (15:43 +0000)
committerHauke Mehrtens <hauke@hauke-m.de>
Thu, 29 Mar 2012 15:43:16 +0000 (15:43 +0000)
SVN-Revision: 31142

target/linux/brcm47xx/patches-3.2/029-bcm47xx-read-nvram-from-sflash.patch
target/linux/brcm47xx/patches-3.2/030-bcm47xx-bcma-nandflash.patch
target/linux/brcm47xx/patches-3.2/197-MIPS-BCM47XX-return-number-of-written-bytes-in-nvram.patch
target/linux/brcm47xx/patches-3.2/400-arch-bcm47xx.patch
target/linux/brcm47xx/patches-3.2/820-wgt634u-nvram-fix.patch

index 2fc43dc3b4f17b0b97add55313ae6a99f0c2549a..b3d13df39ff10ac762c0166724ac551a401161b9 100644 (file)
@@ -24,7 +24,7 @@
                base = bcma_cc->pflash.window;
                lim = bcma_cc->pflash.window_size;
                break;
-@@ -86,7 +84,106 @@ found:
+@@ -86,7 +84,110 @@ found:
        for (i = 0; i < sizeof(struct nvram_header); i += 4)
                *dst++ = *src++;
        for (; i < header->len && i < NVRAM_SPACE; i += 4)
 +      switch (bcm47xx_bus.ssb.chipco.flash_type) {
 +      case SSB_PFLASH:
 +              early_nvram_init_pflash();
++              break;
 +      case SSB_SFLASH:
 +              err = early_nvram_init_sflash();
 +              if (err < 0)
 +                      printk(KERN_WARNING "can not read from flash: %i\n", err);
++              break;
 +      default:
 +              printk(KERN_WARNING "unknow flash type\n");
 +      }
 +      switch (bcm47xx_bus.bcma.bus.drv_cc.flash_type) {
 +      case BCMA_PFLASH:
 +              early_nvram_init_pflash();
++              break;
 +      case BCMA_SFLASH:
 +              err = early_nvram_init_sflash();
 +              if (err < 0)
 +                      printk(KERN_WARNING "can not read from flash: %i\n", err);
++              break;
 +      default:
 +              printk(KERN_WARNING "unknow flash type\n");
 +      }
index c9922a8b14aedb29209499a2e4292038b35a117d..cc76f83094abb5aec603aecb7d38238ae35ea298 100644 (file)
  #ifdef CONFIG_BCM47XX_SSB
  static void early_nvram_init_ssb(void)
  {
-@@ -164,6 +211,10 @@ static void early_nvram_init_bcma(void)
-               err = early_nvram_init_sflash();
+@@ -168,6 +215,11 @@ static void early_nvram_init_bcma(void)
                if (err < 0)
                        printk(KERN_WARNING "can not read from flash: %i\n", err);
+               break;
 +      case BCMA_NFLASH:
 +              err = early_nvram_init_nflash();
 +              if (err < 0)
 +                      printk(KERN_WARNING "can not read from nflash: %i\n", err);
++              break;
        default:
                printk(KERN_WARNING "unknow flash type\n");
        }
index 78ebea5da5a3a8d76b620ce4c44892a911416ef7..4c4507c2dbaa6f063c8743eb226b53498fd33134 100644 (file)
@@ -1,7 +1,7 @@
 
 --- a/arch/mips/bcm47xx/nvram.c
 +++ b/arch/mips/bcm47xx/nvram.c
-@@ -258,8 +258,7 @@ int nvram_getenv(char *name, char *val,
+@@ -263,8 +263,7 @@ int nvram_getenv(char *name, char *val,
                value = eq + 1;
                if ((eq - var) == strlen(name) &&
                        strncmp(var, name, (eq - var)) == 0) {
index a67d4b51bd855b523c2b3ee326e11021a11d7072..0933fb69596bfef72aab554cf380a666b0bd67d7 100644 (file)
@@ -1,6 +1,6 @@
 --- a/arch/mips/bcm47xx/nvram.c
 +++ b/arch/mips/bcm47xx/nvram.c
-@@ -264,3 +264,30 @@ int nvram_getenv(char *name, char *val,
+@@ -269,3 +269,30 @@ int nvram_getenv(char *name, char *val,
        return NVRAM_ERR_ENVNOTFOUND;
  }
  EXPORT_SYMBOL(nvram_getenv);
index dff194949c23377fa6e65b70951735ef7dab83ce..baf339dca5b2c6169b5b192d715e41c4415eea18 100644 (file)
@@ -280,7 +280,7 @@ out the configuration than the in kernel cfe config reader.
  
        off = FLASH_MIN;
        while (off <= lim) {
-@@ -247,6 +268,12 @@ int nvram_getenv(char *name, char *val,
+@@ -252,6 +273,12 @@ int nvram_getenv(char *name, char *val,
        if (!nvram_buf[0])
                early_nvram_init();
  
@@ -293,7 +293,7 @@ out the configuration than the in kernel cfe config reader.
        /* Look for name=value and return value */
        var = &nvram_buf[sizeof(struct nvram_header)];
        end = nvram_buf + sizeof(nvram_buf) - 2;
-@@ -275,6 +302,9 @@ char *nvram_get(const char *name)
+@@ -280,6 +307,9 @@ char *nvram_get(const char *name)
        if (!nvram_buf[0])
                early_nvram_init();