Hi Nick,

I don't think that the instruction set will differ that much. Differences in the ARMv7 revisions more often refer to details of the hardware virtualisation. The different Cortex-A revisions in turn more likely mean that you can't e.g. reuse the Cortex-A9 timer base-hw/src/core/timer/cortex_a9.h. However, in regards to the interrupt controller merely the MMIO base depends on Cortex A9. So maybe you can reuse at least the ARM-GIC backend base-hw/src/core/pic/arm_gic.h.

Greetings,
Martin

On 17.12.2013 15:36, buzz heavyyear wrote:
Hi Martin

It's a Cortex-A7 - I'm hoping that the assembler is 100% compatible. If not, I'll dig down into the linux that the AOlinuXino refers to.

Thanks for taking time to outline the structure I need to set up.

Very best, and if I don't manage to post before the 25th, have a great xmas %*}
Nick


Date: Tue, 17 Dec 2013 15:06:27 +0100
From: martin.stein@...1...
To: genode-main@lists.sourceforge.net
Subject: Re: A20-OLinuXino-MICRO-4GB

Hi Nick,

Nice to hear that you're intending to port base-hw to A20-OLinuXino :-) Currently there are 3 Cortex-A9 boards officially supported by base-hw: VEA9X4, PBXA9, and the Pandaboard. You can refer to any of these boards. Looking e.g. at PBXA9, you can see that basically the following files must be implemented for your board:

base/mk/spec-platform_<BOARD>.mk
base/include/platform/<BOARD>/drivers/board_base.h

base-hw/mk/spec-hw_<BOARD>.mk
base-hw/src/core/<BOARD>/tlb.h
base-hw/src/core/<BOARD>/target.mk
base-hw/src/core/<BOARD>/timer.h
base-hw/src/core/<BOARD>/pic.h
base-hw/src/core/<BOARD>/platform_support.cc
base-hw/src/core/<BOARD>/cpu.h

To add support for your board in the builddir tool you should add

hw_<BOARD>::
    @echo "SPECS = genode hw_<BOARD>" > $(BUILD_DIR)/etc/specs.conf

to tool/create_builddir and copy tool/builddir/etc/build.conf.hw_pbxa9 to tool/builddir/etc/build.conf.hw_<BOARD>.

Cortex-A9 brings its own core timer and interrupt controller, so the only thing left is a UART driver. Either one of the drivers in base/include/drivers/uart/ fit or you should implement your own at this place. To install the driver afterwards you should create base-hw/include/<UARTNAME>/drivers/serial_log.h (for instance PBXA9 uses base-hw/include/pl011/drivers/serial_log.h) and add UARTNAME to SPECS in your base/mk/spec-platform_<BOARD>.mk. After that Genode::printf should print to the UART.

Assuming that the Cortex-A9 / ARMv7 revision of your board and the board you used as reference do not differ, you should be able to run a first scenario after this. If you have further questions do not hesitate to ask  ;-)

Greetings,
Martin

On 17.12.2013 14:19, buzz heavyyear wrote:
Hi

I have just received a new board with a dual core cortex a7, the A20-OLinuXino, which I'd like to set up and add to the genode tree - currently more pressing than the RPi!

I'm no Arm expert, but I'm assuming that I can take most of the existing arm_v7 and a9 code in base-hw and just use this for setting up an a20olinuxino environment and building an image?


Cheers
Nick


------------------------------------------------------------------------------
Rapidly troubleshoot problems before they affect your business. Most IT 
organizations don't have a clear picture of how application performance 
affects their revenue. With AppDynamics, you get 100% visibility into your 
Java,.NET, & PHP application. Start your 15-day FREE TRIAL of AppDynamics Pro!
http://pubads.g.doubleclick.net/gampad/clk?id=84349831&iu=/4140/ostg.clktrk


_______________________________________________
Genode-main mailing list
Genode-main@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/genode-main


------------------------------------------------------------------------------ Rapidly troubleshoot problems before they affect your business. Most IT organizations don't have a clear picture of how application performance affects their revenue. With AppDynamics, you get 100% visibility into your Java,.NET, & PHP application. Start your 15-day FREE TRIAL of AppDynamics Pro! http://pubads.g.doubleclick.net/gampad/clk?id=84349831&iu=/4140/ostg.clktrk
_______________________________________________ Genode-main mailing list Genode-main@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/genode-main


------------------------------------------------------------------------------
Rapidly troubleshoot problems before they affect your business. Most IT 
organizations don't have a clear picture of how application performance 
affects their revenue. With AppDynamics, you get 100% visibility into your 
Java,.NET, & PHP application. Start your 15-day FREE TRIAL of AppDynamics Pro!
http://pubads.g.doubleclick.net/gampad/clk?id=84349831&iu=/4140/ostg.clktrk


_______________________________________________
Genode-main mailing list
Genode-main@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/genode-main