Re: Fiasco.OC on Cortex-A9

Johan Dams <[email protected]>
Newsgroups gmane.comp.micro-kernel.l4.devel
Organization Genesi
Message-ID <1336849932.17352.2.camel@Midgard>
Hi.

Ok, got it to work in Qemu with the realview-pbx-a9 target. Still
working on the problem on i.MX6. 


Best regards,
Johan

On Fri, 2012-05-11 at 20:13 +0300, Johan Dams wrote:
> 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
> >  
>
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.