1 /* 2 * System Control Driver 3 * 4 * Copyright (C) 2012 Freescale Semiconductor, Inc. 5 * Copyright (C) 2012 Linaro Ltd. 6 * 7 * Author: Dong Aisheng <dong.aisheng@linaro.org> 8 * 9 * This program is free software; you can redistribute it and/or modify 10 * it under the terms of the GNU General Public License as published by 11 * the Free Software Foundation; either version 2 of the License, or 12 * (at your option) any later version. 13 */ 14 15 #ifndef __LINUX_MFD_SYSCON_H__ 16 #define __LINUX_MFD_SYSCON_H__ 17 18 struct device_node; 19 20 #ifdef CONFIG_MFD_SYSCON 21 extern struct regmap *syscon_node_to_regmap(struct device_node *np); 22 extern struct regmap *syscon_regmap_lookup_by_compatible(const char *s); 23 extern struct regmap *syscon_regmap_lookup_by_pdevname(const char *s); 24 extern struct regmap *syscon_regmap_lookup_by_phandle( 25 struct device_node *np, 26 const char *property); 27 #else 28 static inline struct regmap *syscon_node_to_regmap(struct device_node *np) 29 { 30 return ERR_PTR(-ENOSYS); 31 } 32 33 static inline struct regmap *syscon_regmap_lookup_by_compatible(const char *s) 34 { 35 return ERR_PTR(-ENOSYS); 36 } 37 38 static inline struct regmap *syscon_regmap_lookup_by_pdevname(const char *s) 39 { 40 return ERR_PTR(-ENOSYS); 41 } 42 43 static inline struct regmap *syscon_regmap_lookup_by_phandle( 44 struct device_node *np, 45 const char *property) 46 { 47 return ERR_PTR(-ENOSYS); 48 } 49 #endif 50 51 #endif /* __LINUX_MFD_SYSCON_H__ */ 52