Skip to content

Commit

Permalink
microblaze: use new common dtc rule
Browse files Browse the repository at this point in the history
The current rules have the .dtb files build in a different directory
from the .dts files. This patch changes microblaze to use the generic dtb
rule which builds .dtb files in the same directory as the source .dts.

This requires moving parts of arch/microblaze/boot/Makefile into newly
created arch/microblaze/boot/dts/Makefile, and updating
arch/microblaze/Makefile to call the new Makefile. linked_dtb.S is also
moved into boot/dts/ since it's used by rules that were moved.

Cc: Michal Simek <monstr@monstr.eu>
Cc: microblaze-uclinux@itee.uq.edu.au
Signed-off-by: Stephen Warren <swarren@nvidia.com>
Signed-off-by: Rob Herring <rob.herring@calxeda.com>
  • Loading branch information
Stephen Warren authored and Rob Herring committed Dec 3, 2012
1 parent 1020e29 commit 300db34
Show file tree
Hide file tree
Showing 5 changed files with 26 additions and 22 deletions.
2 changes: 1 addition & 1 deletion arch/microblaze/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -57,7 +57,7 @@ boot := arch/microblaze/boot
DTB:=$(subst simpleImage.,,$(filter simpleImage.%, $(MAKECMDGOALS)))

ifneq ($(DTB),)
core-y += $(boot)/
core-y += $(boot)/dts/
endif

# defines filename extension depending memory management type
Expand Down
19 changes: 1 addition & 18 deletions arch/microblaze/boot/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -2,21 +2,10 @@
# arch/microblaze/boot/Makefile
#

obj-y += linked_dtb.o

targets := linux.bin linux.bin.gz simpleImage.%

OBJCOPYFLAGS := -R .note -R .comment -R .note.gnu.build-id -O binary

# Ensure system.dtb exists
$(obj)/linked_dtb.o: $(obj)/system.dtb

# Generate system.dtb from $(DTB).dtb
ifneq ($(DTB),system)
$(obj)/system.dtb: $(obj)/$(DTB).dtb
$(call if_changed,cp)
endif

$(obj)/linux.bin: vmlinux FORCE
$(call if_changed,objcopy)
$(call if_changed,uimage)
Expand Down Expand Up @@ -45,10 +34,4 @@ $(obj)/simpleImage.%: vmlinux FORCE
@echo 'Kernel: $@ is ready' ' (#'`cat .version`')'


# Rule to build device tree blobs
DTC_FLAGS := -p 1024

$(obj)/%.dtb: $(src)/dts/%.dts FORCE
$(call if_changed_dep,dtc)

clean-files += *.dtb simpleImage.*.unstrip linux.bin.ub
clean-files += simpleImage.*.unstrip linux.bin.ub
22 changes: 22 additions & 0 deletions arch/microblaze/boot/dts/Makefile
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
#
# arch/microblaze/boot/Makefile
#

obj-y += linked_dtb.o

# Ensure system.dtb exists
$(obj)/linked_dtb.o: $(obj)/system.dtb

# Generate system.dtb from $(DTB).dtb
ifneq ($(DTB),system)
$(obj)/system.dtb: $(obj)/$(DTB).dtb
$(call if_changed,cp)
endif

quiet_cmd_cp = CP $< $@$2
cmd_cp = cat $< >$@$2 || (rm -f $@ && echo false)

# Rule to build device tree blobs
DTC_FLAGS := -p 1024

clean-files += *.dtb
2 changes: 2 additions & 0 deletions arch/microblaze/boot/dts/linked_dtb.S
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
.section __fdt_blob,"a"
.incbin "arch/microblaze/boot/dts/system.dtb"
3 changes: 0 additions & 3 deletions arch/microblaze/boot/linked_dtb.S

This file was deleted.

0 comments on commit 300db34

Please sign in to comment.