On Thu, Mar 26, 2015 at 11:58:12AM +0800, Jean-Christophe PLAGNIOL-VILLARD 
wrote:
> 
> > On Mar 26, 2015, at 4:57 AM, Lucas Stach <[email protected]> wrote:
> > 
> > The board code uses quite a few OF functions and it doesn't seem
> > reasonable to run this board without DT support.
> > 
> > Signed-off-by: Lucas Stach <[email protected]>
> > ---
> > arch/arm/mach-highbank/Kconfig | 1 +
> > 1 file changed, 1 insertion(+)
> > 
> > diff --git a/arch/arm/mach-highbank/Kconfig b/arch/arm/mach-highbank/Kconfig
> > index 950810b57517..8af480861c3f 100644
> > --- a/arch/arm/mach-highbank/Kconfig
> > +++ b/arch/arm/mach-highbank/Kconfig
> > @@ -9,6 +9,7 @@ choice
> > 
> > config MACH_HIGHBANK
> >     bool "Calxeda Highbank"
> > +   select OFTREE
> >     select HAVE_DEFAULT_ENVIRONMENT_NEW
> 
> you can run wihtout it as the oftree code is only used if you decide to use 
> the dtb provided by the
> firmware

With CONFIG_OFTREE disabled the board fails to link:

arch/arm/boards/built-in.o: In function `highbank_mem_init':
:(.text.highbank_mem_init+0x10): undefined reference to `of_unflatten_dtb'
arch/arm/boards/built-in.o: In function `highbank_devices_init':
:(.text.highbank_devices_init+0x54): undefined reference to `of_get_fixed_tree'

Even if we had a static inline no-op wrapper for of_get_fixed_tree, the
board doesn't check the return value of of_get_fixed_tree and does this:

        fdt = of_get_fixed_tree(NULL);
        add_mem_device("dtb", (unsigned long)fdt, be32_to_cpu(fdt->totalsize),
               IORESOURCE_MEM_WRITEABLE);

Here the code would crash with a NULL pointer derefence. So unless we
get a couple of other patches I believe Lucas' patch is correct.

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 |

_______________________________________________
barebox mailing list
[email protected]
http://lists.infradead.org/mailman/listinfo/barebox

Reply via email to