linux-arm-kernel.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v2] arm/dt: Add a make rule to build dtb for enabled boards
@ 2011-04-04 15:01 Shawn Guo
  2011-04-05  4:48 ` Grant Likely
  0 siblings, 1 reply; 4+ messages in thread
From: Shawn Guo @ 2011-04-04 15:01 UTC (permalink / raw)
  To: linux-arm-kernel

With 'make ARCH=arm dtb', it builds Device Tree Blobs for those boards
enabled by build CONFIG.

Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
---
It's based on commit fe8e6d0b0e601ca0a63fe768d4b812d5a45a9da7
"arm/dt: Add dtb make rule" from Rob Herring.  And it works against
Linaro kernel tree.  But it needs to go through mainline review
before it gets applied.

Changes since v1:
* Take suggestion from Rob Herring to move .dts dection into machine
  sepcific Makefile.boot, so that arch/arm/boot/Makefile can be as
  clean as it is.

 arch/arm/Makefile                     |    3 +++
 arch/arm/boot/Makefile                |    2 ++
 arch/arm/mach-exynos4/Makefile.boot   |    2 ++
 arch/arm/mach-mx5/Makefile.boot       |    5 +++++
 arch/arm/mach-omap2/Makefile.boot     |    4 ++++
 arch/arm/mach-tegra/Makefile.boot     |    2 ++
 arch/arm/mach-versatile/Makefile.boot |    2 ++
 7 files changed, 20 insertions(+), 0 deletions(-)

diff --git a/arch/arm/Makefile b/arch/arm/Makefile
index d51ab6c..7fd2af9 100644
--- a/arch/arm/Makefile
+++ b/arch/arm/Makefile
@@ -292,6 +292,9 @@ zinstall uinstall install: vmlinux
 %.dtb:
 	$(Q)$(MAKE) $(build)=$(boot) MACHINE=$(MACHINE) $(boot)/$@
 
+dtb:
+	$(Q)$(MAKE) $(build)=$(boot) MACHINE=$(MACHINE) $(boot)/$@
+
 # We use MRPROPER_FILES and CLEAN_FILES now
 archclean:
 	$(Q)$(MAKE) $(clean)=$(boot)
diff --git a/arch/arm/boot/Makefile b/arch/arm/boot/Makefile
index 08fc37f..ce39850 100644
--- a/arch/arm/boot/Makefile
+++ b/arch/arm/boot/Makefile
@@ -63,6 +63,8 @@ endif
 $(obj)/%.dtb: $(src)/dts/%.dts
 	$(call cmd,dtc)
 
+$(obj)/dtb: $(addprefix $(obj)/, $(dtb-y))
+
 quiet_cmd_uimage = UIMAGE  $@
       cmd_uimage = $(CONFIG_SHELL) $(MKIMAGE) -A arm -O linux -T kernel \
 		   -C none -a $(LOADADDR) -e $(STARTADDR) \
diff --git a/arch/arm/mach-exynos4/Makefile.boot b/arch/arm/mach-exynos4/Makefile.boot
index d65956f..fcee6b5 100644
--- a/arch/arm/mach-exynos4/Makefile.boot
+++ b/arch/arm/mach-exynos4/Makefile.boot
@@ -1,2 +1,4 @@
    zreladdr-y	:= 0x40008000
 params_phys-y	:= 0x40000100
+
+dtb-$(CONFIG_MACH_SMDKV310) += exynos4-smdkv310.dtb
diff --git a/arch/arm/mach-mx5/Makefile.boot b/arch/arm/mach-mx5/Makefile.boot
index e928be1..4111462 100644
--- a/arch/arm/mach-mx5/Makefile.boot
+++ b/arch/arm/mach-mx5/Makefile.boot
@@ -7,3 +7,8 @@ initrd_phys-$(CONFIG_ARCH_MX51)	:= 0x90800000
    zreladdr-$(CONFIG_ARCH_MX53)	:= 0x70008000
 params_phys-$(CONFIG_ARCH_MX53)	:= 0x70000100
 initrd_phys-$(CONFIG_ARCH_MX53)	:= 0x70800000
+
+dtb-$(CONFIG_MACH_MX51_BABBAGE) += mx51-babbage.dtb
+dtb-$(CONFIG_MACH_MX51_EFIKAMX) += genesi-efikamx.dtb
+dtb-$(CONFIG_MACH_MX51_EFIKASB) += genesi-efikasb.dtb
+dtb-$(CONFIG_MACH_MX53_LOCO) += mx53-loco.dtb
diff --git a/arch/arm/mach-omap2/Makefile.boot b/arch/arm/mach-omap2/Makefile.boot
index 565aff7..0f54901 100644
--- a/arch/arm/mach-omap2/Makefile.boot
+++ b/arch/arm/mach-omap2/Makefile.boot
@@ -1,3 +1,7 @@
   zreladdr-y		:= 0x80008000
 params_phys-y		:= 0x80000100
 initrd_phys-y		:= 0x80800000
+
+dtb-$(CONFIG_MACH_OMAP3_BEAGLE) += omap3-beagle.dtb
+dtb-$(CONFIG_MACH_OMAP4_PANDA) += omap4-panda.dtb
+dtb-$(CONFIG_MACH_OVERO) += omap3-overo.dtb
diff --git a/arch/arm/mach-tegra/Makefile.boot b/arch/arm/mach-tegra/Makefile.boot
index db52d61..c98addf 100644
--- a/arch/arm/mach-tegra/Makefile.boot
+++ b/arch/arm/mach-tegra/Makefile.boot
@@ -1,3 +1,5 @@
 zreladdr-$(CONFIG_ARCH_TEGRA_2x_SOC)	:= 0x00008000
 params_phys-$(CONFIG_ARCH_TEGRA_2x_SOC)	:= 0x00000100
 initrd_phys-$(CONFIG_ARCH_TEGRA_2x_SOC)	:= 0x00800000
+
+dtb-$(CONFIG_MACH_HARMONY) += tegra-harmony.dtb
diff --git a/arch/arm/mach-versatile/Makefile.boot b/arch/arm/mach-versatile/Makefile.boot
index c7e75ac..e2227d3 100644
--- a/arch/arm/mach-versatile/Makefile.boot
+++ b/arch/arm/mach-versatile/Makefile.boot
@@ -2,3 +2,5 @@
 params_phys-y	:= 0x00000100
 initrd_phys-y	:= 0x00800000
 
+dtb-$(CONFIG_ARCH_VERSATILE_PB) += versatile-pb.dtb
+dtb-$(CONFIG_MACH_VERSATILE_AB) += versatile-ab.dtb
-- 
1.7.1

^ permalink raw reply related	[flat|nested] 4+ messages in thread

* [PATCH v2] arm/dt: Add a make rule to build dtb for enabled boards
  2011-04-04 15:01 [PATCH v2] arm/dt: Add a make rule to build dtb for enabled boards Shawn Guo
@ 2011-04-05  4:48 ` Grant Likely
  2011-04-05  7:09   ` Shawn Guo
  0 siblings, 1 reply; 4+ messages in thread
From: Grant Likely @ 2011-04-05  4:48 UTC (permalink / raw)
  To: linux-arm-kernel

On Mon, Apr 04, 2011 at 11:01:47PM +0800, Shawn Guo wrote:
> With 'make ARCH=arm dtb', it builds Device Tree Blobs for those boards
> enabled by build CONFIG.
> 
> Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
> ---
> It's based on commit fe8e6d0b0e601ca0a63fe768d4b812d5a45a9da7
> "arm/dt: Add dtb make rule" from Rob Herring.  And it works against
> Linaro kernel tree.  But it needs to go through mainline review
> before it gets applied.
> 
> Changes since v1:
> * Take suggestion from Rob Herring to move .dts dection into machine
>   sepcific Makefile.boot, so that arch/arm/boot/Makefile can be as
>   clean as it is.

Looks good, some minor comments below, but I've picked it up and asked
Nicolas to merge it.

Cheers,
g.

> 
>  arch/arm/Makefile                     |    3 +++
>  arch/arm/boot/Makefile                |    2 ++
>  arch/arm/mach-exynos4/Makefile.boot   |    2 ++
>  arch/arm/mach-mx5/Makefile.boot       |    5 +++++
>  arch/arm/mach-omap2/Makefile.boot     |    4 ++++
>  arch/arm/mach-tegra/Makefile.boot     |    2 ++
>  arch/arm/mach-versatile/Makefile.boot |    2 ++
>  7 files changed, 20 insertions(+), 0 deletions(-)
> 
> diff --git a/arch/arm/Makefile b/arch/arm/Makefile
> index d51ab6c..7fd2af9 100644
> --- a/arch/arm/Makefile
> +++ b/arch/arm/Makefile
> @@ -292,6 +292,9 @@ zinstall uinstall install: vmlinux
>  %.dtb:
>  	$(Q)$(MAKE) $(build)=$(boot) MACHINE=$(MACHINE) $(boot)/$@
>  
> +dtb:
> +	$(Q)$(MAKE) $(build)=$(boot) MACHINE=$(MACHINE) $(boot)/$@
> +

Since the target is the same, I've merged this rule with the %.dtb
rule.  I also renamed the target 'dtbs' because it will build more
than one .dtb file.

>  # We use MRPROPER_FILES and CLEAN_FILES now
>  archclean:
>  	$(Q)$(MAKE) $(clean)=$(boot)
> diff --git a/arch/arm/boot/Makefile b/arch/arm/boot/Makefile
> index 08fc37f..ce39850 100644
> --- a/arch/arm/boot/Makefile
> +++ b/arch/arm/boot/Makefile
> @@ -63,6 +63,8 @@ endif
>  $(obj)/%.dtb: $(src)/dts/%.dts
>  	$(call cmd,dtc)
>  
> +$(obj)/dtb: $(addprefix $(obj)/, $(dtb-y))
> +
>  quiet_cmd_uimage = UIMAGE  $@
>        cmd_uimage = $(CONFIG_SHELL) $(MKIMAGE) -A arm -O linux -T kernel \
>  		   -C none -a $(LOADADDR) -e $(STARTADDR) \
> diff --git a/arch/arm/mach-exynos4/Makefile.boot b/arch/arm/mach-exynos4/Makefile.boot
> index d65956f..fcee6b5 100644
> --- a/arch/arm/mach-exynos4/Makefile.boot
> +++ b/arch/arm/mach-exynos4/Makefile.boot
> @@ -1,2 +1,4 @@
>     zreladdr-y	:= 0x40008000
>  params_phys-y	:= 0x40000100
> +
> +dtb-$(CONFIG_MACH_SMDKV310) += exynos4-smdkv310.dtb
> diff --git a/arch/arm/mach-mx5/Makefile.boot b/arch/arm/mach-mx5/Makefile.boot
> index e928be1..4111462 100644
> --- a/arch/arm/mach-mx5/Makefile.boot
> +++ b/arch/arm/mach-mx5/Makefile.boot
> @@ -7,3 +7,8 @@ initrd_phys-$(CONFIG_ARCH_MX51)	:= 0x90800000
>     zreladdr-$(CONFIG_ARCH_MX53)	:= 0x70008000
>  params_phys-$(CONFIG_ARCH_MX53)	:= 0x70000100
>  initrd_phys-$(CONFIG_ARCH_MX53)	:= 0x70800000
> +
> +dtb-$(CONFIG_MACH_MX51_BABBAGE) += mx51-babbage.dtb
> +dtb-$(CONFIG_MACH_MX51_EFIKAMX) += genesi-efikamx.dtb
> +dtb-$(CONFIG_MACH_MX51_EFIKASB) += genesi-efikasb.dtb
> +dtb-$(CONFIG_MACH_MX53_LOCO) += mx53-loco.dtb
> diff --git a/arch/arm/mach-omap2/Makefile.boot b/arch/arm/mach-omap2/Makefile.boot
> index 565aff7..0f54901 100644
> --- a/arch/arm/mach-omap2/Makefile.boot
> +++ b/arch/arm/mach-omap2/Makefile.boot
> @@ -1,3 +1,7 @@
>    zreladdr-y		:= 0x80008000
>  params_phys-y		:= 0x80000100
>  initrd_phys-y		:= 0x80800000
> +
> +dtb-$(CONFIG_MACH_OMAP3_BEAGLE) += omap3-beagle.dtb
> +dtb-$(CONFIG_MACH_OMAP4_PANDA) += omap4-panda.dtb
> +dtb-$(CONFIG_MACH_OVERO) += omap3-overo.dtb
> diff --git a/arch/arm/mach-tegra/Makefile.boot b/arch/arm/mach-tegra/Makefile.boot
> index db52d61..c98addf 100644
> --- a/arch/arm/mach-tegra/Makefile.boot
> +++ b/arch/arm/mach-tegra/Makefile.boot
> @@ -1,3 +1,5 @@
>  zreladdr-$(CONFIG_ARCH_TEGRA_2x_SOC)	:= 0x00008000
>  params_phys-$(CONFIG_ARCH_TEGRA_2x_SOC)	:= 0x00000100
>  initrd_phys-$(CONFIG_ARCH_TEGRA_2x_SOC)	:= 0x00800000
> +
> +dtb-$(CONFIG_MACH_HARMONY) += tegra-harmony.dtb
> diff --git a/arch/arm/mach-versatile/Makefile.boot b/arch/arm/mach-versatile/Makefile.boot
> index c7e75ac..e2227d3 100644
> --- a/arch/arm/mach-versatile/Makefile.boot
> +++ b/arch/arm/mach-versatile/Makefile.boot
> @@ -2,3 +2,5 @@
>  params_phys-y	:= 0x00000100
>  initrd_phys-y	:= 0x00800000
>  
> +dtb-$(CONFIG_ARCH_VERSATILE_PB) += versatile-pb.dtb
> +dtb-$(CONFIG_MACH_VERSATILE_AB) += versatile-ab.dtb
> -- 
> 1.7.1
> 
> _______________________________________________
> devicetree-discuss mailing list
> devicetree-discuss at lists.ozlabs.org
> https://lists.ozlabs.org/listinfo/devicetree-discuss

^ permalink raw reply	[flat|nested] 4+ messages in thread

* [PATCH v2] arm/dt: Add a make rule to build dtb for enabled boards
  2011-04-05  4:48 ` Grant Likely
