On 11 July 2014 05:23, Simon Glass <s...@chromium.org> wrote: > If we are to have driver model before relocation we need to support some > way of calling memory allocation routines. > > The standard malloc() is pretty complicated: > > 1. It uses some BSS memory for its state, and BSS is not available before > relocation > > 2. It supports algorithms for reducing memory fragmentation and improving > performace of free(). Before relocation we could happily just not support > free(). > > 3. It includes about 4KB of code (Thumb 2) and 1KB of data. However since > this has been loaded anyway this is not really a problem. > > The simplest way to support pre-relocation malloc() is to reserve an area > of memory and allocate it in increasing blocks as needed. This > implementation does this. > > To enable it, you need to define the size of the malloc() pool as described > in the README. It will be located above the pre-relocation stack on > supported architectures. > > Note that this implementation is only useful on machines which have some > memory available before dram_init() is called - this includes those that > do no DRAM init (like tegra) and those that do it in SPL (quite a few > boards). Enabling driver model preior to relocation for the rest of the > boards is left for a later exercise. > > Signed-off-by: Simon Glass <s...@chromium.org>
Applied to dm/master. _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot