Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 7e81f543 authored by Geert Uytterhoeven's avatar Geert Uytterhoeven Committed by Simon Horman
Browse files

ARM: shmobile: r8a7740: Add D4 pm domain support



Add support for the D4 power domain.
This domain contains the Coresight-ETM hardware block.

As long as the ARM debug/perf code doesn't use resource management with
runtime PM support, the D4 power domain must be kept powered to avoid a
crash during resume from s2ram (dbg_cpu_pm_notify() calls
reset_ctrl_regs() unconditionally, causing an undefined instruction
oops).

Signed-off-by: default avatarGeert Uytterhoeven <geert+renesas@glider.be>
Signed-off-by: default avatarSimon Horman <horms+renesas@verge.net.au>
parent 77192e1e
Loading
Loading
Loading
Loading
+15 −0
Original line number Diff line number Diff line
@@ -32,6 +32,16 @@ static int r8a7740_pd_a3sp_suspend(void)
	return console_suspend_enabled ? 0 : -EBUSY;
}

static int r8a7740_pd_d4_suspend(void)
{
	/*
	 * The D4 domain contains the Coresight-ETM hardware block and
	 * therefore it should only be turned off if the debug module is
	 * not in use.
	 */
	return -EBUSY;
}

static struct rmobile_pm_domain r8a7740_pm_domains[] = {
	{
		.genpd.name	= "A4LC",
@@ -39,6 +49,11 @@ static struct rmobile_pm_domain r8a7740_pm_domains[] = {
	}, {
		.genpd.name	= "A4MP",
		.bit_shift	= 2,
	}, {
		.genpd.name	= "D4",
		.bit_shift	= 3,
		.gov		= &pm_domain_always_on_gov,
		.suspend	= r8a7740_pd_d4_suspend,
	}, {
		.genpd.name	= "A3RV",
		.bit_shift	= 6,