Reputation: 13111
There is a navi-like device that has very interesting specs at an interesting price. The problem is that it only runs Windows CE while we absolutely need the Linux operating system for a project.
We find it pretty hard to find a comparable device (all-in-one touchscreen PC with GPS and GPRS and extended temperature range at a reasonable price) so I'm currently investigating the possibility to port Linux to this device.
While I have some experience with various embedded Linux devices (AXIS ETRAX/CRIS, Trimble Nomad, FOX G20, MOXA, PC/104 devices, ...) I've never brought Linux to a device that never had it running before. However, cross compiling a whole Linux system isn't new to me.
I guess the biggest problem would be replacing Windows CE at all.
The device has a 400 MHz ARM 926EJ processor with 2 GB flash, 64 MB RAM, SD slot and USB/RS232 ports. The full specs can be found here.
Upvotes: 3
Views: 9911
Reputation: 93476
Ideally you will need access to the processor's JTAG pins for both programming and debugging, then you will need a JTAG debugger that supports the device and programming the Flash memory used.
Once you have all that you have complete access to the processor and memory and can re-program it with any firmware you choose. The usefulness of that however will depend on your having enough technical information to develop or acquire suitable drivers for the display, and any other application specific hardware, as well as the on-chip peripherals.
Knowing that it is an ARM926EJ only tells you about the core. It tells you nothing about the on-chip peripherals including hardware such as the SDRAM controller and PLL clock generator, and interrupt controller, all of which will need to be initialised before you can get the system running - these are device specific and you Linux will need to be specifically adapted to the hardware. You cannot just load Linux as you would on a PC which is a known and standardised hardware platform.
The documentation reveals it to be a Samsung S3C2416X processor. Get the user manual and data sheet for that from Samsung Semiconductor's website. You may find a Linux port already available for the processor at least, but you will still need to adapt for the off-chip peripherals and I/O. The documentation also shows JTAG in the block diagram, so that may have left the connector on the board for you.
Upvotes: 2
Reputation: 6334
Useful steps along the way are:
This is possible, but probably only worthwhile if your time is cheap or you plan to buy a lot of them. There are freelancers who do ARM kernel porting; I've done it myself. Normally I'd do this for people who've designed their own hardware so there's very little reverse engineering.
Upvotes: 2