[U-Boot] fdt performance

Simon Glass sjg at chromium.org
Fri Oct 18 00:27:56 CEST 2013


Hi Aaron,

On Thu, Oct 17, 2013 at 12:24 AM, Aaron Williams
<Aaron.Williams at caviumnetworks.com> wrote:
> Hi all,
>
> In our bootloader based off of 2013.07 we make extensive use of the flat
> device tree. In profiling our bootloader in our simulator I found that the
> function eating up the most time is fdt_next_tag. Looking at it, especially
> fdt_offset_ptr, it looks like there is a lot of room for improvement
> especially in the skip name section.
>
> Some of the checks in fdt_offset_ptr also look useless, such as if ((offset
> + len) < offset) which will always be false, or
> if (p + len < p)
>
> len is always positive.

Are you using CONFIG_OF_CONTROL?

If so, as a higher-level point, we could bring in an efficient DT
library, which converts the the FDT into a tree structure for faster
parsing. I can point you to a starting point if you like.

Regards,
Simon


>
> -Aaron
>
> --
> Aaron Williams
> Software Engineer
> Cavium, Inc.
> (408) 943-7198  (510) 789-8988 (cell)
>
> _______________________________________________
> U-Boot mailing list
> U-Boot at lists.denx.de
> http://lists.denx.de/mailman/listinfo/u-boot


More information about the U-Boot mailing list