Root/target/linux/brcm47xx/patches-3.6/400-arch-bcm47xx.patch

1--- a/arch/mips/bcm47xx/nvram.c
2+++ b/arch/mips/bcm47xx/nvram.c
3@@ -183,3 +183,30 @@ int nvram_getenv(char *name, char *val,
4     return NVRAM_ERR_ENVNOTFOUND;
5 }
6 EXPORT_SYMBOL(nvram_getenv);
7+
8+char *nvram_get(const char *name)
9+{
10+ char *var, *value, *end, *eq;
11+
12+ if (!name)
13+ return NULL;
14+
15+ if (!nvram_buf[0])
16+ early_nvram_init();
17+
18+ /* Look for name=value and return value */
19+ var = &nvram_buf[sizeof(struct nvram_header)];
20+ end = nvram_buf + sizeof(nvram_buf) - 2;
21+ end[0] = end[1] = '\0';
22+ for (; *var; var = value + strlen(value) + 1) {
23+ eq = strchr(var, '=');
24+ if (!eq)
25+ break;
26+ value = eq + 1;
27+ if ((eq - var) == strlen(name) && strncmp(var, name, (eq - var)) == 0)
28+ return value;
29+ }
30+
31+ return NULL;
32+}
33+EXPORT_SYMBOL(nvram_get);
34

Archive Download this file



interactive