
On Thu, Apr 12, 2018 at 09:04:20AM +0200, Jason Mitchell wrote:
Good day all
I am currently faced with a task of having to run new software on ageing hardware. We have currently about 1000 units in the field of a machine that runs Windows CE using the Samsung S3C6410.
Because these are considerable assets its not a simple case of replacing them with new, more modern hardware.
The goal is to be able to get these existing boards to run Ubuntu so that we can run GoLang applications, so we need the GUI with just a relatively recent browser.
The board in question is a near perfect clone of the SMDK6410, which was supported fully in U-boot in the past, indeed I can select SMDK6410 and compile a working U-boot using 1.3.4 sources
After much effort I managed to get a tailored (tailored as in having changed the memory configuration to match the hardware) U-boot V1.3.4 compiled and running for this chip, the problem now, obviously we have a fairly recent Linux kernel compiled and it won't boot because the Device Tree Blob doesn't exist on such an old version of U-boot.
So my questions are:
- Has anyone perhaps created a branch or fork of the current or nearly
current version of U-boot and patched in this support. I see a lot of Chinese websites where they seem to have done this but the language barrier is a big problem. Also a lot of dead links are another problem.
- If there isn't something out there, would it be possible to run through
the steps with me to add support for this CPU again. I don't mind doing the work, the main issue is I have no clue how U-boot actually works internally.
I have FULL JTAG access to this board, with a perfectly functional OpenOCD setup. This is how we are able to program versions of U-boot into the FLASH.
There's two options: 1) You can re-introduce support for the SMDK6410 into mainline U-Boot and be an active maintainer of it. It was removed due to lack of active maintainers.
2) You can, for Linux, use the "appended DTB" work-around to boot a modern kernel from an old bootloader.