Device-tree node renames break barebox/kernel compatibility...

Sascha Hauer s.hauer at pengutronix.de
Tue Jun 12 23:42:30 PDT 2018


On Tue, Jun 12, 2018 at 03:46:06PM +0200, David Jander wrote:
> On Tue, 12 Jun 2018 14:47:38 +0200
> Sascha Hauer <s.hauer at pengutronix.de> wrote:
> 
> > Hi David,
> > 
> > On Tue, Jun 12, 2018 at 02:23:08PM +0200, David Jander wrote:
> > > 
> > > Hi Sascha,
> > > 
> > > I know this is old already, and I was surprised that I couldn't find any
> > > complaints about this yet, but I recently came across this patch in the kernel:
> > > 
> > > https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/patch/?id=df5cc9d0b42d15fa33b30440cca7a11ca7ba35a4
> > > 
> > > ...which was adopted in barebox as this:
> > > 
> > > https://git.pengutronix.de/cgit/barebox/patch/dts/src/arm/imx6qdl.dtsi?id=2e9cce8fb1f577088e2b20ae2f461130e13ad190
> > > 
> > > As I don't know the exact reason as to why this was necessary, or why this is
> > > an issue at all, I just wanted to point out the fact that this leads to some
> > > breakage in barebox new and old.  
> > 
> > This issue is known and has led to
> > https://www.mail-archive.com/barebox@lists.infradead.org/msg25189.html
> 
> Ah, thanks for the pointer. I had searched through the list archive since
> september-2017 and did not find this... need new glasses anyway.
> 
> > > 
> > > The specific problem I observed is here:
> > > https://git.pengutronix.de/cgit/barebox/tree/net/eth.c#n299  
> > 
> > of_get_reproducible_name()/of_find_node_by_reproducible_name() is used for
> > fixing up mtd partitions and state nodes, but not yet for the ethernet
> > devices because nobody noticed.
> > 
> > To fix you would have to get a reproducible name of the ethernet device
> > node from the barebox device tree using of_find_node_by_reproducible_name()
> > and then use of_find_node_by_reproducible_name() on the kernel device
> > tree.
> 
> Ok, this makes sense. My only grief is that we are still left with a forced
> bootloader update before being able to move to kernel 4.15+, for a reason
> which to me doesn't sound really worth it.

You can still revert the offending patch on your Kernel device trees.

> Granted, the leading zero's are a
> bit ugly and probably never should have made it mainline, but I don't
> understand why the DT compiler should suddenly complain about that and can't be
> fixed. In a way, the device-tree is an interface from the kernel to the outside
> world, and while it is not really "user-space", IMHO it should still be
> regarded stable and "set in stone"... but maybe that's just me?

No, it's not just you. Me and other people are with you.

When talking about device tree stability we usually only talk about the
bindings, not about the structure of the trees. The problem here was
probably that people weren't aware that this change breaks stuff.

Sascha

-- 
Pengutronix e.K.                           |                             |
Industrial Linux Solutions                 | http://www.pengutronix.de/  |
Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-0    |
Amtsgericht Hildesheim, HRA 2686           | Fax:   +49-5121-206917-5555 |



More information about the barebox mailing list