Hi Sven,
On Tuesday, 7. July 2009 10:38:49 Sven Fülster wrote:
Hi all,
sorry that I must repeat bothering you :)
I've now set up Genode on the OKL4 kernel for use on my Intel Atom hardware, and I see that sometime during the startup process, the pci-driver is kicked due to an error I don't understand:
-- [init -> test-dde_linux26_usbhid] Initializing DDE Linux 2.6 pa ge cache
Genode::Io_port_session_component::Io_port_session_component(Genode::Ran ge_allocator*, const char*): I/O port [cfc,d00) not available
That means the I/O port 'cfc' requested by the pci-driver is already in use by another component. Therefore, an exception is raised but not caught and you get all these subsequent error messages.
Maybe, your vesa-card's code used that port already?
Please instrument the function: 'static FB_Port* get_port(unsigned short port)' in file 'os/src/drivers/framebuffer/vesa/ifx86emu.cc', to check out who else wants to use that port, e.g. by jumping into the kernel debugger, when someone requested port 'cfc' and looking who's blocking on the active thread - the thread, that fulfills the port request.
Best regards Stefan
[init ->
pci_drv] v oid* fwrite(): fwrite - not yet implemented [init -> pci_drv] void* fputs(const c har*, void*): fputs: "Genode::Parent::Service_denied" [init -> pci_drv] void* fwr ite(): fwrite - not yet implemented [init -> pci_drv] void* abort(): abort called --
Do you have any idea what's missing in my setup?
Thanx in advance
Sven
-- Full startup log (sorry for the nasty tab width - what funny serial driver is this in the OKL kernel? :) ):
OKL4 - (provider: Open Kernel Labs) built on Jul 7 2009 09:27:57 using gcc vers ion 3.3.4.
kimg: 0x100200 - 0x147000
Found l4 kernel heap! at [00400000, 00800000)
pc99 heap [00400000, 00800000)
mapping heap at 0x400000
zero base f0400000 to end f0800000
done zero
parsing boot info at 0x4004000... int main(): --- create local services ---
int ma in(): --- start init --- int main(): Ok we have 48 MB transfered to init
int main( ): --- init created, waiting for exit condition --- [init] our quota limit is 503 64416 [init] our used quota is 147456 [init] starting timer with quota=1048576
[in it] using unique child name "timer" [init] starting pci_drv with quota=1048576
[in it] using unique child name "pci_drv" [init] starting test-dde_linux26_usbhid wit h quota=1048576 [init] using unique child name "test-dde_linux26_usbhid"
[init] ti mer registered service Timer [init -> pci_drv] PCI driver started [init] pci_drv r egistered service PCI [init] starting vesa_drv with quota=1048576 [init] using uni que child name "vesa_drv" [init] starting nitpicker with quota=1048576
[init] usin g unique child name "nitpicker" [init] vesa_drv registered service Framebuffer
[in it] test-dde_linux26_usbhid registered service Input [init -> vesa_drv] bool hand le_pci_port_write(short unsigned int, T) [with T = long unsigned int]: accessing unknown PCI device 10 [init -> vesa_drv] bool handle_pci_port_read(short unsigne d int, T*) [with T = X86emu::x86emuu16]: reading with size 2 not supported
[init -> vesa_drv] Found: VESA BIOS version 3.0 [init -> vesa_drv] OEM: Intel(r)Poulsbo Graphics Chip Accelerated VGA BIOS [init -> vesa_drv] bool handle_pci_port_write (short unsigned int, T) [with T = long unsigned int]: accessing unknown PCI devi ce 10 [init -> vesa_drv] bool handle_pci_port_read(short unsigned int, T*) [with T = X86emu::x86emuu16]: reading with size 2 not supported [init -> vesa_drv] bool handle_pci_port_write(short unsigned int, T) [with T = long unsigned int]: acce ssing unknown PCI device 10 [init -> test-dde_linux26_usbhid] Softirq daemon star ting [init -> vesa_drv] bool handle_pci_port_write(short unsigned int, T) [with T = long unsigned int]: accessing unknown PCI device 10 [init -> vesa_drv] bool ha ndle_pci_port_read(short unsigned int, T*) [with T = X86emu::x86emuu16]: reading with size 2 not supported [init -> test-dde_linux26_usbhid] void dde_thread_main (): --- initcalls [init -> test-dde_linux26_usbhid] Initializing DDE Linux 2.6 pa ge cache
Genode::Io_port_session_component::Io_port_session_component(Genode::Ran ge_allocator*, const char*): I/O port [cfc,d00) not available [init -> pci_drv] v oid* fwrite(): fwrite - not yet implemented [init -> pci_drv] void* fputs(const c har*, void*): fputs: "Genode::Parent::Service_denied" [init -> pci_drv] void* fwr ite(): fwrite - not yet implemented [init -> pci_drv] void* abort(): abort called
[init -> vesa_drv] bool handle_pci_port_write(short unsigned int, T) [with T = l ong unsigned int]: accessing unknown PCI device 10 [init -> vesa_drv] bool handle _pci_port_read(short unsigned int, T*) [with T = X86emu::x86emuu16]: reading wit h size 2 not supported [init -> vesa_drv] bool handle_pci_port_write(short unsign ed int, T) [with T = long unsigned int]: accessing unknown PCI device 10
[init -> vesa_drv] int Framebuffer_drv::set_mode(long unsigned int, long unsigned int, l ong unsigned int): FB phys at 0x81000000 size: 0x003d0000 [init -> nitpicker] fra mebuffer is 1024x768@...23... [init] nitpicker registered service Nitpicker
-- Sven Fülster
--- Enter the BlackBerry Developer Challenge This is your chance to win up to $100,000 in prizes! For a limited time, vendors submitting new applications to BlackBerry App World(TM) will have the opportunity to enter the BlackBerry Developer Challenge. See full prize details at: http://p.sf.net/sfu/blackberry _______________________________________________ Genode-main mailing list Genode-main@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/genode-main