Fiasco.OC on Cortex-A9
Johan Dams
jdmm at genesi-tech.com
Fri May 11 19:13:29 CEST 2012
Hi.
As a follow up to my email below, I compiled Fiasco for the Realview
system and ran under QEmu. This is my output:
L4 Bootstrapper
Build: #5 Fri May 11 19:55:05 EEST 2012, 4.5.3
Scanning up to 256 MB RAM
Memory size is 256MB (00000000 - 10000000)
RAM: 0000000000000000 - 000000000fffffff: 262144kB
Total RAM: 256MB
mod08: 011ec000-01205544: hello
mod07: 01198000-011eb22c: ned
mod06: 010bd000-01197b8c: io
mod05: 010bc000-010bc016: arm-imx6.devs
mod04: 010bb000-010bb079: startup.conf
mod03: 010a1000-010ba45c: l4re
mod02: 01067000-010a062c: moe
mod01: 0105d000-01066340: sigma0
mod00: 01014000-0105c7b0: fiasco
Moving 9 modules to 1100000 with offset ec000
moving module 09 { 11ec000-1205544 } -> { 12d8000-12f1544 }
moving module 08 { 1198000-11eb22c } -> { 1284000-12d722c }
moving module 07 { 10bd000-1197b8c } -> { 11a9000-1283b8c }
moving module 06 { 10bc000-10bc016 } -> { 11a8000-11a8016 }
moving module 05 { 10bb000-10bb079 } -> { 11a7000-11a7079 }
moving module 04 { 10a1000-10ba45c } -> { 118d000-11a645c }
moving module 03 { 1067000-10a062c } -> { 1153000-118c62c }
moving module 02 { 105d000-1066340 } -> { 1149000-1152340 }
moving module 01 { 1014000-105c7b0 } -> { 1100000-11487b0 }
Scanning fiasco
Scanning sigma0
Scanning moe rom/startup.conf
Relocated mbi to [0x100e000-0x100e139]
Loading fiasco
Loading sigma0
Loading moe
find kernel info page...
found kernel info page at 0x2000
Regions of list regions
[ 1000, 19bf] { 9c0} Kern fiasco
[ 2000, 58fff] { 57000} Kern fiasco
[ 90000, 96ccb] { 6ccc} Sigma0 sigma0
[ 98000, 9e17b] { 617c} Sigma0 sigma0
[ 140000, 170aeb] { 30aec} Root moe
[ 178000, 18eee7] { 16ee8} Root moe
[ 1000000, 10133eb] { 133ec} Boot bootstrap
[ 100e000, 100e236] { 237} Root Multiboot info
[ 118d000, 12f1543] { 164544} Root Modules Memory
API Version: (87) experimental
Sigma0 config ip:000900e0 sp:01012044
Roottask config ip:001401c0 sp:00000000
Starting kernel fiasco at 00001000
--> and here it stops, which appears to be the same issue I as I have on
the i.mx6.
Best regards,
Johan
On Fri, 2012-05-11 at 17:01 +0300, Johan Dams wrote:
> Hi all,
>
> I'm wondering if anyone has come across an issue with Fiasco.OC on
> Cortex-A9 based systems. The problem is that I do not get past this
> instruction (and with that I mean that the system just locks up):
>
> "mcr p15, 0, %[control], c1, c0 \n" // control
>
> in src/kern/arm/bootstrap.cpp. The exact same code works fine on a
> Cortex-A8 based processor. Changing cache on or off (in the control
> variable) does not change anything. Also, just reading the current
> content of the register and writing it back locks the system.
>
> I have been going over compiler flags, tried different compilers
> altogether (using 4.5.3-r1 right now), and looked if something odd was
> going on with the generated assembly code, etc. with no results.
>
> This code is a standard ARM instruction, and comes well before any
> paging or even the actual kernel starts.
>
> The SOC in question is a Freescale i.MX6 Quad core Cortex A9, which I
> realize not many have actually used yet. However, if similar issues
> presented itself on other platforms, these might give some clues.
>
>
> Any ideas?
>
>
> Best regards,
> Johan
>
More information about the l4-hackers
mailing list