* [U-Boot] [PATCH] spl: unbreak CONFIG_SPL_MULTI_DTB_FIT after fixing CONFIG_OF_EMBED
@ 2018-01-10 7:02 Goldschmidt Simon
2018-01-10 8:48 ` Lokesh Vutla
0 siblings, 1 reply; 7+ messages in thread
From: Goldschmidt Simon @ 2018-01-10 7:02 UTC (permalink / raw)
To: u-boot
Commit 9bd76b80 "spl: make CONFIG_OF_EMBED pass dts through fdtgrep"
moved the fdtgrep code from scripts/Makefile.spl to dts/Makefile so
that the dtb is stripped in embedded mode, too.
This broke CONFIG_SPL_MULTI_DTB_FIT where fdtgrep is still called
from scripts/Makefile.spl to strip all dtbs in CONFIG_SPL_OF_LIST.
To fix that, cmd_fdtgrep is brought back into scripts/Makefile.spl
at the downside of having it duplicated in two makefiles.
---
scripts/Makefile.spl | 16 ++++++++++++++++
1 file changed, 16 insertions(+)
diff --git a/scripts/Makefile.spl b/scripts/Makefile.spl
index 64390e5785..72e74f14c3 100644
--- a/scripts/Makefile.spl
+++ b/scripts/Makefile.spl
@@ -239,6 +239,22 @@ $(obj)/$(SPL_BIN)-pad.bin: $(obj)/$(SPL_BIN)
@bss_size_str=$(shell $(NM) $< | awk 'BEGIN {size = 0} /__bss_size/ {size = $$1} END {print "ibase=16; " toupper(size)}' | bc); \
dd if=/dev/zero of=$@ bs=1 count=$${bss_size_str} 2>/dev/null;
+# Pass the original device tree file through fdtgrep twice. The first pass
+# removes any unwanted nodes (i.e. those which don't have the
+# 'u-boot,dm-pre-reloc' property and thus are not needed by SPL. The second
+# pass removes various unused properties from the remaining nodes.
+# The output is typically a much smaller device tree file.
+ifeq ($(CONFIG_TPL_BUILD),y)
+fdtgrep_props := -b u-boot,dm-pre-reloc -b u-boot,dm-tpl
+else
+fdtgrep_props := -b u-boot,dm-pre-reloc -b u-boot,dm-spl
+endif
+quiet_cmd_fdtgrep = FDTGREP $@
+ cmd_fdtgrep = $(objtree)/tools/fdtgrep $(fdtgrep_props) -RT $< \
+ -n /chosen -n /config -O dtb | \
+ $(objtree)/tools/fdtgrep -r -O dtb - -o $@ \
+ $(addprefix -P ,$(subst $\",,$(CONFIG_OF_SPL_REMOVE_PROPS)))
+
$(obj)/$(SPL_BIN).dtb: dts/dt-spl.dtb FORCE
$(call if_changed,copy)
--
2.12.2.windows.2
^ permalink raw reply related [flat|nested] 7+ messages in thread
* [U-Boot] [PATCH] spl: unbreak CONFIG_SPL_MULTI_DTB_FIT after fixing CONFIG_OF_EMBED
2018-01-10 7:02 Goldschmidt Simon
@ 2018-01-10 8:48 ` Lokesh Vutla
0 siblings, 0 replies; 7+ messages in thread
From: Lokesh Vutla @ 2018-01-10 8:48 UTC (permalink / raw)
To: u-boot
On Wednesday 10 January 2018 12:32 PM, Goldschmidt Simon wrote:
> Commit 9bd76b80 "spl: make CONFIG_OF_EMBED pass dts through fdtgrep"
> moved the fdtgrep code from scripts/Makefile.spl to dts/Makefile so
> that the dtb is stripped in embedded mode, too.
>
> This broke CONFIG_SPL_MULTI_DTB_FIT where fdtgrep is still called
> from scripts/Makefile.spl to strip all dtbs in CONFIG_SPL_OF_LIST.
> To fix that, cmd_fdtgrep is brought back into scripts/Makefile.spl
> at the downside of having it duplicated in two makefiles.
Missing Signed-off-by? Also a Reported-by credits would be nice :)
> ---
> scripts/Makefile.spl | 16 ++++++++++++++++
> 1 file changed, 16 insertions(+)
>
> diff --git a/scripts/Makefile.spl b/scripts/Makefile.spl
> index 64390e5785..72e74f14c3 100644
> --- a/scripts/Makefile.spl
> +++ b/scripts/Makefile.spl
> @@ -239,6 +239,22 @@ $(obj)/$(SPL_BIN)-pad.bin: $(obj)/$(SPL_BIN)
> @bss_size_str=$(shell $(NM) $< | awk 'BEGIN {size = 0} /__bss_size/ {size = $$1} END {print "ibase=16; " toupper(size)}' | bc); \
> dd if=/dev/zero of=$@ bs=1 count=$${bss_size_str} 2>/dev/null;
>
> +# Pass the original device tree file through fdtgrep twice. The first pass
> +# removes any unwanted nodes (i.e. those which don't have the
> +# 'u-boot,dm-pre-reloc' property and thus are not needed by SPL. The second
> +# pass removes various unused properties from the remaining nodes.
> +# The output is typically a much smaller device tree file.
> +ifeq ($(CONFIG_TPL_BUILD),y)
> +fdtgrep_props := -b u-boot,dm-pre-reloc -b u-boot,dm-tpl
> +else
> +fdtgrep_props := -b u-boot,dm-pre-reloc -b u-boot,dm-spl
> +endif
> +quiet_cmd_fdtgrep = FDTGREP $@
> + cmd_fdtgrep = $(objtree)/tools/fdtgrep $(fdtgrep_props) -RT $< \
> + -n /chosen -n /config -O dtb | \
> + $(objtree)/tools/fdtgrep -r -O dtb - -o $@ \
> + $(addprefix -P ,$(subst $\",,$(CONFIG_OF_SPL_REMOVE_PROPS)))
> +
hmm..we are duplicating code here. Why can't dtb build for
CONFIG_OF_EMBED be moved to scripts/Makefile.spl?
Thanks and regards,
Lokesh
^ permalink raw reply [flat|nested] 7+ messages in thread
* [U-Boot] [PATCH] spl: unbreak CONFIG_SPL_MULTI_DTB_FIT after fixing CONFIG_OF_EMBED
@ 2018-01-10 14:10 Goldschmidt Simon
2018-01-11 8:33 ` Lokesh Vutla
0 siblings, 1 reply; 7+ messages in thread
From: Goldschmidt Simon @ 2018-01-10 14:10 UTC (permalink / raw)
To: u-boot
On Wed, 10/01/18 09:48, Lokesh Vutla wrote:
> On Wednesday 10 January 2018 12:32 PM, Goldschmidt Simon wrote:
> > Commit 9bd76b80 "spl: make CONFIG_OF_EMBED pass dts through fdtgrep"
> > moved the fdtgrep code from scripts/Makefile.spl to dts/Makefile so
> > that the dtb is stripped in embedded mode, too.
> >
> > This broke CONFIG_SPL_MULTI_DTB_FIT where fdtgrep is still called from
> > scripts/Makefile.spl to strip all dtbs in CONFIG_SPL_OF_LIST.
> > To fix that, cmd_fdtgrep is brought back into scripts/Makefile.spl at
> > the downside of having it duplicated in two makefiles.
>
> Missing Signed-off-by? Also a Reported-by credits would be nice :)
Right. I'll add that in a next version, sorry.
>
> > ---
> > scripts/Makefile.spl | 16 ++++++++++++++++
> > 1 file changed, 16 insertions(+)
> >
> > diff --git a/scripts/Makefile.spl b/scripts/Makefile.spl index
> > 64390e5785..72e74f14c3 100644
> > --- a/scripts/Makefile.spl
> > +++ b/scripts/Makefile.spl
> > @@ -239,6 +239,22 @@ $(obj)/$(SPL_BIN)-pad.bin: $(obj)/$(SPL_BIN)
> > @bss_size_str=$(shell $(NM) $< | awk 'BEGIN {size = 0} /__bss_size/ {size
> = $$1} END {print "ibase=16; " toupper(size)}' | bc); \
> > dd if=/dev/zero of=$@ bs=1 count=$${bss_size_str} 2>/dev/null;
> >
> > +# Pass the original device tree file through fdtgrep twice. The first
> > +pass # removes any unwanted nodes (i.e. those which don't have the #
> > +'u-boot,dm-pre-reloc' property and thus are not needed by SPL. The
> > +second # pass removes various unused properties from the remaining nodes.
> > +# The output is typically a much smaller device tree file.
> > +ifeq ($(CONFIG_TPL_BUILD),y)
> > +fdtgrep_props := -b u-boot,dm-pre-reloc -b u-boot,dm-tpl else
> > +fdtgrep_props := -b u-boot,dm-pre-reloc -b u-boot,dm-spl endif
> > +quiet_cmd_fdtgrep = FDTGREP $@
> > + cmd_fdtgrep = $(objtree)/tools/fdtgrep $(fdtgrep_props) -RT $< \
> > + -n /chosen -n /config -O dtb | \
> > + $(objtree)/tools/fdtgrep -r -O dtb - -o $@ \
> > + $(addprefix -P ,$(subst
> $\",,$(CONFIG_OF_SPL_REMOVE_PROPS)))
> > +
>
> hmm..we are duplicating code here. Why can't dtb build for
> CONFIG_OF_EMBED be moved to scripts/Makefile.spl?
I don't like the code duplication either. Back in November, I tried
to create the fdtgrep'ed ftd from Makefile.spl but failed. Seems I'm
not a pro in makefiles... Of course I'd appreciate it if you'd find
a solution for that!
Regards,
Simon
^ permalink raw reply [flat|nested] 7+ messages in thread
* [U-Boot] [PATCH] spl: unbreak CONFIG_SPL_MULTI_DTB_FIT after fixing CONFIG_OF_EMBED
2018-01-10 14:10 [U-Boot] [PATCH] spl: unbreak CONFIG_SPL_MULTI_DTB_FIT after fixing CONFIG_OF_EMBED Goldschmidt Simon
@ 2018-01-11 8:33 ` Lokesh Vutla
2018-01-11 15:55 ` Simon Glass
0 siblings, 1 reply; 7+ messages in thread
From: Lokesh Vutla @ 2018-01-11 8:33 UTC (permalink / raw)
To: u-boot
On Wednesday 10 January 2018 07:40 PM, Goldschmidt Simon wrote:
> On Wed, 10/01/18 09:48, Lokesh Vutla wrote:
>> On Wednesday 10 January 2018 12:32 PM, Goldschmidt Simon wrote:
>>> Commit 9bd76b80 "spl: make CONFIG_OF_EMBED pass dts through fdtgrep"
>>> moved the fdtgrep code from scripts/Makefile.spl to dts/Makefile so
>>> that the dtb is stripped in embedded mode, too.
>>>
>>> This broke CONFIG_SPL_MULTI_DTB_FIT where fdtgrep is still called from
>>> scripts/Makefile.spl to strip all dtbs in CONFIG_SPL_OF_LIST.
>>> To fix that, cmd_fdtgrep is brought back into scripts/Makefile.spl at
>>> the downside of having it duplicated in two makefiles.
>>
>> Missing Signed-off-by? Also a Reported-by credits would be nice :)
>
> Right. I'll add that in a next version, sorry.
>
>>
>>> ---
>>> scripts/Makefile.spl | 16 ++++++++++++++++
>>> 1 file changed, 16 insertions(+)
>>>
>>> diff --git a/scripts/Makefile.spl b/scripts/Makefile.spl index
>>> 64390e5785..72e74f14c3 100644
>>> --- a/scripts/Makefile.spl
>>> +++ b/scripts/Makefile.spl
>>> @@ -239,6 +239,22 @@ $(obj)/$(SPL_BIN)-pad.bin: $(obj)/$(SPL_BIN)
>>> @bss_size_str=$(shell $(NM) $< | awk 'BEGIN {size = 0} /__bss_size/ {size
>> = $$1} END {print "ibase=16; " toupper(size)}' | bc); \
>>> dd if=/dev/zero of=$@ bs=1 count=$${bss_size_str} 2>/dev/null;
>>>
>>> +# Pass the original device tree file through fdtgrep twice. The first
>>> +pass # removes any unwanted nodes (i.e. those which don't have the #
>>> +'u-boot,dm-pre-reloc' property and thus are not needed by SPL. The
>>> +second # pass removes various unused properties from the remaining nodes.
>>> +# The output is typically a much smaller device tree file.
>>> +ifeq ($(CONFIG_TPL_BUILD),y)
>>> +fdtgrep_props := -b u-boot,dm-pre-reloc -b u-boot,dm-tpl else
>>> +fdtgrep_props := -b u-boot,dm-pre-reloc -b u-boot,dm-spl endif
>>> +quiet_cmd_fdtgrep = FDTGREP $@
>>> + cmd_fdtgrep = $(objtree)/tools/fdtgrep $(fdtgrep_props) -RT $< \
>>> + -n /chosen -n /config -O dtb | \
>>> + $(objtree)/tools/fdtgrep -r -O dtb - -o $@ \
>>> + $(addprefix -P ,$(subst
>> $\",,$(CONFIG_OF_SPL_REMOVE_PROPS)))
>>> +
>>
>> hmm..we are duplicating code here. Why can't dtb build for
>> CONFIG_OF_EMBED be moved to scripts/Makefile.spl?
>
> I don't like the code duplication either. Back in November, I tried
> to create the fdtgrep'ed ftd from Makefile.spl but failed. Seems I'm
> not a pro in makefiles... Of course I'd appreciate it if you'd find
> a solution for that!
Simon, Tom,
Any suggestions? Should we shift entire spl-dtb support to dts/Makefile?
Thanks and regards,
Lokesh
>
> Regards,
> Simon
>
^ permalink raw reply [flat|nested] 7+ messages in thread
* [U-Boot] [PATCH] spl: unbreak CONFIG_SPL_MULTI_DTB_FIT after fixing CONFIG_OF_EMBED
2018-01-11 8:33 ` Lokesh Vutla
@ 2018-01-11 15:55 ` Simon Glass
2018-01-11 16:20 ` Tom Rini
0 siblings, 1 reply; 7+ messages in thread
From: Simon Glass @ 2018-01-11 15:55 UTC (permalink / raw)
To: u-boot
Hi Lokesh,
On 11 January 2018 at 00:33, Lokesh Vutla <lokeshvutla@ti.com> wrote:
>
>
>
> On Wednesday 10 January 2018 07:40 PM, Goldschmidt Simon wrote:
> > On Wed, 10/01/18 09:48, Lokesh Vutla wrote:
> >> On Wednesday 10 January 2018 12:32 PM, Goldschmidt Simon wrote:
> >>> Commit 9bd76b80 "spl: make CONFIG_OF_EMBED pass dts through fdtgrep"
> >>> moved the fdtgrep code from scripts/Makefile.spl to dts/Makefile so
> >>> that the dtb is stripped in embedded mode, too.
> >>>
> >>> This broke CONFIG_SPL_MULTI_DTB_FIT where fdtgrep is still called from
> >>> scripts/Makefile.spl to strip all dtbs in CONFIG_SPL_OF_LIST.
> >>> To fix that, cmd_fdtgrep is brought back into scripts/Makefile.spl at
> >>> the downside of having it duplicated in two makefiles.
> >>
> >> Missing Signed-off-by? Also a Reported-by credits would be nice :)
> >
> > Right. I'll add that in a next version, sorry.
> >
> >>
> >>> ---
> >>> scripts/Makefile.spl | 16 ++++++++++++++++
> >>> 1 file changed, 16 insertions(+)
> >>>
> >>> diff --git a/scripts/Makefile.spl b/scripts/Makefile.spl index
> >>> 64390e5785..72e74f14c3 100644
> >>> --- a/scripts/Makefile.spl
> >>> +++ b/scripts/Makefile.spl
> >>> @@ -239,6 +239,22 @@ $(obj)/$(SPL_BIN)-pad.bin: $(obj)/$(SPL_BIN)
> >>> @bss_size_str=$(shell $(NM) $< | awk 'BEGIN {size = 0} /__bss_size/ {size
> >> = $$1} END {print "ibase=16; " toupper(size)}' | bc); \
> >>> dd if=/dev/zero of=$@ bs=1 count=$${bss_size_str} 2>/dev/null;
> >>>
> >>> +# Pass the original device tree file through fdtgrep twice. The first
> >>> +pass # removes any unwanted nodes (i.e. those which don't have the #
> >>> +'u-boot,dm-pre-reloc' property and thus are not needed by SPL. The
> >>> +second # pass removes various unused properties from the remaining nodes.
> >>> +# The output is typically a much smaller device tree file.
> >>> +ifeq ($(CONFIG_TPL_BUILD),y)
> >>> +fdtgrep_props := -b u-boot,dm-pre-reloc -b u-boot,dm-tpl else
> >>> +fdtgrep_props := -b u-boot,dm-pre-reloc -b u-boot,dm-spl endif
> >>> +quiet_cmd_fdtgrep = FDTGREP $@
> >>> + cmd_fdtgrep = $(objtree)/tools/fdtgrep $(fdtgrep_props) -RT $< \
> >>> + -n /chosen -n /config -O dtb | \
> >>> + $(objtree)/tools/fdtgrep -r -O dtb - -o $@ \
> >>> + $(addprefix -P ,$(subst
> >> $\",,$(CONFIG_OF_SPL_REMOVE_PROPS)))
> >>> +
> >>
> >> hmm..we are duplicating code here. Why can't dtb build for
> >> CONFIG_OF_EMBED be moved to scripts/Makefile.spl?
> >
> > I don't like the code duplication either. Back in November, I tried
> > to create the fdtgrep'ed ftd from Makefile.spl but failed. Seems I'm
> > not a pro in makefiles... Of course I'd appreciate it if you'd find
> > a solution for that!
>
> Simon, Tom,
> Any suggestions? Should we shift entire spl-dtb support to dts/Makefile?
We do try to keep logic out of the Makefiles in source-file subdirs,
reserving it for the main Makefile and those in scripts/.But
dts/Makefile is a bit of a special case, since there are no source
files there. I don't have a strong opinion either way.
>
> Thanks and regards,
> Lokesh
>
> >
> > Regards,
> > Simon
> >
^ permalink raw reply [flat|nested] 7+ messages in thread
* [U-Boot] [PATCH] spl: unbreak CONFIG_SPL_MULTI_DTB_FIT after fixing CONFIG_OF_EMBED
2018-01-11 15:55 ` Simon Glass
@ 2018-01-11 16:20 ` Tom Rini
2018-01-15 6:57 ` Simon Goldschmidt
0 siblings, 1 reply; 7+ messages in thread
From: Tom Rini @ 2018-01-11 16:20 UTC (permalink / raw)
To: u-boot
On Thu, Jan 11, 2018 at 07:55:03AM -0800, Simon Glass wrote:
> Hi Lokesh,
>
> On 11 January 2018 at 00:33, Lokesh Vutla <lokeshvutla@ti.com> wrote:
> >
> >
> >
> > On Wednesday 10 January 2018 07:40 PM, Goldschmidt Simon wrote:
> > > On Wed, 10/01/18 09:48, Lokesh Vutla wrote:
> > >> On Wednesday 10 January 2018 12:32 PM, Goldschmidt Simon wrote:
> > >>> Commit 9bd76b80 "spl: make CONFIG_OF_EMBED pass dts through fdtgrep"
> > >>> moved the fdtgrep code from scripts/Makefile.spl to dts/Makefile so
> > >>> that the dtb is stripped in embedded mode, too.
> > >>>
> > >>> This broke CONFIG_SPL_MULTI_DTB_FIT where fdtgrep is still called from
> > >>> scripts/Makefile.spl to strip all dtbs in CONFIG_SPL_OF_LIST.
> > >>> To fix that, cmd_fdtgrep is brought back into scripts/Makefile.spl at
> > >>> the downside of having it duplicated in two makefiles.
> > >>
> > >> Missing Signed-off-by? Also a Reported-by credits would be nice :)
> > >
> > > Right. I'll add that in a next version, sorry.
> > >
> > >>
> > >>> ---
> > >>> scripts/Makefile.spl | 16 ++++++++++++++++
> > >>> 1 file changed, 16 insertions(+)
> > >>>
> > >>> diff --git a/scripts/Makefile.spl b/scripts/Makefile.spl index
> > >>> 64390e5785..72e74f14c3 100644
> > >>> --- a/scripts/Makefile.spl
> > >>> +++ b/scripts/Makefile.spl
> > >>> @@ -239,6 +239,22 @@ $(obj)/$(SPL_BIN)-pad.bin: $(obj)/$(SPL_BIN)
> > >>> @bss_size_str=$(shell $(NM) $< | awk 'BEGIN {size = 0} /__bss_size/ {size
> > >> = $$1} END {print "ibase=16; " toupper(size)}' | bc); \
> > >>> dd if=/dev/zero of=$@ bs=1 count=$${bss_size_str} 2>/dev/null;
> > >>>
> > >>> +# Pass the original device tree file through fdtgrep twice. The first
> > >>> +pass # removes any unwanted nodes (i.e. those which don't have the #
> > >>> +'u-boot,dm-pre-reloc' property and thus are not needed by SPL. The
> > >>> +second # pass removes various unused properties from the remaining nodes.
> > >>> +# The output is typically a much smaller device tree file.
> > >>> +ifeq ($(CONFIG_TPL_BUILD),y)
> > >>> +fdtgrep_props := -b u-boot,dm-pre-reloc -b u-boot,dm-tpl else
> > >>> +fdtgrep_props := -b u-boot,dm-pre-reloc -b u-boot,dm-spl endif
> > >>> +quiet_cmd_fdtgrep = FDTGREP $@
> > >>> + cmd_fdtgrep = $(objtree)/tools/fdtgrep $(fdtgrep_props) -RT $< \
> > >>> + -n /chosen -n /config -O dtb | \
> > >>> + $(objtree)/tools/fdtgrep -r -O dtb - -o $@ \
> > >>> + $(addprefix -P ,$(subst
> > >> $\",,$(CONFIG_OF_SPL_REMOVE_PROPS)))
> > >>> +
> > >>
> > >> hmm..we are duplicating code here. Why can't dtb build for
> > >> CONFIG_OF_EMBED be moved to scripts/Makefile.spl?
> > >
> > > I don't like the code duplication either. Back in November, I tried
> > > to create the fdtgrep'ed ftd from Makefile.spl but failed. Seems I'm
> > > not a pro in makefiles... Of course I'd appreciate it if you'd find
> > > a solution for that!
> >
> > Simon, Tom,
> > Any suggestions? Should we shift entire spl-dtb support to dts/Makefile?
>
> We do try to keep logic out of the Makefiles in source-file subdirs,
> reserving it for the main Makefile and those in scripts/.But
> dts/Makefile is a bit of a special case, since there are no source
> files there. I don't have a strong opinion either way.
Welp, lets try shifting it then and see if things look cleaner overall
then, thanks!
--
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: not available
URL: <http://lists.denx.de/pipermail/u-boot/attachments/20180111/eb416d88/attachment.sig>
^ permalink raw reply [flat|nested] 7+ messages in thread
* [U-Boot] [PATCH] spl: unbreak CONFIG_SPL_MULTI_DTB_FIT after fixing CONFIG_OF_EMBED
2018-01-11 16:20 ` Tom Rini
@ 2018-01-15 6:57 ` Simon Goldschmidt
0 siblings, 0 replies; 7+ messages in thread
From: Simon Goldschmidt @ 2018-01-15 6:57 UTC (permalink / raw)
To: u-boot
On 11.01.2018 17:20, Tom Rini wrote:
> On Thu, Jan 11, 2018 at 07:55:03AM -0800, Simon Glass wrote:
>> Hi Lokesh,
>>
>> On 11 January 2018 at 00:33, Lokesh Vutla <lokeshvutla@ti.com> wrote:
>>>
>>>
>>> On Wednesday 10 January 2018 07:40 PM, Goldschmidt Simon wrote:
>>>> On Wed, 10/01/18 09:48, Lokesh Vutla wrote:
>>>>> On Wednesday 10 January 2018 12:32 PM, Goldschmidt Simon wrote:
>>>>>> Commit 9bd76b80 "spl: make CONFIG_OF_EMBED pass dts through fdtgrep"
>>>>>> moved the fdtgrep code from scripts/Makefile.spl to dts/Makefile so
>>>>>> that the dtb is stripped in embedded mode, too.
>>>>>>
>>>>>> This broke CONFIG_SPL_MULTI_DTB_FIT where fdtgrep is still called from
>>>>>> scripts/Makefile.spl to strip all dtbs in CONFIG_SPL_OF_LIST.
>>>>>> To fix that, cmd_fdtgrep is brought back into scripts/Makefile.spl at
>>>>>> the downside of having it duplicated in two makefiles.
>>>>> Missing Signed-off-by? Also a Reported-by credits would be nice :)
>>>> Right. I'll add that in a next version, sorry.
>>>>
>>>>>> ---
>>>>>> scripts/Makefile.spl | 16 ++++++++++++++++
>>>>>> 1 file changed, 16 insertions(+)
>>>>>>
>>>>>> diff --git a/scripts/Makefile.spl b/scripts/Makefile.spl index
>>>>>> 64390e5785..72e74f14c3 100644
>>>>>> --- a/scripts/Makefile.spl
>>>>>> +++ b/scripts/Makefile.spl
>>>>>> @@ -239,6 +239,22 @@ $(obj)/$(SPL_BIN)-pad.bin: $(obj)/$(SPL_BIN)
>>>>>> @bss_size_str=$(shell $(NM) $< | awk 'BEGIN {size = 0} /__bss_size/ {size
>>>>> = $$1} END {print "ibase=16; " toupper(size)}' | bc); \
>>>>>> dd if=/dev/zero of=$@ bs=1 count=$${bss_size_str} 2>/dev/null;
>>>>>>
>>>>>> +# Pass the original device tree file through fdtgrep twice. The first
>>>>>> +pass # removes any unwanted nodes (i.e. those which don't have the #
>>>>>> +'u-boot,dm-pre-reloc' property and thus are not needed by SPL. The
>>>>>> +second # pass removes various unused properties from the remaining nodes.
>>>>>> +# The output is typically a much smaller device tree file.
>>>>>> +ifeq ($(CONFIG_TPL_BUILD),y)
>>>>>> +fdtgrep_props := -b u-boot,dm-pre-reloc -b u-boot,dm-tpl else
>>>>>> +fdtgrep_props := -b u-boot,dm-pre-reloc -b u-boot,dm-spl endif
>>>>>> +quiet_cmd_fdtgrep = FDTGREP $@
>>>>>> + cmd_fdtgrep = $(objtree)/tools/fdtgrep $(fdtgrep_props) -RT $< \
>>>>>> + -n /chosen -n /config -O dtb | \
>>>>>> + $(objtree)/tools/fdtgrep -r -O dtb - -o $@ \
>>>>>> + $(addprefix -P ,$(subst
>>>>> $\",,$(CONFIG_OF_SPL_REMOVE_PROPS)))
>>>>>> +
>>>>> hmm..we are duplicating code here. Why can't dtb build for
>>>>> CONFIG_OF_EMBED be moved to scripts/Makefile.spl?
>>>> I don't like the code duplication either. Back in November, I tried
>>>> to create the fdtgrep'ed ftd from Makefile.spl but failed. Seems I'm
>>>> not a pro in makefiles... Of course I'd appreciate it if you'd find
>>>> a solution for that!
>>> Simon, Tom,
>>> Any suggestions? Should we shift entire spl-dtb support to dts/Makefile?
>> We do try to keep logic out of the Makefiles in source-file subdirs,
>> reserving it for the main Makefile and those in scripts/.But
>> dts/Makefile is a bit of a special case, since there are no source
>> files there. I don't have a strong opinion either way.
> Welp, lets try shifting it then and see if things look cleaner overall
> then, thanks!
Hmm, I don't know where that would end. I like the idea of keeping
spl-dtb support in dts/Makefile.
Would it make sense to move the definition of fdtgrep to a common place
instead? Do we have one?
Simon
^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2018-01-15 6:57 UTC | newest]
Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2018-01-10 14:10 [U-Boot] [PATCH] spl: unbreak CONFIG_SPL_MULTI_DTB_FIT after fixing CONFIG_OF_EMBED Goldschmidt Simon
2018-01-11 8:33 ` Lokesh Vutla
2018-01-11 15:55 ` Simon Glass
2018-01-11 16:20 ` Tom Rini
2018-01-15 6:57 ` Simon Goldschmidt
-- strict thread matches above, loose matches on Subject: below --
2018-01-10 7:02 Goldschmidt Simon
2018-01-10 8:48 ` Lokesh Vutla
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox