I got my espressobin last week and have been playing with it.
My distribution of choice has (lately) been Fedora. So I have hacked up a running fedora 26. I basically started out with the ubuntu distro and replaced the root filesystem with one from fedora 26. I then grabbed the linux-4.12-rc4 kernel, did a make defconfig then added dsa and everything else I could figure out to add. I grabbed the systemd-networkd directory and disabled NetworkManager and enabled systemd-networkd.
It is running : Linux eb 4.12.0-rc4 #2 SMP PREEMPT Mon Jun 5 10:53:01 EDT 2017 aarch64 aarch64 aarch64 GNU/Linux
But I am missing a few things, like the wifi and the MMC. I can not figure out what drivers to compile into the kernel to get those working.
My idea is to replace my aging mirabox as my home router with the espressobin.
The Espressobin device tree in mainline does not have the SDHCI controller for the SD card slot enabled, so unless you want to figure out what how it needs to be augmented to have that, you’re out of luck as far as the SD card goes. The SATA port or USB will probably work, though.
Wifi: the “mwifiex” driver in mainline _might_ work. The version in the Marvell tree panics on load most of the time for me, but the mainline version might have fixes. I have admittedly yet to try with different firmware versions. Note, however, that as far as I can tell, mwifiex only supports one AP interface at a time, instead of the two that the 4.4.8 binary Globalscale provides does – I believe that means you need to pick one of 2.4GHz or 5GHz if you want to use it in AP mode. Alternatively, there’s https://github.com/kaloz/mwlwifi, which I haven’t had luck with on 4.4.8 or 4.4.52, but might work with 4.12.
This adds support for sdhci1 and the SPI flash (note: the partition layout is probably not completely correct). I’m missing the definition for the regulator to switch between a 3.3V and 1.8V SD card I/O voltage, but that has not appeared to cause any problems with my SD card so far.
However, note that mainline is missing quite a few things, such as support for CPU frequency scaling. (The Armada 3720 gets pretty toasty! I put a heatsink on mine. It only helps a little bit.)
I have the 1GB EspressoBin with no onboard eMMC and I don’t have the wireless card, so I don’t have advice on how to make wireless work. I also haven’t tried SATA or USB with it.
Thanks for the info, it’s very useful to get others’ experience with the board as well.
@tekrantz, do you have a working kernel .config you’d be willing to share in a gist or something similar? I’m attempting to run against a custom 4.12 compilation as well but am getting kernel panics and would like a working .config against the 4.12 tree to compare against.
@glasgall, I’ve come across some of your other posts regarding recompiling the kernel with PCIe wifi support and wanted to confirm whether my thought process is correct here – in the current state for the espressobin, is it possible or not to recompile a 4.4.8/4.4.52 kernel (in order to get some additional kernel features) and still have functional wifi over the PCIe interface? It sounds like the pre-built ubuntu rootfs that’s provided has functional wifi over PCIe, but we may be stuck with the stock kernel if we want wifi over PCIe since there’s no sources for those drivers? Is it possible to build a custom 4.4.8/4.4.52 image and manually load the built kernel modules from the stock rootfs into a custom kernel?