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

Commit 72433eba authored by Santosh Shilimkar's avatar Santosh Shilimkar Committed by Kevin Hilman
Browse files

ARM: OMAP4: PM: Avoid expensive cpu_suspend() path for all CPU power states except off



Current CPU PM code code make use of common cpu_suspend() path for all the
CPU power states which is not optimal. In fact cpu_suspend() path is needed
only when we put CPU power domain to off state where the CPU context is lost.

Update the code accordingly so that the expensive cpu_suspend() path
can be avoided for the shallow CPU power states like CPU PD INA/CSWR.

The patch has been tested on OMAP4430 and OMAP5430(with few out of tree patches)
devices for suspend and CPUidle.

Cc: Kevin Hilman <khilman@deeprootsystems.com>

Reported-by: default avatarRichard Woodruff <r-woodruff2@ti.com>
Signed-off-by: default avatarSantosh Shilimkar <santosh.shilimkar@ti.com>
Signed-off-by: default avatarKevin Hilman <khilman@linaro.org>
parent c309f7f4
Loading
Loading
Loading
Loading
+4 −1
Original line number Diff line number Diff line
@@ -246,7 +246,10 @@ int omap4_enter_lowpower(unsigned int cpu, unsigned int power_state)
	/*
	 * Call low level function  with targeted low power state.
	 */
	if (save_state)
		cpu_suspend(save_state, omap4_finish_suspend);
	else
		omap4_finish_suspend(save_state);

	/*
	 * Restore the CPUx power state to ON otherwise CPUx