I'm trying to run the ARM-based frame buffer configuration from
conf/examples/arm-rv-lcd.cfg with pkg/io/config/arm-rv-eb-mc.devs and
QEMU (-M realview-pbx-a9). I can boot the L4 Linux kernel on this
(without GUI but just serial I/O) configuration, but I get an error when
trying to set up the LCD (see below).
Perhaps the LCD device configuration from the .devs file does not match
what hardware QEMU emulates? How can I actually enumerate in the IO
server what hardware it actually runs on? Is there a way to do that?
Thanks,
Anna
L4 Bootstrapper
Build: #34 Mon Jul 11 16:17:10 BST 2011, 4.5.2
Scanning up to 256 MB RAM
Memory size is 256MB (00000000 - 10000000)
RAM: 0000000000000000 - 000000000fffffff: 262144kB
Total RAM: 256MB
mod11: 012a9000-012cac7c: ex_fb_spectrum
mod10: 0121b000-012a846c: mag
mod09: 011f1000-0121a5b8: fb-drv
mod08: 0119d000-011f01b8: ned
mod07: 010c2000-0119cb58: io
mod06: 010a8000-010c1510: l4re
mod05: 010a7000-010a70e4: arm-rv-lcd.io
mod04: 010a6000-010a659d: arm-rv-eb-mc.devs
mod03: 010a5000-010a56bb: arm-rv-lcd.cfg
mod02: 0106b000-010a45f0: moe
mod01: 01061000-0106a33c: sigma0
mod00: 01015000-0106014c: fiasco
Moving 12 modules to 1100000 with offset eb000
moving module 12 { 12a9000-12cac7c } -> { 1394000-13b5c7c }
moving module 11 { 121b000-12a846c } -> { 1306000-139346c }
moving module 10 { 11f1000-121a5b8 } -> { 12dc000-13055b8 }
moving module 09 { 119d000-11f01b8 } -> { 1288000-12db1b8 }
moving module 08 { 10c2000-119cb58 } -> { 11ad000-1287b58 }
moving module 07 { 10a8000-10c1510 } -> { 1193000-11ac510 }
moving module 06 { 10a7000-10a70e4 } -> { 1192000-11920e4 }
moving module 05 { 10a6000-10a659d } -> { 1191000-119159d }
moving module 04 { 10a5000-10a56bb } -> { 1190000-11906bb }
moving module 03 { 106b000-10a45f0 } -> { 1156000-118f5f0 }
moving module 02 { 1061000-106a33c } -> { 114c000-115533c }
moving module 01 { 1015000-106014c } -> { 1100000-114b14c }
Scanning fiasco -serial_esc
Scanning sigma0
Scanning moe rom/arm-rv-lcd.cfg
Relocated mbi to [0x100f000-0x100f19e]
Loading fiasco
Loading sigma0
Loading moe
find kernel info page...
found kernel info page at 0x2000
Regions of list regions
[ 1000, 19ff] { a00} Kern fiasco
[ 2000, 5cfff] { 5b000} Kern fiasco
[ 90000, 9e17b] { e17c} Sigma0 sigma0
[ 140000, 17160b] { 3160c} Root moe
[ 178000, 18eec7] { 16ec8} Root moe
[ 1000000, 10143eb] { 143ec} Boot bootstrap
[ 100f000, 100f29b] { 29c} Root Multiboot info
[ 1190000, 13b5c7b] { 225c7c} Root Modules Memory
API Version: (87) experimental
Sigma0 config ip:000900e0 sp:01013044
Roottask config ip:00140178 sp:00000000
Starting kernel fiasco at 00001000
Realview System ID: Rev=0 HBI=178 Build=0 Arch=5 FPGA=00
L2: ID=00000000 Type=00000000
L2 cache enabled
Hello from Startup::stage2
Initialize page table
Number of IRQs available at this GIC: 96
Vmem_alloc::init()
Cache config: ON
ID_PFR0: 00001031
ID_PFR1: 00000011
ID_DFR0: 00000000
ID_AFR0: 00000000
ID_MMFR0: 00100103
ID_MMFR1: 20000000
ID_MMFR2: 01230000
ID_MMFR3: 00002111
SERIAL ESC: allocated IRQ 44 for serial uart
Not using serial hack in slow timer handler.
Welcome to Fiasco.OC (arm)!
L4/Fiasco.OC arm microkernel (C) 1998-2011 TU Dresden
Rev: r33 compiled with gcc 4.5.2 for Realview []
Build: #1 Tue Jun 21 12:57:15 BST 2011
Calibrating timer loop... done.
SIGMA0: Hello!
KIP @ 2000
allocated 4KB for maintenance structures
SIGMA0: Dump of all resource maps
RAM:------------------------
[0:0;fff]
[0:5d000;8ffff]
[0:9f000;13ffff]
[4:140000;171fff]
[0:172000;177fff]
[4:178000;18efff]
[0:18f000;100efff]
[4:100f000;100ffff]
[0:1010000;118ffff]
[4:1190000;13b5fff]
[0:13b6000;effffff]
IOMEM:----------------------
[0:10000000;ffffffff]
MOE: Hello world
MOE: found 242832 KByte free memory
MOE: found RAM from 5d000 to f000000
MOE: allocated 239 KByte for the page array @0x9f000
MOE: virtual user address space [0-bfffffff]
MOE: rom name space cap -> [C:501000]
BOOTFS: [1190000-11906bb] [C:503000] arm-rv-lcd.cfg
BOOTFS: [1191000-119159d] [C:504000] arm-rv-eb-mc.devs
BOOTFS: [1192000-11920e4] [C:505000] arm-rv-lcd.io
BOOTFS: [1193000-11ac510] [C:506000] l4re
BOOTFS: [11ad000-1287b58] [C:507000] io
BOOTFS: [1288000-12db1b8] [C:508000] ned
BOOTFS: [12dc000-13055b8] [C:509000] fb-drv
BOOTFS: [1306000-139346c] [C:50a000] mag
BOOTFS: [1394000-13b5c7c] [C:50b000] ex_fb_spectrum
MOE: cmdline: moe rom/arm-rv-lcd.cfg
MOE: Starting: rom/ned rom/arm-rv-lcd.cfg
MOE: loading 'rom/ned'
Ned says: Hi World!
Ned: loading file: 'rom/arm-rv-lcd.cfg'
IO | Io service
mag | libio: Warning: Finding 'icu' in system bus failed with 'Void
capability invoked'
mag | Hello from MAG
fbdrv | libio: Warning: Finding 'icu' in system bus failed with 'Void
capability invoked'
fbdrv | Could not find LCD.
fbdrv | Failed to setup Framebuffer
mag | Error: Exception: Void capability invoked: requesting goos
info: backtrace ...
mag |
mag | MAG: destroy FB svc
Ned[lua]: Hm, cpapbility 42d000 does not support the meta protocol:
-2004
Ned: ERROR: rom/arm-rv-lcd.cfg:62: attempt to call method 'create' (a
nil value)