frv: clean up linker script using new linker script macros.
[linux-2.6.git] / arch / frv / kernel / head.inc
1 /* head.inc: head common definitions -*- asm -*-
2  *
3  * Copyright (C) 2004 Red Hat, Inc. All Rights Reserved.
4  * Written by David Howells (dhowells@redhat.com)
5  *
6  * This program is free software; you can redistribute it and/or
7  * modify it under the terms of the GNU General Public License
8  * as published by the Free Software Foundation; either version
9  * 2 of the License, or (at your option) any later version.
10  */
11
12
13 #if defined(CONFIG_MB93090_MB00)
14 #define LED_ADDR (0x21200000+4)
15
16 .macro LEDS val
17         sethi.p         %hi(0xFFC00030),gr3
18         setlo           %lo(0xFFC00030),gr3
19         lduh            @(gr3,gr0),gr3
20         andicc          gr3,#0x100,gr0,icc0
21         bne             icc0,0,999f
22
23         setlos          #~\val,gr3
24         st              gr3,@(gr30,gr0)
25         membar
26         dcf             @(gr30,gr0)
27     999:
28 .endm
29
30 #elif defined(CONFIG_MB93093_PDK)
31 #define LED_ADDR (0x20000023)
32
33 .macro LEDS val
34         setlos          #\val,gr3
35         stb             gr3,@(gr30,gr0)
36         membar
37 .endm
38
39 #else
40 #define LED_ADDR 0
41
42 .macro LEDS val
43 .endm
44 #endif
45
46 #ifdef CONFIG_MMU
47 __sdram_base = 0x00000000               /* base address to which SDRAM relocated */
48 #else
49 __sdram_base = __page_offset            /* base address to which SDRAM relocated */
50 #endif