Hi,
Still the same issue. ;-)
You have to configure qemu that is provides a ahci device, please have a look in os/run/ahci.run for an example.
Somehow works.
But still if i use the runfile below it ends with (equally if real hardware or qemu) [init->acpi->pci_drv] recource request: ram_quota=4198400 [init->acpi->pci_drv} virtual void Genode::Platform_env::release(): used before freeing emergency=516096 [init->acpi->pci_drv} virtual void Genode::Platform_env::release(): used after freeing emergency=516096 (sizes differ, sometimes 524288, 520192) afterwards there is just no more output.
Am i missing something in the chain or did i understand the directions parent and childs wrong?
Can blk_cache be larger then rump_fs?
Best regards, Wolfgang
--- Runfile: # # Check used commands # #set mke2fs [check_installed mke2fs] #set dd [check_installed dd]
# # Build # set build_components { core init drivers/timer drivers/pci drivers/acpi drivers/ahci server/part_blk server/blk_cache server/ram_blk server/rump_fs test/libc_vfs }
build $build_components
create_boot_directory
# # Generate config # append config {
<config> <parent-provides> <service name="ROM"/> <service name="RAM"/> <service name="IRQ"/> <service name="IO_MEM"/> <service name="IO_PORT"/> <service name="CAP"/>repos/os/src/drivers/ahci/x86/ahci_driver.h <service name="PD"/> <service name="RM"/> <service name="CPU"/> <service name="LOG"/> <service name="SIGNAL" /> </parent-provides> <default-route> <any-service> <parent/> <any-child/> </any-service> </default-route> <start name="timer"> <resource name="RAM" quantum="1M"/> <provides><service name="Timer"/></provides> </start> <start name="acpi"> <resource name="RAM" quantum="6M"/> <binary name="acpi_drv"/> <provides> <service name="PCI"/> <service name="IRQ" /> </provides> <route> <service name="PCI"> <any-child /> </service> <any-service> <parent/> <any-child /> </any-service> </route> </start> <start name="ahci"> <binary name="ahci" /> <resource name="RAM" quantum="10M" /> <provides><service name="Block" /></provides> <route> <service name="IRQ"><child name="acpi" /></service> <any-service> <parent /> <any-child /></any-service> </route> </start> <start name="part_blk"> <resource name="RAM" quantum="10M" /> <provides><service name="Block" /></provides> <route> <any-service><child name="ahci"/> <parent/><any-child/></any-service> </route> <config> <policy label="blk_cache" partition="6"/> </config> </start> <start name="blk_cache"> <resource name="RAM" quantum="8M" /> <provides><service name="Block" /></provides> <route> <service name="Block"><child name="part_blk" /></service> <any-service> <parent /> <any-child /></any-service> </route> </start> <start name="rump_fs"> <resource name="RAM" quantum="4M" /> <provides><service name="File_system"/></provides> <config fs="ext2fs"><policy label="" root="/" writeable="yes"/></config> <route> <service name="Block"><child name="blk_cache" /></service> <any-service> <parent /> <any-child /></any-service> </route> </start> <start name="test-libc_vfs"> <resource name="RAM" quantum="4M"/> <config> <libc stdout="/dev/log"> <vfs> <dir name="dev"> <log/> </dir> <fs/> </vfs> </libc> </config> </start> </config>}
install_config $config
# # Boot modules #
# generic modules set boot_modules { core init timer test-libc_vfs ram_blk pci_drv pci_device_pd acpi_drv ahci part_blk blk_cache rump.lib.so rump_fs.lib.so rump_fs ld.lib.so libc.lib.so } #ext2.raw
build_boot_image $boot_modules