[U-Boot] [PATCH] fdt_resize(): ensure minimum padding
Jerry Van Baren
gvb.uboot at gmail.com
Wed Oct 29 01:26:38 CET 2008
Peter Korsgaard wrote:
> fdt_add_mem_rsv() requires space for a struct fdt_reserve_entry
> (16 bytes), so make sure that fdt_resize at least adds that much
> padding, no matter what the location or size of the fdt is.
>
> Signed-off-by: Peter Korsgaard <jacmet at sunsite.dk>
> Acked-by: Andy Fleming <afleming at freescale.com>
> ---
> common/fdt_support.c | 7 +++++--
> 1 files changed, 5 insertions(+), 2 deletions(-)
>
> diff --git a/common/fdt_support.c b/common/fdt_support.c
> index 8ceeb0f..138334e 100644
> --- a/common/fdt_support.c
> +++ b/common/fdt_support.c
> @@ -575,9 +575,12 @@ int fdt_resize(void *blob)
> }
> }
>
> - /* Calculate the actual size of the fdt */
> + /*
> + * Calculate the actual size of the fdt
> + * plus the size needed for fdt_add_mem_rsv
> + */
> actualsize = fdt_off_dt_strings(blob) +
> - fdt_size_dt_strings(blob);
> + fdt_size_dt_strings(blob) + sizeof(struct fdt_reserve_entry);
>
> /* Make it so the fdt ends on a page boundary */
> actualsize = ALIGN(actualsize, 0x1000);
Applied to the u-boot-fdt subrepo.
Thanks,
gvb
More information about the U-Boot
mailing list