Running the IO server

Anna Fischer anna.fischer at hp.com
Mon Jul 11 17:43:58 CEST 2011


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)






More information about the l4-hackers mailing list