linux-mips
[Top] [All Lists]

[PATCH] MIPS: BCM47xx: nvram_getenv fix return value.

To: ralf@linux-mips.org, linux-mips@linux-mips.org
Subject: [PATCH] MIPS: BCM47xx: nvram_getenv fix return value.
From: Hauke Mehrtens <hauke@hauke-m.de>
Date: Mon, 2 Aug 2010 23:56:22 +0200
Cc: Hauke Mehrtens <hauke@hauke-m.de>, Waldemar Brodkorb <wbx@openadk.org>
Original-recipient: rfc822;linux-mips@linux-mips.org
Sender: linux-mips-bounce@linux-mips.org
nvram_getenv should behave like cfe_getenv. For now it is used like
cfe_getenv. cfe_getenv returns 0 on success and -9 if the value was
not found. If the input was wrong -8 will be returned by cfe_getenv.
Change nvram_getenv to do the same.
The code using nvram_getenv expects it to behave like cfe_getenv does.

CC: Waldemar Brodkorb <wbx@openadk.org>
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
---
 arch/mips/bcm47xx/nvram.c                  |    4 ++--
 arch/mips/include/asm/mach-bcm47xx/nvram.h |    3 +++
 2 files changed, 5 insertions(+), 2 deletions(-)

diff --git a/arch/mips/bcm47xx/nvram.c b/arch/mips/bcm47xx/nvram.c
index 06e03b2..e5b6615 100644
--- a/arch/mips/bcm47xx/nvram.c
+++ b/arch/mips/bcm47xx/nvram.c
@@ -69,7 +69,7 @@ int nvram_getenv(char *name, char *val, size_t val_len)
        char *var, *value, *end, *eq;
 
        if (!name)
-               return 1;
+               return NVRAM_ERR_INV_PARAM;
 
        if (!nvram_buf[0])
                early_nvram_init();
@@ -89,6 +89,6 @@ int nvram_getenv(char *name, char *val, size_t val_len)
                        return 0;
                }
        }
-       return 1;
+       return NVRAM_ERR_ENVNOTFOUND;
 }
 EXPORT_SYMBOL(nvram_getenv);
diff --git a/arch/mips/include/asm/mach-bcm47xx/nvram.h 
b/arch/mips/include/asm/mach-bcm47xx/nvram.h
index 0d8cc14..c58ebd8 100644
--- a/arch/mips/include/asm/mach-bcm47xx/nvram.h
+++ b/arch/mips/include/asm/mach-bcm47xx/nvram.h
@@ -31,6 +31,9 @@ struct nvram_header {
 #define NVRAM_MAX_VALUE_LEN 255
 #define NVRAM_MAX_PARAM_LEN 64
 
+#define NVRAM_ERR_INV_PARAM    -8
+#define NVRAM_ERR_ENVNOTFOUND  -9
+
 extern int nvram_getenv(char *name, char *val, size_t val_len);
 
 #endif
-- 
1.7.0.4


<Prev in Thread] Current Thread [Next in Thread>