jean.pihet@xxxxxxxxxxxxxx writes: > From: Jean Pihet <j-pihet@xxxxxx> > > Most of the ASM sleep code (in arch/arm/mach-omap2/sleep34xx.S) > is copied to internal SRAM at boot and after wake-up from CORE OFF mode. > However only a small part of the code really needs to run from internal SRAM. > > This fix lets most of the ASM idle code run from the DDR > in order to minimize the SRAM usage and the overhead in the code copy. > > The only pieces of code that are mandatory in SRAM are: > - the i443 erratum WA, > - the i581 erratum WA, > - the security extension code. > > SRAM usage: > - original code: > . 560 bytes for omap3_sram_configure_core_dpll (used by DVFS), > . 852 bytes for omap_sram_idle (used by suspend/resume in RETention), > . 124 bytes for es3_sdrc_fix (used by suspend/resume in OFF mode on ES3.x), > . 108 bytes for save_secure_ram_context (used on HS parts only). > > With this fix the usage for suspend/resume in RETention goes down 288 bytes, > so the gain in SRAM usage for suspend/resume is 564 bytes. > > Also fixed the SRAM initialization sequence to avoid an unnecessary > copy to SRAM at boot time and for readability. > > Tested on Beagleboard (ES2.x) in idle with full RET and OFF modes. > > Signed-off-by: Jean Pihet <j-pihet@xxxxxx> Reviewed-by: Kevin Hilman <khilman@xxxxxx> Also tested retention and off on 3430/n900, 3530/Overo and 3630/Zoom3 Tested-by: Kevin Hilman <khilman@xxxxxx> Russell, if you're OK with it, can you add it to your suspend branch for the upcoming merge window? Kevin -- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html