diff options
Diffstat (limited to 'drivers/base')
-rw-r--r-- | drivers/base/power/clock_ops.c | 188 |
1 files changed, 94 insertions, 94 deletions
diff --git a/drivers/base/power/clock_ops.c b/drivers/base/power/clock_ops.c index 2fb9c121c64b..a846b2f95cfb 100644 --- a/drivers/base/power/clock_ops.c +++ b/drivers/base/power/clock_ops.c | |||
@@ -17,7 +17,7 @@ | |||
17 | 17 | ||
18 | #ifdef CONFIG_PM | 18 | #ifdef CONFIG_PM |
19 | 19 | ||
20 | struct pm_runtime_clk_data { | 20 | struct pm_clk_data { |
21 | struct list_head clock_list; | 21 | struct list_head clock_list; |
22 | struct mutex lock; | 22 | struct mutex lock; |
23 | }; | 23 | }; |
@@ -36,25 +36,25 @@ struct pm_clock_entry { | |||
36 | enum pce_status status; | 36 | enum pce_status status; |
37 | }; | 37 | }; |
38 | 38 | ||
39 | static struct pm_runtime_clk_data *__to_prd(struct device *dev) | 39 | static struct pm_clk_data *__to_pcd(struct device *dev) |
40 | { | 40 | { |
41 | return dev ? dev->power.subsys_data : NULL; | 41 | return dev ? dev->power.subsys_data : NULL; |
42 | } | 42 | } |
43 | 43 | ||
44 | /** | 44 | /** |
45 | * pm_runtime_clk_add - Start using a device clock for runtime PM. | 45 | * pm_clk_add - Start using a device clock for power management. |
46 | * @dev: Device whose clock is going to be used for runtime PM. | 46 | * @dev: Device whose clock is going to be used for power management. |
47 | * @con_id: Connection ID of the clock. | 47 | * @con_id: Connection ID of the clock. |
48 | * | 48 | * |
49 | * Add the clock represented by @con_id to the list of clocks used for | 49 | * Add the clock represented by @con_id to the list of clocks used for |
50 | * the runtime PM of @dev. | 50 | * the power management of @dev. |
51 | */ | 51 | */ |
52 | int pm_runtime_clk_add(struct device *dev, const char *con_id) | 52 | int pm_clk_add(struct device *dev, const char *con_id) |
53 | { | 53 | { |
54 | struct pm_runtime_clk_data *prd = __to_prd(dev); | 54 | struct pm_clk_data *pcd = __to_pcd(dev); |
55 | struct pm_clock_entry *ce; | 55 | struct pm_clock_entry *ce; |
56 | 56 | ||
57 | if (!prd) | 57 | if (!pcd) |
58 | return -EINVAL; | 58 | return -EINVAL; |
59 | 59 | ||
60 | ce = kzalloc(sizeof(*ce), GFP_KERNEL); | 60 | ce = kzalloc(sizeof(*ce), GFP_KERNEL); |
@@ -73,20 +73,20 @@ int pm_runtime_clk_add(struct device *dev, const char *con_id) | |||
73 | } | 73 | } |
74 | } | 74 | } |
75 | 75 | ||
76 | mutex_lock(&prd->lock); | 76 | mutex_lock(&pcd->lock); |
77 | list_add_tail(&ce->node, &prd->clock_list); | 77 | list_add_tail(&ce->node, &pcd->clock_list); |
78 | mutex_unlock(&prd->lock); | 78 | mutex_unlock(&pcd->lock); |
79 | return 0; | 79 | return 0; |
80 | } | 80 | } |
81 | 81 | ||
82 | /** | 82 | /** |
83 | * __pm_runtime_clk_remove - Destroy runtime PM clock entry. | 83 | * __pm_clk_remove - Destroy PM clock entry. |
84 | * @ce: Runtime PM clock entry to destroy. | 84 | * @ce: PM clock entry to destroy. |
85 | * | 85 | * |
86 | * This routine must be called under the mutex protecting the runtime PM list | 86 | * This routine must be called under the mutex protecting the PM list of clocks |
87 | * of clocks corresponding the the @ce's device. | 87 | * corresponding the the @ce's device. |
88 | */ | 88 | */ |
89 | static void __pm_runtime_clk_remove(struct pm_clock_entry *ce) | 89 | static void __pm_clk_remove(struct pm_clock_entry *ce) |
90 | { | 90 | { |
91 | if (!ce) | 91 | if (!ce) |
92 | return; | 92 | return; |
@@ -108,87 +108,87 @@ static void __pm_runtime_clk_remove(struct pm_clock_entry *ce) | |||
108 | } | 108 | } |
109 | 109 | ||
110 | /** | 110 | /** |
111 | * pm_runtime_clk_remove - Stop using a device clock for runtime PM. | 111 | * pm_clk_remove - Stop using a device clock for power management. |
112 | * @dev: Device whose clock should not be used for runtime PM any more. | 112 | * @dev: Device whose clock should not be used for PM any more. |
113 | * @con_id: Connection ID of the clock. | 113 | * @con_id: Connection ID of the clock. |
114 | * | 114 | * |
115 | * Remove the clock represented by @con_id from the list of clocks used for | 115 | * Remove the clock represented by @con_id from the list of clocks used for |
116 | * the runtime PM of @dev. | 116 | * the power management of @dev. |
117 | */ | 117 | */ |
118 | void pm_runtime_clk_remove(struct device *dev, const char *con_id) | 118 | void pm_clk_remove(struct device *dev, const char *con_id) |
119 | { | 119 | { |
120 | struct pm_runtime_clk_data *prd = __to_prd(dev); | 120 | struct pm_clk_data *pcd = __to_pcd(dev); |
121 | struct pm_clock_entry *ce; | 121 | struct pm_clock_entry *ce; |
122 | 122 | ||
123 | if (!prd) | 123 | if (!pcd) |
124 | return; | 124 | return; |
125 | 125 | ||
126 | mutex_lock(&prd->lock); | 126 | mutex_lock(&pcd->lock); |
127 | 127 | ||
128 | list_for_each_entry(ce, &prd->clock_list, node) { | 128 | list_for_each_entry(ce, &pcd->clock_list, node) { |
129 | if (!con_id && !ce->con_id) { | 129 | if (!con_id && !ce->con_id) { |
130 | __pm_runtime_clk_remove(ce); | 130 | __pm_clk_remove(ce); |
131 | break; | 131 | break; |
132 | } else if (!con_id || !ce->con_id) { | 132 | } else if (!con_id || !ce->con_id) { |
133 | continue; | 133 | continue; |
134 | } else if (!strcmp(con_id, ce->con_id)) { | 134 | } else if (!strcmp(con_id, ce->con_id)) { |
135 | __pm_runtime_clk_remove(ce); | 135 | __pm_clk_remove(ce); |
136 | break; | 136 | break; |
137 | } | 137 | } |
138 | } | 138 | } |
139 | 139 | ||
140 | mutex_unlock(&prd->lock); | 140 | mutex_unlock(&pcd->lock); |
141 | } | 141 | } |
142 | 142 | ||
143 | /** | 143 | /** |
144 | * pm_runtime_clk_init - Initialize a device's list of runtime PM clocks. | 144 | * pm_clk_init - Initialize a device's list of power management clocks. |
145 | * @dev: Device to initialize the list of runtime PM clocks for. | 145 | * @dev: Device to initialize the list of PM clocks for. |
146 | * | 146 | * |
147 | * Allocate a struct pm_runtime_clk_data object, initialize its lock member and | 147 | * Allocate a struct pm_clk_data object, initialize its lock member and |
148 | * make the @dev's power.subsys_data field point to it. | 148 | * make the @dev's power.subsys_data field point to it. |
149 | */ | 149 | */ |
150 | int pm_runtime_clk_init(struct device *dev) | 150 | int pm_clk_init(struct device *dev) |
151 | { | 151 | { |
152 | struct pm_runtime_clk_data *prd; | 152 | struct pm_clk_data *pcd; |
153 | 153 | ||
154 | prd = kzalloc(sizeof(*prd), GFP_KERNEL); | 154 | pcd = kzalloc(sizeof(*pcd), GFP_KERNEL); |
155 | if (!prd) { | 155 | if (!pcd) { |
156 | dev_err(dev, "Not enough memory fo runtime PM data.\n"); | 156 | dev_err(dev, "Not enough memory for PM clock data.\n"); |
157 | return -ENOMEM; | 157 | return -ENOMEM; |
158 | } | 158 | } |
159 | 159 | ||
160 | INIT_LIST_HEAD(&prd->clock_list); | 160 | INIT_LIST_HEAD(&pcd->clock_list); |
161 | mutex_init(&prd->lock); | 161 | mutex_init(&pcd->lock); |
162 | dev->power.subsys_data = prd; | 162 | dev->power.subsys_data = pcd; |
163 | return 0; | 163 | return 0; |
164 | } | 164 | } |
165 | 165 | ||
166 | /** | 166 | /** |
167 | * pm_runtime_clk_destroy - Destroy a device's list of runtime PM clocks. | 167 | * pm_clk_destroy - Destroy a device's list of power management clocks. |
168 | * @dev: Device to destroy the list of runtime PM clocks for. | 168 | * @dev: Device to destroy the list of PM clocks for. |
169 | * | 169 | * |
170 | * Clear the @dev's power.subsys_data field, remove the list of clock entries | 170 | * Clear the @dev's power.subsys_data field, remove the list of clock entries |
171 | * from the struct pm_runtime_clk_data object pointed to by it before and free | 171 | * from the struct pm_clk_data object pointed to by it before and free |
172 | * that object. | 172 | * that object. |
173 | */ | 173 | */ |
174 | void pm_runtime_clk_destroy(struct device *dev) | 174 | void pm_clk_destroy(struct device *dev) |
175 | { | 175 | { |
176 | struct pm_runtime_clk_data *prd = __to_prd(dev); | 176 | struct pm_clk_data *pcd = __to_pcd(dev); |
177 | struct pm_clock_entry *ce, *c; | 177 | struct pm_clock_entry *ce, *c; |
178 | 178 | ||
179 | if (!prd) | 179 | if (!pcd) |
180 | return; | 180 | return; |
181 | 181 | ||
182 | dev->power.subsys_data = NULL; | 182 | dev->power.subsys_data = NULL; |
183 | 183 | ||
184 | mutex_lock(&prd->lock); | 184 | mutex_lock(&pcd->lock); |
185 | 185 | ||
186 | list_for_each_entry_safe_reverse(ce, c, &prd->clock_list, node) | 186 | list_for_each_entry_safe_reverse(ce, c, &pcd->clock_list, node) |
187 | __pm_runtime_clk_remove(ce); | 187 | __pm_clk_remove(ce); |
188 | 188 | ||
189 | mutex_unlock(&prd->lock); | 189 | mutex_unlock(&pcd->lock); |
190 | 190 | ||
191 | kfree(prd); | 191 | kfree(pcd); |
192 | } | 192 | } |
193 | 193 | ||
194 | #endif /* CONFIG_PM */ | 194 | #endif /* CONFIG_PM */ |
@@ -196,11 +196,11 @@ void pm_runtime_clk_destroy(struct device *dev) | |||
196 | #ifdef CONFIG_PM_RUNTIME | 196 | #ifdef CONFIG_PM_RUNTIME |
197 | 197 | ||
198 | /** | 198 | /** |
199 | * pm_runtime_clk_acquire - Acquire a device clock. | 199 | * pm_clk_acquire - Acquire a device clock. |
200 | * @dev: Device whose clock is to be acquired. | 200 | * @dev: Device whose clock is to be acquired. |
201 | * @con_id: Connection ID of the clock. | 201 | * @con_id: Connection ID of the clock. |
202 | */ | 202 | */ |
203 | static void pm_runtime_clk_acquire(struct device *dev, | 203 | static void pm_clk_acquire(struct device *dev, |
204 | struct pm_clock_entry *ce) | 204 | struct pm_clock_entry *ce) |
205 | { | 205 | { |
206 | ce->clk = clk_get(dev, ce->con_id); | 206 | ce->clk = clk_get(dev, ce->con_id); |
@@ -213,24 +213,24 @@ static void pm_runtime_clk_acquire(struct device *dev, | |||
213 | } | 213 | } |
214 | 214 | ||
215 | /** | 215 | /** |
216 | * pm_runtime_clk_suspend - Disable clocks in a device's runtime PM clock list. | 216 | * pm_clk_suspend - Disable clocks in a device's PM clock list. |
217 | * @dev: Device to disable the clocks for. | 217 | * @dev: Device to disable the clocks for. |
218 | */ | 218 | */ |
219 | int pm_runtime_clk_suspend(struct device *dev) | 219 | int pm_clk_suspend(struct device *dev) |
220 | { | 220 | { |
221 | struct pm_runtime_clk_data *prd = __to_prd(dev); | 221 | struct pm_clk_data *pcd = __to_pcd(dev); |
222 | struct pm_clock_entry *ce; | 222 | struct pm_clock_entry *ce; |
223 | 223 | ||
224 | dev_dbg(dev, "%s()\n", __func__); | 224 | dev_dbg(dev, "%s()\n", __func__); |
225 | 225 | ||
226 | if (!prd) | 226 | if (!pcd) |
227 | return 0; | 227 | return 0; |
228 | 228 | ||
229 | mutex_lock(&prd->lock); | 229 | mutex_lock(&pcd->lock); |
230 | 230 | ||
231 | list_for_each_entry_reverse(ce, &prd->clock_list, node) { | 231 | list_for_each_entry_reverse(ce, &pcd->clock_list, node) { |
232 | if (ce->status == PCE_STATUS_NONE) | 232 | if (ce->status == PCE_STATUS_NONE) |
233 | pm_runtime_clk_acquire(dev, ce); | 233 | pm_clk_acquire(dev, ce); |
234 | 234 | ||
235 | if (ce->status < PCE_STATUS_ERROR) { | 235 | if (ce->status < PCE_STATUS_ERROR) { |
236 | clk_disable(ce->clk); | 236 | clk_disable(ce->clk); |
@@ -238,30 +238,30 @@ int pm_runtime_clk_suspend(struct device *dev) | |||
238 | } | 238 | } |
239 | } | 239 | } |
240 | 240 | ||
241 | mutex_unlock(&prd->lock); | 241 | mutex_unlock(&pcd->lock); |
242 | 242 | ||
243 | return 0; | 243 | return 0; |
244 | } | 244 | } |
245 | 245 | ||
246 | /** | 246 | /** |
247 | * pm_runtime_clk_resume - Enable clocks in a device's runtime PM clock list. | 247 | * pm_clk_resume - Enable clocks in a device's PM clock list. |
248 | * @dev: Device to enable the clocks for. | 248 | * @dev: Device to enable the clocks for. |
249 | */ | 249 | */ |
250 | int pm_runtime_clk_resume(struct device *dev) | 250 | int pm_clk_resume(struct device *dev) |
251 | { | 251 | { |
252 | struct pm_runtime_clk_data *prd = __to_prd(dev); | 252 | struct pm_clk_data *pcd = __to_pcd(dev); |
253 | struct pm_clock_entry *ce; | 253 | struct pm_clock_entry *ce; |
254 | 254 | ||
255 | dev_dbg(dev, "%s()\n", __func__); | 255 | dev_dbg(dev, "%s()\n", __func__); |
256 | 256 | ||
257 | if (!prd) | 257 | if (!pcd) |
258 | return 0; | 258 | return 0; |
259 | 259 | ||
260 | mutex_lock(&prd->lock); | 260 | mutex_lock(&pcd->lock); |
261 | 261 | ||
262 | list_for_each_entry(ce, &prd->clock_list, node) { | 262 | list_for_each_entry(ce, &pcd->clock_list, node) { |
263 | if (ce->status == PCE_STATUS_NONE) | 263 | if (ce->status == PCE_STATUS_NONE) |
264 | pm_runtime_clk_acquire(dev, ce); | 264 | pm_clk_acquire(dev, ce); |
265 | 265 | ||
266 | if (ce->status < PCE_STATUS_ERROR) { | 266 | if (ce->status < PCE_STATUS_ERROR) { |
267 | clk_enable(ce->clk); | 267 | clk_enable(ce->clk); |
@@ -269,13 +269,13 @@ int pm_runtime_clk_resume(struct device *dev) | |||
269 | } | 269 | } |
270 | } | 270 | } |
271 | 271 | ||
272 | mutex_unlock(&prd->lock); | 272 | mutex_unlock(&pcd->lock); |
273 | 273 | ||
274 | return 0; | 274 | return 0; |
275 | } | 275 | } |
276 | 276 | ||
277 | /** | 277 | /** |
278 | * pm_runtime_clk_notify - Notify routine for device addition and removal. | 278 | * pm_clk_notify - Notify routine for device addition and removal. |
279 | * @nb: Notifier block object this function is a member of. | 279 | * @nb: Notifier block object this function is a member of. |
280 | * @action: Operation being carried out by the caller. | 280 | * @action: Operation being carried out by the caller. |
281 | * @data: Device the routine is being run for. | 281 | * @data: Device the routine is being run for. |
@@ -284,13 +284,13 @@ int pm_runtime_clk_resume(struct device *dev) | |||
284 | * struct pm_clk_notifier_block containing all of the requisite data. | 284 | * struct pm_clk_notifier_block containing all of the requisite data. |
285 | * Specifically, the pm_domain member of that object is copied to the device's | 285 | * Specifically, the pm_domain member of that object is copied to the device's |
286 | * pm_domain field and its con_ids member is used to populate the device's list | 286 | * pm_domain field and its con_ids member is used to populate the device's list |
287 | * of runtime PM clocks, depending on @action. | 287 | * of PM clocks, depending on @action. |
288 | * | 288 | * |
289 | * If the device's pm_domain field is already populated with a value different | 289 | * If the device's pm_domain field is already populated with a value different |
290 | * from the one stored in the struct pm_clk_notifier_block object, the function | 290 | * from the one stored in the struct pm_clk_notifier_block object, the function |
291 | * does nothing. | 291 | * does nothing. |
292 | */ | 292 | */ |
293 | static int pm_runtime_clk_notify(struct notifier_block *nb, | 293 | static int pm_clk_notify(struct notifier_block *nb, |
294 | unsigned long action, void *data) | 294 | unsigned long action, void *data) |
295 | { | 295 | { |
296 | struct pm_clk_notifier_block *clknb; | 296 | struct pm_clk_notifier_block *clknb; |
@@ -307,16 +307,16 @@ static int pm_runtime_clk_notify(struct notifier_block *nb, | |||
307 | if (dev->pm_domain) | 307 | if (dev->pm_domain) |
308 | break; | 308 | break; |
309 | 309 | ||
310 | error = pm_runtime_clk_init(dev); | 310 | error = pm_clk_init(dev); |
311 | if (error) | 311 | if (error) |
312 | break; | 312 | break; |
313 | 313 | ||
314 | dev->pm_domain = clknb->pm_domain; | 314 | dev->pm_domain = clknb->pm_domain; |
315 | if (clknb->con_ids[0]) { | 315 | if (clknb->con_ids[0]) { |
316 | for (con_id = clknb->con_ids; *con_id; con_id++) | 316 | for (con_id = clknb->con_ids; *con_id; con_id++) |
317 | pm_runtime_clk_add(dev, *con_id); | 317 | pm_clk_add(dev, *con_id); |
318 | } else { | 318 | } else { |
319 | pm_runtime_clk_add(dev, NULL); | 319 | pm_clk_add(dev, NULL); |
320 | } | 320 | } |
321 | 321 | ||
322 | break; | 322 | break; |
@@ -325,7 +325,7 @@ static int pm_runtime_clk_notify(struct notifier_block *nb, | |||
325 | break; | 325 | break; |
326 | 326 | ||
327 | dev->pm_domain = NULL; | 327 | dev->pm_domain = NULL; |
328 | pm_runtime_clk_destroy(dev); | 328 | pm_clk_destroy(dev); |
329 | break; | 329 | break; |
330 | } | 330 | } |
331 | 331 | ||
@@ -337,51 +337,51 @@ static int pm_runtime_clk_notify(struct notifier_block *nb, | |||
337 | #ifdef CONFIG_PM | 337 | #ifdef CONFIG_PM |
338 | 338 | ||
339 | /** | 339 | /** |
340 | * pm_runtime_clk_suspend - Disable clocks in a device's PM clock list. | 340 | * pm_clk_suspend - Disable clocks in a device's PM clock list. |
341 | * @dev: Device to disable the clocks for. | 341 | * @dev: Device to disable the clocks for. |
342 | */ | 342 | */ |
343 | int pm_runtime_clk_suspend(struct device *dev) | 343 | int pm_clk_suspend(struct device *dev) |
344 | { | 344 | { |
345 | struct pm_runtime_clk_data *prd = __to_prd(dev); | 345 | struct pm_clk_data *pcd = __to_pcd(dev); |
346 | struct pm_clock_entry *ce; | 346 | struct pm_clock_entry *ce; |
347 | 347 | ||
348 | dev_dbg(dev, "%s()\n", __func__); | 348 | dev_dbg(dev, "%s()\n", __func__); |
349 | 349 | ||
350 | /* If there is no driver, the clocks are already disabled. */ | 350 | /* If there is no driver, the clocks are already disabled. */ |
351 | if (!prd || !dev->driver) | 351 | if (!pcd || !dev->driver) |
352 | return 0; | 352 | return 0; |
353 | 353 | ||
354 | mutex_lock(&prd->lock); | 354 | mutex_lock(&pcd->lock); |
355 | 355 | ||
356 | list_for_each_entry_reverse(ce, &prd->clock_list, node) | 356 | list_for_each_entry_reverse(ce, &pcd->clock_list, node) |
357 | clk_disable(ce->clk); | 357 | clk_disable(ce->clk); |
358 | 358 | ||
359 | mutex_unlock(&prd->lock); | 359 | mutex_unlock(&pcd->lock); |
360 | 360 | ||
361 | return 0; | 361 | return 0; |
362 | } | 362 | } |
363 | 363 | ||
364 | /** | 364 | /** |
365 | * pm_runtime_clk_resume - Enable clocks in a device's PM clock list. | 365 | * pm_clk_resume - Enable clocks in a device's PM clock list. |
366 | * @dev: Device to enable the clocks for. | 366 | * @dev: Device to enable the clocks for. |
367 | */ | 367 | */ |
368 | int pm_runtime_clk_resume(struct device *dev) | 368 | int pm_clk_resume(struct device *dev) |
369 | { | 369 | { |
370 | struct pm_runtime_clk_data *prd = __to_prd(dev); | 370 | struct pm_clk_data *pcd = __to_pcd(dev); |
371 | struct pm_clock_entry *ce; | 371 | struct pm_clock_entry *ce; |
372 | 372 | ||
373 | dev_dbg(dev, "%s()\n", __func__); | 373 | dev_dbg(dev, "%s()\n", __func__); |
374 | 374 | ||
375 | /* If there is no driver, the clocks should remain disabled. */ | 375 | /* If there is no driver, the clocks should remain disabled. */ |
376 | if (!prd || !dev->driver) | 376 | if (!pcd || !dev->driver) |
377 | return 0; | 377 | return 0; |
378 | 378 | ||
379 | mutex_lock(&prd->lock); | 379 | mutex_lock(&pcd->lock); |
380 | 380 | ||
381 | list_for_each_entry(ce, &prd->clock_list, node) | 381 | list_for_each_entry(ce, &pcd->clock_list, node) |
382 | clk_enable(ce->clk); | 382 | clk_enable(ce->clk); |
383 | 383 | ||
384 | mutex_unlock(&prd->lock); | 384 | mutex_unlock(&pcd->lock); |
385 | 385 | ||
386 | return 0; | 386 | return 0; |
387 | } | 387 | } |
@@ -423,7 +423,7 @@ static void disable_clock(struct device *dev, const char *con_id) | |||
423 | } | 423 | } |
424 | 424 | ||
425 | /** | 425 | /** |
426 | * pm_runtime_clk_notify - Notify routine for device addition and removal. | 426 | * pm_clk_notify - Notify routine for device addition and removal. |
427 | * @nb: Notifier block object this function is a member of. | 427 | * @nb: Notifier block object this function is a member of. |
428 | * @action: Operation being carried out by the caller. | 428 | * @action: Operation being carried out by the caller. |
429 | * @data: Device the routine is being run for. | 429 | * @data: Device the routine is being run for. |
@@ -433,7 +433,7 @@ static void disable_clock(struct device *dev, const char *con_id) | |||
433 | * Specifically, the con_ids member of that object is used to enable or disable | 433 | * Specifically, the con_ids member of that object is used to enable or disable |
434 | * the device's clocks, depending on @action. | 434 | * the device's clocks, depending on @action. |
435 | */ | 435 | */ |
436 | static int pm_runtime_clk_notify(struct notifier_block *nb, | 436 | static int pm_clk_notify(struct notifier_block *nb, |
437 | unsigned long action, void *data) | 437 | unsigned long action, void *data) |
438 | { | 438 | { |
439 | struct pm_clk_notifier_block *clknb; | 439 | struct pm_clk_notifier_block *clknb; |
@@ -469,21 +469,21 @@ static int pm_runtime_clk_notify(struct notifier_block *nb, | |||
469 | #endif /* !CONFIG_PM_RUNTIME */ | 469 | #endif /* !CONFIG_PM_RUNTIME */ |
470 | 470 | ||
471 | /** | 471 | /** |
472 | * pm_runtime_clk_add_notifier - Add bus type notifier for runtime PM clocks. | 472 | * pm_clk_add_notifier - Add bus type notifier for power management clocks. |
473 | * @bus: Bus type to add the notifier to. | 473 | * @bus: Bus type to add the notifier to. |
474 | * @clknb: Notifier to be added to the given bus type. | 474 | * @clknb: Notifier to be added to the given bus type. |
475 | * | 475 | * |
476 | * The nb member of @clknb is not expected to be initialized and its | 476 | * The nb member of @clknb is not expected to be initialized and its |
477 | * notifier_call member will be replaced with pm_runtime_clk_notify(). However, | 477 | * notifier_call member will be replaced with pm_clk_notify(). However, |
478 | * the remaining members of @clknb should be populated prior to calling this | 478 | * the remaining members of @clknb should be populated prior to calling this |
479 | * routine. | 479 | * routine. |
480 | */ | 480 | */ |
481 | void pm_runtime_clk_add_notifier(struct bus_type *bus, | 481 | void pm_clk_add_notifier(struct bus_type *bus, |
482 | struct pm_clk_notifier_block *clknb) | 482 | struct pm_clk_notifier_block *clknb) |
483 | { | 483 | { |
484 | if (!bus || !clknb) | 484 | if (!bus || !clknb) |
485 | return; | 485 | return; |
486 | 486 | ||
487 | clknb->nb.notifier_call = pm_runtime_clk_notify; | 487 | clknb->nb.notifier_call = pm_clk_notify; |
488 | bus_register_notifier(bus, &clknb->nb); | 488 | bus_register_notifier(bus, &clknb->nb); |
489 | } | 489 | } |