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