Merge tag 'x86-urgent-2020-02-09' of git://git.kernel.org/pub/scm/linux/kernel/git...
[linux-2.6-microblaze.git] / include / linux / mfd / syscon.h
1 /* SPDX-License-Identifier: GPL-2.0-or-later */
2 /*
3  * System Control Driver
4  *
5  * Copyright (C) 2012 Freescale Semiconductor, Inc.
6  * Copyright (C) 2012 Linaro Ltd.
7  *
8  * Author: Dong Aisheng <dong.aisheng@linaro.org>
9  */
10
11 #ifndef __LINUX_MFD_SYSCON_H__
12 #define __LINUX_MFD_SYSCON_H__
13
14 #include <linux/err.h>
15 #include <linux/errno.h>
16
17 struct device_node;
18
19 #ifdef CONFIG_MFD_SYSCON
20 extern struct regmap *device_node_to_regmap(struct device_node *np);
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_phandle(
24                                         struct device_node *np,
25                                         const char *property);
26 extern struct regmap *syscon_regmap_lookup_by_phandle_args(
27                                         struct device_node *np,
28                                         const char *property,
29                                         int arg_count,
30                                         unsigned int *out_args);
31 #else
32 static inline struct regmap *device_node_to_regmap(struct device_node *np)
33 {
34         return ERR_PTR(-ENOTSUPP);
35 }
36
37 static inline struct regmap *syscon_node_to_regmap(struct device_node *np)
38 {
39         return ERR_PTR(-ENOTSUPP);
40 }
41
42 static inline struct regmap *syscon_regmap_lookup_by_compatible(const char *s)
43 {
44         return ERR_PTR(-ENOTSUPP);
45 }
46
47 static inline struct regmap *syscon_regmap_lookup_by_phandle(
48                                         struct device_node *np,
49                                         const char *property)
50 {
51         return ERR_PTR(-ENOTSUPP);
52 }
53
54 static inline struct regmap *syscon_regmap_lookup_by_phandle_args(
55                                         struct device_node *np,
56                                         const char *property,
57                                         int arg_count,
58                                         unsigned int *out_args)
59 {
60         return ERR_PTR(-ENOTSUPP);
61 }
62 #endif
63
64 #endif /* __LINUX_MFD_SYSCON_H__ */