Commit | Line | Data |
---|---|---|
1da177e4 LT |
1 | # |
2 | # arch/sh/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) 1999 Stuart Menefy | |
9 | # | |
10 | ||
cf00e204 PM |
11 | MKIMAGE := $(srctree)/scripts/mkuboot.sh |
12 | ||
13 | # | |
14 | # Assign safe dummy values if these variables are not defined, | |
15 | # in order to suppress error message. | |
16 | # | |
17 | CONFIG_PAGE_OFFSET ?= 0x80000000 | |
18 | CONFIG_MEMORY_START ?= 0x0c000000 | |
19 | CONFIG_BOOT_LINK_OFFSET ?= 0x00800000 | |
20 | CONFIG_ZERO_PAGE_OFFSET ?= 0x00001000 | |
d27e0854 | 21 | CONFIG_ENTRY_OFFSET ?= 0x00001000 |
cf00e204 | 22 | |
9e24c7e2 | 23 | suffix-y := bin |
ef9b542f PM |
24 | suffix-$(CONFIG_KERNEL_GZIP) := gz |
25 | suffix-$(CONFIG_KERNEL_BZIP2) := bz2 | |
26 | suffix-$(CONFIG_KERNEL_LZMA) := lzma | |
27 | ||
9e24c7e2 | 28 | targets := zImage vmlinux.srec romImage uImage uImage.srec uImage.gz uImage.bz2 uImage.lzma uImage.bin |
ef9b542f | 29 | extra-y += vmlinux.bin vmlinux.bin.gz vmlinux.bin.bz2 vmlinux.bin.lzma |
3c928320 | 30 | subdir- := compressed romimage |
1da177e4 LT |
31 | |
32 | $(obj)/zImage: $(obj)/compressed/vmlinux FORCE | |
33 | $(call if_changed,objcopy) | |
cf00e204 | 34 | @echo ' Kernel: $@ is ready' |
1da177e4 LT |
35 | |
36 | $(obj)/compressed/vmlinux: FORCE | |
37 | $(Q)$(MAKE) $(build)=$(obj)/compressed $@ | |
38 | ||
3c928320 MD |
39 | $(obj)/romImage: $(obj)/romimage/vmlinux FORCE |
40 | $(call if_changed,objcopy) | |
41 | @echo ' Kernel: $@ is ready' | |
42 | ||
43 | $(obj)/romimage/vmlinux: $(obj)/zImage FORCE | |
44 | $(Q)$(MAKE) $(build)=$(obj)/romimage $@ | |
45 | ||
2f47f447 YS |
46 | KERNEL_MEMORY := 0x00000000 |
47 | ifeq ($(CONFIG_PMB_FIXED),y) | |
48 | KERNEL_MEMORY := $(shell /bin/bash -c 'printf "0x%08x" \ | |
49 | $$[$(CONFIG_MEMORY_START) & 0x1fffffff]') | |
50 | endif | |
51 | ifeq ($(CONFIG_29BIT),y) | |
52 | KERNEL_MEMORY := $(shell /bin/bash -c 'printf "0x%08x" \ | |
53 | $$[$(CONFIG_MEMORY_START)]') | |
54 | endif | |
55 | ||
66b5bf42 | 56 | KERNEL_LOAD := $(shell /bin/bash -c 'printf "0x%08x" \ |
1f25756a | 57 | $$[$(CONFIG_PAGE_OFFSET) + \ |
2f47f447 | 58 | $(KERNEL_MEMORY) + \ |
453ec9c1 TB |
59 | $(CONFIG_ZERO_PAGE_OFFSET)]') |
60 | ||
66b5bf42 | 61 | KERNEL_ENTRY := $(shell /bin/bash -c 'printf "0x%08x" \ |
6fc5153a | 62 | $$[$(CONFIG_PAGE_OFFSET) + \ |
2f47f447 | 63 | $(KERNEL_MEMORY) + \ |
82cb1f6f | 64 | $(CONFIG_ZERO_PAGE_OFFSET) + $(CONFIG_ENTRY_OFFSET)]') |
cf00e204 PM |
65 | |
66 | quiet_cmd_uimage = UIMAGE $@ | |
67 | cmd_uimage = $(CONFIG_SHELL) $(MKIMAGE) -A sh -O linux -T kernel \ | |
ef9b542f | 68 | -C $(2) -a $(KERNEL_LOAD) -e $(KERNEL_ENTRY) \ |
cf00e204 PM |
69 | -n 'Linux-$(KERNELRELEASE)' -d $< $@ |
70 | ||
453ec9c1 TB |
71 | $(obj)/vmlinux.bin: vmlinux FORCE |
72 | $(call if_changed,objcopy) | |
73 | ||
74 | $(obj)/vmlinux.bin.gz: $(obj)/vmlinux.bin FORCE | |
75 | $(call if_changed,gzip) | |
76 | ||
ef9b542f PM |
77 | $(obj)/vmlinux.bin.bz2: $(obj)/vmlinux.bin FORCE |
78 | $(call if_changed,bzip2) | |
79 | ||
80 | $(obj)/vmlinux.bin.lzma: $(obj)/vmlinux.bin FORCE | |
81 | $(call if_changed,lzma) | |
82 | ||
83 | $(obj)/uImage.bz2: $(obj)/vmlinux.bin.bz2 | |
84 | $(call if_changed,uimage,bzip2) | |
85 | ||
86 | $(obj)/uImage.gz: $(obj)/vmlinux.bin.gz | |
87 | $(call if_changed,uimage,gzip) | |
88 | ||
89 | $(obj)/uImage.lzma: $(obj)/vmlinux.bin.lzma | |
90 | $(call if_changed,uimage,lzma) | |
91 | ||
9e24c7e2 MD |
92 | $(obj)/uImage.bin: $(obj)/vmlinux.bin |
93 | $(call if_changed,uimage,none) | |
94 | ||
cf00e204 PM |
95 | OBJCOPYFLAGS_vmlinux.srec := -I binary -O srec |
96 | $(obj)/vmlinux.srec: $(obj)/compressed/vmlinux | |
97 | $(call if_changed,objcopy) | |
98 | ||
99 | OBJCOPYFLAGS_uImage.srec := -I binary -O srec | |
100 | $(obj)/uImage.srec: $(obj)/uImage | |
101 | $(call if_changed,objcopy) | |
102 | ||
ef9b542f PM |
103 | $(obj)/uImage: $(obj)/uImage.$(suffix-y) |
104 | @ln -sf $(notdir $<) $@ | |
105 | @echo ' Image $@ is ready' | |
106 | ||
107 | export CONFIG_PAGE_OFFSET CONFIG_MEMORY_START CONFIG_BOOT_LINK_OFFSET \ | |
108 | CONFIG_ZERO_PAGE_OFFSET CONFIG_ENTRY_OFFSET KERNEL_MEMORY suffix-y |