aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arc
diff options
context:
space:
mode:
authorVineet Gupta <vgupta@synopsys.com>2013-03-22 12:34:27 -0400
committerVineet Gupta <vgupta@synopsys.com>2013-04-09 02:51:15 -0400
commit104058ede714d3d84f27025a7b5467c6bb137ffd (patch)
tree2764712c62ad4a4695cbb9ab9dc93cf3acea76cc /arch/arc
parentfb0990bbf5e5eda5705f5511c261842787d1bdf6 (diff)
ARC: [build] Allow uncompressed uImage
The existing uImage target always generates gzip compressed image which drags bootup for some very slow FPGA customer boards. So introduce seperate make targets:uImage.{bin,gz} with uncompressed being default. Also tie gz generation to CONFIG_KERNEL_GZIP, which a platform can select in it's Kconfig if it wishes gz to be default. Signed-off-by: Vineet Gupta <vgupta@synopsys.com>
Diffstat (limited to 'arch/arc')
-rw-r--r--arch/arc/Makefile5
-rw-r--r--arch/arc/boot/Makefile17
2 files changed, 17 insertions, 5 deletions
diff --git a/arch/arc/Makefile b/arch/arc/Makefile
index ac14601577a6..f30e0a168343 100644
--- a/arch/arc/Makefile
+++ b/arch/arc/Makefile
@@ -102,10 +102,11 @@ boot := arch/arc/boot
102KBUILD_IMAGE := bootpImage 102KBUILD_IMAGE := bootpImage
103 103
104all: $(KBUILD_IMAGE) 104all: $(KBUILD_IMAGE)
105
106bootpImage: vmlinux 105bootpImage: vmlinux
107 106
108uImage: vmlinux 107boot_targets += uImage uImage.bin uImage.gz
108
109$(boot_targets): vmlinux
109 $(Q)$(MAKE) $(build)=$(boot) $(boot)/$@ 110 $(Q)$(MAKE) $(build)=$(boot) $(boot)/$@
110 111
111%.dtb %.dtb.S %.dtb.o: scripts 112%.dtb %.dtb.S %.dtb.o: scripts
diff --git a/arch/arc/boot/Makefile b/arch/arc/boot/Makefile
index 70416a9b452f..e597cb34c16a 100644
--- a/arch/arc/boot/Makefile
+++ b/arch/arc/boot/Makefile
@@ -11,7 +11,12 @@ LINUX_START_TEXT = $$(readelf -h vmlinux | \
11 11
12UIMAGE_LOADADDR = $(CONFIG_LINUX_LINK_BASE) 12UIMAGE_LOADADDR = $(CONFIG_LINUX_LINK_BASE)
13UIMAGE_ENTRYADDR = $(LINUX_START_TEXT) 13UIMAGE_ENTRYADDR = $(LINUX_START_TEXT)
14UIMAGE_COMPRESSION = gzip 14
15suffix-y := bin
16suffix-$(CONFIG_KERNEL_GZIP) := gz
17
18targets += uImage uImage.bin uImage.gz
19extra-y += vmlinux.bin vmlinux.bin.gz
15 20
16$(obj)/vmlinux.bin: vmlinux FORCE 21$(obj)/vmlinux.bin: vmlinux FORCE
17 $(call if_changed,objcopy) 22 $(call if_changed,objcopy)
@@ -19,6 +24,12 @@ $(obj)/vmlinux.bin: vmlinux FORCE
19$(obj)/vmlinux.bin.gz: $(obj)/vmlinux.bin FORCE 24$(obj)/vmlinux.bin.gz: $(obj)/vmlinux.bin FORCE
20 $(call if_changed,gzip) 25 $(call if_changed,gzip)
21 26
22$(obj)/uImage: $(obj)/vmlinux.bin.gz FORCE 27$(obj)/uImage.bin: $(obj)/vmlinux.bin FORCE
23 $(call if_changed,uimage) 28 $(call if_changed,uimage,none)
29
30$(obj)/uImage.gz: $(obj)/vmlinux.bin.gz FORCE
31 $(call if_changed,uimage,gzip)
24 32
33$(obj)/uImage: $(obj)/uImage.$(suffix-y)
34 @ln -sf $(notdir $<) $@
35 @echo ' Image $@ is ready'