Dear Jason Cooper,
On Sat, 31 May 2014 12:01:19 -0400, Jason Cooper wrote:
arm-multi_v7_defconfig+CONFIG_CPU_BIG_ENDIAN=y
is this known or new?
Both :-)
As you can see, it's not a normal multi_v7 boot: it's a multi_v7 + big endian. So that's a new thing Kevin and I have been working on over the last few weeks: since we support big endian on Marvell EBU platforms, I asked Kevin if it was possible to add it to the board farm. And so he did.
It works fine on the Mirabox. However, on the OpenBlocks, there is still a small problem: the OpenBlocks has 1 GB of soldered RAM and some of them come with 2 additional GBs of RAM on a DIMM slot. In the kernel DT, we specified a memory size of 3 GB.
On little endian configurations, as long as ATAGS_DTB_COMPAT is used, it works fine in all situations: the memory size of 3 GB indicated in the DT will be overridden by whatever the bootloader passes.
However, on big endian, ATAGS_DTB_COMPAT is not supported. And since Kevin has a 1 GB only OpenBlocks, the kernel fails to boot because it believes it has 3 GB of memory, while only 1 GB is actually present.
I believe the most reasonable course of action is to lower the memory size in the DT to 1 GB, to make sure it boots in all cases. What do you think?
Thanks,
Thomas