# # Build # # generic components set build_components { core init drivers/timer drivers/sd_card test/blk/cli } lappend_if [have_spec arndale] build_components drivers/platform lappend_if [have_spec rpi] build_components drivers/platform 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> } append_if [expr [have_spec arndale] || [have_spec rpi]] config { <start name="platform_drv"> <resource name="RAM" quantum="1M"/> <provides> <service name="Regulator"/> <service name="Platform"/> </provides> </start>} append config { <start name="timer"> <resource name="RAM" quantum="1M"/> <provides><service name="Timer"/></provides> </start> <start name="sd_card_drv"> <resource name="RAM" quantum="1M"/> <provides><service name="Block"/></provides> </start> <start name="test-blk-cli"> <resource name="RAM" quantum="1M" /> </start> </config> } install_config $config # # Boot modules # # generic modules set boot_modules { core ld.lib.so init timer sd_card_drv test-blk-cli } lappend_if [have_spec arndale] boot_modules platform_drv lappend_if [have_spec rpi] boot_modules platform_drv 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 :