Merge tag 'kbuild-v5.3-2' of git://git.kernel.org/pub/scm/linux/kernel/git/masahiroy...
[linux-2.6-block.git] / include / linux / bcm47xx_nvram.h
CommitLineData
2874c5fd 1/* SPDX-License-Identifier: GPL-2.0-or-later */
121915c4 2/*
121915c4
WB
3 */
4
111bd981
HM
5#ifndef __BCM47XX_NVRAM_H
6#define __BCM47XX_NVRAM_H
121915c4 7
0cb5133a 8#include <linux/errno.h>
121915c4 9#include <linux/types.h>
59833fcf 10#include <linux/kernel.h>
55cab93b 11#include <linux/vmalloc.h>
121915c4 12
f6e734a8 13#ifdef CONFIG_BCM47XX_NVRAM
21400f25 14int bcm47xx_nvram_init_from_mem(u32 base, u32 lim);
341097f1 15int bcm47xx_nvram_getenv(const char *name, char *val, size_t val_len);
62cf3bc0 16int bcm47xx_nvram_gpio_pin(const char *name);
55cab93b
HM
17char *bcm47xx_nvram_get_contents(size_t *val_len);
18static inline void bcm47xx_nvram_release_contents(char *nvram)
19{
20 vfree(nvram);
21};
138173d4
RM
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};
55cab93b
HM
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};
138173d4 45#endif
62cf3bc0 46
111bd981 47#endif /* __BCM47XX_NVRAM_H */