run: use drivers_interactive-* pkg where possible

Ref #2190
This commit is contained in:
Stefan Kalkowski 2019-05-03 13:19:17 +02:00 committed by Christian Helmuth
parent 0451d3bbed
commit 4550056de7
5 changed files with 115 additions and 289 deletions

View File

@ -9,30 +9,23 @@ if {[have_include power_on/qemu] && $use_i965} {
exit 1
}
create_boot_directory
import_from_depot [depot_user]/src/[base_src] \
[depot_user]/pkg/[drivers_interactive_pkg] \
[depot_user]/src/nitpicker \
[depot_user]/src/demo \
[depot_user]/src/init
set build_components {
core init timer
drivers/input
drivers/framebuffer
drivers/gpu/intel
server/liquid_framebuffer
server/nitpicker
lib/mesa/swrast
app/launchpad
app/pointer
}
lappend_if $use_i965 build_components lib/mesa/i965
lappend build_components $demo_component
source ${genode_dir}/repos/base/run/platform_drv.inc
append_platform_drv_build_components
build $build_components
create_boot_directory
set config {
<config prio_levels="2">
<parent-provides>
@ -49,39 +42,25 @@ set config {
<default-route>
<any-service> <parent/> <any-child/> </any-service>
</default-route>
}
append_if [have_spec linux] config {
<start name="fb_sdl" caps="200" ld="no">
<resource name="RAM" quantum="4M"/>
<provides>
<service name="Input"/>
<service name="Framebuffer"/>
</provides>
</start>}
append_platform_drv_config
append_if [expr ![have_spec linux]] config {
<start name="fb_drv">
<resource name="RAM" quantum="10M"/>
<provides>
<service name="Framebuffer"/>
</provides>
<route><any-service> <parent /> <any-child/> </any-service> </route>
</start>}
append_if [have_spec ps2] config {
<start name="ps2_drv">
<resource name="RAM" quantum="2M"/>
<provides> <service name="Input"/> </provides>
</start> }
append config {
<start name="timer">
<resource name="RAM" quantum="1M"/>
<provides><service name="Timer"/></provides>
</start>
<start name="drivers" caps="1000">
<resource name="RAM" quantum="32M" constrain_phys="yes"/>
<binary name="init"/>
<route>
<service name="ROM" label="config"> <parent label="drivers.config"/> </service>
<service name="Timer"> <child name="timer"/> </service>
<any-service> <parent/> </any-service>
</route>
<provides>
<service name="Input"/> <service name="Framebuffer"/>
</provides>
</start>
<start name="nitpicker" caps="200">
<resource name="RAM" quantum="2M"/>
<provides><service name="Nitpicker"/></provides>
@ -97,10 +76,6 @@ append config {
<resource name="RAM" quantum="1M"/>
</start>}
#
#
#
set backend_library egl_swrast.lib.so
if {$use_i965} {
set backend_library egl_i965.lib.so
@ -191,13 +166,6 @@ append_if $use_i965 boot_modules {
}
append boot_modules $demo_modules
lappend_if [have_spec linux] boot_modules fb_sdl
lappend_if [expr ![have_spec linux]] boot_modules fb_drv
lappend_if [have_spec ps2] boot_modules ps2_drv
append_platform_drv_boot_modules
build_boot_image $boot_modules
append qemu_args " -m 768"

View File

@ -1,7 +1,3 @@
#
# Build
#
if {[have_spec odroid_xu] || [have_spec imx6q_sabrelite] || [have_spec zynq] || [have_spec imx53] && [have_spec foc]} {
puts "\n Run script is not supported on this platform. \n";
exit 0
@ -12,22 +8,13 @@ if {[get_cmd_switch --autopilot] && [have_spec linux]} {
exit 0
}
set build_components { core init test/fb_bench drivers/framebuffer timer }
source ${genode_dir}/repos/base/run/platform_drv.inc
append_platform_drv_build_components
lappend_if [have_spec gpio] build_components drivers/gpio
build $build_components
create_boot_directory
import_from_depot [depot_user]/src/[base_src] \
[depot_user]/pkg/[drivers_interactive_pkg] \
[depot_user]/src/init
build { test/fb_bench }
#
# Generate config
#
append config {
install_config {
<config>
<parent-provides>
<service name="ROM"/>
@ -47,33 +34,21 @@ append config {
<start name="timer">
<resource name="RAM" quantum="1M"/>
<provides><service name="Timer"/></provides>
</start>}
</start>
append_if [have_spec gpio] config "
<start name=\"[gpio_drv]\" caps=\"140\">
<resource name=\"RAM\" quantum=\"4M\"/>
<provides><service name=\"Gpio\"/></provides>
<config/>
</start>"
append_if [have_spec sdl] config {
<start name="fb_sdl" ld="no">
<resource name="RAM" quantum="4M"/>
<start name="drivers" caps="1000">
<resource name="RAM" quantum="32M" constrain_phys="yes"/>
<binary name="init"/>
<route>
<service name="ROM" label="config"> <parent label="drivers.config"/> </service>
<service name="Timer"> <child name="timer"/> </service>
<any-service> <parent/> </any-service>
</route>
<provides>
<service name="Input"/>
<service name="Framebuffer"/>
<service name="Input"/> <service name="Framebuffer"/>
</provides>
</start>}
</start>
append_platform_drv_config
append_if [have_spec framebuffer] config {
<start name="fb_drv" caps="150">
<resource name="RAM" quantum="20M"/>
<provides><service name="Framebuffer"/></provides>
</start>}
append config {
<start name="test-fb_bench">
<!--
- We need this big amount of RAM because the VESA driver reports a
@ -84,21 +59,7 @@ append config {
</start>
</config>}
install_config $config
#
# Boot modules
#
set boot_modules { core ld.lib.so init timer test-fb_bench }
append_platform_drv_boot_modules
lappend_if [have_spec sdl] boot_modules fb_sdl
lappend_if [have_spec framebuffer] boot_modules fb_drv
lappend_if [have_spec gpio] boot_modules [gpio_drv]
build_boot_image $boot_modules
build_boot_image { test-fb_bench }
# disable QEMU graphic to enable testing on our machines without SDL and X
append qemu_args "-nographic "

View File

@ -1,30 +1,11 @@
#
# Build
#
if {[have_spec odroid_xu]} {
puts "Run script not supported for this platform."; exit 0 }
set fb_drv "fb_drv"
if {[have_include "image/uefi"]} {
set fb_drv "fb_boot_drv"
}
set build_components { core init test/framebuffer drivers/framebuffer timer }
source ${genode_dir}/repos/base/run/platform_drv.inc
append_platform_drv_build_components
build $build_components
create_boot_directory
import_from_depot [depot_user]/src/[base_src] \
[depot_user]/pkg/[drivers_interactive_pkg] \
[depot_user]/src/init
#
# Generate config
#
build { test/framebuffer }
append config {
install_config {
<config>
<parent-provides>
<service name="ROM"/>
@ -40,53 +21,29 @@ append config {
<any-service> <parent/> <any-child/> </any-service>
</default-route>
<default caps="100"/>
<start name="timer">
<resource name="RAM" quantum="1M"/>
<provides><service name="Timer"/></provides>
</start>}
</start>
append_if [have_spec sdl] config {
<start name="fb_sdl" ld="no">
<resource name="RAM" quantum="4M"/>
<start name="drivers" caps="1000">
<resource name="RAM" quantum="32M" constrain_phys="yes"/>
<binary name="init"/>
<route>
<service name="ROM" label="config"> <parent label="drivers.config"/> </service>
<service name="Timer"> <child name="timer"/> </service>
<any-service> <parent/> </any-service>
</route>
<provides>
<service name="Input"/>
<service name="Framebuffer"/>
<service name="Input"/> <service name="Framebuffer"/>
</provides>
</start>}
</start>
append_platform_drv_config
append_if [have_spec framebuffer] config {
<start name="} $fb_drv {" caps="200">
<resource name="RAM" quantum="32M"/>
<provides><service name="Framebuffer"/></provides>
</start>}
append config {
<start name="test-framebuffer">
<resource name="RAM" quantum="10M"/>
</start>
</config>}
install_config $config
#
# Boot modules
#
# generic modules
set boot_modules {
core ld.lib.so init timer
test-framebuffer
}
# platform-specific modules
append_platform_drv_boot_modules
lappend_if [have_spec sdl] boot_modules fb_sdl
lappend_if [have_spec framebuffer] boot_modules $fb_drv
build_boot_image $boot_modules
build_boot_image { test-framebuffer }
run_genode_until forever

View File

@ -1,26 +1,15 @@
#
# Build
#
set build_components {
core init timer
server/nitpicker server/loader
test/nitpicker test/loader
drivers/framebuffer drivers/input
create_boot_directory
import_from_depot [depot_user]/src/[base_src] \
[depot_user]/pkg/[drivers_interactive_pkg] \
[depot_user]/src/init \
[depot_user]/src/nitpicker
build {
server/loader
test/loader
test/nitpicker
}
source ${genode_dir}/repos/base/run/platform_drv.inc
append_platform_drv_build_components
build $build_components
create_boot_directory
#
# Generate config
#
append config {
install_config {
<config>
<parent-provides>
<service name="ROM"/>
@ -35,36 +24,26 @@ append config {
<default-route>
<any-service> <parent/> <any-child/> </any-service>
</default-route>
<default caps="100"/>}
<default caps="100"/>
append_platform_drv_config
append_if [have_spec sdl] config {
<start name="fb_sdl" ld="no">
<resource name="RAM" quantum="4M"/>
<provides>
<service name="Input"/>
<service name="Framebuffer"/>
</provides>
</start>}
append_if [have_spec framebuffer] config {
<start name="fb_drv">
<resource name="RAM" quantum="4M"/>
<provides><service name="Framebuffer"/></provides>
</start>}
append_if [have_spec ps2] config {
<start name="ps2_drv">
<resource name="RAM" quantum="1M"/>
<provides><service name="Input"/></provides>
</start> }
append config {
<start name="timer">
<resource name="RAM" quantum="1M"/>
<provides><service name="Timer"/></provides>
</start>
<start name="drivers" caps="1000">
<resource name="RAM" quantum="32M" constrain_phys="yes"/>
<binary name="init"/>
<route>
<service name="ROM" label="config"> <parent label="drivers.config"/> </service>
<service name="Timer"> <child name="timer"/> </service>
<any-service> <parent/> </any-service>
</route>
<provides>
<service name="Input"/> <service name="Framebuffer"/>
</provides>
</start>
<start name="nitpicker">
<resource name="RAM" quantum="1M"/>
<provides><service name="Nitpicker"/></provides>
@ -72,6 +51,7 @@ append config {
<domain name="" layer="2" /> <default-policy domain=""/>
</config>
</start>
<start name="loader">
<resource name="RAM" quantum="1M"/>
<provides><service name="Loader"/></provides>
@ -87,23 +67,5 @@ append config {
</start>
</config>}
install_config $config
#
# Boot modules
#
# generic modules
set boot_modules { core ld.lib.so init timer nitpicker testnit loader test-loader }
# platform-specific modules
lappend_if [have_spec linux] boot_modules fb_sdl
lappend_if [have_spec framebuffer] boot_modules fb_drv
lappend_if [have_spec ps2] boot_modules ps2_drv
append_platform_drv_boot_modules
build_boot_image $boot_modules
build_boot_image { testnit loader test-loader }
run_genode_until forever

View File

@ -12,33 +12,22 @@
# 'tcp_terminal' could be used (to attach GDB via a network connection).
#
#
# Build
#
create_boot_directory
import_from_depot [depot_user]/src/[base_src] \
[depot_user]/pkg/[drivers_interactive_pkg] \
[depot_user]/src/nitpicker \
[depot_user]/src/demo \
[depot_user]/src/init
set build_components {
core init timer
drivers/uart
app/gdb_monitor
test/gdb_monitor
server/nitpicker app/pointer app/scout
drivers/framebuffer drivers/input
}
lappend build_components "lib/gdbserver_platform-$::env(KERNEL)"
source ${genode_dir}/repos/base/run/platform_drv.inc
append_platform_drv_build_components
build $build_components
create_boot_directory
#
# Generate config
#
set config {
install_config {
<config verbose="yes">
<parent-provides>
<service name="ROM"/>
@ -54,17 +43,36 @@ set config {
<any-service> <parent/> <any-child/> </any-service>
</default-route>
<default caps="100"/>
<start name="timer">
<resource name="RAM" quantum="1M"/>
<provides> <service name="Timer"/> </provides>
</start>
<start name="uart_drv">
<resource name="RAM" quantum="1M"/>
<provides> <service name="Terminal"/> </provides>
<provides>
<service name="Uart"/>
<service name="Terminal"/>
</provides>
<config>
<policy label_prefix="gdb_monitor" uart="1"/>
</config>
</start>
<start name="drivers" caps="1000">
<resource name="RAM" quantum="32M" constrain_phys="yes"/>
<binary name="init"/>
<route>
<service name="ROM" label="config"> <parent label="drivers.config"/> </service>
<service name="Timer"> <child name="timer"/> </service>
<any-service> <parent/> </any-service>
</route>
<provides>
<service name="Input"/> <service name="Framebuffer"/>
</provides>
</start>
<start name="gdb_monitor" caps="200">
<resource name="RAM" quantum="10M"/>
<provides><service name="Nitpicker"/></provides>
@ -84,59 +92,29 @@ set config {
<libc stdout="/dev/log" stderr="/dev/log"/>
</config>
</start>
<start name="pointer">
<resource name="RAM" quantum="1M"/>
</start>
<start name="scout">
<resource name="RAM" quantum="32M"/>
</start>}
append_platform_drv_config
append_if [have_spec framebuffer] config {
<start name="fb_drv">
<resource name="RAM" quantum="4M"/>
<provides><service name="Framebuffer"/></provides>
</start>}
append_if [have_spec ps2] config {
<start name="ps2_drv">
<resource name="RAM" quantum="1M"/>
<provides><service name="Input"/></provides>
</start> }
append config {
</start>
</config>
}
install_config $config
#
# Boot modules
#
# evaluated by the run tool
proc binary_name_gdbserver_platform_lib_so { } {
return "gdbserver_platform-$::env(KERNEL).lib.so"
}
# generic modules
set boot_modules {
core init timer
ld.lib.so libc.lib.so vfs.lib.so libc_pipe.lib.so
build_boot_image {
libc.lib.so vfs.lib.so libc_pipe.lib.so
uart_drv
gdb_monitor gdbserver_platform.lib.so
nitpicker pointer scout
}
# platform-specific modules
lappend_if [have_spec framebuffer] boot_modules fb_drv
lappend_if [have_spec ps2] boot_modules ps2_drv
append_platform_drv_boot_modules
build_boot_image $boot_modules
#
# Execute test case
#