always relocate fdt into an lmb-allocated memory block
authorTimur Tabi <timur@freescale.com>
Mon, 24 May 2010 20:10:25 +0000 (15:10 -0500)
committerKumar Gala <galak@kernel.crashing.org>
Wed, 20 Oct 2010 07:28:00 +0000 (02:28 -0500)
commit43b08af53e12fd96bd818f9a5f8471a264496f07
treea865517e13554a59d6c1552f0fa9a886388393a8
parenta1964ea5c25238fdad254dbe88d1e4ed9cd84061
always relocate fdt into an lmb-allocated memory block

The device tree (fdt) must always exist in within the bootmap (usually the
first 16MB of RAM).  If it doesn't, then boot_relocate_fdt() will allocate
an LMB region in the bootmap and copy the fdt into that region.  It will
also increase the size of the fdt.

If the fdt is already in the bootmap, then previously the memory was just
reserved.  There was no contingency if the reservation failed, however.

By always allocating an lmb region and copying/resizing the fdt into that
region, the code is simplified and the memory region is always allocated
properly.

Also change the types of some variables to avoid some typecasts.

Signed-off-by: Timur Tabi <timur@freescale.com>
Tested-by: Ira Snyder <iws@ovro.caltech.edu>
Acked-by: Gerald Van Baren <vanbaren@cideas.com>
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
common/image.c