aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-shmobile
diff options
context:
space:
mode:
authorGeert Uytterhoeven <geert+renesas@glider.be>2015-01-14 07:11:20 -0500
committerSimon Horman <horms+renesas@verge.net.au>2015-01-15 21:02:31 -0500
commite43ee86efb68808c8847de17e58f5427b006363c (patch)
tree2c278fa6985f56be231ab416bf96e10d430ff587 /arch/arm/mach-shmobile
parent2173fc7cb681c38b9e5bc526211045caecf96e44 (diff)
ARM: shmobile: R-Mobile: Consolidate rmobile_pd_suspend_*()
Consolidate the identical rmobile_pd_suspend_*() routines that just return -EBUSY to prevent a PM domain from being powered down into a single rmobile_pd_suspend_busy(). Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
Diffstat (limited to 'arch/arm/mach-shmobile')
-rw-r--r--arch/arm/mach-shmobile/pm-rmobile.c28
1 files changed, 13 insertions, 15 deletions
diff --git a/arch/arm/mach-shmobile/pm-rmobile.c b/arch/arm/mach-shmobile/pm-rmobile.c
index 85a7fdd9823b..e1be4b8919ef 100644
--- a/arch/arm/mach-shmobile/pm-rmobile.c
+++ b/arch/arm/mach-shmobile/pm-rmobile.c
@@ -200,11 +200,10 @@ void rmobile_add_devices_to_domains(struct pm_domain_device data[],
200 200
201#else /* !CONFIG_ARCH_SHMOBILE_LEGACY */ 201#else /* !CONFIG_ARCH_SHMOBILE_LEGACY */
202 202
203static int rmobile_pd_suspend_cpu(void) 203static int rmobile_pd_suspend_busy(void)
204{ 204{
205 /* 205 /*
206 * This domain contains the CPU core and therefore it should 206 * This domain should not be turned off.
207 * only be turned off if the CPU is not in use.
208 */ 207 */
209 return -EBUSY; 208 return -EBUSY;
210} 209}
@@ -218,16 +217,6 @@ static int rmobile_pd_suspend_console(void)
218 return console_suspend_enabled ? 0 : -EBUSY; 217 return console_suspend_enabled ? 0 : -EBUSY;
219} 218}
220 219
221static int rmobile_pd_suspend_debug(void)
222{
223 /*
224 * This domain contains the Coresight-ETM hardware block and
225 * therefore it should only be turned off if the debug module is
226 * not in use.
227 */
228 return -EBUSY;
229}
230
231#define MAX_NUM_CPU_PDS 8 220#define MAX_NUM_CPU_PDS 8
232 221
233static unsigned int num_cpu_pds __initdata; 222static unsigned int num_cpu_pds __initdata;
@@ -303,17 +292,26 @@ static void __init rmobile_setup_pm_domain(struct device_node *np,
303 const char *name = pd->genpd.name; 292 const char *name = pd->genpd.name;
304 293
305 if (pd_contains_cpu(np)) { 294 if (pd_contains_cpu(np)) {
295 /*
296 * This domain contains the CPU core and therefore it should
297 * only be turned off if the CPU is not in use.
298 */
306 pr_debug("PM domain %s contains CPU\n", name); 299 pr_debug("PM domain %s contains CPU\n", name);
307 pd->gov = &pm_domain_always_on_gov; 300 pd->gov = &pm_domain_always_on_gov;
308 pd->suspend = rmobile_pd_suspend_cpu; 301 pd->suspend = rmobile_pd_suspend_busy;
309 } else if (np == console_pd) { 302 } else if (np == console_pd) {
310 pr_debug("PM domain %s contains serial console\n", name); 303 pr_debug("PM domain %s contains serial console\n", name);
311 pd->gov = &pm_domain_always_on_gov; 304 pd->gov = &pm_domain_always_on_gov;
312 pd->suspend = rmobile_pd_suspend_console; 305 pd->suspend = rmobile_pd_suspend_console;
313 } else if (np == debug_pd) { 306 } else if (np == debug_pd) {
307 /*
308 * This domain contains the Coresight-ETM hardware block and
309 * therefore it should only be turned off if the debug module
310 * is not in use.
311 */
314 pr_debug("PM domain %s contains Coresight-ETM\n", name); 312 pr_debug("PM domain %s contains Coresight-ETM\n", name);
315 pd->gov = &pm_domain_always_on_gov; 313 pd->gov = &pm_domain_always_on_gov;
316 pd->suspend = rmobile_pd_suspend_debug; 314 pd->suspend = rmobile_pd_suspend_busy;
317 } 315 }
318 316
319 rmobile_init_pm_domain(pd); 317 rmobile_init_pm_domain(pd);