On Mon, 22 Jan 2024 11:49:59 -0500 Tom Rini <tr...@konsulko.com> wrote:
Hi Tom, > On Mon, Jan 22, 2024 at 11:45:15AM +0000, Andre Przywara wrote: > > On Wed, 10 Jan 2024 16:05:36 +0530 > > Sumit Garg <sumit.g...@linaro.org> wrote: > > > > Hi, > > > > I certainly welcome this more automatic synchronisation of the DTs, > > however have one comment about the upcoming sync process: > > > > > ... > > > However, Linux kernel DT maintainers proposed [2] for U-Boot to rather > > > use devicetree-rebasing repo [3] which is a forked copy from Linux > > > kernel for DT source files as well as bindings. It is tagged at every > > > Linux kernel major release or intermideate release candidates. So here I > > > have tried to reuse that to bring DT bingings compliance as well as a > > > standard way to maintain a regular sync of DT source files with Linux > > > kernel. > > > > > > In order to maintain devicetree files sync, U-Boot will maintains a Git > > > subtree for devicetee-rebasing repo as `dts/upstream` sub-directory. > > > U-Boot will regularly sync `dts/upstream/` subtree whenever the next > > > window > > > opens with the next available kernel major release. > > > > I hope this doesn't need to stay that restricted? Can we either sync more > > often, or at least on the kernel's -rc1, and not only on a "full" release? > > > > The reason I ask is that we have a chicken-egg problem here: without a DT > > merged into the kernel tree, no U-Boot board support can be merged. And > > without U-Boot support, we cannot boot a kernel, at least not in the > > canonical way. > > > > Since the U-Boot and kernel merge windows are not in phase, for sunxi I try > > to sync the kernel DTs either as early as possible (-rc1, sometimes even > > before, when the maintainers have merged them into their tree), or > > sometimes "out of season", if a board defconfig patch is coming up. > > > > Otherwise new board support, which typically has a very low regression risk > > for the rest of the code base, would need to be delayed until the next > > release. In the worst case the U-Boot merge windows opens one week before > > a kernel release, then new boards need to wait three months? > > Would it be to bad to bring in board X with OF_UPSTREAM=n for one U-Boot > release, and then with the next one switch to OF_UPSTREAM=y (and delete > the dts from arch/) for the next release, when we would have gotten back > in sync? Ah, I didn't look into the actual patches, but if this provision is there, that sounds surely acceptable. It might still be good to sync earlier than the .0 kernel release: if it appears in Linus' tree, it had already seen a good share of review and testing. And with the U-Boot releases being always further away than the next kernel release, we could pull fixes still in time. So we could pick the latest -rc (or .0 release, whichever is more recent) when the U-Boot merge window opens? Cheers, Andre