mfd: Add support for sun6i PRCM (Power/Reset/Clock Management) unit
[linux-2.6-block.git] / include / linux / mfd / syscon.h
CommitLineData
87d68730
DA
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
5fb1c2dd
SN
18struct device_node;
19
df73de9b 20#ifdef CONFIG_MFD_SYSCON
87d68730
DA
21extern struct regmap *syscon_node_to_regmap(struct device_node *np);
22extern struct regmap *syscon_regmap_lookup_by_compatible(const char *s);
5ab3a89a 23extern struct regmap *syscon_regmap_lookup_by_pdevname(const char *s);
87d68730
DA
24extern struct regmap *syscon_regmap_lookup_by_phandle(
25 struct device_node *np,
26 const char *property);
df73de9b
PC
27#else
28static inline struct regmap *syscon_node_to_regmap(struct device_node *np)
29{
30 return ERR_PTR(-ENOSYS);
31}
32
33static inline struct regmap *syscon_regmap_lookup_by_compatible(const char *s)
34{
35 return ERR_PTR(-ENOSYS);
36}
37
38static inline struct regmap *syscon_regmap_lookup_by_pdevname(const char *s)
39{
40 return ERR_PTR(-ENOSYS);
41}
42
43static 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
87d68730 51#endif /* __LINUX_MFD_SYSCON_H__ */