Signed-off-by: Sonic Zhang <sonic.zhang@analog.com>
Signed-off-by: Bob Liu <lliubbo@gmail.com>
#include <asm/dpmc.h>
.section .l1.text
-#ifndef CONFIG_BF60x
ENTRY(_sleep_mode)
[--SP] = (R7:4, P5:3);
[--SP] = RETS;
(R7:4, P5:3) = [SP++];
RTS;
ENDPROC(_sleep_mode)
-#endif
/*
* This func never returns as it puts the part into hibernate, and
/* Save/setup the regs we need early for minor pipeline optimization */
R4 = R0;
-#ifndef CONFIG_BF60x
P3.H = hi(VR_CTL);
P3.L = lo(VR_CTL);
/* Disable all wakeup sources */
call _set_sic_iwr;
call _set_dram_srfs;
SSYNC;
-#endif
/* Finally, we climb into our cave to hibernate */
W[P3] = R4.L;
jump .Lforever;
ENDPROC(_hibernate_mode)
-#ifndef CONFIG_BF60x
ENTRY(_sleep_deeper)
[--SP] = (R7:4, P5:3);
[--SP] = RETS;
IF !CC JUMP 1b;
RTS;
ENDPROC(_test_pll_locked)
-#endif
.section .text
ENTRY(_do_hibernate)