]> git.kernelconcepts.de Git - karo-tx-linux.git/blob - include/linux/bcm47xx_nvram.h
Merge remote-tracking branch 'file-locks/linux-next'
[karo-tx-linux.git] / include / linux / bcm47xx_nvram.h
1 /*
2  *  This program is free software; you can redistribute  it and/or modify it
3  *  under  the terms of  the GNU General  Public License as published by the
4  *  Free Software Foundation;  either version 2 of the  License, or (at your
5  *  option) any later version.
6  */
7
8 #ifndef __BCM47XX_NVRAM_H
9 #define __BCM47XX_NVRAM_H
10
11 #include <linux/types.h>
12 #include <linux/kernel.h>
13 #include <linux/vmalloc.h>
14
15 #ifdef CONFIG_BCM47XX_NVRAM
16 int bcm47xx_nvram_init_from_mem(u32 base, u32 lim);
17 int bcm47xx_nvram_getenv(const char *name, char *val, size_t val_len);
18 int bcm47xx_nvram_gpio_pin(const char *name);
19 char *bcm47xx_nvram_get_contents(size_t *val_len);
20 static inline void bcm47xx_nvram_release_contents(char *nvram)
21 {
22         vfree(nvram);
23 };
24 #else
25 static inline int bcm47xx_nvram_init_from_mem(u32 base, u32 lim)
26 {
27         return -ENOTSUPP;
28 };
29 static inline int bcm47xx_nvram_getenv(const char *name, char *val,
30                                        size_t val_len)
31 {
32         return -ENOTSUPP;
33 };
34 static inline int bcm47xx_nvram_gpio_pin(const char *name)
35 {
36         return -ENOTSUPP;
37 };
38
39 static inline char *bcm47xx_nvram_get_contents(size_t *val_len)
40 {
41         return NULL;
42 };
43
44 static inline void bcm47xx_nvram_release_contents(char *nvram)
45 {
46 };
47 #endif
48
49 #endif /* __BCM47XX_NVRAM_H */