Compared to the original Edison Images there are features I removed, because they didn’t build. And if I have no interest in the feature, fixing it has low priority.
There are also features that do build but don’t work fully. MRAA is an example of this. Certain functions are pinmux’ed, i.e. the function is on a pin that has an alternate function. In the original Edison kernel the mux was controlled through debugfs, more or less a temporary solution. However, MRAA relied on debugfs providing the pinmux control. And vanilla linux kernels do not provide this, so MRAA will cause an error on startup. As Andy puts it: you should not be using MRAA. Nevertheless I have upstreamed a patch to MRAA that disables debugfs for kernels > 4.0, so at least MRAA will start. This allows at least the serial port (hsu) and gpio to work.
The pinmux’es are envisioned to be set outside of the kernel (without requiring specific platform code). That means that code needs to go to U-Boot. To prevent platform code to be moved from the kernel to U-Boot, kernel developer Andy Shevchenko has worked to implement configurable ACPI tables describing Edison. With this U-Boot will work as a BIOS light, serving the ACPI tables to the kernel and allowing it to boot.
Of course, without a user space driver system like MRAA you need the drivers in the kernel. There are > 400 driver there. This is a work in progress. And there is no other platform than Edison better suited to test these. I am sure Andy would appreciate help in fixing up the kernel, U-Boot or ACPI tables. There is code in the kernel for which these minimal ACPI tables is the first time use.
And then there are features that don’t work but I haven’t tested yet.
This is the main reason for not completely replacing the original Edison image. You might want to check if functions you rely on are present and working properly. But by now it is almost 2025, 10 years after Intel made Edison obsolete. You might not want to be relying on that platform at all.
In any case, if you find a bug, please create an issue on Github. Fixing the issue will of course be quicker if you provide the solution as well. And if you want or need features added, go ahead, fork us, add what you want and send me a pull request.
© 2018 Ferry Toth