diff options
author | Peter Chen <peter.chen@freescale.com> | 2013-10-22 16:46:25 +0800 |
---|---|---|
committer | Lee Jones <lee.jones@linaro.org> | 2013-10-23 16:22:35 +0100 |
commit | df73de9b0d412915384396637bf67ef9208161e9 (patch) | |
tree | 249e2e7910ca68c4c7b0adcbdcbbcda835bedaca | |
parent | d460a6f3d67a8558fb58299518077888b7dbf5f3 (diff) | |
download | linux-df73de9b0d412915384396637bf67ef9208161e9.tar.bz2 |
mfd: syscon: Return -ENOSYS if CONFIG_MFD_SYSCON is not enabled
Some platforms may not define CONFIG_MFD_SYSCON (or haven't syscon),
it can fix build error for these platforms.
Signed-off-by: Peter Chen <peter.chen@freescale.com>
Signed-off-by: Lee Jones <lee.jones@linaro.org>
-rw-r--r-- | include/linux/mfd/syscon.h | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/include/linux/mfd/syscon.h b/include/linux/mfd/syscon.h index b473577f36db..8789fa3c7fd9 100644 --- a/include/linux/mfd/syscon.h +++ b/include/linux/mfd/syscon.h @@ -17,10 +17,35 @@ struct device_node; +#ifdef CONFIG_MFD_SYSCON extern struct regmap *syscon_node_to_regmap(struct device_node *np); extern struct regmap *syscon_regmap_lookup_by_compatible(const char *s); extern struct regmap *syscon_regmap_lookup_by_pdevname(const char *s); extern struct regmap *syscon_regmap_lookup_by_phandle( struct device_node *np, const char *property); +#else +static inline struct regmap *syscon_node_to_regmap(struct device_node *np) +{ + return ERR_PTR(-ENOSYS); +} + +static inline struct regmap *syscon_regmap_lookup_by_compatible(const char *s) +{ + return ERR_PTR(-ENOSYS); +} + +static inline struct regmap *syscon_regmap_lookup_by_pdevname(const char *s) +{ + return ERR_PTR(-ENOSYS); +} + +static inline struct regmap *syscon_regmap_lookup_by_phandle( + struct device_node *np, + const char *property) +{ + return ERR_PTR(-ENOSYS); +} +#endif + #endif /* __LINUX_MFD_SYSCON_H__ */ |