Enable USB and PS/2 in qt5 tests on x86

We now always run the input_merger as Input service provider and
configure backends suitable for the used platform. On x86 hardware, we
enable both, PS/2 and USB HID.
This commit is contained in:
Christian Helmuth 2016-08-03 16:47:20 +02:00
parent 9839e833f2
commit b0f7717711
3 changed files with 34 additions and 13 deletions

View File

@ -58,15 +58,12 @@ proc qt5_start_nodes { feature_arg } {
<route> }
append_if [use_fb_sdl feature] start_nodes {
<service name="Framebuffer"> <child name="fb_sdl" /> </service>
<service name="Input"> <child name="fb_sdl" /> </service>
}
append_if [use_fb_drv feature] start_nodes {
<service name="Framebuffer"> <child name="fb_drv" /> </service>
}
append_if [use_ps2_drv feature] start_nodes {
<service name="Input"> <child name="ps2_drv" /> </service>
}
append start_nodes {
<service name="Input"> <child name="input_merger"/> </service>
<service name="Report"> <child name="report_rom"/> </service>
<any-service> <parent /> <any-child /> </any-service>
</route>

View File

@ -51,9 +51,10 @@ proc use_timer { feature_arg } {
proc use_usb_drv { feature_arg } {
upvar $feature_arg feature
return [expr {([info exists feature(Input)] ||
[info exists feature(Nic)]) &&
(![use_ps2_drv feature] && [have_spec usb])}]
return [expr {(([info exists feature(Input)] ||
[info exists feature(Nic)]) &&
[have_spec usb])
|| ([have_spec x86] && ![have_spec linux])}]
}
#
@ -64,7 +65,7 @@ proc drivers_build_components { feature_arg } {
upvar $feature_arg feature
set build_components { }
set build_components { server/input_merger }
# This function appends to the global 'build_components' variable, not to
# the local version defined above.
@ -72,7 +73,7 @@ proc drivers_build_components { feature_arg } {
lappend_if [use_audio_drv feature] build_components drivers/audio
lappend_if [use_fb_drv feature] build_components drivers/framebuffer
lappend_if [use_fb_sdl feature] build_components drivers/framebuffer
lappend_if [use_fb_sdl feature] build_components drivers/framebuffer/spec/sdl
lappend_if [use_gpio_drv feature] build_components drivers/gpio
lappend_if [use_nic_drv feature] build_components drivers/nic
lappend_if [use_ps2_drv feature] build_components drivers/input/spec/ps2
@ -113,7 +114,30 @@ proc drivers_start_nodes { feature_arg } {
upvar $feature_arg feature
set start_nodes { }
set start_nodes {
<start name="input_merger">
<resource name="RAM" quantum="1M" />
<provides> <service name="Input" /> </provides>
<config>}
append_if [use_ps2_drv feature] start_nodes {
<input label="ps2"/>}
append_if [use_usb_drv feature] start_nodes {
<input label="usb"/>}
append_if [use_fb_sdl feature] start_nodes {
<input label="sdl"/>}
append start_nodes {
</config>
<route>
<service name="LOG"> <parent/> </service>}
append_if [use_ps2_drv feature] start_nodes {
<service name="Input" label="ps2"> <child name="ps2_drv" /> </service>}
append_if [use_usb_drv feature] start_nodes {
<service name="Input" label="usb"> <child name="usb_drv" /> </service>}
append_if [use_fb_sdl feature] start_nodes {
<service name="Input" label="sdl"> <child name="fb_sdl" /> </service>}
append start_nodes {
</route>
</start>}
# This function appends to the global 'config' variable, not to the
# 'start_nodes' variable defined above.
@ -205,7 +229,7 @@ proc drivers_boot_modules { feature_arg } {
upvar $feature_arg feature
set boot_modules { }
set boot_modules { input_merger }
# This function appends to the global 'boot_modules' variable, not to the
# local version defined above.

View File

@ -16,7 +16,7 @@ append build_components {
}
set use_sd_card_driver [expr [have_spec omap4] || [have_spec arndale]]
set use_ahci_driver [have_spec x86]
set use_ahci_driver [expr [have_spec x86] && ![have_spec linux]]
lappend_if $use_sd_card_driver build_components drivers/sd_card
lappend_if $use_ahci_driver build_components drivers/ahci
@ -162,7 +162,7 @@ catch { exec sh -c $cmd }
append_if $use_ahci_driver qemu_args " -drive id=disk,file=$disk_image,format=raw,if=none -device ahci,id=ahci -device ide-drive,drive=disk,bus=ahci.0 -boot d"
append qemu_args " -m 256"
append qemu_args " -m 256 -usbdevice tablet "
run_genode_until forever