git.openpandora.org
/
pandora-kernel.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
OMAP3: PM: fix save secure RAM to restore MPU power state
[pandora-kernel.git]
/
arch
/
arm
/
mach-omap2
/
pm34xx.c
diff --git
a/arch/arm/mach-omap2/pm34xx.c
b/arch/arm/mach-omap2/pm34xx.c
index
8cbbead
..
1916038
100644
(file)
--- a/
arch/arm/mach-omap2/pm34xx.c
+++ b/
arch/arm/mach-omap2/pm34xx.c
@@
-168,9
+168,10
@@
static void omap3_core_restore_context(void)
* once during boot sequence, but this works as we are not using secure
* services.
*/
* once during boot sequence, but this works as we are not using secure
* services.
*/
-static void omap3_save_secure_ram_context(
u32 target_mpu_state
)
+static void omap3_save_secure_ram_context(
void
)
{
u32 ret;
{
u32 ret;
+ int mpu_next_state = pwrdm_read_next_pwrst(mpu_pwrdm);
if (omap_type() != OMAP2_DEVICE_TYPE_GP) {
/*
if (omap_type() != OMAP2_DEVICE_TYPE_GP) {
/*
@@
-181,7
+182,7
@@
static void omap3_save_secure_ram_context(u32 target_mpu_state)
pwrdm_set_next_pwrst(mpu_pwrdm, PWRDM_POWER_ON);
ret = _omap_save_secure_sram((u32 *)
__pa(omap3_secure_ram_storage));
pwrdm_set_next_pwrst(mpu_pwrdm, PWRDM_POWER_ON);
ret = _omap_save_secure_sram((u32 *)
__pa(omap3_secure_ram_storage));
- pwrdm_set_next_pwrst(mpu_pwrdm,
target_mpu
_state);
+ pwrdm_set_next_pwrst(mpu_pwrdm,
mpu_next
_state);
/* Following is for error tracking, it should not happen */
if (ret) {
printk(KERN_ERR "save_secure_sram() returns %08x\n",
/* Following is for error tracking, it should not happen */
if (ret) {
printk(KERN_ERR "save_secure_sram() returns %08x\n",
@@
-1094,7
+1095,7
@@
static int __init omap3_pm_init(void)
local_fiq_disable();
omap_dma_global_context_save();
local_fiq_disable();
omap_dma_global_context_save();
- omap3_save_secure_ram_context(
PWRDM_POWER_ON
);
+ omap3_save_secure_ram_context();
omap_dma_global_context_restore();
local_irq_enable();
omap_dma_global_context_restore();
local_irq_enable();