@ 2011-04-05  7:09   ` Shawn Guo
  2011-04-05 14:50     ` Grant Likely
  0 siblings, 1 reply; 4+ messages in thread
From: Shawn Guo @ 2011-04-05  7:09 UTC (permalink / raw)
  To: linux-arm-kernel

On Mon, Apr 04, 2011 at 10:48:27PM -0600, Grant Likely wrote:
> On Mon, Apr 04, 2011 at 11:01:47PM +0800, Shawn Guo wrote:
> > With 'make ARCH=arm dtb', it builds Device Tree Blobs for those boards
> > enabled by build CONFIG.
> > 
> > Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
> > ---
> > It's based on commit fe8e6d0b0e601ca0a63fe768d4b812d5a45a9da7
> > "arm/dt: Add dtb make rule" from Rob Herring.  And it works against
> > Linaro kernel tree.  But it needs to go through mainline review
> > before it gets applied.
> > 
> > Changes since v1:
> > * Take suggestion from Rob Herring to move .dts dection into machine
> >   sepcific Makefile.boot, so that arch/arm/boot/Makefile can be as
> >   clean as it is.
> 
> Looks good, some minor comments below, but I've picked it up and asked
> Nicolas to merge it.
> 
> Cheers,
> g.
> 
> > 
> >  arch/arm/Makefile                     |    3 +++
> >  arch/arm/boot/Makefile                |    2 ++
> >  arch/arm/mach-exynos4/Makefile.boot   |    2 ++
> >  arch/arm/mach-mx5/Makefile.boot       |    5 +++++
> >  arch/arm/mach-omap2/Makefile.boot     |    4 ++++
> >  arch/arm/mach-tegra/Makefile.boot     |    2 ++
> >  arch/arm/mach-versatile/Makefile.boot |    2 ++
> >  7 files changed, 20 insertions(+), 0 deletions(-)
> > 
> > diff --git a/arch/arm/Makefile b/arch/arm/Makefile
> > index d51ab6c..7fd2af9 100644
> > --- a/arch/arm/Makefile
> > +++ b/arch/arm/Makefile
> > @@ -292,6 +292,9 @@ zinstall uinstall install: vmlinux
> >  %.dtb:
> >  	$(Q)$(MAKE) $(build)=$(boot) MACHINE=$(MACHINE) $(boot)/$@
> >  
> > +dtb:
> > +	$(Q)$(MAKE) $(build)=$(boot) MACHINE=$(MACHINE) $(boot)/$@
> > +
> 
> Since the target is the same, I've merged this rule with the %.dtb
> rule.  I also renamed the target 'dtbs' because it will build more
> than one .dtb file.
> 
I started with 'dtbs' as target name, and later changed it to 'dtb'
to align with $(dtb-y).  And 'dtbs' looks truly fine for me, but you
may want to change commit message accordingly, as there is
'make ARCH=arm dtb' in it.

