X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=arch%2Farm%2Fboot%2FMakefile;h=ec9c400c7f82d171ba9ccf6e52cdb055bf1a50cb;hb=refs%2Fheads%2Fvserver;hp=c247afdd79e492b38fbfd8ec640cb1bdede56779;hpb=9bf4aaab3e101692164d49b7ca357651eb691cb6;p=linux-2.6.git diff --git a/arch/arm/boot/Makefile b/arch/arm/boot/Makefile index c247afdd7..ec9c400c7 100644 --- a/arch/arm/boot/Makefile +++ b/arch/arm/boot/Makefile @@ -1,6 +1,9 @@ # # arch/arm/boot/Makefile # +# This file is included by the global makefile so that you can add your own +# architecture-specific flags and dependencies. +# # This file is subject to the terms and conditions of the GNU General Public # License. See the file "COPYING" in the main directory of this archive # for more details. @@ -10,66 +13,38 @@ MKIMAGE := $(srctree)/scripts/mkuboot.sh -# Note: the following conditions must always be true: -# ZRELADDR == virt_to_phys(TEXTADDR) -# PARAMS_PHYS must be with 4MB of ZRELADDR -# INITRD_PHYS must be in RAM - - zreladdr-$(CONFIG_ARCH_RPC) := 0x10008000 -params_phys-$(CONFIG_ARCH_RPC) := 0x10000100 -initrd_phys-$(CONFIG_ARCH_RPC) := 0x18000000 - zreladdr-$(CONFIG_ARCH_CLPS7500) := 0x10008000 - zreladdr-$(CONFIG_ARCH_CLPS7500) := 0x10008000 - zreladdr-$(CONFIG_ARCH_EBSA110) := 0x00008000 -params_phys-$(CONFIG_ARCH_EBSA110) := 0x00000400 -initrd_phys-$(CONFIG_ARCH_EBSA110) := 0x00800000 - ztextaddr-$(CONFIG_ARCH_SHARK) := 0x08508000 - zreladdr-$(CONFIG_ARCH_SHARK) := 0x08008000 - zreladdr-$(CONFIG_FOOTBRIDGE) := 0x00008000 -params_phys-$(CONFIG_FOOTBRIDGE) := 0x00000100 -initrd_phys-$(CONFIG_FOOTBRIDGE) := 0x00800000 - zreladdr-$(CONFIG_ARCH_INTEGRATOR) := 0x00008000 -params_phys-$(CONFIG_ARCH_INTEGRATOR) := 0x00000100 -initrd_phys-$(CONFIG_ARCH_INTEGRATOR) := 0x00800000 - zreladdr-$(CONFIG_ARCH_CAMELOT) := 0x00008000 - zreladdr-$(CONFIG_ARCH_NEXUSPCI) := 0x40008000 - zreladdr-$(CONFIG_ARCH_L7200) := 0xf0008000 -# The standard locations for stuff on CLPS711x type processors - zreladdr-$(CONFIG_ARCH_CLPS711X) := 0xc0028000 -params_phys-$(CONFIG_ARCH_CLPS711X) := 0xc0000100 -# Should probably have some agreement on these... -initrd_phys-$(CONFIG_ARCH_P720T) := 0xc0400000 -initrd_phys-$(CONFIG_ARCH_CDB89712) := 0x00700000 - zreladdr-$(CONFIG_ARCH_SA1100) := 0xc0008000 -ifeq ($(CONFIG_ARCH_SA1100),y) - zreladdr-$(CONFIG_SA1111) := 0xc0208000 +ifneq ($(MACHINE),) +include $(srctree)/$(MACHINE)/Makefile.boot endif -params_phys-$(CONFIG_ARCH_SA1100) := 0xc0000100 -initrd_phys-$(CONFIG_ARCH_SA1100) := 0xc0800000 - zreladdr-$(CONFIG_ARCH_PXA) := 0xa0008000 - zreladdr-$(CONFIG_ARCH_IOP3XX) := 0xa0008000 -params_phys-$(CONFIG_ARCH_IOP3XX) := 0xa0000100 - zreladdr-$(CONFIG_ARCH_IXP4XX) := 0x00008000 -params-phys-$(CONFIG_ARCH_IXP4XX) := 0x00000100 - zreladdr-$(CONFIG_ARCH_OMAP) := 0x10008000 -params_phys-$(CONFIG_ARCH_OMAP) := 0x10000100 -initrd_phys-$(CONFIG_ARCH_OMAP) := 0x10800000 - zreladdr-$(CONFIG_ARCH_LH7A40X) := 0xc0008000 -params_phys-$(CONFIG_ARCH_LH7A40X) := 0xc0000100 -initrd_phys-$(CONFIG_ARCH_LH7A40X) := 0xc4000000 - zreladdr-$(CONFIG_ARCH_S3C2410) := 0x30008000 -params_phys-$(CONFIG_ARCH_S3C2410) := 0x30000100 - zreladdr-$(CONFIG_ARCH_VERSATILE_PB) := 0x00008000 -params_phys-$(CONFIG_ARCH_VERSATILE_PB) := 0x00000100 -initrd_phys-$(CONFIG_ARCH_VERSATILE_PB) := 0x00800000 +# Note: the following conditions must always be true: +# ZRELADDR == virt_to_phys(PAGE_OFFSET + TEXT_OFFSET) +# PARAMS_PHYS must be within 4MB of ZRELADDR +# INITRD_PHYS must be in RAM ZRELADDR := $(zreladdr-y) PARAMS_PHYS := $(params_phys-y) INITRD_PHYS := $(initrd_phys-y) export ZRELADDR INITRD_PHYS PARAMS_PHYS -targets := Image zImage bootpImage uImage +targets := Image zImage xipImage bootpImage uImage + +ifeq ($(CONFIG_XIP_KERNEL),y) + +$(obj)/xipImage: vmlinux FORCE + $(call if_changed,objcopy) + @echo ' Kernel: $@ is ready (physical address: $(CONFIG_XIP_PHYS_ADDR))' + +$(obj)/Image $(obj)/zImage: FORCE + @echo 'Kernel configured for XIP (CONFIG_XIP_KERNEL=y)' + @echo 'Only the xipImage target is available in this case' + @false + +else + +$(obj)/xipImage: FORCE + @echo 'Kernel not configured for XIP (CONFIG_XIP_KERNEL!=y)' + @false $(obj)/Image: vmlinux FORCE $(call if_changed,objcopy) @@ -82,6 +57,8 @@ $(obj)/zImage: $(obj)/compressed/vmlinux FORCE $(call if_changed,objcopy) @echo ' Kernel: $@ is ready' +endif + quiet_cmd_uimage = UIMAGE $@ cmd_uimage = $(CONFIG_SHELL) $(MKIMAGE) -A arm -O linux -T kernel \ -C none -a $(ZRELADDR) -e $(ZRELADDR) \ @@ -99,7 +76,7 @@ $(obj)/bootpImage: $(obj)/bootp/bootp FORCE $(call if_changed,objcopy) @echo ' Kernel: $@ is ready' -.PHONY: initrd FORCE +PHONY += initrd FORCE initrd: @test "$(INITRD_PHYS)" != "" || \ (echo This machine does not support INITRD; exit -1)