patch-2_6_7-vs1_9_1_12
[linux-2.6.git] / arch / arm / boot / Makefile
1 #
2 # arch/arm/boot/Makefile
3 #
4 # This file is subject to the terms and conditions of the GNU General Public
5 # License.  See the file "COPYING" in the main directory of this archive
6 # for more details.
7 #
8 # Copyright (C) 1995-2002 Russell King
9 #
10
11 MKIMAGE         := $(srctree)/scripts/mkuboot.sh
12
13 # Note: the following conditions must always be true:
14 #   ZRELADDR == virt_to_phys(TEXTADDR)
15 #   PARAMS_PHYS must be with 4MB of ZRELADDR
16 #   INITRD_PHYS must be in RAM
17
18    zreladdr-$(CONFIG_ARCH_RPC)          := 0x10008000
19 params_phys-$(CONFIG_ARCH_RPC)          := 0x10000100
20 initrd_phys-$(CONFIG_ARCH_RPC)          := 0x18000000
21    zreladdr-$(CONFIG_ARCH_CLPS7500)     := 0x10008000
22    zreladdr-$(CONFIG_ARCH_CLPS7500)     := 0x10008000
23    zreladdr-$(CONFIG_ARCH_EBSA110)      := 0x00008000
24 params_phys-$(CONFIG_ARCH_EBSA110)      := 0x00000400
25 initrd_phys-$(CONFIG_ARCH_EBSA110)      := 0x00800000
26   ztextaddr-$(CONFIG_ARCH_SHARK)        := 0x08508000
27    zreladdr-$(CONFIG_ARCH_SHARK)        := 0x08008000
28    zreladdr-$(CONFIG_FOOTBRIDGE)        := 0x00008000
29 params_phys-$(CONFIG_FOOTBRIDGE)        := 0x00000100
30 initrd_phys-$(CONFIG_FOOTBRIDGE)        := 0x00800000
31    zreladdr-$(CONFIG_ARCH_INTEGRATOR)   := 0x00008000
32 params_phys-$(CONFIG_ARCH_INTEGRATOR)   := 0x00000100
33 initrd_phys-$(CONFIG_ARCH_INTEGRATOR)   := 0x00800000
34    zreladdr-$(CONFIG_ARCH_CAMELOT)      := 0x00008000
35    zreladdr-$(CONFIG_ARCH_NEXUSPCI)     := 0x40008000
36    zreladdr-$(CONFIG_ARCH_L7200)        := 0xf0008000
37 # The standard locations for stuff on CLPS711x type processors
38    zreladdr-$(CONFIG_ARCH_CLPS711X)     := 0xc0028000 
39 params_phys-$(CONFIG_ARCH_CLPS711X)     := 0xc0000100
40 # Should probably have some agreement on these...
41 initrd_phys-$(CONFIG_ARCH_P720T)        := 0xc0400000
42 initrd_phys-$(CONFIG_ARCH_CDB89712)     := 0x00700000
43    zreladdr-$(CONFIG_ARCH_SA1100)       := 0xc0008000
44 ifeq ($(CONFIG_ARCH_SA1100),y)
45    zreladdr-$(CONFIG_SA1111)            := 0xc0208000
46 endif
47 params_phys-$(CONFIG_ARCH_SA1100)       := 0xc0000100
48 initrd_phys-$(CONFIG_ARCH_SA1100)       := 0xc0800000
49    zreladdr-$(CONFIG_ARCH_PXA)          := 0xa0008000
50    zreladdr-$(CONFIG_ARCH_IOP3XX)       := 0xa0008000
51 params_phys-$(CONFIG_ARCH_IOP3XX)       := 0xa0000100
52    zreladdr-$(CONFIG_ARCH_ADIFCC)       := 0xc0008000
53 params_phys-$(CONFIG_ARCH_ADIFCC)       := 0xc0000100
54    zreladdr-$(CONFIG_ARCH_IXP4XX)       := 0x00008000
55 params-phys-$(CONFIG_ARCH_IXP4XX)       := 0x00000100
56    zreladdr-$(CONFIG_ARCH_OMAP)         := 0x10008000
57 params_phys-$(CONFIG_ARCH_OMAP)         := 0x10000100
58 initrd_phys-$(CONFIG_ARCH_OMAP)         := 0x10800000
59    zreladdr-$(CONFIG_ARCH_LH7A40X)      := 0xc0008000
60 params_phys-$(CONFIG_ARCH_LH7A40X)      := 0xc0000100
61 initrd_phys-$(CONFIG_ARCH_LH7A40X)      := 0xc4000000
62    zreladdr-$(CONFIG_ARCH_S3C2410)      := 0x30008000
63 params_phys-$(CONFIG_ARCH_S3C2410)      := 0x30000100
64    zreladdr-$(CONFIG_ARCH_VERSATILE_PB) := 0x00008000
65 params_phys-$(CONFIG_ARCH_VERSATILE_PB) := 0x00000100
66 initrd_phys-$(CONFIG_ARCH_VERSATILE_PB) := 0x00800000
67
68 ZRELADDR    := $(zreladdr-y)
69 ZTEXTADDR   := $(ztextaddr-y)
70 PARAMS_PHYS := $(params_phys-y)
71 INITRD_PHYS := $(initrd_phys-y)
72 #
73 # We now have a PIC decompressor implementation.  Decompressors running
74 # from RAM should not define ZTEXTADDR.  Decompressors running directly
75 # from ROM or Flash must define ZTEXTADDR (preferably via the config)
76 # FIXME: Previous assignment to ztextaddr-y is lost here. See SHARK
77 ifeq ($(CONFIG_ZBOOT_ROM),y)
78 ZTEXTADDR       := $(CONFIG_ZBOOT_ROM_TEXT)
79 ZBSSADDR        := $(CONFIG_ZBOOT_ROM_BSS)
80 else
81 ZTEXTADDR       := 0
82 ZBSSADDR        := ALIGN(4)
83 endif
84
85 export  ZTEXTADDR ZBSSADDR ZRELADDR INITRD_PHYS PARAMS_PHYS
86
87 targets := Image zImage bootpImage
88
89 $(obj)/Image: vmlinux FORCE
90         $(call if_changed,objcopy)
91         @echo '  Kernel: $@ is ready'
92
93 $(obj)/zImage:  $(obj)/compressed/vmlinux FORCE
94         $(call if_changed,objcopy)
95         @echo '  Kernel: $@ is ready'
96
97 quiet_cmd_uimage = UIMAGE  $@
98       cmd_uimage = $(CONFIG_SHELL) $(MKIMAGE) -A arm -O linux -T kernel \
99                    -C none -a $(ZRELADDR) -e $(ZRELADDR) \
100                    -n 'Linux-$(KERNELRELEASE)' -d $< $@
101
102 targets += uImage
103 $(obj)/uImage:  $(obj)/zImage
104         $(call if_changed,uimage)
105         @echo '  Image $@ is ready'
106
107 $(obj)/bootpImage: $(obj)/bootp/bootp FORCE
108         $(call if_changed,objcopy)
109         @echo '  Kernel: $@ is ready'
110
111 $(obj)/compressed/vmlinux: vmlinux FORCE
112         $(Q)$(MAKE) $(build)=$(obj)/compressed $@
113
114 $(obj)/bootp/bootp: $(obj)/zImage initrd FORCE
115         $(Q)$(MAKE) $(build)=$(obj)/bootp $@
116
117 .PHONY: initrd
118 initrd:
119         @test "$(INITRD_PHYS)" != "" || \
120         (echo This machine does not support INITRD; exit -1)
121         @test "$(INITRD)" != "" || \
122         (echo You must specify INITRD; exit -1)
123
124 install: $(obj)/Image
125         $(CONFIG_SHELL) $(obj)/install.sh \
126         $(VERSION).$(PATCHLEVEL).$(SUBLEVEL)$(EXTRAVERSION) \
127         $(obj)/Image System.map "$(INSTALL_PATH)"
128
129 zinstall: $(obj)/zImage
130         $(CONFIG_SHELL) $(obj)/install.sh \
131         $(VERSION).$(PATCHLEVEL).$(SUBLEVEL)$(EXTRAVERSION) \
132         $(obj)/zImage System.map "$(INSTALL_PATH)"
133
134 subdir-     := bootp compressed