
On Thu, Oct 22, 2015 at 08:04:04PM +0530, Lokesh Vutla wrote:
In case if one of the bank that is passed is of size zero, then u-boot will be updating memory node with a bank of size zero. There is not need to update memory node if size is zero, so check for bank size before
is not.
updating.
Signed-off-by: Lokesh Vutla lokeshvutla@ti.com
common/fdt_support.c | 3 +++ 1 file changed, 3 insertions(+)
diff --git a/common/fdt_support.c b/common/fdt_support.c index f86365e..0019eef 100644 --- a/common/fdt_support.c +++ b/common/fdt_support.c @@ -401,6 +401,9 @@ static int fdt_pack_reg(const void *fdt, void *buf, u64 *address, u64 *size, char *p = buf;
for (i = 0; i < n; i++) {
if (size[i] == 0)
continue;
- if (address_cells == 2) *(fdt64_t *)p = cpu_to_fdt64(address[i]); else
So I suggested something along these lines a long while ago as part of how to fix the problem of DT has correct (and larger than U-Boot can see) memory size, so I like the change. But it's a "big" behavior change that we (I) need to note in the release notes at least. When I looked last things were either setting a 0 size or a correct looking size, but I bet we'll still see a few things drop out wrt incorrect (too small) memory size being passed. I wonder what the best list(s) would be to let everyone know about this would be...