diff options
author | Chenhui Zhao <chenhui.zhao@freescale.com> | 2014-11-05 08:25:20 (GMT) |
---|---|---|
committer | Matthew Weigel <Matthew.Weigel@freescale.com> | 2014-12-11 18:40:20 (GMT) |
commit | 400d3d4ab76cb652e5a65425fceb591a21ff95aa (patch) | |
tree | df68d8bd6b866fc1a7eac378f704f691342e718a /arch/arm | |
parent | c10ebb7b344a2518a19bf7d19856e9d2403c4d73 (diff) | |
download | linux-fsl-qoriq-400d3d4ab76cb652e5a65425fceb591a21ff95aa.tar.xz |
pm: ls1021: fix deep sleep issue when compiling kernel with THUMB2 instuction
* set the bit 0 of the target address of long jump to 1 for THUMB mode
* compile the resume entry code in arm instruction set
Signed-off-by: Chenhui Zhao <chenhui.zhao@freescale.com>
Change-Id: I01a96158ac39e14dcaebc7305b03eb277712011b
Reviewed-on: http://git.am.freescale.net:8181/23209
Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com>
Reviewed-by: Zhengxiong Jin <Jason.Jin@freescale.com>
Diffstat (limited to 'arch/arm')
-rw-r--r-- | arch/arm/mach-imx/sleep-ls1.S | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/arch/arm/mach-imx/sleep-ls1.S b/arch/arm/mach-imx/sleep-ls1.S index ae0a8af..b8d7f1a 100644 --- a/arch/arm/mach-imx/sleep-ls1.S +++ b/arch/arm/mach-imx/sleep-ls1.S @@ -59,6 +59,7 @@ ENTRY(ls1_do_deepsleep) isb /* jump to sram code using physical address */ + THUMB( orr r0, r0, #1 ) bx r0 ENDPROC(ls1_do_deepsleep) .popsection @@ -123,6 +124,7 @@ ENTRY(ls1_sram_code_size) .word . - ls1_start_fsm /* the bootloader will jump to here after wakeup from deep sleep */ + .arm .align L1_CACHE_SHIFT ENTRY(ls1_deepsleep_resume) THUMB( adr r6, BSYM(1f) ) |