[PATCH 1/4] of: Add support for linking device tree blobs into vmlinux
Dirk Brandewie
dirk.brandewie at gmail.com
Tue Dec 7 14:19:11 EST 2010
On 12/06/2010 11:02 AM, Sam Ravnborg wrote:
> On Mon, Dec 06, 2010 at 09:35:59AM -0800, dirk.brandewie at gmail.com wrote:
>> From: Dirk Brandewie<dirk.brandewie at gmail.com>
>> -
>> +# DTC
>> +# ---------------------------------------------------------------------------
>> +
>> +# Generate an assembly file to wrap the output of the device tree compiler
>> +$(obj)/%.dtb.S: $(obj)/%.dtb
>> + @echo '#include<asm-generic/vmlinux.lds.h>'> $@
>> + @echo '.section .dtb.init.rodata,"a"'>> $@
>> + @echo '.balign STRUCT_ALIGNMENT'>> $@
>> + @echo '.global __dtb_$(*F)_begin'>> $@
>> + @echo '__dtb_$(*F)_begin:'>> $@
>> + @echo '.incbin "$<" '>> $@
>> + @echo '__dtb_$(*F)_end:'>> $@
>> + @echo '.global __dtb_$(*F)_end'>> $@
>> + @echo '.balign STRUCT_ALIGNMENT'>> $@
>> +
>
> If we really want this rule in Makefile.lib then at least make it less verbose,
> and more secure.
I started with the change in Makefile.lib because it made sense to me, is there
a more appropriate place for these rules/commands?
> Something like this:
> quiet_dt_S_dtb_cmd = DTB $@
> dt_S_dtb_cmd = \
> ( \
> @echo '#include<asm-generic/vmlinux.lds.h>'; \
> @echo '.section .dtb.init.rodata,"a"'; \
> @echo '.balign STRUCT_ALIGNMENT'; \
> echo '.global __dtb_$(*F)_begin'; \
> echo '__dtb_$(*F)_begin:'; \
> echo '.incbin "$<" '; \
> echo '__dtb_$(*F)_end:'; \
> echo '.global __dtb_$(*F)_end'; \
> echo '.balign STRUCT_ALIGNMENT'; \
> )> $@
>
> $(obj)/%.dtb.S: $(obj)/%.dtb
> $(call cmd,dt_S_dtb)
>
I will make the changes in next version.
>
>> +DTC = $(objtree)/scripts/dtc/dtc
>
> If this is the only spot where we use DTC then drop the variable.
>
>> +
>> +quiet_cmd_dtc = DTC $@
>> + cmd_dtc = $(DTC) -O dtb -o $@ -b 0 $(DTC_FLAGS) $<
>
>
>> +ooo
>
> What is the purpose of these "ooo"? A debugging left-over?
>
Yep sorry
>
> Sam
More information about the devicetree-discuss
mailing list