| /* |
| * This program is free software; you can redistribute it and/or modify it |
| * under the terms of the GNU General Public License as published by the |
| * Free Software Foundation; either version 2 of the License, or (at your |
| * option) any later version. |
| */ |
| |
| #ifndef __BCM47XX_NVRAM_H |
| #define __BCM47XX_NVRAM_H |
| |
| #include <linux/types.h> |
| #include <linux/kernel.h> |
| #include <linux/vmalloc.h> |
| |
| #ifdef CONFIG_BCM47XX_NVRAM |
| int bcm47xx_nvram_init_from_mem(u32 base, u32 lim); |
| int bcm47xx_nvram_getenv(const char *name, char *val, size_t val_len); |
| int bcm47xx_nvram_gpio_pin(const char *name); |
| char *bcm47xx_nvram_get_contents(size_t *val_len); |
| static inline void bcm47xx_nvram_release_contents(char *nvram) |
| { |
| vfree(nvram); |
| }; |
| #else |
| static inline int bcm47xx_nvram_init_from_mem(u32 base, u32 lim) |
| { |
| return -ENOTSUPP; |
| }; |
| static inline int bcm47xx_nvram_getenv(const char *name, char *val, |
| size_t val_len) |
| { |
| return -ENOTSUPP; |
| }; |
| static inline int bcm47xx_nvram_gpio_pin(const char *name) |
| { |
| return -ENOTSUPP; |
| }; |
| |
| static inline char *bcm47xx_nvram_get_contents(size_t *val_len) |
| { |
| return NULL; |
| }; |
| |
| static inline void bcm47xx_nvram_release_contents(char *nvram) |
| { |
| }; |
| #endif |
| |
| #endif /* __BCM47XX_NVRAM_H */ |