Thomas Petazzoni thomas.petazzoni@free-electrons.com writes:
Kevin,
As we discussed at ELC, it would be nice to test ARM big endian in the board farm. Here are some instructions on how to get this running:
Excellent, thanks.
1 Take the Buildroot branch at http://git.free-electrons.com/users/thomas-petazzoni/buildroot/log/?h=for-ke.... It is Buildroot 2014.02 + one patch for the AArch64 symlink + one patch for the ARM big endian Linaro toolchain.
2 Build a Buildroot configuration such as:
BR2_armeb=y BR2_cortex_a8=y BR2_ARM_EABIHF=y BR2_TOOLCHAIN_EXTERNAL=y BR2_TARGET_ROOTFS_CPIO=y # BR2_TARGET_ROOTFS_TAR is not set
3 Build mvebu_v7_defconfig or multi_v7_defconfig with CONFIG_CPU_BIG_ENDIAN=y (no other change is needed, except your own configuration stuff maybe, like initrd support, devtmpfs and so on).
OK, I'm still putting the final touches on support in my automated builder for base defconfig + kconfig fragments. After that, I'll be able to build these kind of kconfig variants easily.
4 Boot
I've tested this right now on Armada XP OpenBlocks AX3-4. It is worth noting that in BE mode, the ATAGS are not used, so if your OpenBlocks has only 1 GB of RAM, the boot will crash (with some weird tty related panic). That's because the Device Tree for the OpenBlocks AX3-4 encodes a memory size of 3 GB, which some OpenBlocks have. If you fall into this issue, then change the memory node in the DT to use 1 GB only.
Hmm, if atags are not used, then u-boot will not be able to pass an initramfs in memory. That's a bit of a problem for my current setup.
I rely on initramfs because MMC and NFS rootfs setups break rather often, so I like to rely on initramfs, and then switch_root to MMC/NFS.
Normally, this should also work on Armada 370 Mirabox, though I haven't tested right now.
Do you think you could add this big endian test to the board farm?
Yes, I'll add it to my TODO list.
In addition to this, it would be interesting if you could also test LPAE on Armada XP OpenBlocks AX3-4 (it should work on little endian, however I have never tested LPAE/big-endian).
OK, I'll add the obsax3 to the list of LPAE capable boards. This won't start getting published though until I finish support for the kconfig fragments.
Kevin