2 * r8a7740 power management support
4 * Copyright (C) 2012 Renesas Solutions Corp.
5 * Copyright (C) 2012 Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
7 * This file is subject to the terms and conditions of the GNU General Public
8 * License. See the file "COPYING" in the main directory of this archive
11 #include <linux/console.h>
12 #include <mach/pm-rmobile.h>
15 static int r8a7740_pd_a4s_suspend(void)
18 * The A4S domain contains the CPU core and therefore it should
19 * only be turned off if the CPU is in use.
24 static int r8a7740_pd_a3sp_suspend(void)
27 * Serial consoles make use of SCIF hardware located in A3SP,
28 * keep such power domain on if "no_console_suspend" is set.
30 return console_suspend_enabled ? 0 : -EBUSY;
33 static struct rmobile_pm_domain r8a7740_pm_domains[] = {
37 .gov = &pm_domain_always_on_gov,
39 .suspend = r8a7740_pd_a4s_suspend,
44 .gov = &pm_domain_always_on_gov,
46 .suspend = r8a7740_pd_a3sp_suspend,
54 void __init r8a7740_init_pm_domains(void)
56 rmobile_init_domains(r8a7740_pm_domains, ARRAY_SIZE(r8a7740_pm_domains));
57 pm_genpd_add_subdomain_names("A4S", "A3SP");
60 #endif /* CONFIG_PM */