Hello,
I assume you're using the binary version of the OpenTC snapshot. If so, in the OpenTC snapshot the support for l4fb wasn't enabled to be used in L4Linux and so the L4Linux binaries don't support l4fb. You will have to enable it in the L4Linux configuration and recompile L4Linux.
Alex B.
Tiago Lopes wrote:
Hello again,
After spending a week trying all configs I could find, I'm (again) asking for help. I'm using an unmodified Opentc June snapshot and trying to get L4linux and dope working. Dope e running fine and L4linux is started, but it seems that L4linux cannot find the l4fb, and so the system boots and writes fine to the terminal, but not to dope screen... Is this config actually supported? Someone could give me a working config? This is my config files and output: Any help is much appreciated!
Tiago Lopes
FILES: Grub config: ----------------------------------------------------------------------------------> default 0 timeout 1
set ROOT := (cd) set SERIAL ?= "-serial -serial_esc -comspeed 115200 -comport 1" set FIASCOARGS := "-nokdb -nowait $(SERIAL)"
title = test kernel $(ROOT)/tcb/bootstrap modaddr 0x02000000 module $(ROOT)/tcb/fiasco $(FIASCOARGS) module $(ROOT)/tcb/sigma0 module $(ROOT)/tcb/roottask -configfile task modname "bmodfs" attached 5 modules module $(ROOT)/tcb/roottask.config module $(ROOT)/tcb/events module $(ROOT)/tcb/names --events module $(ROOT)/tcb/dm_phys --events module $(ROOT)/tcb/simple_ts --events -t 300 module $(ROOT)/tcb/rtc --events module $(ROOT)/tcb/ore --events module $(ROOT)/tcb/l4io --events module $(ROOT)/tcb/l4dope --events module $(ROOT)/tcb/loader --events --fprov=BMODFS l4linux.cfg module $(ROOT)/tcb/bmodfs module $(ROOT)/tcb/libloader.s.so module $(ROOT)/tcb/libld-l4.s.so http://l4.s.so module $(ROOT)/tcb/l4linux.cfg module $(ROOT)/userland/l4linux2.6.21 module $(ROOT)/userland/drops-rd.rd vbeset 0x117 <----------------------------------------------------------------------------------
l4linux.cfg: ----------------------------------------------------------------------------------> sleep 2 task " l4linux2.6.21" "mem=128M root=/dev/ram load_ramdisk=1 ramdisk_size=16384 l4env_rd=drops-rd.rd lang=en video=l4fb earlyprintk=yes console=ttyLv0" all_sects_writable allow_vga <----------------------------------------------------------------------------------
Serial output: ----------------------------------------------------------------------------------> Welcome to Fiasco(ia32)! DD-L4(v2)/x86 microkernel (C) 1998-2007 TU Dresden Rev: rUNKNOWN compiled with gcc 4.1.2 for Intel Pentium Performance-critical config option(s) detected: CONFIG_ASSEMBLER_IPC_SHORTCUT is off CONFIG_NDEBUG is off CONFIG_NO_FRAME_PTR is off CONFIG_FINE_GRAINED_CPUTIME is on
Enabling special fully nested mode for PIC Using the PIT (i8254) on IRQ 0 for scheduling SERIAL ESC: allocated IRQ 4 for serial uart SERIAL ESC: allocated IRQ 4 for serial uart Not using serial hack in slow timer handler. Absolute KIP Syscalls using: Sysenter CPU: AuthenticAMD (6:8:0:0) Model: Athlon (Thoroughbred) at 698 MHz
16/256 Entry I TLB (4K pages) 8 Entry I TLB (4M pages) 32/256 Entry D TLB (4K pages) 8 Entry D TLB (4M pages) 64 KB L1 I Cache (2-way associative, 64 bytes per line) 64 KB L1 D Cache (2-way associative, 64 bytes per line) 256 KB L2 U Cache (8-way associative, 64 bytes per line)
Freeing init code/data: 24576 bytes (6 pages)
Calibrating timer loop... done. SIGMA0: Hello! KIP @ 1000 Found Fiasco: KIP syscalls: yes allocated 4KB for maintenance structures
Roottask. Command line found: "(cd)/tcb/roottask -configfile task modname "bmodfs" attached 5 modules"
409150kB ( 399MB) total RAM (reported by bootloader) 368704kB ( 361MB) received RAM from Sigma0 40096kB ( 40MB) reserved RAM for RMGR Received I/O ports 0000-ffff Attached irqs = [ <!0> 1 <!2> 3 <!4> 5 6 7 8 9 A B C D E F ]
Roottask: Parsing config file. configured task 0x02 (): vm_offs:0 irq:ffff lmcp:ffff allow_cli:0 mcp:ff prio:a0 small:ff mods:0 configured task 0x04 (): vm_offs:0 irq:ffff lmcp:ffff allow_cli:0 mcp:ff prio:a0 small:ff mods:0 configured task 0x00 (events): vm_offs:0 irq:ffff lmcp:ffff allow_cli:1 mcp:ff prio:a0 small:ff mods:0 configured task 0x00 (names): vm_offs:0 irq:ffff lmcp:ffff allow_cli:0 mcp:ff prio:a0 small:ff mods:0 configured task 0x00 (dm_phys): vm_offs:0 irq:ffff lmcp:ffff allow_cli:0 mcp:ff prio:a0 small:ff mods:0 configured task 0x00 (simple_ts): vm_offs:0 irq:ffff lmcp:ffff allow_cli:0 mcp:ff prio:a0 small:ff mods:0 configured task 0x00 (rtc): vm_offs:0 irq:ffff lmcp:ffff allow_cli:1 mcp:ff prio:10 small:ff mods:0 configured task 0x00 (l4io): vm_offs:0 irq:ffff lmcp:ffff allow_cli:1 mcp:ff prio:a0 small:ff mods:0 configured task 0x00 (ore): vm_offs:0 irq:ffff lmcp:ffff allow_cli:1 mcp:ff prio:a0 small:ff mods:0 configured task 0x00 (l4dope): vm_offs:0 irq:ffff lmcp:ffff allow_cli:1 mcp:ff prio:a0 small:ff mods:0 configured task 0x00 (bmodfs): vm_offs:0 irq:ffff lmcp:ffff allow_cli:0 mcp:ff prio:a0 small:ff mods:0 configured task 0x00 (loader): vm_offs:0 irq:ffff lmcp:ffff allow_cli:1 mcp:ff prio:a0 small:ff mods:0 configured task 0x00 (l4linux2.6.21): vm_offs:0 irq:ffff lmcp:ffff allow_cli:1 mcp:ff prio:10 small:ff mods:0
Roottask: Parsing command line config. configured task 0x00 (bmodfs): vm_offs:0 irq:ffff lmcp:ffff allow_cli:0 mcp:ff prio:10 small:ff mods:5
Roottask: Loading 15 modules. #05: loading "(cd)/tcb/events" from [0812c000-0816e66c] to [01540000-01548c10][01549000-0155e5d0] entry at 00062368 via trampoline page code symbols at [18ffe000-19000000] (8kB), lines at [18ff7000-18ffe000] (28kB) #06: loading "(cd)/tcb/names --events" from [0816f000-081ae253] to [002d0000-002d5e6a][002d6000-002e1000] entry at 00063370 via trampoline page code symbols at [18ff5000-18ff7000] (8kB), lines at [18fef000-18ff5000] (24kB) #07: loading "(cd)/tcb/dm_phys --events" from [081af000-0823b38c] to [01500000-015121ca][01513000-0151d000] entry at 00064374 via trampoline page code symbols at [18fea000-18fef000] (20kB), lines at [18fdd000-18fea000] (52kB) #08: loading "(cd)/tcb/simple_ts --events -t 300" from [0823c000-08287d04] to [01400000-014080ea][01409000-01418608] entry at 0006537c via trampoline page code symbols at [18fdb000-18fdd000] (8kB), lines at [18fd3000-18fdb000] (32kB) #09: loading "(cd)/tcb/rtc --events" from [08288000-082b8ec1] to [01080000-010840e0][01085000-0108a000] entry at 00066370 via trampoline page code symbols at [18fd1000-18fd3000] (8kB), lines at [18fcc000-18fd1000] (20kB) #0a: loading "(cd)/tcb/ore --events" from [082b9000-084aaada] to [01800000-018371f9][01838000-01867000] entry at 00067370 via trampoline page code symbols at [18fc3000-18fcc000] (36kB), lines at [18f9a000-18fc3000] (164kB) #0b: loading "(cd)/tcb/l4io --events" from [084ab000-08703e28] to [00b80000-00ba22a5][00ba3000-00c0a000] entry at 00069370 via trampoline page code symbols at [18f48000-18f9a000] (328kB), lines at [18f2e000-18f48000] (104kB) #0c: loading "(cd)/tcb/l4dope --events" from [08704000-08871e76] to [01b00000-01b411a1][01b42000-01b83000] entry at 0006a374 via trampoline page code symbols at [18f20000-18f2e000] (56kB), lines at [16ed9000-16f05000] (176kB) #0d: loading "(cd)/tcb/loader --events --fprov=BMODFS l4linux.cfg" from [08872000-0894a9e4] to [01300000-01324ef9][01325000-01343000] entry at 0006b38c via trampoline page code symbols at [18f1a000-18f20000] (24kB), lines at [18f01000-18f1a000] (100kB) #0e: loading "(cd)/tcb/bmodfs" from [0894b000-089ea5d0] to [01220000-01235659][01236000-0124d000] passing module (cd)/tcb/libloader.s.so [ 089eb000-08a89c02 ] passing module (cd)/tcb/libld- l4.s.so http://l4.s.so [ 08a8a000-08b039c9 ] passing module (cd)/tcb/l4linux.cfg [ 08b04000-08b0420d ] passing module (cd)/userland/l4linux2.6.21 [ 08b05000-096b4aad ] passing module (cd)/userland/drops-rd.rd [ 096b5000-0a6b5000 ] entry at 0006c438 via trampoline page code symbols at [16ed4000-16ed9000] (20kB), lines at [16ec2000-16ed4000] (72kB)
names | Starting thread listening for `exit' events ROOT: Sending ports 0070-0070 to task #09 ROOT: Sending ports 0080-0080 to task #09 ROOT: Sending ports 0071-0071 to task #09 *simplets| Configured for 300 tasks. *l4dope | DOpE(init): using events mechanism *io | Enabling events support. *bmodfs | Passed the following modules: *bmodfs | module "(cd)/tcb/libloader.s.so" (636kB) *bmodfs | module "(cd)/tcb/libld- l4.s.so http://l4.s.so" (487kB) *bmodfs | module "(cd)/tcb/l4linux.cfg" (1kB) *bmodfs | module "(cd)/userland/l4linux2.6.21" (11967kB) *bmodfs | module "(cd)/userland/drops- rd.rd" (16384kB) ROOT: Sending ports 0cfb-0cfb to task #0b ROOT: Sending ports 0cf8-0cfb to task #0b ROOT: Sending ports 0cfe-0cff to task #0b *io | PCI: Using configuration type 1 *io | PCI: Probing PCI hardware *io | PCI: Probing PCI hardware (bus 00) ROOT: Sending ports 0cfc-0cff to task #0b *io | PCI: Cannot allocate resource region 4 of device 00:07.1 *io | Limiting direct PCI/PCI transfers. *io | 00000000-ffffffff : PCI mem *io | e8000000-ebffffff : Intel Corporation 440BX/ZX/DX - 82443BX/ZX/DX H *io : ost bridge *io | ec000000-ec7fffff : VMware Inc [VMware SVGA II] PCI Display Adapter *io | ec800000-ec800fff : LSI Logic / Symbios Logic 53c1030 PCI-X Fusion- *io : MPT Dual Ultra320 SCSI *io | f0000000-f7ffffff : VMware Inc [VMware SVGA II] PCI Display Adapter *io | 0000-ffff : PCI IO *io | 0cf8-0cff : PCI conf1 *io | 1000-103f : Intel Corporation 82371AB/EB/MB PIIX4 ACPI *io | 1040-105f : Intel Corporation 82371AB/EB/MB PIIX4 ACPI *io | 1060-106f : VMware Inc [VMware SVGA II] PCI Display Adapter *io | 1070-107f : Intel Corporation 82371AB/EB/MB PIIX4 IDE *io | 1080-10ff : LSI Logic / Symbios Logic 53c1030 PCI-X Fusion-MPT Dual *io : Ultra320 SCSI *io | 1400-147f : Advanced Micro Devices [AMD] 79c970 [PCnet32 LANCE] *io | Available IRQs=[ <!0> 1 <!2> 3 <!4> 5 6 7 8 9 a b c d e f ] *rtc | Date:04.09.2007 Time:21:45:27 *l4dope | L4INPUT native mode activated *l4dope | L4INPUT: !!! W A R N I N G !!! *l4dope | L4INPUT: Please, do not use Fiasco's "-esc" with L4INPUT. *l4dope | L4INPUT: !!! W A R N I N G !!! ROOT: Sending ports 0060-006f to task #0b *loader | sleeping for 2000 ms *l4dope | serio: i8042 AUX port at 0x60,0x64 irq 12 *l4dope | serio: i8042 KBD port at 0x60,0x64 irq 1 *l4dope | input: ImPS/2 Generic Wheel Mouse on isa0060/serio1 *l4dope | input: AT Translated Set 2 keyboard on isa0060/serio0 *l4dope | input: PC Speaker *l4dope | input: L4 input event injector *loader | l4linux2.6.21: Starting application using libld-l4.s.so http://libld-l4.s.so *loader | l4linux2.6.21,#f: Loading binary *l4dope | L4 input event injector: IRQ handler up *l4dope | connect "ImPS/2 Generic Wheel Mouse", isa0060/serio1/input0 *l4dope | connect "AT Translated Set 2 keyboard", isa0060/serio0/input0 *l4dope | connect "PC Speaker", isa0061/input0 *l4dope | connect "L4 input event injector", l4/sys *l4dope | SharedMem(alloc): hl.raw=e0000, id=43, size=800 *l4dope | SharedMem(get_adr): address = 0x6000 *l4dope | SharedMem(alloc): hl.raw=e0000, id=44, size=800 *l4dope | SharedMem(get_adr): address = 0x7000 *l4dope | SharedMem(alloc): hl.raw=e0000, id=45, size=800 *l4dope | SharedMem(get_adr): address = 0xd000 *l4dope | SharedMem(alloc): hl.raw=e0000, id=46, size=800 *l4dope | SharedMem(get_adr): address = 0xe000 *l4dope | SharedMem(alloc): hl.raw=e0000, id=47, size=800 *l4dope | SharedMem(get_adr): address = 0xf000 *l4dope | SharedMem(alloc): hl.raw=e0000, id=49, size=800 *l4dope | SharedMem(get_adr): address = 0x16000 *l4dope | SharedMem(alloc): hl.raw=e0000, id=4a, size=800 *l4dope | SharedMem(get_adr): address = 0x17000 *l4dope | dope: paddr=f0000000 size=16384KiB *l4dope | Mapped video memory at f0000000 to 03000000+000000 [16384kB] via L4IO *l4dope | mapping: vaddr=0x3000000 size=16777216(0x1000000) offset=0(0x0) *l4dope | Frame buffer base: 0x3000000 *l4dope | Resolution: 1024x768x16 *l4dope | Bytes per scanline: 2048 *l4dope | Current video mode is 1024x768 red=11:5 green=5:6 blue=0:5 res=0:0 *loader | l4linux2.6.21,#f: Loading ldso *loader | l4linux2.6.21,#f: Starting libld-l4.s.so http://libld-l4.s.so at 00013800 via 0000cc04 *ore | l4dde_mm_init(): Using ... *ore | 16 MB at 0x00180000 (vmem) *ore | 16 MB in 1 regions (kmem) *ore | pcnet32.c:v1.30h 06.24.2004 tsbogend@alpha.franken.de mailto:tsbogend@alpha.franken.de ROOT: Sending ports 1400-141f to task #0b *ore | pcnet32: PCnet/PCI II 79C970A at 0x1400, 00 0c 29 f9 37 6a assigned I *ore : RQ 11. *ore | eth0: registered as PCnet/PCI II 79C970A *ore | pcnet32: 1 cards_found. *ore | main(): initialized DDELinux2.4 *ore | main(): loopback: 0 *ore | device lo entered promiscuous mode *ore | device eth0 entered promiscuous mode *ore | main(): Initialized 2 network devices. *ore | Device = lo, IRQ = 0, MAC = 00:00:00:00:00:00 *ore | Device = eth0, IRQ = 11, MAC = 00:0C:29:F9:37:6A *ore | main(): Registering 'ORe' at names... *ore | main(): Ready for service. *l4lx | ======> L4Linux 2.6 starting... <======== *l4lx | Linux version 2.6.21-l4 (tjcl@fx242) (gcc version 4.1.2) #4 Mon Sep 3 *l4lx : 00:47:41 WEST 2007 *l4lx | Binary name: l4linux2.6.21 *l4lx | Kernel command line (9 args): mem=128M root=/dev/ram load_ramdisk=1 r *l4lx : amdisk_size=16384 l4env_rd=drops-rd.rd lang=en video=l4fb earlyprintk *l4lx : =yes console=ttyLv0 *l4lx | Image: 00400000 - 00683000 [2572 KiB]. *l4lx | Areas: Text: 00400000 - 005e9000 [1956kB] (a bit longer) *l4lx | Data: 005e9000 - 005fe2cc [84kB] *l4lx | Initdata: 00602000 - 006260a0 [144kB] *l4lx | BSS: 00628000 - 00680900 [354kB] *l4lx | l4lx_thread_create: Created thread 0f.03 (tamer) *l4lx | Using tamed mode. ROOT: Sending all ports (for cli/sti) to task #0d *l4lx | Got 65536 out of 65536 I/O ports *l4lx | l4lx_thread_create: Created thread 0f.04 (server) *l4lx | main thread will be 0f.04 *l4lx | l4env_register_pointer_section: addr = 00600000 size = 536576 *l4lx | sec-w-init: virt: 0x00600000 to 0x00682fff [524 KiB] *l4lx | sec-w-init: Number of physical regions: 1, 536576 Bytes *l4lx | sec-w-init: 1: Phys: 0x006d0000 to 0x00753000, Size: 536576 *l4lx | l4env_linux_startup thread 4. *l4lx | Main thread running, waiting... *l4lx | main thread: received startup message. *l4lx | setup_l4env_memory: Forcing superpages for main memory *l4lx | Main memory size: 128MB *l4lx | Main memory: virt: 0x00800000 to 0x087fffff [131072 KiB] *l4lx | Main memory: Number of physical regions: 1, 134217728 Bytes *l4lx | Main memory: 1: Phys: 0x0a800000 to 0x12800000, Size: 134217728 *l4lx | Filling lower ptabs... *l4lx | Done (1338 entries). *l4lx | l4env_rd_path: drops-rd.rd *l4lx | Loading: drops-rd.rd *l4lx | INITRD: Size of RAMdisk is 16384KiB *l4lx | RAMdisk from 08800000 to 09800000 [16384KiB] Linux version 2.6.21-l4 (tjcl@fx242) (gcc version 4.1.2) #4 Mon Sep 3 00:47:41 WEST 2007 CPU: Vendor unknown, using generic init. CPU: Your system may be unstable. dm_phys: 0000000000800000 - 0000000008800000 (usable) 128MB memory available. INITRD: 08800000 - 09800000 Zone PFN ranges: DMA 0 -> 512 Normal 512 -> 34816 early_node_map[1] active PFN ranges 0: 0 -> 34816 Allocating PCI resources starting at 10000000 (gap: 08800000:f7800000) Built 1 zonelists. Total pages: 34544 Kernel command line: mem=128M root=/dev/ram load_ramdisk=1 ramdisk_size=16384 l4env_rd=drops-rd.rd lang=en video=l4fb earlyprintk=yes console=ttyLv0 Initializing CPU#0 PID hash table entries: 1024 (order: 10, 4096 bytes) Detected 698.657 MHz processor. Console: colour dummy device 80x25 l4ser_init_ports l4ser: input not enabled! Dentry cache hash table entries: 32768 (order: 5, 131072 bytes) Inode-cache hash table entries: 16384 (order: 4, 65536 bytes) Memory: 129620k/139264k available (1726k kernel code, 1312k reserved, 314k data, 144k init, 0k highmem) virtual kernel memory layout: fixmap : 0xffffc000 - 0xfffff000 ( 12 kB) vmalloc : 0x10000000 - 0x18000000 ( 128 MB) lowmem : 0x00000000 - 0x08800000 ( 136 MB) .init : 0x00602000 - 0x006260a0 ( 144 kB) .data : 0x005af8c4 - 0x005fe2cc ( 314 kB) .text : 0x00400000 - 0x005af8c4 (1726 kB) l4lx_irq_timer_startup(0) *l4lx | l4lx_thread_create: Created thread 0f.05 (timer.i0) timer_irq_thread: Starting timer IRQ thread. Calibrating delay using timer specific routine.. 1464.63 BogoMIPS (lpj=7323198) Mount-cache hash table entries: 512 Compat vDSO mapped to 0040d000. CPU: AuthenticAMD mobile AMD Athlon(tm) XP 1800+ stepping 00 NET: Registered protocol family 16 Setting up standard PCI resources SCSI subsystem initialized NET: Registered protocol family 2 Time: tsc clocksource has been installed. *l4lx | l4lx_thread_create: Created thread 0f.06 (Idler) IP route cache hash table entries: 2048 (order: 1, 8192 bytes) TCP established hash table entries: 8192 (order: 4, 65536 bytes) TCP bind hash table entries: 8192 (order: 3, 32768 bytes) TCP: Hash tables configured (established 8192 bind 8192) TCP reno registered checking if image is initramfs...it isn't (bad gzip magic numbers); looks like an initrd Clocksource tsc unstable (delta = 114219382 ns) Time: jiffies clocksource has been installed. INITRD: Freeing memory. io scheduler noop registered (default) L4 serial driver l4ser_init_ports l4ser: input not enabled! ttyLv0 at MMIO 0x1 (irq = 0) is a L4 RAMDISK driver initialized: 16 RAM disks of 16384K size 1024 blocksize *l4lx | Creating 1 ORe device(s). *l4lx | Opening device eth0 at ORe instance ORe *l4lx | l4ore_open(): called *l4lx | l4ore_open(): descriptor: 0 *l4lx | ore_lookup_server(): ORe server ORe = A.02 *l4lx | ore_do_open(): called *ore | __init_mac(): Allocating physical MAC address to client. *ore | __init_mac(): MAC = 00:0C:29:F9:37:6A *l4lx | ore_do_open(): opened. worker = A.07 eth0: L4Ore card found with 00:0C:29:F9:37:6A, IRQ 11 SCSI Media Changer driver v0.25 TCP cubic registered NET: Registered protocol family 1 NET: Registered protocol family 17 RAMDISK: ext2 filesystem found at block 0 RAMDISK: Loading 16384KiB [1 disk] into ram disk... done. EXT2-fs warning: checktime reached, running e2fsck is recommended VFS: Mounted root (ext2 filesystem). INIT: version 2.84 booting Loading /etc/console/boottime.kmap.gz Activating swap. System time was Tue Sep 4 21:46:40 UTC 2007. Setting the System Clock using the Hardware Clock as reference... hwclock is unable to get I/O port access: the iopl(3) call failed. System Clock set. System local time is now Tue Sep 4 21:46:43 UTC 2007. Checking all file systems... fsck 1.27 (8-Mar-2002) Setting kernel variables. Loading the saved-state of the serial devices... Mounting local filesystems... nothing was mounted Setting up IP spoofing protection: rp_filter. Configuring network interfaces: eth0: Overwriting IRQ type for IRQ 11 with l4ore type! *l4lx | l4x_ore_irq_startup *l4lx | l4lx_thread_create: Created thread 0f.07 (L4OreRcv) eth0: interface up. eth0: Overwriting IRQ type for IRQ 11 with l4ore type! *l4lx | l4x_ore_irq_startup *l4lx | l4lx_thread_create: Created thread 0f.07 (L4OreRcv) eth0: interface up. Operation failed. done. No IP found! at /etc/rcS.d/S40sethostname line 30. Starting portmap daemon: portmap.
Setting the System Clock using the Hardware Clock as reference... hwclock is unable to get I/O port access: the iopl(3) call failed. System Clock set. Local time: Tue Sep 4 23:48:14 CEST 2007
Cleaning: /tmp /var/lock /var/run. INIT: Entering runlevel: 2 No user config loaded! <----------------------------------------------------------------------------------
l4-hackers mailing list l4-hackers@os.inf.tu-dresden.de http://os.inf.tu-dresden.de/mailman/listinfo/l4-hackers