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

Deepak Saxena deepak_saxena at mentor.com
Fri Dec 10 19:04:34 CET 2010


On 12/08/2010 02:34 PM, Wolfgang Denk wrote:

> 
> 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

I imagine this being rather ugly to implement and to keep the code clean
and maintained. Who parses these variables? Does each and every piece of
code in U-Boot that now touches a piece of the DT need to check for this
variable? I could see something like this working
if there was a central DT handler that read nodes and then called
platform-specific over-ride function, i.e.:

	for_each_node_in_dt() {
		if (dt_include(node->type))
			platform_of_dt_node_process(node, boot_stage);
	}

	where boot_stage tells us whether we are at early init, about to
        boot an OS image, or in some other step in the process.

This would provide a consistent method of handling that variable.
Without something like this, I think and environment variable is just
going to create confusion for users and developers.

~Deepak


More information about the U-Boot mailing list