linux/arch/arm/mach-shmobile/include/mach/zboot_macros.h
<<
>>
Prefs
   1#ifndef __ZBOOT_MACRO_H
   2#define __ZBOOT_MACRO_H
   3
   4/* The LIST command is used to include comments in the script */
   5.macro  LIST comment
   6.endm
   7
   8/* The ED command is used to write a 32-bit word */
   9.macro ED, addr, data
  10        LDR     r0, 1f
  11        LDR     r1, 2f
  12        STR     r1, [r0]
  13        B       3f
  141 :     .long   \addr
  152 :     .long   \data
  163 :
  17.endm
  18
  19/* The EW command is used to write a 16-bit word */
  20.macro EW, addr, data
  21        LDR     r0, 1f
  22        LDR     r1, 2f
  23        STRH    r1, [r0]
  24        B       3f
  251 :     .long   \addr
  262 :     .long   \data
  273 :
  28.endm
  29
  30/* The EB command is used to write an 8-bit word */
  31.macro EB, addr, data
  32        LDR     r0, 1f
  33        LDR     r1, 2f
  34        STRB    r1, [r0]
  35        B       3f
  361 :     .long   \addr
  372 :     .long   \data
  383 :
  39.endm
  40
  41/* The WAIT command is used to delay the execution */
  42.macro  WAIT, time, reg
  43        LDR     r1, 1f
  44        LDR     r0, 2f
  45        STR     r0, [r1]
  4610 :
  47        LDR     r0, [r1]
  48        CMP     r0, #0x00000000
  49        BNE     10b
  50        NOP
  51        B       3f
  521 :     .long   \reg
  532 :     .long   \time * 100
  543 :
  55.endm
  56
  57/* The DD command is used to read a 32-bit word */
  58.macro  DD, start, end
  59        LDR     r1, 1f
  60        B       2f
  611 :     .long   \start
  622 :
  63.endm
  64
  65#endif /* __ZBOOT_MACRO_H */
  66