bcm47xx_nvram.h (1033B)
1/* SPDX-License-Identifier: GPL-2.0-or-later */ 2/* 3 */ 4 5#ifndef __BCM47XX_NVRAM_H 6#define __BCM47XX_NVRAM_H 7 8#include <linux/errno.h> 9#include <linux/types.h> 10#include <linux/kernel.h> 11#include <linux/vmalloc.h> 12 13#ifdef CONFIG_BCM47XX_NVRAM 14int bcm47xx_nvram_init_from_mem(u32 base, u32 lim); 15int bcm47xx_nvram_getenv(const char *name, char *val, size_t val_len); 16int bcm47xx_nvram_gpio_pin(const char *name); 17char *bcm47xx_nvram_get_contents(size_t *val_len); 18static inline void bcm47xx_nvram_release_contents(char *nvram) 19{ 20 vfree(nvram); 21}; 22#else 23static inline int bcm47xx_nvram_init_from_mem(u32 base, u32 lim) 24{ 25 return -ENOTSUPP; 26}; 27static inline int bcm47xx_nvram_getenv(const char *name, char *val, 28 size_t val_len) 29{ 30 return -ENOTSUPP; 31}; 32static inline int bcm47xx_nvram_gpio_pin(const char *name) 33{ 34 return -ENOTSUPP; 35}; 36 37static inline char *bcm47xx_nvram_get_contents(size_t *val_len) 38{ 39 return NULL; 40}; 41 42static inline void bcm47xx_nvram_release_contents(char *nvram) 43{ 44}; 45#endif 46 47#endif /* __BCM47XX_NVRAM_H */