Hello,
I want to use a file system in tz_vmm demo. I get to know that there's sd_card driver for i.mx53 quick start board and a stable file system in genode which is rump_fs. So my idea is to use rump_fs and use sd_card for storage. The sd_card is formatted as ext2 and it is also used to booting the system. I write a simple test client called "test-file" which just try to create a file and open it.However, when the system booting, it print the error message:
[init -> sd_card_drv] CID: 0x3534453 0x55303447 0x80b0970d 0x4000e700
[init -> sd_card_drv] RCA: 0xe624
[init -> sd_card_drv] SD card detected
[init -> sd_card_drv] capacity: 3781 MiB
[init -> part_blk] Partition 1: LBA 10240 (7733248 blocks) type: 83
[init] child "part_blk" announces service "Block"
[init -> part_blk] session opened at partition 1 for 'rump_fs -> '
[init -> rump_fs] Using ext2fs as file system
[init -> rump_fs] asserting rump kernel 14249 KB of RAM
[init -> rump_fs] Error: mounting file system failed (errno 13 )
[init -> rump_fs] Error: dry mount attempt failed, aborting
[init -> rump_fs] Error: Uncaught exception of type 'Genode::Exception'
[init -> rump_fs] Warning: abort called - thread: ep
[init] child "rump_fs" exited with exit value 1
I searched the error number online which tells me that it seems related to "permission".Here's part of my configuration:
<start name="sd_card_drv">
<resource name="RAM" quantum="3M"/>
<provides><service name="Block"/></provides>
</start>
<start name="part_blk">
<resource name="RAM" quantum="10M" />
<provides><service name="Block" /></provides>
<route>
<service name="Block"><child name="sd_card_drv" /></service>
<any-service><parent/><any-child/></any-service>
</route>
<config>
<policy label_prefix="rump_fs" partition="1"/>
</config>
</start>
<start name="rump_fs" caps="200">
<resource name="RAM" quantum="16M"/>
<provides><service name="File_system"/></provides>
<config fs="ext2fs">
<policy label="" root="/" writeable="yes"/>
</config>
<route>
<service name="Block"> <child name="part_blk"/> </service>
<any-service> <parent/> <any-child/> </any-service>
</route>
</start>
<start name="test-file" caps="100">
<resource name="RAM" quantum="4M"/>
<config>
<vfs>
<dir name="dev">
<log/>
<inline name="rtc">2000-01-01 00:00</inline>
</dir>
<fs/>
</vfs>
<libc stdout="/dev/log" stderr="/dev/log" rtc="/dev/rtc" />
</config>
</start>
Any help will be ok, thanks in advance!