On Thu, May 04, 2017 at 01:02:17PM +0200, Sascha Hauer wrote: > People do not seem to know that a state node in the kernel > device tree will be overwritten by barebox. Print a warning > when this happens so that people can get an idea why changes > in the kernel device tree state node do not have any effect. > > Signed-off-by: Sascha Hauer <s.hauer@xxxxxxxxxxxxxx> > --- > common/state/state.c | 9 +++++++++ > 1 file changed, 9 insertions(+) > > diff --git a/common/state/state.c b/common/state/state.c > index 6db77f2c18..c3c8b768c7 100644 > --- a/common/state/state.c > +++ b/common/state/state.c > @@ -416,6 +416,15 @@ static int of_state_fixup(struct device_node *root, void *ctx) > if (node) { > /* replace existing node - it will be deleted later */ > parent = node->parent; > + > + /* > + * barebox replaces the state node in the device tree it starts the > + * kernel with, so a state node that already exists in the device tree > + * will be overwritten. Warn about this so people do not wonder why > + * changes in the kernels state node do not have any effect. > + */ > + if (root != of_get_root_node()) > + dev_warn(&state->dev, "Warning: Kernel devicetree contains state node, replacing it\n"); Would it make sense to only issue this warning if there are differences between the replacing and the replaced node? Otherwise I think this warning will trigger in many cases where it doesn't really matter. At least in my projects I take care to have only minimal differences between barebox' and linux' device tree and so the latter usually also contains the state stuff. Best regards Uwe -- Pengutronix e.K. | Uwe Kleine-König | Industrial Linux Solutions | http://www.pengutronix.de/ | _______________________________________________ barebox mailing list barebox@xxxxxxxxxxxxxxxxxxx http://lists.infradead.org/mailman/listinfo/barebox