Align the reported memory size to 1MiB, which is the section size
in the Linux memory managment system. This avoids triggering an
issue which leads to freeze the Linux kernel very early:
http://thread.gmane.org/gmane.linux.ports.arm.kernel/408378
start = gd->bd->bi_dram[0].start;
size = gd->fb_base - gd->bd->bi_dram[0].start;
+
+ /*
+ * Align size on section size (1 MiB). The Linux kernel would crash
+ * otherwise, this seems to be a limitation/bug of the Linux
+ * kernel currently (Linux ~4.0)
+ */
+ size &= 0xfff00000;
ret = fdt_fixup_memory_banks(blob, &start, &size, 1);
if (ret) {
eprintf("Cannot setup fb: Error reserving memory\n");