-- 
Regards,
Shawn

^ permalink raw reply	[flat|nested] 4+ messages in thread

* [PATCH v2] arm/dt: Add a make rule to build dtb for enabled boards
  2011-04-05  7:09   ` Shawn Guo
@ 2011-04-05 14:50     ` Grant Likely
  0 siblings, 0 replies; 4+ messages in thread
From: Grant Likely @ 2011-04-05 14:50 UTC (permalink / raw)
  To: linux-arm-kernel

On Tue, Apr 05, 2011 at 03:09:05PM +0800, Shawn Guo wrote:
> On Mon, Apr 04, 2011 at 10:48:27PM -0600, Grant Likely wrote:
> > On Mon, Apr 04, 2011 at 11:01:47PM +0800, Shawn Guo wrote:
> > > With 'make ARCH=arm dtb', it builds Device Tree Blobs for those boards
> > > enabled by build CONFIG.
> > > 
> > > Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
> > > ---
> > > It's based on commit fe8e6d0b0e601ca0a63fe768d4b812d5a45a9da7
> > > "arm/dt: Add dtb make rule" from Rob Herring.  And it works against
> > > Linaro kernel tree.  But it needs to go through mainline review
> > > before it gets applied.
> > > 
> > > Changes since v1:
> > > * Take suggestion from Rob Herring to move .dts dection into machine
> > >   sepcific Makefile.boot, so that arch/arm/boot/Makefile can be as
> > >   clean as it is.
> > 
> > Looks good, some minor comments below, but I've picked it up and asked
> > Nicolas to merge it.
> > 
> > Cheers,
> > g.
> > 
> > > 
> > >  arch/arm/Makefile                     |    3 +++
> > >  arch/arm/boot/Makefile                |    2 ++
> > >  arch/arm/mach-exynos4/Makefile.boot   |    2 ++
> > >  arch/arm/mach-mx5/Makefile.boot       |    5 +++++
> > >  arch/arm/mach-omap2/Makefile.boot     |    4 ++++
> > >  arch/arm/mach-tegra/Makefile.boot     |    2 ++
> > >  arch/arm/mach-versatile/Makefile.boot |    2 ++
> > >  7 files changed, 20 insertions(+), 0 deletions(-)
> > > 
> > > diff --git a/arch/arm/Makefile b/arch/arm/Makefile
> > > index d51ab6c..7fd2af9 100644
> > > --- a/arch/arm/Makefile
> > > +++ b/arch/arm/Makefile
> > > @@ -292,6 +292,9 @@ zinstall uinstall install: vmlinux
> > >  %.dtb:
> > >  	$(Q)$(MAKE) $(build)=$(boot) MACHINE=$(MACHINE) $(boot)/$@
> > >  
> > > +dtb:
> > > +	$(Q)$(MAKE) $(build)=$(boot) MACHINE=$(MACHINE) $(boot)/$@
> > > +
> > 
> > Since the target is the same, I've merged this rule with the %.dtb
> > rule.  I also renamed the target 'dtbs' because it will build more
> > than one .dtb file.
> > 
> I started with 'dtbs' as target name, and later changed it to 'dtb'
> to align with $(dtb-y).  And 'dtbs' looks truly fine for me, but you
> may want to change commit message accordingly, as there is
> 'make ARCH=arm dtb' in it.

Thanks, fixed in my devicetree/test tree and also added something to
the help text.

g.

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2011-04-05 14:50 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2011-04-04 15:01 [PATCH v2] arm/dt: Add a make rule to build dtb for enabled boards Shawn Guo
2011-04-05  4:48 ` Grant Likely
2011-04-05  7:09   ` Shawn Guo
2011-04-05 14:50     ` Grant Likely

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).