[PATCH v1 0/5] Move board specific files to board directory
Troy Kisky
troy.kisky at boundarydevices.com
Fri Jan 7 19:33:34 CET 2022
On 1/7/2022 7:12 AM, Tom Rini wrote:
> On Thu, Jan 06, 2022 at 01:14:40PM -0800, Troy Kisky wrote:
>> On 12/28/2021 5:11 AM, Tom Rini wrote:
>>> On Tue, Dec 28, 2021 at 01:33:05AM -0700, Simon Glass wrote:
>>>> Hi Troy,
>>>>
>>>> On Fri, 17 Dec 2021 at 16:02, Troy Kisky <troy.kisky at boundarydevices.com> wrote:
>>>>>
>>>>> This series intends to let board specific files live in the boards
>>>>> directory. The last patch moves files for nitrogen6x.
>>>>> I have tested it with buildman
>>>>>
>>>>> ./tools/buildman/buildman boundary -b denx_master
>>>>>
>>>>> But it is likely the more scripts then just tools/genboardscfg.py would
>>>>> need to be updated.
>>>>>
>>>>> Troy Kisky (5):
>>>>> kconfig: allow defconfigs to live in board directory
>>>>> dts: allow dts files in board directory
>>>>> scripts: Makefile.autoconf: allow CONFIG_SYS_CONFIG_NAME file to live
>>>>> in board directory
>>>>> genboardcfg: allow defconfigs in board directory
>>>>> nitrogen6x: move board specific files to nitrogen6x directory
>>>>>
>>>>> arch/arm/dts/Makefile | 3 --
>>>>> board/boundary/nitrogen6x/MAINTAINERS | 13 -------
>>>>> board/boundary/nitrogen6x/Makefile | 13 +++++++
>>>>> .../nitrogen6x}/imx6dl-nitrogen6x.dts | 0
>>>>> .../boundary/nitrogen6x}/imx6q-nitrogen6x.dts | 0
>>>>> .../boundary/nitrogen6x}/imx6q-sabrelite.dts | 0
>>>>> .../nitrogen6x}/imx6qdl-nitrogen6x.dtsi | 0
>>>>> .../nitrogen6x}/imx6qdl-sabrelite.dtsi | 0
>>>>> .../nitrogen6x}/mx6qsabrelite_defconfig | 0
>>>>> .../nitrogen6x}/nitrogen6dl2g_defconfig | 0
>>>>> .../nitrogen6x}/nitrogen6dl_defconfig | 0
>>>>> .../nitrogen6x}/nitrogen6q2g_defconfig | 0
>>>>> .../boundary/nitrogen6x}/nitrogen6q_defconfig | 0
>>>>> .../nitrogen6x}/nitrogen6s1g_defconfig | 0
>>>>> .../boundary/nitrogen6x}/nitrogen6s_defconfig | 0
>>>>> .../boundary/nitrogen6x}/nitrogen6x.h | 2 +-
>>>>> dts/Makefile | 11 +++++-
>>>>> scripts/Makefile.autoconf | 9 ++++-
>>>>> scripts/Makefile.lib | 1 +
>>>>> scripts/kconfig/Makefile | 9 ++++-
>>>>> tools/genboardscfg.py | 37 ++++++++++++++++++-
>>>>> 21 files changed, 75 insertions(+), 23 deletions(-)
>>>>> rename {arch/arm/dts => board/boundary/nitrogen6x}/imx6dl-nitrogen6x.dts (100%)
>>>>> rename {arch/arm/dts => board/boundary/nitrogen6x}/imx6q-nitrogen6x.dts (100%)
>>>>> rename {arch/arm/dts => board/boundary/nitrogen6x}/imx6q-sabrelite.dts (100%)
>>>>> rename {arch/arm/dts => board/boundary/nitrogen6x}/imx6qdl-nitrogen6x.dtsi (100%)
>>>>> rename {arch/arm/dts => board/boundary/nitrogen6x}/imx6qdl-sabrelite.dtsi (100%)
>>>>> rename {configs => board/boundary/nitrogen6x}/mx6qsabrelite_defconfig (100%)
>>>>> rename {configs => board/boundary/nitrogen6x}/nitrogen6dl2g_defconfig (100%)
>>>>> rename {configs => board/boundary/nitrogen6x}/nitrogen6dl_defconfig (100%)
>>>>> rename {configs => board/boundary/nitrogen6x}/nitrogen6q2g_defconfig (100%)
>>>>> rename {configs => board/boundary/nitrogen6x}/nitrogen6q_defconfig (100%)
>>>>> rename {configs => board/boundary/nitrogen6x}/nitrogen6s1g_defconfig (100%)
>>>>> rename {configs => board/boundary/nitrogen6x}/nitrogen6s_defconfig (100%)
>>>>> rename {include/configs => board/boundary/nitrogen6x}/nitrogen6x.h (98%) I'm not about the goal.
>>>>
>>>> Can you please add a few notes about the motivation for this change?
>>>
>>> Sorry for the delayed reply here. I'm also not entirely sure this is a
>>> good idea. Moving the defconfig files? Maybe. It does make checking
>>> all configs a bit more tricky, but indeed the configs directory is
>>> unwieldy. Moving the dts files? Those should be a direct cp from the
>>> kernel, so that makes things less clear to me. Especially since it will
>>> need other common files that will still be elsewhere.
>>>
>>
>> They will still be a direct copy. Notice the 100% rename. Common files still living in the dts
>> directory is less clear. I can try to address the "piecemeal building of .dts files" if this
>> still has a chance of being accepted.
>
> So, here's my worry. Today, in an ideal world that we're not yet at, I
> could do:
> 1. cd ~/src/linux; git checkout v5.16
> 2. cd ~/src/u-boot; for DTS in arch/arm/dts/*.dts*; do \
> [ -f ~/src/linux/$DTS ] && cp ~/src/linux/$DTS $DTS; done
>
Still, a script could easily check that a dts file exists before overwriting it
and find the correct directory to put it in. A little more complicated, but not a lot.
> And now we're resynced with v5.16. That gets a lot more complex with
> board/*/*/*.dts* too. And since those files should be direct imports
> I'm not sure how them residing in board/ helps.
One thing that maybe be worth remembering, at one time, Linus was suggesting that dtb's would NOT be
a permanent part of Linux. That has probably changed, but maybe eventually, that master repo will be
vendor specific.
>
> But! I can see how having board-u-boot.dtsi exist under board/ might
> help. Or at least, having those files reside somewhere that's NOT where
> the unmodified imported dts files also live. Long term I think we need
> to move towards making it easier to import the dts files, and clearer
> that they should be "read only" other than when being resynced, than it
> is today.
>
If you guys are OK with any of the patches, let me know, and I'll submit a restricted series.
Thanks
Troy
More information about the U-Boot
mailing list