2 # arch/microblaze/boot/Makefile
5 MKIMAGE
:= $(srctree
)/scripts
/mkuboot.sh
9 targets
:= linux.bin linux.bin.gz simpleImage.
%
11 OBJCOPYFLAGS
:= -O binary
13 # Where the DTS files live
14 dtstree
:= $(srctree
)/$(src
)/dts
16 # Ensure system.dtb exists
17 $(obj
)/linked_dtb.o
: $(obj
)/system.dtb
19 # Generate system.dtb from $(DTB).dtb
21 $(obj
)/system.dtb
: $(obj
)/$(DTB
).dtb
25 $(obj
)/linux.bin
: vmlinux FORCE
26 $(call if_changed
,objcopy
)
27 $(call if_changed
,uimage
)
28 @echo
'Kernel: $@ is ready' ' (#'`cat .version`')'
30 $(obj
)/linux.bin.gz
: $(obj
)/linux.bin FORCE
31 $(call if_changed
,gzip
)
32 @echo
'Kernel: $@ is ready' ' (#'`cat .version`')'
34 quiet_cmd_cp
= CP
$< $@
$2
35 cmd_cp
= cat
$< >$@
$2 ||
(rm -f
$@
&& echo false
)
37 quiet_cmd_strip
= STRIP
$@
38 cmd_strip
= $(STRIP
) -K _start
-K _end
-K __log_buf
-K _fdt_start vmlinux
-o
$@
40 quiet_cmd_uimage
= UIMAGE
$@.ub
41 cmd_uimage
= $(CONFIG_SHELL
) $(MKIMAGE
) -A microblaze
-O linux
-T kernel \
42 -C none
-n
'Linux-$(KERNELRELEASE)' \
43 -a
$(CONFIG_KERNEL_BASE_ADDR
) -e
$(CONFIG_KERNEL_BASE_ADDR
) \
46 $(obj
)/simpleImage.
%: vmlinux FORCE
47 $(call if_changed
,cp
,.unstrip
)
48 $(call if_changed
,objcopy
)
49 $(call if_changed
,uimage
)
50 $(call if_changed
,strip)
51 @echo
'Kernel: $@ is ready' ' (#'`cat .version`')'
53 # Rule to build device tree blobs
54 DTC
= $(objtree
)/scripts
/dtc
/dtc
56 # Rule to build device tree blobs
57 quiet_cmd_dtc
= DTC
$@
58 cmd_dtc
= $(DTC
) -O dtb
-o
$(obj
)/$*.dtb
-b
0 -p
1024 $(dtstree
)/$*.dts
60 $(obj
)/%.dtb
: $(dtstree
)/%.dts FORCE
61 $(call if_changed
,dtc
)
63 clean-files
+= *.dtb simpleImage.
*.unstrip linux.bin.ub