Porting base-hw to ARM Juno with TrustZone

Martin Stein martin.stein at ...1...
Thu Jun 25 13:37:38 CEST 2015


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-arm-development-platform.php).

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




More information about the users mailing list