mirror of
https://github.com/genodelabs/genode.git
synced 2025-01-29 15:44:02 +00:00
os: Use VirtIO input drivers for virt_qemu.
This makes Genode's interactive test scenarios run on virt_qemu board actually interactive. Issue #4282
This commit is contained in:
parent
80d11ca751
commit
4f1e9fd256
@ -1,4 +1,6 @@
|
||||
_/src/virt_qemu_drivers
|
||||
_/src/virtio_input_drv
|
||||
_/src/platform_drv
|
||||
_/src/event_filter
|
||||
_/src/virtdev_rom
|
||||
_/raw/drivers_interactive-virt_qemu
|
||||
|
@ -13,9 +13,9 @@
|
||||
|
||||
<default caps="100"/>
|
||||
|
||||
<start name="platform_drv">
|
||||
<resource name="RAM" quantum="2M"/>
|
||||
<provides> <service name="Platform"/> </provides>
|
||||
<start name="virtdev_rom">
|
||||
<resource name="RAM" quantum="640K"/>
|
||||
<provides> <service name="ROM"/> </provides>
|
||||
<route> <any-service> <parent/> </any-service> </route>
|
||||
<config>
|
||||
|
||||
@ -28,9 +28,26 @@
|
||||
<policy label="fb_drv -> " info="yes">
|
||||
<device name="fw-cfg"/>
|
||||
</policy>
|
||||
<policy label_prefix="virtio_keyboard_drv" info="yes">
|
||||
<device name="input0"/>
|
||||
</policy>
|
||||
<policy label_prefix="virtio_mouse_drv" info="yes">
|
||||
<device name="input1"/>
|
||||
</policy>
|
||||
</config>
|
||||
</start>
|
||||
|
||||
<start name="platform_drv">
|
||||
<resource name="RAM" quantum="2M"/>
|
||||
<provides> <service name="Platform"/> </provides>
|
||||
<route>
|
||||
<service name="ROM" label="config">
|
||||
<child name="virtdev_rom"/>
|
||||
</service>
|
||||
<any-service> <parent/> </any-service>
|
||||
</route>
|
||||
</start>
|
||||
|
||||
<start name="fb_drv">
|
||||
<binary name="ram_fb_drv"/>
|
||||
<resource name="RAM" quantum="8M"/>
|
||||
@ -63,4 +80,32 @@
|
||||
</route>
|
||||
</start>
|
||||
|
||||
<start name="virtio_keyboard_drv" caps="70">
|
||||
<binary name="virtio_mmio_input_drv"/>
|
||||
<resource name="RAM" quantum="1M"/>
|
||||
<config match_product="keyboard"/>
|
||||
<route>
|
||||
<service name="Platform"> <child name="platform_drv"/> </service>
|
||||
<service name="Event"> <child name="event_filter" label="keyboard"/> </service>
|
||||
<service name="CPU"> <parent/> </service>
|
||||
<service name="PD"> <parent/> </service>
|
||||
<service name="LOG"> <parent/> </service>
|
||||
<service name="ROM"> <parent/> </service>
|
||||
</route>
|
||||
</start>
|
||||
|
||||
<start name="virtio_mouse_drv" caps="80">
|
||||
<binary name="virtio_mmio_input_drv"/>
|
||||
<resource name="RAM" quantum="1M"/>
|
||||
<config match_product="mouse"/>
|
||||
<route>
|
||||
<service name="Platform"> <child name="platform_drv"/> </service>
|
||||
<service name="Event"> <child name="event_filter" label="mouse"/> </service>
|
||||
<service name="CPU"> <parent/> </service>
|
||||
<service name="PD"> <parent/> </service>
|
||||
<service name="LOG"> <parent/> </service>
|
||||
<service name="ROM"> <parent/> </service>
|
||||
</route>
|
||||
</start>
|
||||
|
||||
</config>
|
||||
|
@ -1,13 +1,16 @@
|
||||
<config>
|
||||
<output>
|
||||
<chargen>
|
||||
<accelerate max="50" sensitivity_percent="1000" curve="127">
|
||||
<button-scroll>
|
||||
<input name="ps2"/>
|
||||
<vertical button="BTN_MIDDLE" speed_percent="-10"/>
|
||||
<horizontal button="BTN_MIDDLE" speed_percent="-10"/>
|
||||
</button-scroll>
|
||||
</accelerate>
|
||||
<merge>
|
||||
<accelerate max="50" sensitivity_percent="1000" curve="127">
|
||||
<button-scroll>
|
||||
<input name="mouse"/>
|
||||
<vertical button="BTN_MIDDLE" speed_percent="-10"/>
|
||||
<horizontal button="BTN_MIDDLE" speed_percent="-10"/>
|
||||
</button-scroll>
|
||||
</accelerate>
|
||||
<input name="keyboard"/>
|
||||
</merge>
|
||||
<mod1>
|
||||
<key name="KEY_LEFTSHIFT"/> <key name="KEY_RIGHTSHIFT"/>
|
||||
</mod1>
|
||||
@ -22,5 +25,6 @@
|
||||
<include rom="special.chargen"/>
|
||||
</chargen>
|
||||
</output>
|
||||
<policy label="ps2" input="ps2"/>
|
||||
<policy label="keyboard" input="keyboard"/>
|
||||
<policy label="mouse" input="mouse"/>
|
||||
</config>
|
||||
|
@ -27,7 +27,8 @@ struct Virtio_mmio_input::Main
|
||||
{
|
||||
Env &env;
|
||||
Platform::Connection platform { env };
|
||||
Platform::Device platform_device { platform, { "input" } };
|
||||
Platform::Device platform_device { platform,
|
||||
Platform::Device::Type { "input" } };
|
||||
Virtio::Device virtio_device { platform_device };
|
||||
Attached_rom_dataspace config { env, "config" };
|
||||
Virtio_input::Driver driver { env, virtio_device, config.xml() };
|
||||
|
Loading…
x
Reference in New Issue
Block a user