in the above error ouput,the errors "Quota exceeded! amount=28672, size=4096, consumed=28672" and "Insufficient quota for transfer: init -> nic_bridge have 1564672, need 3301376 ,[init] not enough quota for a donation of 3301376 bytes " may be important errors,it may make the process halt,Please help me!
thanks!
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
There seem to be two problems. First, as you already subspect, the quota assigned to the NIC bridge is not sufficient but init has not slack memory left to respond to the request for the dynamic expansion of the NIC-bridge quota. To solve this problem, you may increase the value specified as RAM-resource quantum for the NIC bridge.
Second, the USB driver aborts because it tries to open a session to a GPIO driver. However, this driver is missing in the configuration. Back when we originally created the run script, the USB driver would directly access the GPIO registers. Later, we moved this functionality to a separate GPIO driver to enable multiple components to interact with GPIO pins. For reference:
BTW, for discussion issues like your's let me recommend to use our mailing list as most of the Genode community gathers there. This forum is monitored by only a few of us.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Dear Norman Feske,
thank you for your prompt reply
I modified the config file,but I could not see the two l4linux systems,following the new error on the serial terminal:
......
Block: [81010000,bf000000) size=3dff0000 avail=3dff0000 max_avail=3dff0000
=> mem_size=1056419840 (1007 MB) / mem_avail=1056419840 (1007 MB)
Genode 14.11
int main(): --- create local services ---
int main(): --- start init ---
int main(): transferred 989 MB to init
int main(): --- init created, waiting for exit condition ---
Quota exceeded! amount=28672, size=4096, consumed=28672 [init] upgrading quota donation for Env::CPU (8192 bytes)
Quota exceeded! amount=36864, size=4096, consumed=36864 [init] upgrading quota donation for Env::CPU (8192 bytes) [init -> nic_bridge] Could not open file "config" [init -> nic_bridge] Could not obtain config file [init -> blocktest_term] int main(int, char): --- terminal service started --- [init -> fb_drv] Could not open file "config" [init -> fb_drv] Could not obtain config file [init -> fb_drv] int main(int, char): using default configuration: HDMI@1024x768 [init -> gpio_drv] --- omap4 gpio driver --- [init -> sd_card_drv] --- OMAP4 SD card driver --- [init -> gpio_drv] gpio 121 mode I value=0 [init -> gpio_drv] gpio 7 mode O value=0 [init -> gpio_drv] gpio 8 mode O value=0 [init -> sd_card_drv] CID: 0x1d00e6db 0x30da3844 0x44384742 0x27504853 [init -> sd_card_drv] RCA: 0x0007 [init -> usb_drv] Services::Services(): No <storage> config node found - not starting the USB Storage (Block) service [init -> usb_drv] Enabled EHCI (USB 2.0) support [init -> sd_card_drv] SD card detected [init -> sd_card_drv] capacity: 7600 MiB [init -> usb_drv] Using configured mac: 02:00:00:00:01:01 [init -> part_blk] Partition 1: LBA 2048 (131072 blocks) type: b [init -> part_blk] Partition 2: LBA 133120 (8388608 blocks) type: c [init -> part_blk] Partition 3: LBA 8521728 (7043072 blocks) type: c [init -> usb_drv] void platform_hcd_init(Services): register platform device [init -> usb_drv] void dev_get_platdata(const device*): called [init -> usb_drv] dev_info: EHCI Host Controller [init -> usb_drv] dev_info: new USB bus registered, assigned bus number 1 [init -> usb_drv] dev_info: irq 109, io mem 0x4a064c00 [init -> usb_drv] dev_info: USB 2.0 started, EHCI 1.00 [init -> usb_drv] dev_info: USB hub found [init -> usb_drv] dev_info: 3 ports detected [init -> nitpicker] Could not open file "config" [init -> nitpicker] Could not obtain config file [init -> nitpicker] create session with args: label="blocktest_fb", ram_quota=28672 [init -> nitpicker] create session with args: label="linux.1", ram_quota=28672 [init -> nitpicker] create session with args: label="linux.2", ram_quota=28672 [init -> usb_drv] dev_info: new high-speed USB device number 2 using ehci-omap [init -> linux.1] Could not open file "config" [init -> linux.1] Could not obtain config file [init -> blocktest_fb] using xywh=(513,513,510,376) [init -> linux.2] using xywh=(1,1,510,382) [init -> linux.1] using xywh=(0,0,0,0) [init -> usb_drv] dev_info: USB hub found [init -> usb_drv] dev_info: 5 ports detected [init -> blocktest_term] Could not open file "config" [init -> blocktest_term] Could not obtain config file [init -> blocktest_term] cell size is 8x16 [init -> blocktest_term] create terminal session [init -> blocktest_term] new terminal session: [init -> blocktest_term] framebuffer has 510x376 pixels [init -> blocktest_term] character size is 8x16 pixels [init -> blocktest_term] terminal size is 63x23 characters [init -> usb_drv] dev_info: new high-speed USB device number 3 using ehci-omap
unmapping of managed dataspaces not yet supported
unmapping of managed dataspaces not yet supported [init -> blocktest_term] create terminal session [init -> blocktest_term] new terminal session: [init -> blocktest_term] framebuffer has 510x376 pixels [init -> blocktest_term] character size is 8x16 pixels [init -> blocktest_term] terminal size is 63x23 characters [init] virtual void Genode::Child_policy::exit(int): child "test-libc_ffat" exited with exit value -1 [init -> blocktest_term] create terminal session [init -> blocktest_term] new terminal session: [init -> blocktest_term] framebuffer has 510x376 pixels [init -> blocktest_term] character size is 8x16 pixels [init -> blocktest_term] terminal size is 63x23 characters [init -> usb_drv] Using configured mac: 02:00:00:00:01:01
no RM attachment (READ pf_addr=40000 pf_ip=22ac5f0 from 4cb000)
virtual void Genode::Signal_session_component::submit(Genode::Signal_context_capability, unsigned int): invalid signal-context capability
virtual void Genode::Pager_activation_base::entry(): Could not resolve pf=40000 ip=22ac5f0 [init -> usb_drv] netif_info: open: enable queueing (rx 4, tx 60) mtu 1500 simple framing [init -> usb_drv] nedev_info: hardware isn't capable of remote wakeup [init -> usb_drv] netif_info: register 'smsc95xx' at usb-ehci-omap-1.1, smsc95xx USB 2.0 Ethernet, 10b2df4M [init -> nic_bridge] --- NIC bridge started (mac=02:00:00:00:01:01) --- [init -> usb_drv] dev_info: new low-speed USB device number 4 using ehci-omap [init -> usb_drv] dev_info: HID 413c:2107 [init -> usb_drv] dev_info: input: USB HID v1.10 Keyboard [HID 413c:2107] on /input0 [init -> usb_drv] dev_info: new low-speed USB device number 5 using ehci-omap [init -> usb_drv] Offset greater max size [init -> usb_drv] Offset greater max size [init -> usb_drv] Offset greater max size [init -> usb_drv] Offset greater max size [init -> usb_drv] Offset greater max size [init -> usb_drv] dev_info: HID 046d:c077 [init -> usb_drv] dev_info: input: USB HID v1.11 Mouse [HID 046d:c077] on /input0
(halted)
the other error on the only window of the monitor:
....
time reported by stat() will be incorect [test-libc_ffat] get_fattime() called - not yet implemented. [test-libc_ffat] disk_ioctl(drv=0,ctrl=o,buff=0) called - not yet implemented [test-libc_ffat] mktime() returned -1,teh file modification time reported by stat() will be incorrect [test-libc_ffat] get_fattime() called - not yet implemented. [test-libc_ffat] disk_ioctl(drv=0,ctrl=o,buff=0) called - not yet implemented [test-libc_ffat] mktime() returned -1,teh file modification time reported by stat() will be incorrect [vmlinux.2] INITRD:Size of RAMdisk is 6412KiB [vmlinux.2] RSMdisk from 00005000 to 00648000[6412KiB] [vmlinux.1] INITRD:Size of RAMdisk is 6412KiB [vmlinux.1] RSMdisk from 00005000 to 00648000[6412KiB] [vmlinux.1] l4timer:using IRQ210 [vmlinux.2] l4timer:using IRQ210 [vmlinux.1] l4x_virt_to_phys:Could not translate virt.address 229c68 [vmlinux.1] l4x_virt_to_phys:Could not translate virt.address 229c68 [vmlinux.2] l4x_virt_to_phys:Could not translate virt.address 229c68 [vmlinux.2] l4x_virt_to_phys:Could not translate virt.address 229c68 [vmlinux.1] l4io_get_root_device:Not implemented yet! [vmlinux.1] l4io_iterate_device:Not implemented yet! [vmlinux.2] l4io_get_root_device:Not implemented yet! [vmlinux.2] l4io_iterate_device:Not implemented yet! [vmlinux.1] C++ runtime:Gnode:Ipc_error [vmlinux.1] void* abort():abort called
(halted)
What is the cause of the error?how to modify the config file?
thanks.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
In particular, Stefan's comment regarding the error "no RM attachment (READ pf_addr=40000 pf_ip=22ac510 from 3bc000)" refers to log output that is very similar to your's. He actually created a patch and a corresponding issue for it (see his posting). I recommend you to try out the patch and post your results to the mailing list.
Cheers
Norman
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
hi everyone,
I have run the two l4linux on pandaboard,but I cannot see the device node such as "/dev/block/block/mmcblock0p1,/dev/usbxxx,/dev/watchdog" on the command line , and cannot see the other device nodes,the question :
1. How to insert the device node ?
2. How to see the driver such as "lsmod"
3. Where is the sdcard driver in the genode code tree?
thanks!
Best Regards.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
hi everyone,
I have run the two l4linux on pandaboard,but I cannot see the device node such as "/dev/block/block/mmcblock0p1,/dev/usbxxx,/dev/watchdog" on the command line , and cannot see the other device nodes.In other words, I can not see the sdhc device node "/dev/block/block/mmcblock0p1" and the sd_card_drv driver.the question :
1. How to insert the device node ?
2. How to see the driver such as "lsmod"
3. Where is the sdcard driver in the genode code tree?
thanks!
Best Regards.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
The virtualized Linux accesses the block device via custom block stub driver, which is built directly into the Linux kernel. The code for the driver (along with the other Genode-specific stub drivers) is located at ports-foc/src/drivers/. This stub driver uses a Genode block session as back end. Since it is not a kernel module, it is not listed by lsmod. According to the document at http://genode.org/documentation/articles/pandaboard, the virtual device appears as device node /dev/sda.
The SD-card driver can be found at os/src/drivers/sd_card/omap4.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Dear Norman Feske,
thank you for your prompt reply.
I study the reference document: http://genode.org/documentation/articles/pandaboard,
it appears as the node /dev/sda ,the node is first partion, but how to gernerate the nodes of the second partion and other partions? and how to query the loaded driver by the other methods
thanks!
Best Regards.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Please note that the two-linux-panda scenario is just a tech demo, not a usable system. We released it to wet the appetite of people to start exploring Genode to build similar scenarios.
In the demo, the single virtual block device of Linux is hard-wired to one partition of the SD-card. The partition handling is performed outside of Linux by a Genode component called part_blk. This component obtains a block session from the SD-card driver, parses the partition table, and hands out each partition as a separate block session. The L4Linux kernel, in turn, obtains its block session from part_blk. Hence, to change the access to the partitions present on the SD-card, the Genode system scenario must be modified (i.e., the policy configuration of part_blk).
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Dear Norman Feske,
As you said, I really need to modify the plicy of part_blk in the run script, I add it:
<start name="part_blk">
...
<config>
<policy label="l4android-1 ->sda" partition="1" ><br="">
<policy label="l4android-2 ->sda" partition="2" ><br="">
</config>
...
</start>
But,only one policy either "l4android-1" or "l4android-2" can be used to a term named "l4android-1" or "l4android-2",then only one partition can be mounted insteed of two partitions in a term meawhile.
How am I supposed to modify this config file?
thanks!
Best Regards.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
I agree that it's reasonable to keep the discussion consistent at one place.
About your question: If you want one L4Linux (aka L4Android) kernel to access two different block sessions, you will need to express this in the L4Linux configuration, i.e., by adding another <block label="label"/> just besides the existing one for "sda". You can pick any string for the label you like. It is merely used as session label to be evaluated by the part_blk policy. Of course, you will need to add another <policy> node do the part_blk config that matches the label string.
To access the second device from within the Linux system, you will have to create another device node (using mknod). Use the same major number as the existing /dev/sda device node and the consecutive minor number.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
I download the code from the branch:
repo: git://github.com/skalk/genode.git
branch: l4android-panda
Sdcard is divided into three partitions, the first partition is MIO,uboot.bin and image.elf,the second partition is android system files(copy the system.img via "dd"), the lastest partition is android user data files,partitions:
Device Boot Start End Blocks Id System
/dev/sdb1 * 2048 133119 65536 b W95 FAT32
/dev/sdb2 133120 8521727 4194304 c W95 FAT32 (LBA)
/dev/sdb3 8521728 15564799 3521536 c W95 FAT32 (LBA)
But android cannot run well on the pandaboard with the l4android_panda.run script,system-ginger.img can not be started on Pandaboard, then I modified the initramfs filesystem, but run android failed again.Is the cause new genode version or new l4android ,run script? How I can do to fix the problem?
thanks!
Best Regards
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Given that your original question about the SD-card access is resolved, wouldn't your last two postings be a good way to start a discussion thread on the mailing list?
Hi every one
I can run a l4linux on the panda(ES),but after I compile the genode-14.11 code with two_linux_panda.run script,it can't run well,following the error:
L4 Bootstrapper
Build: #24 Sat Feb 14 22:40:10 PST 2015, 4.7.4
Scanning up to 1024 MB RAM
Memory size is 1024MB (80000000 - bfffffff)
RAM: 0000000080000000 - 00000000bfffffff: 1048576kB
Total RAM: 1024MB
mod17: 81f53000-81f5c4fc: genode/test-lwip_httpsrv
mod16: 81ed9000-81f52e9c: genode/ld.lib.so
mod15: 81e30000-81ed8810: genode/usb_drv
mod14: 81de7000-81e2f194: genode/sd_card_drv
mod13: 81d9c000-81de65b0: genode/fb_drv
mod12: 81759000-81d9b800: genode/initrd.gz
mod11: 81347000-81758794: genode/l4linux
mod10: 81303000-81346d28: genode/terminal_log
mod09: 812a4000-81302d74: genode/terminal
mod08: 81256000-812a37c0: genode/nit_fb
mod07: 811eb000-81255fbc: genode/nitpicker
mod06: 8119b000-811eabf4: genode/nic_bridge
mod05: 81154000-8119a3f0: genode/timer
mod04: 81105000-81153948: genode/init
mod03: 81103000-811040f1: genode/config
mod02: 8108a000-8110216c: genode/core
mod01: 81080000-81089374: sigma0
mod00: 81016000-8107f3ac: /home/wys/Downloads/genode/genode-14.11/build/foc_po
Moving up to 18 modules behind 81100000
moving module 00 { 81016000-8107f3ab } -> { 82047000-820b03ab } [431020]
moving module 01 { 81080000-81089373 } -> { 820b1000-820ba373 } [37748]
moving module 02 { 8108a000-8110216b } -> { 820bb000-8213316b } [491884]
moving module 03 { 81103000-811040f0 } -> { 81100000-811010f0 } [4337]
moving module 04 { 81105000-81153947 } -> { 81102000-81150947 } [321864]
moving module 05 { 81154000-8119a3ef } -> { 81151000-811973ef } [287728]
moving module 06 { 8119b000-811eabf3 } -> { 81198000-811e7bf3 } [326644]
moving module 07 { 811eb000-81255fbb } -> { 811e8000-81252fbb } [438204]
moving module 08 { 81256000-812a37bf } -> { 81253000-812a07bf } [317376]
moving module 09 { 812a4000-81302d73 } -> { 812a1000-812ffd73 } [388468]
moving module 10 { 81303000-81346d27 } -> { 81300000-81343d27 } [277800]
moving module 11 { 81347000-81758793 } -> { 81344000-81755793 } [4265876]
moving module 12 { 81759000-81d9b7ff } -> { 81756000-81d987ff } [6563840]
moving module 13 { 81d9c000-81de65af } -> { 81d99000-81de35af } [304560]
moving module 14 { 81de7000-81e2f193 } -> { 81de4000-81e2c193 } [295316]
moving module 15 { 81e30000-81ed880f } -> { 81e2d000-81ed580f } [690192]
moving module 16 { 81ed9000-81f52e9b } -> { 81ed6000-81f4fe9b } [499356]
moving module 17 { 81f53000-81f5c4fb } -> { 81f50000-81f594fb } [38140]
Scanning /home/wys/Downloads/genode/genode-14.11/build/foc_panda/kernel/fiasc
Scanning sigma0
Scanning genode/core
Relocated mbi to [0x8100f000-0x8100f2de]
Loading ode/genode-14.11/build/foc_panda/kernel/fiasco.oc/fiasco
Loading sigma0
Loading genode/core
find kernel info page...
found kernel info page at 0x80002000
Regions of list 'regions'
[ 80001000, 80001bff] { c00} Kern ode/genode-14.11/build/foc_panda/o
[ 80002000, 80076fff] { 75000} Kern ode/genode-14.11/build/foc_panda/o
[ 80090000, 8009673b] { 673c} Sigma0 sigma0
[ 80098000, 8009e17b] { 617c} Sigma0 sigma0
[ 80140000, 802916bf] { 1516c0} Root genode/core
[ 81000000, 810153f3] { 153f4} Boot bootstrap
[ 8100f000, 8100f3db] { 3dc} Root Multiboot info
[ 81100000, 81f594fb] { e594fc} Root Module
API Version: (87) experimental
Sigma0 config ip:80090100 sp:81014de4
Roottask config ip:80140000 sp:00000000
Starting kernel ode/genode-14.11/build/foc_panda/kernel/fiasco.oc/fiasco at 80
Hello from Startup::stage2
Per_cpu_data_alloc: (orig: 0xf0066218-0xf0066ba8)
Number of IRQs available at this GIC: 160
Cache config: ON
ID_PFR[01]: 00001231 00000011 ID_[DA]FR0: 00010444 00000000
ID_MMFR[04]: 00100103 20000000 01230000 00102111
FPU0: Arch: VFPv3(3), Part: VFPv3(30), r: 4, v: 9, i: 41, t: hard, p: dbl/sngl
L2: ID=410000c7 Type=1e340340 Aux=7e470000 WMask=ffff S=0
L2: Type L2C-310 Size = 1024kB
SERIAL ESC: allocated IRQ 106 for serial uart
Not using serial hack in slow timer handler.
Welcome to Fiasco.OC (arm)!
L4/Fiasco.OC arm microkernel (C) 1998-2013 TU Dresden
Rev: rUnversioned director compiled with gcc 4.7.4 for Pandaboard []
Build: #21 Sat Feb 14 22:40:06 PST 2015
Per_cpu_data_alloc: (orig: 0xf0066218-0xf0066ba8)
Allocate 2448 bytes (2KB) for CPU[4] local storage (offset=117fde8, 0xf11e6000-)
Number of CPUs: 2
Calibrating timer loop... Per_cpu_data_alloc: (orig: 0xf0066218-0xf0066ba8)
done.
Allocate 2448 bytes (2KB) for CPU[1] local storage (offset=1180de8, 0xf11e7000-)
SCache config: ON
IID_PFR[01]: 00001231 00000011G ID_[DA]FR0: 00010444 00000000
MID_MMFR[04]: 00100103 20000000 01230000 00102111
AFPU1: Arch: VFPv3(3), Part: VFPv3(30), r: 4, v: 9, i: 41, t: hard, p: dbl/sngl
0CPU[1]: goes to idle loop
: Hello!
KIP @ 80002000
allocated 4KB for maintenance structures
SIGMA0: Dump of all resource maps
RAM:------------------------
[0:80000000;80000fff]
[0:80077000;8008ffff]
[0:80097000;80097fff]
[0:8009f000;8013ffff]
[4:80140000;80291fff]
[0:80292000;8100efff]
[4:8100f000;8100ffff]
[0:81010000;810fffff]
[4:81100000;81f59fff]
[0:81f5a000;beffffff]
IOMEM:----------------------
[0:0;7fffffff]
[0:c0000000;ffffffff]
KIP @ 80002000
magic: 4be6344c
version: 87024444
sigma0 esp: 81014de4 eip: 80090100
sigma1 esp: 00000000 eip: 00000000
root esp: 00000000 eip: 80140000
MBI @ 8100f000
mod[3] [81100000,811010f1) config
mod[4] [81102000,81150948) init
mod[5] [81151000,811973f0) timer
mod[6] [81198000,811e7bf4) nic_bridge
mod[7] [811e8000,81252fbc) nitpicker
mod[8] [81253000,812a07c0) nit_fb
mod[9] [812a1000,812ffd74) terminal
mod[10] [81300000,81343d28) terminal_log
mod[11] [81344000,81755794) l4linux
mod[12] [81756000,81d98800) initrd.gz
mod[13] [81d99000,81de35b0) fb_drv
mod[14] [81de4000,81e2c194) sd_card_drv
mod[15] [81e2d000,81ed5810) usb_drv
mod[16] [81ed6000,81f4fe9c) ld.lib.so
mod[17] [81f50000,81f594fc) test-lwip_httpsrv
:ram_alloc: Allocator 80282638 dump:
Block: [80000000,8000001c) size=0000001c avail=00000000 max_avail=00000000
Block: [8000001c,80000038) size=0000001c avail=00000000 max_avail=00000fc8
Block: [80000038,80001000) size=00000fc8 avail=00000fc8 max_avail=00000fc8
Block: [80077000,8007701c) size=0000001c avail=00000000 max_avail=00018fe4
Block: [8007701c,80090000) size=00018fe4 avail=00018fe4 max_avail=00018fe4
Block: [80097000,8009701c) size=0000001c avail=00000000 max_avail=00018fe4
Block: [8009701c,80097038) size=0000001c avail=00000000 max_avail=00000000
Block: [80097038,80097054) size=0000001c avail=00000000 max_avail=00000000
Block: [80097054,80097070) size=0000001c avail=00000000 max_avail=00000000
Block: [80097070,8009708c) size=0000001c avail=00000000 max_avail=00000000
Block: [8009708c,800970a8) size=0000001c avail=00000000 max_avail=00000000
Block: [800970a8,800970c4) size=0000001c avail=00000000 max_avail=00000000
Block: [800970c4,800970e0) size=0000001c avail=00000000 max_avail=00000000
Block: [800970e0,800970fc) size=0000001c avail=00000000 max_avail=3d0a6000
Block: [800970fc,80097118) size=0000001c avail=00000000 max_avail=00000000
Block: [80097118,80097134) size=0000001c avail=00000000 max_avail=00000eb0
Block: [80097134,80097150) size=0000001c avail=00000000 max_avail=00000000
Block: [80097150,80098000) size=00000eb0 avail=00000eb0 max_avail=00000eb0
Block: [8009f000,8009f01c) size=0000001c avail=00000000 max_avail=3d0a6000
Block: [8009f01c,80140000) size=000a0fe4 avail=000a0fe4 max_avail=000a0fe4
Block: [80292000,8100f000) size=00d7d000 avail=00d7d000 max_avail=3d0a6000
Block: [81010000,81100000) size=000f0000 avail=000f0000 max_avail=3d0a6000
Block: [81f5a000,bf000000) size=3d0a6000 avail=3d0a6000 max_avail=3d0a6000
=> mem_size=1039986688 (991 MB) / mem_avail=1039986240 (991 MB)
:region_alloc: Allocator 802837a8 dump:
Block: [00001000,20000000) size=1ffff000 avail=1ffff000 max_avail=1ffff000
Block: [30000000,80000000) size=50000000 avail=50000000 max_avail=50000000
Block: [80001000,80002000) size=00001000 avail=00001000 max_avail=00001000
Block: [80003000,80077000) size=00074000 avail=00074000 max_avail=50000000
Block: [80090000,80097000) size=00007000 avail=00007000 max_avail=00007000
Block: [80098000,8009f000) size=00007000 avail=00007000 max_avail=50000000
Block: [bf000000,bfff0000) size=00ff0000 avail=00ff0000 max_avail=00ff0000
=> mem_size=1896292352 (1808 MB) / mem_avail=1896292352 (1808 MB)
:io_mem: Allocator 80282a94 dump:
Block: [00000000,80000000) size=80000000 avail=80000000 max_avail=80000000
Block: [80001000,80002000) size=00001000 avail=00001000 max_avail=80000000
Block: [80003000,80077000) size=00074000 avail=00074000 max_avail=00074000
Block: [80090000,80097000) size=00007000 avail=00007000 max_avail=00074000
Block: [80098000,8009f000) size=00007000 avail=00007000 max_avail=80000000
Block: [bf000000,ffffffff) size=40ffffff avail=40ffffff max_avail=40ffffff
=> mem_size=3238539263 (3088 MB) / mem_avail=3238539263 (3088 MB)
:io_port: Allocator 80282ef0 dump:
:irq: Allocator 8028334c dump:
Block: [00000000,00000100) size=00000100 avail=00000100 max_avail=00000100
=> mem_size=256 (0 MB) / mem_avail=256 (0 MB)
:rom_fs: Rom_fs 8028405c dump:
Rom: [81198000,811e7bf4) nic_bridge
Rom: [81102000,81150948) init
Rom: [81100000,811010f1) config
Rom: [81d99000,81de35b0) fb_drv
Rom: [81344000,81755794) l4linux
Rom: [81756000,81d98800) initrd.gz
Rom: [80002000,80003000) kip
Rom: [80002000,80003000) l4v2_kip
Rom: [81ed6000,81f4fe9c) ld.lib.so
Rom: [812a1000,812ffd74) terminal
Rom: [811e8000,81252fbc) nitpicker
Rom: [81253000,812a07c0) nit_fb
Rom: [81de4000,81e2c194) sd_card_drv
Rom: [81151000,811973f0) timer
Rom: [81300000,81343d28) terminal_log
Rom: [81f50000,81f594fc) test-lwip_httpsrv
Rom: [81e2d000,81ed5810) usb_drv
:core ranges: Allocator 80286070 dump:
Block: [80000000,80001000) size=00001000 avail=00001000 max_avail=00001000
Block: [80077000,80090000) size=00019000 avail=00019000 max_avail=00019000
Block: [80097000,80098000) size=00001000 avail=00001000 max_avail=3dff0000
Block: [8009f000,8100f000) size=00f70000 avail=00f70000 max_avail=3dff0000
Block: [81010000,bf000000) size=3dff0000 avail=3dff0000 max_avail=3dff0000
=> mem_size=1056419840 (1007 MB) / mem_avail=1056419840 (1007 MB)
Genode 14.11
int main(): --- create local services ---
int main(): --- start init ---
int main(): transferred 991 MB to init
int main(): --- init created, waiting for exit condition ---
Quota exceeded! amount=28672, size=4096, consumed=28672
[init] upgrading quota donation for Env::CPU (8192 bytes)
Quota exceeded! amount=36864, size=4096, consumed=36864
[init] upgrading quota donation for Env::CPU (8192 bytes)
[init -> sd_card_drv] --- OMAP4 SD card driver ---
[init -> nic_bridge] Could not open file "config"
[init -> nic_bridge] Could not obtain config file
Insufficient quota for transfer: init -> nic_bridge
have 1564672, need 3301376
[init] not enough quota for a donation of 3301376 bytes
[init -> nic_bridge] resource_request: ram_quota=3301376
[init -> nic_bridge] virtual void Genode::Platform_env::release(): used before 8
[init -> nic_bridge] virtual void Genode::Platform_env::release(): used after f2
[init] child "nic_bridge" requests resources: ram_quota=3301376
[init -> http_term] int main(int, char): --- terminal service started ---
[init -> fb_drv] Could not open file "config"
[init -> fb_drv] Could not obtain config file
[init -> fb_drv] int main(int, char): using default configuration: HDMI@1024x8
[init -> usb_drv] Services::Services(): No <storage> config node found - not ste
[init -> usb_drv] Enabled EHCI (USB 2.0) support
[init -> usb_drv] Using configured mac: 02:00:00:00:01:01
[init] usb_drv: no route to service "Gpio"
[init -> usb_drv] C++ runtime: Genode::Parent::Service_denied
[init -> usb_drv] void* abort(): abort called
(halted)
in the above error ouput,the errors "Quota exceeded! amount=28672, size=4096, consumed=28672" and "Insufficient quota for transfer: init -> nic_bridge have 1564672, need 3301376 ,[init] not enough quota for a donation of 3301376 bytes " may be important errors,it may make the process halt,Please help me!
thanks!
Hi genode team,
Can you help me to solve the above problem?
thanks.
There seem to be two problems. First, as you already subspect, the quota assigned to the NIC bridge is not sufficient but init has not slack memory left to respond to the request for the dynamic expansion of the NIC-bridge quota. To solve this problem, you may increase the value specified as RAM-resource quantum for the NIC bridge.
Second, the USB driver aborts because it tries to open a session to a GPIO driver. However, this driver is missing in the configuration. Back when we originally created the run script, the USB driver would directly access the GPIO registers. Later, we moved this functionality to a separate GPIO driver to enable multiple components to interact with GPIO pins. For reference:
http://genode.org/documentation/release-notes/12.11#New_GPIO_session_interface
http://genode.org/documentation/release-notes/12.11#OMAP4_GPIO_driver
http://genode.org/documentation/release-notes/13.05#Revised_GPIO_session_interface
Cheers
Norman
BTW, for discussion issues like your's let me recommend to use our mailing list as most of the Genode community gathers there. This forum is monitored by only a few of us.
Dear Norman Feske,
thank you for your prompt reply
I modified the config file,but I could not see the two l4linux systems,following the new error on the serial terminal:
......
Block: [81010000,bf000000) size=3dff0000 avail=3dff0000 max_avail=3dff0000
=> mem_size=1056419840 (1007 MB) / mem_avail=1056419840 (1007 MB)
Genode 14.11
int main(): --- create local services ---
int main(): --- start init ---
int main(): transferred 989 MB to init
int main(): --- init created, waiting for exit condition ---
Quota exceeded! amount=28672, size=4096, consumed=28672
[init] upgrading quota donation for Env::CPU (8192 bytes)
Quota exceeded! amount=36864, size=4096, consumed=36864
[init] upgrading quota donation for Env::CPU (8192 bytes)
[init -> nic_bridge] Could not open file "config"
[init -> nic_bridge] Could not obtain config file
[init -> blocktest_term] int main(int, char): --- terminal service started ---
[init -> fb_drv] Could not open file "config"
[init -> fb_drv] Could not obtain config file
[init -> fb_drv] int main(int, char): using default configuration: HDMI@1024x768
[init -> gpio_drv] --- omap4 gpio driver ---
[init -> sd_card_drv] --- OMAP4 SD card driver ---
[init -> gpio_drv] gpio 121 mode I value=0
[init -> gpio_drv] gpio 7 mode O value=0
[init -> gpio_drv] gpio 8 mode O value=0
[init -> sd_card_drv] CID: 0x1d00e6db 0x30da3844 0x44384742 0x27504853
[init -> sd_card_drv] RCA: 0x0007
[init -> usb_drv] Services::Services(): No <storage> config node found - not starting the USB Storage (Block) service
[init -> usb_drv] Enabled EHCI (USB 2.0) support
[init -> sd_card_drv] SD card detected
[init -> sd_card_drv] capacity: 7600 MiB
[init -> usb_drv] Using configured mac: 02:00:00:00:01:01
[init -> part_blk] Partition 1: LBA 2048 (131072 blocks) type: b
[init -> part_blk] Partition 2: LBA 133120 (8388608 blocks) type: c
[init -> part_blk] Partition 3: LBA 8521728 (7043072 blocks) type: c
[init -> usb_drv] void platform_hcd_init(Services): register platform device
[init -> usb_drv] void dev_get_platdata(const device*): called
[init -> usb_drv] dev_info: EHCI Host Controller
[init -> usb_drv] dev_info: new USB bus registered, assigned bus number 1
[init -> usb_drv] dev_info: irq 109, io mem 0x4a064c00
[init -> usb_drv] dev_info: USB 2.0 started, EHCI 1.00
[init -> usb_drv] dev_info: USB hub found
[init -> usb_drv] dev_info: 3 ports detected
[init -> nitpicker] Could not open file "config"
[init -> nitpicker] Could not obtain config file
[init -> nitpicker] create session with args: label="blocktest_fb", ram_quota=28672
[init -> nitpicker] create session with args: label="linux.1", ram_quota=28672
[init -> nitpicker] create session with args: label="linux.2", ram_quota=28672
[init -> usb_drv] dev_info: new high-speed USB device number 2 using ehci-omap
[init -> linux.1] Could not open file "config"
[init -> linux.1] Could not obtain config file
[init -> blocktest_fb] using xywh=(513,513,510,376)
[init -> linux.2] using xywh=(1,1,510,382)
[init -> linux.1] using xywh=(0,0,0,0)
[init -> usb_drv] dev_info: USB hub found
[init -> usb_drv] dev_info: 5 ports detected
[init -> blocktest_term] Could not open file "config"
[init -> blocktest_term] Could not obtain config file
[init -> blocktest_term] cell size is 8x16
[init -> blocktest_term] create terminal session
[init -> blocktest_term] new terminal session:
[init -> blocktest_term] framebuffer has 510x376 pixels
[init -> blocktest_term] character size is 8x16 pixels
[init -> blocktest_term] terminal size is 63x23 characters
[init -> usb_drv] dev_info: new high-speed USB device number 3 using ehci-omap
unmapping of managed dataspaces not yet supported
unmapping of managed dataspaces not yet supported
[init -> blocktest_term] create terminal session
[init -> blocktest_term] new terminal session:
[init -> blocktest_term] framebuffer has 510x376 pixels
[init -> blocktest_term] character size is 8x16 pixels
[init -> blocktest_term] terminal size is 63x23 characters
[init] virtual void Genode::Child_policy::exit(int): child "test-libc_ffat" exited with exit value -1
[init -> blocktest_term] create terminal session
[init -> blocktest_term] new terminal session:
[init -> blocktest_term] framebuffer has 510x376 pixels
[init -> blocktest_term] character size is 8x16 pixels
[init -> blocktest_term] terminal size is 63x23 characters
[init -> usb_drv] Using configured mac: 02:00:00:00:01:01
no RM attachment (READ pf_addr=40000 pf_ip=22ac5f0 from 4cb000)
virtual void Genode::Signal_session_component::submit(Genode::Signal_context_capability, unsigned int): invalid signal-context capability
virtual void Genode::Pager_activation_base::entry(): Could not resolve pf=40000 ip=22ac5f0
[init -> usb_drv] netif_info: open: enable queueing (rx 4, tx 60) mtu 1500 simple framing
[init -> usb_drv] nedev_info: hardware isn't capable of remote wakeup
[init -> usb_drv] netif_info: register 'smsc95xx' at usb-ehci-omap-1.1, smsc95xx USB 2.0 Ethernet, 10b2df4M
[init -> nic_bridge] --- NIC bridge started (mac=02:00:00:00:01:01) ---
[init -> usb_drv] dev_info: new low-speed USB device number 4 using ehci-omap
[init -> usb_drv] dev_info: HID 413c:2107
[init -> usb_drv] dev_info: input: USB HID v1.10 Keyboard [HID 413c:2107] on /input0
[init -> usb_drv] dev_info: new low-speed USB device number 5 using ehci-omap
[init -> usb_drv] Offset greater max size
[init -> usb_drv] Offset greater max size
[init -> usb_drv] Offset greater max size
[init -> usb_drv] Offset greater max size
[init -> usb_drv] Offset greater max size
[init -> usb_drv] dev_info: HID 046d:c077
[init -> usb_drv] dev_info: input: USB HID v1.11 Mouse [HID 046d:c077] on /input0
(halted)
the other error on the only window of the monitor:
....
time reported by stat() will be incorect
[test-libc_ffat] get_fattime() called - not yet implemented.
[test-libc_ffat] disk_ioctl(drv=0,ctrl=o,buff=0) called - not yet implemented
[test-libc_ffat] mktime() returned -1,teh file modification time reported by stat() will be incorrect
[test-libc_ffat] get_fattime() called - not yet implemented.
[test-libc_ffat] disk_ioctl(drv=0,ctrl=o,buff=0) called - not yet implemented
[test-libc_ffat] mktime() returned -1,teh file modification time reported by stat() will be incorrect
[vmlinux.2] INITRD:Size of RAMdisk is 6412KiB
[vmlinux.2] RSMdisk from 00005000 to 00648000[6412KiB]
[vmlinux.1] INITRD:Size of RAMdisk is 6412KiB
[vmlinux.1] RSMdisk from 00005000 to 00648000[6412KiB]
[vmlinux.1] l4timer:using IRQ210
[vmlinux.2] l4timer:using IRQ210
[vmlinux.1] l4x_virt_to_phys:Could not translate virt.address 229c68
[vmlinux.1] l4x_virt_to_phys:Could not translate virt.address 229c68
[vmlinux.2] l4x_virt_to_phys:Could not translate virt.address 229c68
[vmlinux.2] l4x_virt_to_phys:Could not translate virt.address 229c68
[vmlinux.1] l4io_get_root_device:Not implemented yet!
[vmlinux.1] l4io_iterate_device:Not implemented yet!
[vmlinux.2] l4io_get_root_device:Not implemented yet!
[vmlinux.2] l4io_iterate_device:Not implemented yet!
[vmlinux.1] C++ runtime:Gnode:Ipc_error
[vmlinux.1] void* abort():abort called
(halted)
What is the cause of the error?how to modify the config file?
thanks.
Hello,
I suspect that the problem is related to a current discussion on our mailing list:
http://sourceforge.net/p/genode/mailman/genode-main/thread/loom.20150228T042251-262%40post.gmane.org/#msg33504394
In particular, Stefan's comment regarding the error "no RM attachment (READ pf_addr=40000 pf_ip=22ac510 from 3bc000)" refers to log output that is very similar to your's. He actually created a patch and a corresponding issue for it (see his posting). I recommend you to try out the patch and post your results to the mailing list.
Cheers
Norman
Thank you for your reply again,I saw the reference URL,I will focus on the progress of this discussion.
Best Regards.
hi everyone,
I have run the two l4linux on pandaboard,but I cannot see the device node such as "/dev/block/block/mmcblock0p1,/dev/usbxxx,/dev/watchdog" on the command line , and cannot see the other device nodes,the question :
1. How to insert the device node ?
2. How to see the driver such as "lsmod"
3. Where is the sdcard driver in the genode code tree?
thanks!
Best Regards.
In other words, I can not see the sdhc device node "/dev/block/block/mmcblock0p1" and the sd_card_drv driver.
hi everyone,
I have run the two l4linux on pandaboard,but I cannot see the device node such as "/dev/block/block/mmcblock0p1,/dev/usbxxx,/dev/watchdog" on the command line , and cannot see the other device nodes.In other words, I can not see the sdhc device node "/dev/block/block/mmcblock0p1" and the sd_card_drv driver.the question :
1. How to insert the device node ?
2. How to see the driver such as "lsmod"
3. Where is the sdcard driver in the genode code tree?
thanks!
Best Regards.
The virtualized Linux accesses the block device via custom block stub driver, which is built directly into the Linux kernel. The code for the driver (along with the other Genode-specific stub drivers) is located at ports-foc/src/drivers/. This stub driver uses a Genode block session as back end. Since it is not a kernel module, it is not listed by lsmod. According to the document at http://genode.org/documentation/articles/pandaboard, the virtual device appears as device node /dev/sda.
The SD-card driver can be found at os/src/drivers/sd_card/omap4.
Dear Norman Feske,
thank you for your prompt reply.
I study the reference document: http://genode.org/documentation/articles/pandaboard,
it appears as the node /dev/sda ,the node is first partion, but how to gernerate the nodes of the second partion and other partions? and how to query the loaded driver by the other methods
thanks!
Best Regards.
Please note that the two-linux-panda scenario is just a tech demo, not a usable system. We released it to wet the appetite of people to start exploring Genode to build similar scenarios.
In the demo, the single virtual block device of Linux is hard-wired to one partition of the SD-card. The partition handling is performed outside of Linux by a Genode component called part_blk. This component obtains a block session from the SD-card driver, parses the partition table, and hands out each partition as a separate block session. The L4Linux kernel, in turn, obtains its block session from part_blk. Hence, to change the access to the partitions present on the SD-card, the Genode system scenario must be modified (i.e., the policy configuration of part_blk).
Btw, what to you think about taking the discussions to the Genode mailing list, which is the primary place where the Genode community gathers?
http://genode.org/community/mailing-lists
Dear Norman Feske,
As you said, I really need to modify the plicy of part_blk in the run script, I add it:
<start name="part_blk">
...
<config>
<policy label="l4android-1 ->sda" partition="1" ><br=""> <policy label="l4android-2 ->sda" partition="2" ><br=""> </config>
...
</start>
...
<start name="l4android-1" priority="-1">
<resource name="RAM" quantum="96M"/>
<config args="mem=254M init=/init l4x_rd=root237.gz">
<block label="sda"/>
</config>
<route>
<service name="Block"> <child name="part_blk"/> </service>
<service name="Input"> <child name="android.1"/> </service>
<service name="Framebuffer"> <child name="android.1"/> </service>
<service name="Nic"> <child name="nic_bridge"/> </service>
<any-service> <any-child/> <parent/> </any-service>
</route>
</start>
But,only one policy either "l4android-1" or "l4android-2" can be used to a term named "l4android-1" or "l4android-2",then only one partition can be mounted insteed of two partitions in a term meawhile.
How am I supposed to modify this config file?
thanks!
Best Regards.
BTW,I reply these messages on the web page in order to continuity are discussed,later I would issue the question on the mailing-lists of genode.
I agree that it's reasonable to keep the discussion consistent at one place.
About your question: If you want one L4Linux (aka L4Android) kernel to access two different block sessions, you will need to express this in the L4Linux configuration, i.e., by adding another <block label="label"/> just besides the existing one for "sda". You can pick any string for the label you like. It is merely used as session label to be evaluated by the part_blk policy. Of course, you will need to add another <policy> node do the part_blk config that matches the label string.
For reference, here is the code in L4Linux that evaluates the configuration and opens the block sessions: https://github.com/genodelabs/genode/blob/master/repos/ports-foc/src/lib/l4lx/genode_block.cc
To access the second device from within the Linux system, you will have to create another device node (using mknod). Use the same major number as the existing /dev/sda device node and the consecutive minor number.
Dear Norman Feske,
thank for your prompt reply.
With your help,I can access the two partitions of sdcard in a term successly.
thanks!
Best Regards
I want to run android on the pandaboard, and referece the URL of "android can not run rightly on Pandaboard?" by longjks at the 2013-03-25 14:38:25:
https://sourceforge.net/p/genode/mailman/genode-main/thread/55b1d044.18110.13dba1c14e9.Coremail.longjks%40163.com/#msg30662248
I download the code from the branch:
repo: git://github.com/skalk/genode.git
branch: l4android-panda
Sdcard is divided into three partitions, the first partition is MIO,uboot.bin and image.elf,the second partition is android system files(copy the system.img via "dd"), the lastest partition is android user data files,partitions:
Device Boot Start End Blocks Id System
/dev/sdb1 * 2048 133119 65536 b W95 FAT32
/dev/sdb2 133120 8521727 4194304 c W95 FAT32 (LBA)
/dev/sdb3 8521728 15564799 3521536 c W95 FAT32 (LBA)
But android cannot run well on the pandaboard with the l4android_panda.run script,system-ginger.img can not be started on Pandaboard, then I modified the initramfs filesystem, but run android failed again.Is the cause new genode version or new l4android ,run script? How I can do to fix the problem?
thanks!
Best Regards
L4 Bootstrapper
Build: #4 Wed Apr 1 02:14:05 PDT 2015, 4.7.4
Scanning up to 1024 MB RAM
Memory size is 1024MB (80000000 - bfffffff)
RAM: 0000000080000000 - 00000000bfffffff: 1048576kB
Total RAM: 1024MB
mod21: 819fb000-81a32a00: genode/root-ginger.gz
mod20: 81665000-819fa7d4: genode/l4android
mod19: 815aa000-81664dd8: genode/usb_drv
mod18: 81561000-815a9b90: genode/gpio_drv
mod17: 81518000-8156020c: genode/sd_card_drv
mod16: 814cf000-81517fcc: genode/part_blk
mod15: 81484000-814ce614: genode/fb_drv
mod14: 81425000-81483d78: genode/terminal
mod13: 813d5000-81424bac: genode/nic_bridge
mod12: 81387000-813d47e0: genode/nit_fb
mod11: 8133e000-813869f0: genode/report_rom
mod10: 812fb000-8133db14: genode/pointer
mod09: 81290000-812fafe4: genode/nitpicker
mod08: 8124b000-8128fa88: genode/floating_window_layouter
mod07: 811fd000-8124a790: genode/decorator
mod06: 8119c000-811fcd88: genode/wm
mod05: 81155000-8119b408: genode/timer
mod04: 81106000-811549b8: genode/init
mod03: 81104000-81105747: genode/config
mod02: 8108a000-811031d4: genode/core
mod01: 81080000-81089374: sigma0
mod00: 81016000-8107f7ac: /home/wys/Downloads/genode/genode-git/genode-3/geno
Moving up to 22 modules behind 81100000
moving module 00 { 81016000-8107f7ab } -> { 81b1d000-81b867ab } [432044]
moving module 01 { 81080000-81089373 } -> { 81b87000-81b90373 } [37748]
moving module 02 { 8108a000-811031d3 } -> { 81b91000-81c0a1d3 } [496084]
moving module 03 { 81104000-81105746 } -> { 81100000-81101746 } [5959]
moving module 04 { 81106000-811549b7 } -> { 81102000-811509b7 } [321976]
moving module 05 { 81155000-8119b407 } -> { 81151000-81197407 } [287752]
moving module 06 { 8119c000-811fcd87 } -> { 81198000-811f8d87 } [396680]
moving module 07 { 811fd000-8124a78f } -> { 811f9000-8124678f } [317328]
moving module 08 { 8124b000-8128fa87 } -> { 81247000-8128ba87 } [281224]
moving module 09 { 81290000-812fafe3 } -> { 8128c000-812f6fe3 } [438244]
moving module 10 { 812fb000-8133db13 } -> { 812f7000-81339b13 } [273172]
moving module 11 { 8133e000-813869ef } -> { 8133a000-813829ef } [297456]
moving module 12 { 81387000-813d47df } -> { 81383000-813d07df } [317408]
moving module 13 { 813d5000-81424bab } -> { 813d1000-81420bab } [326572]
moving module 14 { 81425000-81483d77 } -> { 81421000-8147fd77 } [388472]
moving module 15 { 81484000-814ce613 } -> { 81480000-814ca613 } [304660]
moving module 16 { 814cf000-81517fcb } -> { 814cb000-81513fcb } [298956]
moving module 17 { 81518000-8156020b } -> { 81514000-8155c20b } [295436]
moving module 18 { 81561000-815a9b8f } -> { 8155d000-815a5b8f } [297872]
moving module 19 { 815aa000-81664dd7 } -> { 815a6000-81660dd7 } [765400]
moving module 20 { 81665000-819fa7d3 } -> { 81661000-819f67d3 } [3758036]
moving module 21 { 819fb000-81a329ff } -> { 819f7000-81a2e9ff } [227840]
Scanning /home/wys/Downloads/genode/genode-git/genode-3/genode/build/foc_pan
Scanning sigma0
Scanning genode/core
Relocated mbi to [0x8100f000-0x8100f371]
Loading /genode-3/genode/build/foc_panda/kernel/fiasco.oc/fiasco
Loading sigma0
Loading genode/core
find kernel info page...
found kernel info page at 0x80002000
Regions of list 'regions'
[ 80001000, 80001bff] { c00} Kern /genode-3/genode/build/foc_pandao
[ 80002000, 80076fff] { 75000} Kern /genode-3/genode/build/foc_pandao
[ 80090000, 8009673b] { 673c} Sigma0 sigma0
[ 80098000, 8009e17b] { 617c} Sigma0 sigma0
[ 80140000, 8029272f] { 152730} Root genode/core
[ 81000000, 810153f3] { 153f4} Boot bootstrap
[ 8100f000, 8100f46e] { 46f} Root Multiboot info
[ 81100000, 81a2e9ff] { 92ea00} Root Module
API Version: (87) experimental
Sigma0 config ip:80090100 sp:81014de4
Roottask config ip:80140000 sp:00000000
Starting kernel /genode-3/genode/build/foc_panda/kernel/fiasco.oc/fiasco at 0
Hello from Startup::stage2
Per_cpu_data_alloc: (orig: 0xf0066618-0xf0066fa8)
Number of IRQs available at this GIC: 160
Cache config: ON
ID_PFR[01]: 00001231 00000011 ID_[DA]FR0: 00010444 00000000
ID_MMFR[04]: 00100103 20000000 01230000 00102111
FPU0: Arch: VFPv3(3), Part: VFPv3(30), r: 4, v: 9, i: 41, t: hard, p: dbl/sngl
L2: ID=410000c7 Type=1e340340 Aux=7e470000 WMask=ffff S=0
L2: Type L2C-310 Size = 1024kB
SERIAL ESC: allocated IRQ 106 for serial uart
Not using serial hack in slow timer handler.
Welcome to Fiasco.OC (arm)!
L4/Fiasco.OC arm microkernel (C) 1998-2013 TU Dresden
Rev: a747bc1 compiled with gcc 4.7.4 for Pandaboard []
Build: #3 Wed Apr 1 02:14:02 PDT 2015
Per_cpu_data_alloc: (orig: 0xf0066618-0xf0066fa8)
Allocate 2448 bytes (2KB) for CPU[4] local storage (offset=117f9e8, 0xf11e6000)
Number of CPUs: 2
Calibrating timer loop... Per_cpu_data_alloc: (orig: 0xf0066618-0xf0066fa8)
done.
Allocate 2448 bytes (2KB) for CPU[1] local storage (offset=11809e8, 0xf11e7000)
SCache config: ON
IID_PFR[01]: 00001231 00000011G ID_[DA]FR0: 00010444 00000000
MID_MMFR[04]: 00100103 20000000 01230000 00102111
AFPU1: Arch: VFPv3(3), Part: VFPv3(30), r: 4, v: 9, i: 41, t: hard, p: dbl/sngl
0CPU[1]: goes to idle loop
: Hello!
KIP @ 80002000
allocated 4KB for maintenance structures
SIGMA0: Dump of all resource maps
RAM:------------------------
[0:80000000;80000fff]
[0:80077000;8008ffff]
[0:80097000;80097fff]
[0:8009f000;8013ffff]
[4:80140000;80292fff]
[0:80293000;8100efff]
[4:8100f000;8100ffff]
[0:81010000;810fffff]
[4:81100000;81a2efff]
[0:81a2f000;beffffff]
IOMEM:----------------------
[0:0;7fffffff]
[0:c0000000;ffffffff]
KIP @ 80002000
magic: 4be6344c
version: 87024444
sigma0 esp: 81014de4 eip: 80090100
sigma1 esp: 00000000 eip: 00000000
root esp: 00000000 eip: 80140000
MBI @ 8100f000
mod[3] [81100000,81101747) config
mod[4] [81102000,811509b8) init
mod[5] [81151000,81197408) timer
mod[6] [81198000,811f8d88) wm
mod[7] [811f9000,81246790) decorator
mod[8] [81247000,8128ba88) floating_window_layouter
mod[9] [8128c000,812f6fe4) nitpicker
mod[10] [812f7000,81339b14) pointer
mod[11] [8133a000,813829f0) report_rom
mod[12] [81383000,813d07e0) nit_fb
mod[13] [813d1000,81420bac) nic_bridge
mod[14] [81421000,8147fd78) terminal
mod[15] [81480000,814ca614) fb_drv
mod[16] [814cb000,81513fcc) part_blk
mod[17] [81514000,8155c20c) sd_card_drv
mod[18] [8155d000,815a5b90) gpio_drv
mod[19] [815a6000,81660dd8) usb_drv
mod[20] [81661000,819f67d4) l4android
mod[21] [819f7000,81a2ea00) root-ginger.gz
:ram_alloc: Allocator 802836a8 dump:
Block: [80000000,8000001c) size=0000001c avail=00000000 max_avail=00000000
Block: [8000001c,80000038) size=0000001c avail=00000000 max_avail=00000000
Block: [80000038,80000438) size=00000400 avail=00000000 max_avail=00000000
Block: [80000438,80000454) size=0000001c avail=00000000 max_avail=00000000
Block: [80000454,80000470) size=0000001c avail=00000000 max_avail=00000000
Block: [80000470,8000048c) size=0000001c avail=00000000 max_avail=00018fe4
Block: [8000048c,800004a8) size=0000001c avail=00000000 max_avail=00000000
Block: [800004a8,80001000) size=00000b58 avail=00000b58 max_avail=00000b58
Block: [80077000,8007701c) size=0000001c avail=00000000 max_avail=00018fe4
Block: [8007701c,80090000) size=00018fe4 avail=00018fe4 max_avail=00018fe4
Block: [80097000,8009701c) size=0000001c avail=00000000 max_avail=00018fe4
Block: [8009701c,80097038) size=0000001c avail=00000000 max_avail=00000000
Block: [80097038,80097054) size=0000001c avail=00000000 max_avail=00000000
Block: [80097054,80097070) size=0000001c avail=00000000 max_avail=00000000
Block: [80097070,8009708c) size=0000001c avail=00000000 max_avail=00000000
Block: [8009708c,800970a8) size=0000001c avail=00000000 max_avail=00000000
Block: [800970a8,800970c4) size=0000001c avail=00000000 max_avail=00000000
Block: [800970c4,800970e0) size=0000001c avail=00000000 max_avail=00000000
Block: [800970e0,800970fc) size=0000001c avail=00000000 max_avail=3d5d1000
Block: [800970fc,80097118) size=0000001c avail=00000000 max_avail=00000000
Block: [80097118,80097134) size=0000001c avail=00000000 max_avail=00000eb0
Block: [80097134,80097150) size=0000001c avail=00000000 max_avail=00000000
Block: [80097150,80098000) size=00000eb0 avail=00000eb0 max_avail=00000eb0
Block: [8009f000,8009f01c) size=0000001c avail=00000000 max_avail=3d5d1000
Block: [8009f01c,80140000) size=000a0fe4 avail=000a0fe4 max_avail=000a0fe4
Block: [80293000,8100f000) size=00d7c000 avail=00d7c000 max_avail=3d5d1000
Block: [81010000,81100000) size=000f0000 avail=000f0000 max_avail=3d5d1000
Block: [81a2f000,bf000000) size=3d5d1000 avail=3d5d1000 max_avail=3d5d1000
=> mem_size=1045401600 (996 MB) / mem_avail=1045400016 (996 MB)
:region_alloc: Allocator 80284818 dump:
Block: [00001000,20000000) size=1ffff000 avail=1ffff000 max_avail=1ffff000
Block: [30000000,80000000) size=50000000 avail=50000000 max_avail=50000000
Block: [80001000,80002000) size=00001000 avail=00001000 max_avail=00001000
Block: [80003000,80077000) size=00074000 avail=00074000 max_avail=50000000
Block: [80090000,80097000) size=00007000 avail=00007000 max_avail=00007000
Block: [80098000,8009f000) size=00007000 avail=00007000 max_avail=50000000
Block: [bf000000,bfff0000) size=00ff0000 avail=00ff0000 max_avail=00ff0000
=> mem_size=1896292352 (1808 MB) / mem_avail=1896292352 (1808 MB)
:io_mem: Allocator 80283b04 dump:
Block: [00000000,80000000) size=80000000 avail=80000000 max_avail=80000000
Block: [80001000,80002000) size=00001000 avail=00001000 max_avail=80000000
Block: [80003000,80077000) size=00074000 avail=00074000 max_avail=00074000
Block: [80090000,80097000) size=00007000 avail=00007000 max_avail=00074000
Block: [80098000,8009f000) size=00007000 avail=00007000 max_avail=80000000
Block: [bf000000,ffffffff) size=40ffffff avail=40ffffff max_avail=40ffffff
=> mem_size=3238539263 (3088 MB) / mem_avail=3238539263 (3088 MB)
:io_port: Allocator 80283f60 dump:
:irq: Allocator 802843bc dump:
Block: [00000000,00000100) size=00000100 avail=00000100 max_avail=00000100
=> mem_size=256 (0 MB) / mem_avail=256 (0 MB)
:rom_fs: Rom_fs 802850cc dump:
Rom: [81383000,813d07e0) nit_fb
Rom: [81102000,811509b8) init
Rom: [811f9000,81246790) decorator
Rom: [81100000,81101747) config
Rom: [81247000,8128ba88) floating_window_layouter
Rom: [81480000,814ca614) fb_drv
Rom: [8155d000,815a5b90) gpio_drv
Rom: [80002000,80003000) l4v2_kip
Rom: [81661000,819f67d4) l4android
Rom: [80002000,80003000) kip
Rom: [813d1000,81420bac) nic_bridge
Rom: [8133a000,813829f0) report_rom
Rom: [814cb000,81513fcc) part_blk
Rom: [8128c000,812f6fe4) nitpicker
Rom: [812f7000,81339b14) pointer
Rom: [81151000,81197408) timer
Rom: [81514000,8155c20c) sd_card_drv
Rom: [819f7000,81a2ea00) root-ginger.gz
Rom: [81421000,8147fd78) terminal
Rom: [81198000,811f8d88) wm
Rom: [815a6000,81660dd8) usb_drv
:core ranges: Allocator 802870e8 dump:
Block: [80000000,80001000) size=00001000 avail=00001000 max_avail=00001000
Block: [80077000,80090000) size=00019000 avail=00019000 max_avail=00019000
Block: [80097000,80098000) size=00001000 avail=00001000 max_avail=3dff0000
Block: [8009f000,8100f000) size=00f70000 avail=00f70000 max_avail=3dff0000
Block: [81010000,bf000000) size=3dff0000 avail=3dff0000 max_avail=3dff0000
=> mem_size=1056419840 (1007 MB) / mem_avail=1056419840 (1007 MB)
Genode 15.02
int main(): --- create local services ---
int main(): --- start init ---
int main(): transferred 996 MB to init
int main(): --- init created, waiting for exit condition ---
[init] Could not open ROM session for module "ld.lib.so"
Quota exceeded! amount=28672, size=4096, consumed=28672
[init] upgrading quota donation for Env::CPU (8192 bytes)
Quota exceeded! amount=36864, size=4096, consumed=36864
[init] upgrading quota donation for Env::CPU (8192 bytes)
[init -> sd_card_drv] --- OMAP4 SD card driver ---
[init -> fb_drv] Could not open ROM session for module "config"
[init -> fb_drv] Could not obtain config file
[init -> fb_drv] int main(int, char): using default configuration: HDMI@10248
[init -> terminal] int main(int, char): --- terminal service started ---
[init -> nic_bridge] Could not open ROM session for module "config"
[init -> nic_bridge] Could not obtain config file
Insufficient quota for transfer: init -> part_blk
have 3661824, need 4206592
[init] not enough quota for a donation of 4206592 bytes
[init -> part_blk] resource_request: ram_quota=4206592
[init -> part_blk] virtual void Genode::Platform_env::release(): used before f6
[init -> part_blk] virtual void Genode::Platform_env::release(): used after fr0
[init] child "part_blk" requests resources: ram_quota=4206592
[init -> gpio_drv] --- omap4 gpio driver ---
[init -> gpio_drv] No GPIO config
[init -> usb_drv] Services::Services(): Could not read screen resolution in coe
[init -> usb_drv] Services::Services(): No <storage> config node found - not se
[init -> usb_drv] Services::Services(): No <raw> config node found - not starte
[init -> usb_drv] Enabled EHCI (USB 2.0) support
[init -> sd_card_drv] CID: 0x1d00e6db 0x30da3844 0x44384742 0x27504853
[init -> sd_card_drv] RCA: 0x0007
[init -> usb_drv] Using configured mac: 2e:60:90:0c:4e:01
[init -> sd_card_drv] SD card detected
[init -> sd_card_drv] capacity: 7600 MiB
[init -> part_blk] Partition 1: LBA 2048 (131072 blocks) type: b
[init -> usb_drv] void platform_hcd_init(Services*): register platform device
[init -> part_blk] Partition 2: LBA 133120 (8388608 blocks) type: c
[init -> part_blk] Partition 3: LBA 8521728 (7043072 blocks) type: c
[init -> usb_drv] dev_info: EHCI Host Controller
[init -> usb_drv] dev_info: new USB bus registered, assigned bus number 1
[init -> usb_drv] dev_info: irq 109, io mem 0x4a064c00
[init -> usb_drv] dev_info: USB 2.0 started, EHCI 1.00
[init -> usb_drv] dev_info: USB hub found
[init -> usb_drv] dev_info: 3 ports detected
[init -> nitpicker] create session with args: label="pointer", ram_quota=28672
[init -> l4android] Booting L4Linux ...
[init -> l4android] ======> L4Linux starting... <========
[init -> l4android] Linux version 3.5.0-l4-gcea6e7a-dirty (wys@ubuntu) (gcc ve5
[init -> l4android] Binary name: vmlinux
[init -> l4android] This is an AEABI build.
[init -> l4android] Linux kernel command line (3 args): mem=512M console=ttyS0z
[init -> l4android] CPU mapping (l:p)[0]: Image: 01000000 - 01400000 [4096 KiB.
[init -> l4android] Areas: Text: 01000000 - 01360000 [3456kB] (a bit longe)
[init -> l4android] Data: 01360000 - 0138d1b8 [180kB]
[init -> l4android] Initdata: 0133a000 - 0135f4c0 [149kB]
[init -> l4android] BSS: 0138e000 - 013cb6e8 [245kB]
[init -> usb_drv] dev_info: new high-speed USB device number 2 using ehci-omap
[init -> l4android] l4io_get_root_device: Not implemented yet!
[init -> l4android] Device scan:
[init -> l4android] l4io_iterate_devices: Not implemented yet!
[init -> l4android] Device scan done.
[init -> nitpicker] create session with args: label="wm", ram_quota=28672
[init -> usb_drv] dev_info: USB hub found
[init -> usb_drv] dev_info: 5 ports detected
[init -> usb_drv] dev_info: new high-speed USB device number 3 using ehci-omap
[init -> wm] Could not open ROM session for module "config"
[init -> wm] Could not obtain config file
[init -> l4android] main thread will be c
[init -> l4android] l4x_register_pointer_section: addr = 01000000 size = 419434
[init -> l4android] section-with-init: virt: 1000000 to 13fffff [4096 KiB]
[init -> l4android] Cannot determine physical address for dataspace Binary!
[init -> l4android] error: failed to get physical address for 1000000.
[init -> l4android] Main thread running, waiting...
[init -> nitpicker] create session with args: label="wm -> android_fb", ram_qu2
[init -> usb_drv] Using configured mac: 2e:60:90:0c:4e:01
[init -> l4android] thread=c000 cpu=0
[init -> l4android] l4x_setup_memory: Forcing superpages for main memory
[init -> l4android] l4re_global_env: 0
[init -> l4android] Main memory size: 512MB
unmapping of managed dataspaces not yet supported
[init -> l4android] Main memory: virt: 40000000 to 5fffffff [524288 KiB]
[init -> l4android] Main memory: Phys: 0x00000000 to 0x20000000, Size: 53687092
[init -> l4android] Filling lower ptabs...
[init -> l4android] Done (0 entries).
[init -> l4android] l4x_register_pointer_section: addr = 01000000 size = 419434
[init -> l4android] text: virt: 1000000 to 13fffff [4096 KiB]
[init -> l4android] Cannot determine physical address for dataspace Binary!
[init -> l4android] error: failed to get physical address for 1000000.
[init -> usb_drv] netif_info: open: enable queueing (rx 4, tx 60) mtu 1500 simg
[init -> usb_drv] nedev_info: hardware isn't capable of remote wakeup
[init -> usb_drv] netif_info: register 'smsc95xx' at usb-ehci-omap-1.1, smsc95M
[init -> nitpicker] create session with args: label="wm -> terminal_fb", ram_q2
[init -> usb_drv] dev_info: new low-speed USB device number 4 using ehci-omap
[init -> nic_bridge] --- NIC bridge started (mac=2e:60:90:0c:4e:01) ---
[init -> nitpicker] create session with args: label="wm -> decorator", ram_quo2
[init -> l4android] l4x_virt_to_phys: Could not translate virt. address 1000000
[init -> l4android] l4x_virt_to_phys: Could not translate virt. address 1339f9f
[init -> l4android] l4x_virt_to_phys: Could not translate virt. address 1360000
[init -> l4android] l4x_virt_to_phys: Could not translate virt. address 13cb6e7
[init -> usb_drv] Offset greater max size
[init -> usb_drv] Offset greater max size
[init -> usb_drv] Offset greater max size
[init -> usb_drv] Offset greater max size
[init -> usb_drv] Offset greater max size
[init -> usb_drv] dev_info: L U
[init -> usb_drv] dev_info: input: USB HID v1.11 Mouse [L U] on usb-ehci-omap-0
[init -> l4android] l4x_virt_to_phys: Could not translate virt. address 1000000
[init -> l4android] l4x_virt_to_phys: Could not translate virt. address 13fffff
[init -> l4android] l4x_rd_path: root-ginger.gz
[init -> l4android] Loading: root-ginger.gz
[init -> l4android] INITRD: Size of RAMdisk is 224KiB
[init -> l4android] RAMdisk from 00005000 to 0003d000 [224KiB]
[init -> l4android] l4timer: Using IRQ210
[init -> usb_drv] dev_info: new low-speed USB device number 5 using ehci-omap
[init -> android_fb] using xywh=(0,0,640,480)
[init -> terminal_fb] using xywh=(0,0,640,480)
[init -> usb_drv] dev_info: D D
[init -> usb_drv] dev_info: input: USB HID v1.10 Keyboard [D D] on usb-ehci-om0
[init -> terminal] Could not open ROM session for module "config"
[init -> terminal] Could not obtain config file
[init -> terminal] cell size is 8x16
[init -> terminal] create terminal session
[init -> terminal] new terminal session:
[init -> terminal] framebuffer has 640x480 pixels
[init -> terminal] character size is 8x16 pixels
[init -> terminal] terminal size is 80x30 characters
[init -> l4android] l4x_virt_to_phys: Could not translate virt. address 1235b98
[init -> l4android] l4x_virt_to_phys: Could not translate virt. address 1235b98
[init -> l4android] l4io_get_root_device: Not implemented yet!
[init -> l4android] l4io_iterate_devices: Not implemented yet!
[init -> nic_bridge] Invalid session request, no matching policy
Given that your original question about the SD-card access is resolved, wouldn't your last two postings be a good way to start a discussion thread on the mailing list?
Btw, there was a recent discussion about this particular topic just two weeks ago: https://sourceforge.net/p/genode/mailman/message/33627868/ So it would be a good idea to follow this existing discussion before posting.