Hi Matthias,
On 25.06.2015 11:48, Stefan Kalkowski wrote:
On 06/24/2015 04:41 PM, Matthias Lorenz wrote:
I'm interested in porting genode base-hw to ARM Juno (Vexpress64) (http://www.arm.com/products/tools/development-boards/versatile-express/juno-...).
That's really cool! I'm curious about your findings.
Can somebody estimate how much time and work this would take?
I would estimate something between 3 months and 6 months.
We observed the basic porting of base-hw to x86-64bit recently. It was done by a team of two programmers that had a good understanding of the architecture and some kick-off guidance by us in about one month. This might serve as a best-case estimation.
Are there any good starting points to start my work/research?
Additional to the excellent explanations of Stefan, I'd like to provide the following remarks:
* Have a look at the ouput of
find base-hw -type f -wholename *x86* | grep -ve x86_32 -e gdt -e tss -e idt -e crt0_tr -e port_io -e pseudo -e mtc_u
It gives you a good overview of the basic files when porting a new architecture.
* A good initial target might be a 'Genode::printf("Hello\n"); while(1);' at the beginning of 'init_kernel_up()'. It is the first C++ function that should be called by your CRT0. If you've managed to see this output on your serial port, you're through most of the bureaucratic stuff of porting base-hw and have obtained a simple debugging tool.
Don't hesitate to ask if you have further questions ;-)
Cheers, Martin