lkml.org 
[lkml]   [2013]   [Jan]   [28]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH v3 32/71] ARC: [DeviceTree] Basic support
Hi Vineet,

On 24/01/13 10:50, Vineet Gupta wrote:
> diff --git a/arch/arc/Makefile b/arch/arc/Makefile
> index 4d52a3b..90570f9 100644
> --- a/arch/arc/Makefile
> +++ b/arch/arc/Makefile
> @@ -83,6 +83,9 @@ head-y := arch/arc/kernel/head.o
> # See arch/arc/Kbuild for content of core part of the kernel
> core-y += arch/arc/
>
> +# w/o this dtb won't embed into kernel binary
> +core-y += arch/arc/boot/dts/
> +
> # w/o this ifneq, make ARCH=arc clean was crapping out
> ifneq ($(platform-y),)
> core-y += arch/arc/plat-$(PLATFORM)/
> @@ -101,6 +104,12 @@ bootpImage: vmlinux
> uImage: vmlinux
> $(Q)$(MAKE) $(build)=$(boot) $(boot)/$@
>
> +%.dtb %.dtb.S %.dtb.o:
> + $(Q)$(MAKE) $(build)=$(boot)/dts $(boot)/dts/$@

arm64 also depends on scripts here, presumably for a reason. I've copied
this in metag too.

> +
> +dtbs:
> + $(Q)$(MAKE) $(build)=$(boot)/dts $(boot)/dts/$@

arm64 does this like below which I think is slightly nicer than how
metag did it:

dtbs: scripts
$(Q)$(MAKE) $(build)=$(boot)/dts dtbs

> +
> archclean:
> $(Q)$(MAKE) $(clean)=$(boot)
>
> diff --git a/arch/arc/boot/dts/Makefile b/arch/arc/boot/dts/Makefile
> new file mode 100644
> index 0000000..4a972a3
> --- /dev/null
> +++ b/arch/arc/boot/dts/Makefile
> @@ -0,0 +1,14 @@
> +ifeq ($(CONFIG_OF),y)
> +
> +# Built-in dtb
> +builtindtb-y := skeleton
> +
> +ifneq ($(CONFIG_ARC_BUILTIN_DTB_NAME),"")
> + builtindtb-y := $(CONFIG_ARC_BUILTIN_DTB_NAME)
> +endif
> +
> +obj-y += $(patsubst "%",%,$(builtindtb-y)).dtb.o
> +
> +clean-files := *.dtb

You don't seem to have a rule for dtbs, but still redirect it in the
main Makefile. I suppose dtbs may want adding to your archhelp if you
use it.

arm64 also adds dtbs and $(dtb-y) to targets (at least in linux-next). I
think this makes sure that they don't get rebuilt unless they've
actually changed. I've also copied this for metag.


> --- a/arch/arc/kernel/Makefile
> +++ b/arch/arc/kernel/Makefile
> @@ -8,6 +8,8 @@
> obj-y := arcksyms.o setup.o irq.o time.o reset.o ptrace.o entry.o process.o
> obj-y += signal.o traps.o sys.o troubleshoot.o stacktrace.o clk.o
>
> +obj-$(CONFIG_OF) += devtree.o
> +

You always select CONFIG_OF, so this could be obj-y. I'm not sure this
particularly matters though.

Cheers
James



\
 
 \ /
  Last update: 2013-01-28 12:03    [W:0.287 / U:0.236 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site