| Michal Simek | 5f8ffb5 | 2009-03-27 14:25:51 +0100 | [diff] [blame] | 1 | # |
| 2 | # arch/microblaze/boot/Makefile |
| 3 | # |
| 4 | |
| Michal Simek | 6a8dfe1 | 2009-10-14 17:38:26 +0200 | [diff] [blame] | 5 | MKIMAGE := $(srctree)/scripts/mkuboot.sh |
| 6 | |
| Michal Simek | f05131c | 2009-09-14 15:15:49 +0200 | [diff] [blame] | 7 | obj-y += linked_dtb.o |
| 8 | |
| 9 | targets := linux.bin linux.bin.gz simpleImage.% |
| Michal Simek | 5f8ffb5 | 2009-03-27 14:25:51 +0100 | [diff] [blame] | 10 | |
| Michal Simek | 6a8dfe1 | 2009-10-14 17:38:26 +0200 | [diff] [blame] | 11 | OBJCOPYFLAGS := -O binary |
| Michal Simek | 5f8ffb5 | 2009-03-27 14:25:51 +0100 | [diff] [blame] | 12 | |
| Michal Simek | f05131c | 2009-09-14 15:15:49 +0200 | [diff] [blame] | 13 | # Where the DTS files live |
| 14 | dtstree := $(srctree)/$(src)/dts |
| 15 | |
| 16 | # Ensure system.dtb exists |
| 17 | $(obj)/linked_dtb.o: $(obj)/system.dtb |
| 18 | |
| 19 | # Generate system.dtb from $(DTB).dtb |
| 20 | ifneq ($(DTB),system) |
| 21 | $(obj)/system.dtb: $(obj)/$(DTB).dtb |
| 22 | $(call if_changed,cp) |
| 23 | endif |
| 24 | |
| Michal Simek | 5f8ffb5 | 2009-03-27 14:25:51 +0100 | [diff] [blame] | 25 | $(obj)/linux.bin: vmlinux FORCE |
| Michal Simek | 5f8ffb5 | 2009-03-27 14:25:51 +0100 | [diff] [blame] | 26 | $(call if_changed,objcopy) |
| Michal Simek | 6a8dfe1 | 2009-10-14 17:38:26 +0200 | [diff] [blame] | 27 | $(call if_changed,uimage) |
| Michal Simek | 5f8ffb5 | 2009-03-27 14:25:51 +0100 | [diff] [blame] | 28 | @echo 'Kernel: $@ is ready' ' (#'`cat .version`')' |
| 29 | |
| 30 | $(obj)/linux.bin.gz: $(obj)/linux.bin FORCE |
| 31 | $(call if_changed,gzip) |
| 32 | @echo 'Kernel: $@ is ready' ' (#'`cat .version`')' |
| 33 | |
| Michal Simek | f05131c | 2009-09-14 15:15:49 +0200 | [diff] [blame] | 34 | quiet_cmd_cp = CP $< $@$2 |
| 35 | cmd_cp = cat $< >$@$2 || (rm -f $@ && echo false) |
| 36 | |
| 37 | quiet_cmd_strip = STRIP $@ |
| 38 | cmd_strip = $(STRIP) -K _start -K _end -K __log_buf -K _fdt_start vmlinux -o $@ |
| 39 | |
| Michal Simek | 6a8dfe1 | 2009-10-14 17:38:26 +0200 | [diff] [blame] | 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) \ |
| 44 | -d $@ $@.ub |
| 45 | |
| Michal Simek | f05131c | 2009-09-14 15:15:49 +0200 | [diff] [blame] | 46 | $(obj)/simpleImage.%: vmlinux FORCE |
| 47 | $(call if_changed,cp,.unstrip) |
| Michal Simek | 6a8dfe1 | 2009-10-14 17:38:26 +0200 | [diff] [blame] | 48 | $(call if_changed,objcopy) |
| 49 | $(call if_changed,uimage) |
| Michal Simek | f05131c | 2009-09-14 15:15:49 +0200 | [diff] [blame] | 50 | $(call if_changed,strip) |
| 51 | @echo 'Kernel: $@ is ready' ' (#'`cat .version`')' |
| 52 | |
| 53 | # Rule to build device tree blobs |
| 54 | DTC = $(objtree)/scripts/dtc/dtc |
| 55 | |
| 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 |
| 59 | |
| 60 | $(obj)/%.dtb: $(dtstree)/%.dts FORCE |
| 61 | $(call if_changed,dtc) |
| 62 | |
| Arun Bhanu | 8a8804f | 2010-03-17 16:06:03 +0800 | [diff] [blame] | 63 | clean-files += *.dtb simpleImage.*.unstrip linux.bin.ub |