# # Build # assert_spec pbxa9 # generic components set build_components { core init timer drivers/sd_card test/block/client } source ${genode_dir}/repos/base/run/platform_drv.inc append_platform_drv_build_components build $build_components create_boot_directory # # Config # set config { <config> <parent-provides> <service name="ROM"/> <service name="IRQ"/> <service name="IO_MEM"/> <service name="PD"/> <service name="RM"/> <service name="CPU"/> <service name="LOG"/> </parent-provides> <default-route> <any-service> <parent/> <any-child/> </any-service> </default-route> <default caps="100"/> } append_platform_drv_config append config { <start name="timer"> <resource name="RAM" quantum="1M"/> <provides><service name="Timer"/></provides> </start> <start name="pbxa9_sd_card_drv"> <resource name="RAM" quantum="1M"/> <provides><service name="Block"/></provides> </start> <start name="test-block-client"> <resource name="RAM" quantum="1M" /> </start> </config> } install_config $config # # Boot modules # # generic modules set boot_modules { core ld.lib.so init timer pbxa9_sd_card_drv test-block-client } append_platform_drv_boot_modules set disk_image "bin/sd_card.img" build_boot_image $boot_modules append qemu_args "-drive file=$disk_image,format=raw,if=sd,cache=writeback -nographic " if { [file exists $disk_image] == 0 } then { # create empty block device file catch { exec dd if=/dev/zero of=$disk_image bs=1M count=512 } } run_genode_until forever exec rm $disk_image # vi: set ft=tcl :