Merge ath-next from ath.git
[deliverable/linux.git] / include / linux / reset.h
1 #ifndef _LINUX_RESET_H_
2 #define _LINUX_RESET_H_
3
4 struct device;
5 struct device_node;
6 struct reset_control;
7
8 #ifdef CONFIG_RESET_CONTROLLER
9
10 int reset_control_reset(struct reset_control *rstc);
11 int reset_control_assert(struct reset_control *rstc);
12 int reset_control_deassert(struct reset_control *rstc);
13 int reset_control_status(struct reset_control *rstc);
14
15 struct reset_control *reset_control_get(struct device *dev, const char *id);
16 void reset_control_put(struct reset_control *rstc);
17 struct reset_control *devm_reset_control_get(struct device *dev, const char *id);
18
19 int __must_check device_reset(struct device *dev);
20
21 static inline int device_reset_optional(struct device *dev)
22 {
23 return device_reset(dev);
24 }
25
26 static inline struct reset_control *reset_control_get_optional(
27 struct device *dev, const char *id)
28 {
29 return reset_control_get(dev, id);
30 }
31
32 static inline struct reset_control *devm_reset_control_get_optional(
33 struct device *dev, const char *id)
34 {
35 return devm_reset_control_get(dev, id);
36 }
37
38 struct reset_control *of_reset_control_get(struct device_node *node,
39 const char *id);
40
41 struct reset_control *of_reset_control_get_by_index(
42 struct device_node *node, int index);
43
44 #else
45
46 static inline int reset_control_reset(struct reset_control *rstc)
47 {
48 WARN_ON(1);
49 return 0;
50 }
51
52 static inline int reset_control_assert(struct reset_control *rstc)
53 {
54 WARN_ON(1);
55 return 0;
56 }
57
58 static inline int reset_control_deassert(struct reset_control *rstc)
59 {
60 WARN_ON(1);
61 return 0;
62 }
63
64 static inline int reset_control_status(struct reset_control *rstc)
65 {
66 WARN_ON(1);
67 return 0;
68 }
69
70 static inline void reset_control_put(struct reset_control *rstc)
71 {
72 WARN_ON(1);
73 }
74
75 static inline int device_reset_optional(struct device *dev)
76 {
77 return -ENOTSUPP;
78 }
79
80 static inline struct reset_control *__must_check reset_control_get(
81 struct device *dev, const char *id)
82 {
83 WARN_ON(1);
84 return ERR_PTR(-EINVAL);
85 }
86
87 static inline struct reset_control *__must_check devm_reset_control_get(
88 struct device *dev, const char *id)
89 {
90 WARN_ON(1);
91 return ERR_PTR(-EINVAL);
92 }
93
94 static inline struct reset_control *reset_control_get_optional(
95 struct device *dev, const char *id)
96 {
97 return ERR_PTR(-ENOTSUPP);
98 }
99
100 static inline struct reset_control *devm_reset_control_get_optional(
101 struct device *dev, const char *id)
102 {
103 return ERR_PTR(-ENOTSUPP);
104 }
105
106 static inline struct reset_control *of_reset_control_get(
107 struct device_node *node, const char *id)
108 {
109 return ERR_PTR(-ENOTSUPP);
110 }
111
112 static inline struct reset_control *of_reset_control_get_by_index(
113 struct device_node *node, int index)
114 {
115 return ERR_PTR(-ENOTSUPP);
116 }
117
118 #endif /* CONFIG_RESET_CONTROLLER */
119
120 #endif
This page took 0.048947 seconds and 5 git commands to generate.