So ... sometime last year I ordered a SmilePlug from http://globalscaletechnologies.com/, and it arrived at some point early this year. Hardware-wise, it is a really neat piece of kit that I was intending to put to use as a very configurable home router/firewall; it has 2x1GBE and an ARMv7-A processor + 512MB of RAM.
Of course, being Marvell-based, source-code availability and system documentation was a few miles south of sufficient, and unfortunately, it ended up lying in a corner for the greater part of the year. However, the guys at Free-Electrons have managed to get to main parts of the Armada 370 support (including the smileplug's sister-platform 'mirabox') into mainline Linux, so I decided to have another go.
Since the U-Boot on the platform is outdated, and sources are not available for me to recompile it with CONFIG_API and be able to use GRUB, it requires the DTB to be appended to the kernel image - and then the whole thing needs to be wrapped as a uImage. I found simple instructions to do that, but include instructions below so I don't need to go looking for it next time : )
$ make mvebu_defconfig # *fiddle* CONFIG_TUN=m $ cp arch/arm/boot/zImage zImage-with-dtb $ cat arch/arm/boot/dts/armada-370-mirabox.dtb >> zImage-with-dtb $ ./scripts/mkuboot.sh -A arm -O linux -T kernel -C none -a 0x00008000 \ -e 0x00008000 -n 'Linux-marvell' -d zImage-with-dtb uImage
What I haven't managed to do yet is read the kernel off uSD, so for now, I boot it via TFTP.