linux/arch/arm/mach-pxa/mioa701_bootresume.S
<<
>>
Prefs
   1/* Bootloader to resume MIO A701
   2 *
   3 * 2007-1-12 Robert Jarzmik
   4 *
   5 * This code is licenced under the GPLv2.
   6*/
   7
   8#include <linux/linkage.h>
   9#include <asm/assembler.h>
  10
  11/*
  12 * Note: Yes, part of the following code is located into the .data section.
  13 *       This is to allow jumpaddr to be accessed with a relative load
  14 *       while we can't rely on any MMU translation.  We could have put
  15 *       sleep_save_sp in the .text section as well, but some setups might
  16 *       insist on it to be truly read-only.
  17 */
  18        .data
  19ENTRY(mioa701_bootstrap)
  200:
  21        b       1f
  22ENTRY(mioa701_jumpaddr)
  23        .word   0x40f00008              @ PSPR in no-MMU mode
  241:
  25        mov     r0,     #0xa0000000     @ Don't suppose memory access works
  26        orr     r0, r0, #0x00200000     @ even if it's supposed to
  27        orr     r0, r0, #0x0000b000
  28        mov     r1, #0
  29        str     r1, [r0]                @ Early disable resume for next boot
  30        ldr     r0, mioa701_jumpaddr    @ (Murphy's Law)
  31        ldr     r0, [r0]
  32        ret     r0
  332:
  34
  35ENTRY(mioa701_bootstrap_lg)
  36        .data
  37        .word   2b-0b
  38