From 376f086ec1bef7fbdbf709ad3d6a47673f32b7a4 Mon Sep 17 00:00:00 2001 From: Emery Hemingway Date: Mon, 26 Nov 2018 20:19:30 +0100 Subject: [PATCH] Split off graphical Mirage run into mirage_pretty Ref #2945 --- repos/gems/run/mirage_pretty.run | 164 +++++++++++++++++++++++++++++++ 1 file changed, 164 insertions(+) create mode 100644 repos/gems/run/mirage_pretty.run diff --git a/repos/gems/run/mirage_pretty.run b/repos/gems/run/mirage_pretty.run new file mode 100644 index 000000000..a3dd841bc --- /dev/null +++ b/repos/gems/run/mirage_pretty.run @@ -0,0 +1,164 @@ +if {![have_spec x86_64]} { + puts "\nSolo5 requires a 64bit architecture\n" + exit 0 +} + +if {![file exists bin/mirage]} { + puts "" + puts "A mirage image must be provided at 'bin/mirage' to execute this scenario." + puts "" + exit 1 +} + +if {[have_spec linux]} { + puts "" + puts "This scenario is not available for Linux." + puts "" + exit 1 +} + +create_boot_directory + +import_from_depot \ + genodelabs/src/[base_src] \ + genodelabs/src/init \ + genodelabs/src/rtc_drv \ + genodelabs/pkg/terminal \ + +source ${genode_dir}/repos/base/run/platform_drv.inc + +set build_components { + app/log_core + drivers/framebuffer + drivers/input/dummy + drivers/nic + drivers/rtc + lib/solo5 + server/terminal_log +} + +append_platform_drv_build_components + +lappend_if [expr {[nic_drv_binary] == "nic_drv"}] build_components drivers/nic +lappend_if [expr {[nic_drv_binary] == "usb_drv"}] build_components drivers/usb + +proc gpio_drv { } { if {[have_spec rpi] && [have_spec hw]} { return hw_gpio_drv } + if {[have_spec rpi] && [have_spec foc]} { return foc_gpio_drv } + return gpio_drv } + +lappend_if [have_spec gpio] build_components drivers/gpio + +build $build_components + +set fb_drv "fb_drv" + +if {[have_include "image/uefi"]} { + set fb_drv "fb_boot_drv" +} + +append config { + + + + + + + + + + + + + + + } + +append_platform_drv_config + +append_if [have_spec gpio] config " + + + + + " + +append config { + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +} + +install_config $config + +append boot_modules { + dummy_input_drv + log_core + terminal_log + mirage + rtc_drv + solo5.lib.so +} + +append boot_modules " $fb_drv" + +# platform-specific modules +append_platform_drv_boot_modules + +lappend boot_modules [nic_drv_binary] + +lappend_if [have_spec gpio] boot_modules [gpio_drv] + +build_boot_image $boot_modules + +append qemu_args " -net user" + +append_if [have_spec x86] qemu_args " -net nic,model=e1000 " +append_if [have_spec lan9118] qemu_args " -net nic,model=lan9118 " + +run_genode_until forever