aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRafael J. Wysocki <rafael.j.wysocki@intel.com>2019-03-11 07:53:59 -0400
committerRafael J. Wysocki <rafael.j.wysocki@intel.com>2019-03-12 04:43:00 -0400
commit623217a0cc45a6c179303b3bbfdc594806a464cc (patch)
tree4ba5f68254786ac49d477573b3518a9a1939cd62
parent1fad17fb1bbcd73159c2b992668a6957ecc5af8a (diff)
PM / wakeup: Drop wakeup_source_drop()
After commit d856f39ac1cc ("PM / wakeup: Rework wakeup source timer cancellation") wakeup_source_drop() is a trivial wrapper around __pm_relax() and it has no users except for wakeup_source_destroy() and wakeup_source_trash() which also has no users, so drop it along with the latter and make wakeup_source_destroy() call __pm_relax() directly. Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com> Acked-by: Viresh Kumar <viresh.kumar@linaro.org>
-rw-r--r--drivers/base/power/wakeup.c18
-rw-r--r--include/linux/pm_wakeup.h9
2 files changed, 1 insertions, 26 deletions
diff --git a/drivers/base/power/wakeup.c b/drivers/base/power/wakeup.c
index a25d2d82f44d..ecbe152d151f 100644
--- a/drivers/base/power/wakeup.c
+++ b/drivers/base/power/wakeup.c
@@ -106,22 +106,6 @@ struct wakeup_source *wakeup_source_create(const char *name)
106} 106}
107EXPORT_SYMBOL_GPL(wakeup_source_create); 107EXPORT_SYMBOL_GPL(wakeup_source_create);
108 108
109/**
110 * wakeup_source_drop - Prepare a struct wakeup_source object for destruction.
111 * @ws: Wakeup source to prepare for destruction.
112 *
113 * Callers must ensure that __pm_stay_awake() or __pm_wakeup_event() will never
114 * be run in parallel with this function for the same wakeup source object.
115 */
116void wakeup_source_drop(struct wakeup_source *ws)
117{
118 if (!ws)
119 return;
120
121 __pm_relax(ws);
122}
123EXPORT_SYMBOL_GPL(wakeup_source_drop);
124
125/* 109/*
126 * Record wakeup_source statistics being deleted into a dummy wakeup_source. 110 * Record wakeup_source statistics being deleted into a dummy wakeup_source.
127 */ 111 */
@@ -161,7 +145,7 @@ void wakeup_source_destroy(struct wakeup_source *ws)
161 if (!ws) 145 if (!ws)
162 return; 146 return;
163 147
164 wakeup_source_drop(ws); 148 __pm_relax(ws);
165 wakeup_source_record(ws); 149 wakeup_source_record(ws);
166 kfree_const(ws->name); 150 kfree_const(ws->name);
167 kfree(ws); 151 kfree(ws);
diff --git a/include/linux/pm_wakeup.h b/include/linux/pm_wakeup.h
index 4238dde0aaf0..0ff134d6575a 100644
--- a/include/linux/pm_wakeup.h
+++ b/include/linux/pm_wakeup.h
@@ -96,7 +96,6 @@ static inline void device_set_wakeup_path(struct device *dev)
96/* drivers/base/power/wakeup.c */ 96/* drivers/base/power/wakeup.c */
97extern void wakeup_source_prepare(struct wakeup_source *ws, const char *name); 97extern void wakeup_source_prepare(struct wakeup_source *ws, const char *name);
98extern struct wakeup_source *wakeup_source_create(const char *name); 98extern struct wakeup_source *wakeup_source_create(const char *name);
99extern void wakeup_source_drop(struct wakeup_source *ws);
100extern void wakeup_source_destroy(struct wakeup_source *ws); 99extern void wakeup_source_destroy(struct wakeup_source *ws);
101extern void wakeup_source_add(struct wakeup_source *ws); 100extern void wakeup_source_add(struct wakeup_source *ws);
102extern void wakeup_source_remove(struct wakeup_source *ws); 101extern void wakeup_source_remove(struct wakeup_source *ws);
@@ -134,8 +133,6 @@ static inline struct wakeup_source *wakeup_source_create(const char *name)
134 return NULL; 133 return NULL;
135} 134}
136 135
137static inline void wakeup_source_drop(struct wakeup_source *ws) {}
138
139static inline void wakeup_source_destroy(struct wakeup_source *ws) {} 136static inline void wakeup_source_destroy(struct wakeup_source *ws) {}
140 137
141static inline void wakeup_source_add(struct wakeup_source *ws) {} 138static inline void wakeup_source_add(struct wakeup_source *ws) {}
@@ -204,12 +201,6 @@ static inline void wakeup_source_init(struct wakeup_source *ws,
204 wakeup_source_add(ws); 201 wakeup_source_add(ws);
205} 202}
206 203
207static inline void wakeup_source_trash(struct wakeup_source *ws)
208{
209 wakeup_source_remove(ws);
210 wakeup_source_drop(ws);
211}
212
213static inline void __pm_wakeup_event(struct wakeup_source *ws, unsigned int msec) 204static inline void __pm_wakeup_event(struct wakeup_source *ws, unsigned int msec)
214{ 205{
215 return pm_wakeup_ws_event(ws, msec, false); 206 return pm_wakeup_ws_event(ws, msec, false);