mirror of
https://github.com/adulau/aha.git
synced 2024-12-29 12:16:20 +00:00
sh: add romimage-macros.h
romimage macros which are used in kfr2r09 is very useful for other board. This patch divides kfr2r09's romimage.h into romimage-macros and partner-jet-setup. Signed-off-by: Kuninori Morimoto <morimoto.kuninori@renesas.com> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
This commit is contained in:
parent
125ecce696
commit
378a569eaa
2 changed files with 74 additions and 69 deletions
73
arch/sh/include/asm/romimage-macros.h
Normal file
73
arch/sh/include/asm/romimage-macros.h
Normal file
|
@ -0,0 +1,73 @@
|
|||
#ifndef __ROMIMAGE_MACRO_H
|
||||
#define __ROMIMAGE_MACRO_H
|
||||
|
||||
/* The LIST command is used to include comments in the script */
|
||||
.macro LIST comment
|
||||
.endm
|
||||
|
||||
/* The ED command is used to write a 32-bit word */
|
||||
.macro ED, addr, data
|
||||
mov.l 1f, r1
|
||||
mov.l 2f, r0
|
||||
mov.l r0, @r1
|
||||
bra 3f
|
||||
nop
|
||||
.align 2
|
||||
1 : .long \addr
|
||||
2 : .long \data
|
||||
3 :
|
||||
.endm
|
||||
|
||||
/* The EW command is used to write a 16-bit word */
|
||||
.macro EW, addr, data
|
||||
mov.l 1f, r1
|
||||
mov.l 2f, r0
|
||||
mov.w r0, @r1
|
||||
bra 3f
|
||||
nop
|
||||
.align 2
|
||||
1 : .long \addr
|
||||
2 : .long \data
|
||||
3 :
|
||||
.endm
|
||||
|
||||
/* The EB command is used to write an 8-bit word */
|
||||
.macro EB, addr, data
|
||||
mov.l 1f, r1
|
||||
mov.l 2f, r0
|
||||
mov.b r0, @r1
|
||||
bra 3f
|
||||
nop
|
||||
.align 2
|
||||
1 : .long \addr
|
||||
2 : .long \data
|
||||
3 :
|
||||
.endm
|
||||
|
||||
/* The WAIT command is used to delay the execution */
|
||||
.macro WAIT, time
|
||||
mov.l 2f, r3
|
||||
1 :
|
||||
nop
|
||||
tst r3, r3
|
||||
bf/s 1b
|
||||
dt r3
|
||||
bra 3f
|
||||
nop
|
||||
.align 2
|
||||
2 : .long \time * 100
|
||||
3 :
|
||||
.endm
|
||||
|
||||
/* The DD command is used to read a 32-bit word */
|
||||
.macro DD, addr, addr2, nr
|
||||
mov.l 1f, r1
|
||||
mov.l @r1, r0
|
||||
bra 2f
|
||||
nop
|
||||
.align 2
|
||||
1 : .long \addr
|
||||
2 :
|
||||
.endm
|
||||
|
||||
#endif /* __ROMIMAGE_MACRO_H */
|
|
@ -3,75 +3,7 @@
|
|||
* the assembly code is the first code to be executed in the romImage
|
||||
*/
|
||||
|
||||
/* The LIST command is used to include comments in the script */
|
||||
.macro LIST comment
|
||||
.endm
|
||||
|
||||
/* The ED command is used to write a 32-bit word */
|
||||
.macro ED, addr, data
|
||||
mov.l 1f ,r1
|
||||
mov.l 2f ,r0
|
||||
mov.l r0, @r1
|
||||
bra 3f
|
||||
nop
|
||||
.align 2
|
||||
1: .long \addr
|
||||
2: .long \data
|
||||
3:
|
||||
.endm
|
||||
|
||||
/* The EW command is used to write a 16-bit word */
|
||||
.macro EW, addr, data
|
||||
mov.l 1f ,r1
|
||||
mov.l 2f ,r0
|
||||
mov.w r0, @r1
|
||||
bra 3f
|
||||
nop
|
||||
.align 2
|
||||
1: .long \addr
|
||||
2: .long \data
|
||||
3:
|
||||
.endm
|
||||
|
||||
/* The EB command is used to write an 8-bit word */
|
||||
.macro EB, addr, data
|
||||
mov.l 1f ,r1
|
||||
mov.l 2f ,r0
|
||||
mov.b r0, @r1
|
||||
bra 3f
|
||||
nop
|
||||
.align 2
|
||||
1: .long \addr
|
||||
2: .long \data
|
||||
3:
|
||||
.endm
|
||||
|
||||
/* The WAIT command is used to delay the execution */
|
||||
.macro WAIT, time
|
||||
mov.l 2f ,r3
|
||||
1:
|
||||
nop
|
||||
tst r3, r3
|
||||
bf/s 1b
|
||||
dt r3
|
||||
bra 3f
|
||||
nop
|
||||
.align 2
|
||||
2: .long \time * 100
|
||||
3:
|
||||
.endm
|
||||
|
||||
/* The DD command is used to read a 32-bit word */
|
||||
.macro DD, addr, addr2, nr
|
||||
mov.l 1f ,r1
|
||||
mov.l @r1, r0
|
||||
bra 2f
|
||||
nop
|
||||
.align 2
|
||||
1: .long \addr
|
||||
2:
|
||||
.endm
|
||||
|
||||
#include <asm/romimage-macros.h>
|
||||
#include "partner-jet-setup.txt"
|
||||
|
||||
/* execute icbi after enabling cache */
|
||||
|
|
Loading…
Reference in a new issue