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 11SYSTEM =$(TOPDIR)/vmlinux 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 18ifeq ($(CONFIG_CPU_26),y) 19ZRELADDR = 0x02080000 20PARAMS_PHYS = 0x0207c000 21INITRD_PHYS = 0x02180000 22endif 23 24ifeq ($(CONFIG_ARCH_RPC),y) 25ZRELADDR = 0x10008000 26PARAMS_PHYS = 0x10000100 27INITRD_PHYS = 0x18000000 28endif 29 30ifeq ($(CONFIG_ARCH_RISCSTATION),y) 31ZRELADDR = 0x10008000 32PARAMS_PHYS = 0x10000100 33INITRD_PHYS = 0x18000000 34endif 35 36ifeq ($(CONFIG_ARCH_CLPS7500),y) 37ZRELADDR = 0x10008000 38endif 39 40ifeq ($(CONFIG_ARCH_EBSA110),y) 41ZRELADDR = 0x00008000 42PARAMS_PHYS = 0x00000400 43INITRD_PHYS = 0x00800000 44endif 45 46ifeq ($(CONFIG_ARCH_SHARK),y) 47ZTEXTADDR = 0x08508000 48ZRELADDR = 0x08008000 49endif 50 51ifeq ($(CONFIG_FOOTBRIDGE),y) 52ZRELADDR = 0x00008000 53PARAMS_PHYS = 0x00000100 54INITRD_PHYS = 0x00800000 55endif 56 57ifeq ($(CONFIG_ARCH_INTEGRATOR),y) 58ZRELADDR = 0x00008000 59PARAMS_PHYS = 0x00000100 60INITRD_PHYS = 0x00800000 61endif 62 63ifeq ($(CONFIG_ARCH_AT91RM9200),y) 64ZRELADDR = 0x20008000 65endif 66 67ifeq ($(CONFIG_ARCH_MX1ADS),y) 68ZRELADDR = 0x08008000 69endif 70 71ifeq ($(CONFIG_ARCH_CAMELOT),y) 72ZRELADDR = 0x00008000 73endif 74 75ifeq ($(CONFIG_ARCH_NEXUSPCI),y) 76ZRELADDR = 0x40008000 77endif 78 79ifeq ($(CONFIG_ARCH_L7200),y) 80ZRELADDR = 0xf0008000 81endif 82 83# The standard locations for stuff on CLPS711x type processors 84ifeq ($(CONFIG_ARCH_CLPS711X),y) 85ZRELADDR = 0xc0028000 86PARAMS_PHYS = 0xc0000100 87endif 88 89# Should probably have some agreement on these... 90ifeq ($(CONFIG_ARCH_P720T),y) 91INITRD_PHYS = 0xc0400000 92endif 93ifeq ($(CONFIG_ARCH_CDB89712),y) 94INITRD_PHYS = 0x00700000 95endif 96 97ifeq ($(CONFIG_ARCH_OMAHA),y) 98ZTEXTADDR = 0x0c008000 99PARAMS_PHYS = 0x0C000100 100INITRD_PHYS = 0x0C800000 101INITRD_VIRT = 0x0C800000 102endif 103 104ifeq ($(CONFIG_ARCH_SA1100),y) 105ZRELADDR = 0xc0008000 106# No defconfig file to move this into... 107#ifeq ($(CONFIG_SA1100_YOPY),y) 108# ZTEXTADDR = 0x00080000 109# ZBSSADDR = 0xc0200000 110#endif 111ifeq ($(CONFIG_SA1111),y) 112 ZRELADDR = 0xc0208000 113endif 114endif 115 116ifeq ($(CONFIG_ARCH_ANAKIN),y) 117ZRELADDR = 0x20008000 118endif 119 120# 121# We now have a PIC decompressor implementation. Decompressors running 122# from RAM should not define ZTEXTADDR. Decompressors running directly 123# from ROM or Flash must define ZTEXTADDR (preferably via the config) 124# 125ifeq ($(CONFIG_ZBOOT_ROM),y) 126ZTEXTADDR =0x$(CONFIG_ZBOOT_ROM_TEXT) 127ZBSSADDR =0x$(CONFIG_ZBOOT_ROM_BSS) 128else 129ZTEXTADDR =0 130ZBSSADDR =ALIGN(4) 131endif 132 133export SYSTEM ZTEXTADDR ZBSSADDR ZRELADDR INITRD_PHYS PARAMS_PHYS 134 135Image: $(SYSTEM) 136 $(OBJCOPY) $(OBJCOPYFLAGS) $< $@ 137 138bzImage: zImage 139 140zImage: compressed/vmlinux 141 $(OBJCOPY) $(OBJCOPYFLAGS) $< $@ 142 143bootpImage: bootp/bootp 144 $(OBJCOPY) $(OBJCOPYFLAGS) $< $@ 145 146compressed/vmlinux: $(TOPDIR)/vmlinux FORCE 147 @$(MAKE) -C compressed vmlinux 148 149bootp/bootp: zImage initrd FORCE 150 @$(MAKE) -C bootp bootp 151 152initrd: 153 @test "$(INITRD_PHYS)" != "" || (echo This machine does not support INITRD; exit -1) 154 @test "$(INITRD)" != "" || (echo You must specify INITRD; exit -1) 155 156install: Image 157 sh ./install.sh $(VERSION).$(PATCHLEVEL).$(SUBLEVEL)$(EXTRAVERSION) Image $(TOPDIR)/System.map "$(INSTALL_PATH)" 158 159zinstall: zImage 160 sh ./install.sh $(VERSION).$(PATCHLEVEL).$(SUBLEVEL)$(EXTRAVERSION) zImage $(TOPDIR)/System.map "$(INSTALL_PATH)" 161 162clean: 163 $(RM) Image zImage bootpImage 164 @$(MAKE) -C compressed clean 165 @$(MAKE) -C bootp clean 166 167dep: 168 169FORCE: 170