[U-Boot] [PATCH] Honor /memory/reg node in DTB files

Wolfgang Denk
2010-12-08T22:34:05Z

Dear Dan,

In message <0DDCBDA1-188F-433D-BDCC-5FDCF709A131@digitaldans.com> you wrote:
>
> > If you want to make this switchable at runtime, then we should
> > probably use an environment setting.
>
> I experimented with this, but could never determine the
> best way to cover all behavior. Do we have a variable that
> indicates "don't update DT?" If so, it means we have to
> place all values in the DT, when it's really nice for U-Boot
> to do some of that for us. In fact, we want U-Boot to update
> many things it discovers, just not the few we wish to actually
> (sometimes) define for ourselves.

"You can please all the people some of the time and some of the people
all of the time but you can't please all the people all of the time."

> The other alternative (granted, I'm not as smart as I used
> to be :-)) was to have an environment variable that specified
> which node we didn't want updated by U-Boot. For now,
> that seems reasonable since there is only one, but is that
> the general approach we want in the future? It also presents
> the challenge of having to update both environment and
> the provided DT.

I guess we can argue that the normal situation is that U-Boot will
know how to update the DT such as needed to boot the OS. So what we
are dealing with is a small percentage of cases where we need special
behaviour, and where it may be acceptable if the solution is only
semi-perfect ;-)

My current thinking is to introduce something like

dt_skip=memory,mac-address

including eventually "dt_skip=ALL". This should cover most of the
current use cases.

If someone gets fancy he can add wildcard support.

And if we need even more flexibility, we can add some "dt_include"
with higher priority, so one could do for example

dt_skip=ALL
dt_include=memory

to have only the memory node updated.

Best regards,

Wolfgang Denk

--
DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de
If you can't beat it or corrupt it, you pretend it was your idea in
the first place. - Terry Pratchett, _Guards! Guards!_