[PATCH] [sim,moxie] Fix DTB generation mechanism and build failure

Luis Machado luis.machado@linaro.org
Thu Apr 8 14:40:59 GMT 2021


On 4/7/21 7:31 PM, Mike Frysinger wrote:
> On 07 Apr 2021 17:39, Luis Machado via Gdb-patches wrote:
>> On 4/7/21 5:26 PM, Mike Frysinger wrote:
>>> On 07 Apr 2021 16:39, Luis Machado via Gdb-patches wrote:
>>>> I ran into a build failure with --enable-targets=all due to the fact that
>>>> the moxie sim expects to be able to use the dtc tool.  If it isn't available,
>>>> the builds fails.
>>>>
>>>> Given the device tree compiler (dtc) is not available everywhere, it seems
>>>> fair to only generate the DTB file on the spot if we have such a tool.  For
>>>> those who don't have the tool available, we can use a prebuilt version of the
>>>> DTB available in the repository.
>>>
>>> i think i asked about vendoring the tool in, but i think people were
>>> (understandably) not super keen on the idea since it's not GPL or GNU.
>>>
>>>> The DTS file hasn't changed since ~2009, so it seems pretty safe to assume
>>>> a prebuilt version is suitable to be used.
>>>
>>> and because it's quite small.  if it were much larger, i don't think we'd
>>> want to do it this way.
>>>
>>>> I also checked that the DTB file generated on an x86_64-Linux machine is the
>>>> the same as the one generated on an AArch64-Linux machine.
>>>
>>> right, by design, it should be stable no matter where it's created.
>>>
>>>> Tested by running make/make install with/without the dtc tool.
>>>
>>> i think we want to fold this under the existing maintainer logic.  check out
>>> commit 8c379db285f2ab8ad298288e86103548b90674a2 for a bit more detail.  we'd
>>> want to only update+install the version in the source tree rather than switch
>>> between the one in the srcdir & the builddir one.
>>
>> I'll take a look. Are you proposing we only use the prebuilt file from
>> the source tree instead of generating a new dtb file during the build?
>> And we should only do those things if maintainer mode is enabled?
> 
> if we're going to commit the prebuilt file to the tree, then yes, we should
> only be using that.  we have a lot of similar styles:
> * configure from configure.ac
> * Makefile.in/aclocal.m4 from Makefile.am
> * nltvals.def from common/gennltvals.py
> 
> so if maintainer mode is enabled, and dtc is available, and the dts is newer
> than the dtb, we'd update the dtb in the source repo.  anyone changing the
> dts would be responsible for this.  as you noted, this is pretty rare atm,
> so shouldn't be a big deal.
> -mike
> 

Thanks for clarifying it. I've sent v2 now. Hopefully that has the right 
logic.


More information about the Gdb-patches mailing list