2 # arch/arm/boot/Makefile
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
8 # Copyright (C) 1995-2002 Russell King
11 MKIMAGE := $(srctree)/scripts/mkuboot.sh
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
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
47 params_phys-$(CONFIG_ARCH_SA1100) := 0xc0000100
48 initrd_phys-$(CONFIG_ARCH_SA1100) := 0xc0800000
49 zreladdr-$(CONFIG_ARCH_PXA) := 0xa0008000
50 zreladdr-$(CONFIG_ARCH_MX1ADS) := 0x08008000
51 zreladdr-$(CONFIG_ARCH_IOP3XX) := 0xa0008000
52 params_phys-$(CONFIG_ARCH_IOP3XX) := 0xa0000100
53 zreladdr-$(CONFIG_ARCH_IXP4XX) := 0x00008000
54 params-phys-$(CONFIG_ARCH_IXP4XX) := 0x00000100
55 zreladdr-$(CONFIG_ARCH_OMAP) := 0x10008000
56 params_phys-$(CONFIG_ARCH_OMAP) := 0x10000100
57 initrd_phys-$(CONFIG_ARCH_OMAP) := 0x10800000
58 zreladdr-$(CONFIG_ARCH_LH7A40X) := 0xc0008000
59 params_phys-$(CONFIG_ARCH_LH7A40X) := 0xc0000100
60 initrd_phys-$(CONFIG_ARCH_LH7A40X) := 0xc4000000
61 zreladdr-$(CONFIG_ARCH_S3C2410) := 0x30008000
62 params_phys-$(CONFIG_ARCH_S3C2410) := 0x30000100
63 zreladdr-$(CONFIG_ARCH_VERSATILE_PB) := 0x00008000
64 params_phys-$(CONFIG_ARCH_VERSATILE_PB) := 0x00000100
65 initrd_phys-$(CONFIG_ARCH_VERSATILE_PB) := 0x00800000
67 ZRELADDR := $(zreladdr-y)
68 PARAMS_PHYS := $(params_phys-y)
69 INITRD_PHYS := $(initrd_phys-y)
71 export ZRELADDR INITRD_PHYS PARAMS_PHYS
73 targets := Image zImage bootpImage uImage
75 $(obj)/Image: vmlinux FORCE
76 $(call if_changed,objcopy)
77 @echo ' Kernel: $@ is ready'
79 $(obj)/compressed/vmlinux: $(obj)/Image FORCE
80 $(Q)$(MAKE) $(build)=$(obj)/compressed $@
82 $(obj)/zImage: $(obj)/compressed/vmlinux FORCE
83 $(call if_changed,objcopy)
84 @echo ' Kernel: $@ is ready'
86 quiet_cmd_uimage = UIMAGE $@
87 cmd_uimage = $(CONFIG_SHELL) $(MKIMAGE) -A arm -O linux -T kernel \
88 -C none -a $(ZRELADDR) -e $(ZRELADDR) \
89 -n 'Linux-$(KERNELRELEASE)' -d $< $@
91 $(obj)/uImage: $(obj)/zImage FORCE
92 $(call if_changed,uimage)
93 @echo ' Image $@ is ready'
95 $(obj)/bootp/bootp: $(obj)/zImage initrd FORCE
96 $(Q)$(MAKE) $(build)=$(obj)/bootp $@
99 $(obj)/bootpImage: $(obj)/bootp/bootp FORCE
100 $(call if_changed,objcopy)
101 @echo ' Kernel: $@ is ready'
105 @test "$(INITRD_PHYS)" != "" || \
106 (echo This machine does not support INITRD; exit -1)
107 @test "$(INITRD)" != "" || \
108 (echo You must specify INITRD; exit -1)
110 install: $(obj)/Image
111 $(CONFIG_SHELL) $(srctree)/$(src)/install.sh $(KERNELRELEASE) \
112 $(obj)/Image System.map "$(INSTALL_PATH)"
114 zinstall: $(obj)/zImage
115 $(CONFIG_SHELL) $(srctree)/$(src)/install.sh $(KERNELRELEASE) \
116 $(obj)/zImage System.map "$(INSTALL_PATH)"
118 subdir- := bootp compressed