From 77a5cf7fd4185a7222739b32a700346d6f9b1368 Mon Sep 17 00:00:00 2001 From: Christian Helmuth Date: Thu, 9 Sep 2021 10:50:26 +0200 Subject: [PATCH] vbox6: enable audio via OSS plugin --- .../lib/mk/spec/x86_64/virtualbox6-devices.mk | 1 + repos/ports/recipes/pkg/vbox6/archives | 1 + repos/ports/recipes/pkg/vbox6/runtime | 15 +++++++++-- repos/ports/run/virtualbox6.run | 25 ++++++++++++++++--- repos/ports/run/virtualbox6.vbox | 2 +- repos/ports/src/virtualbox6/drivers.cc | 1 + 6 files changed, 39 insertions(+), 6 deletions(-) diff --git a/repos/ports/lib/mk/spec/x86_64/virtualbox6-devices.mk b/repos/ports/lib/mk/spec/x86_64/virtualbox6-devices.mk index 1260d12d59..efaccee4c5 100644 --- a/repos/ports/lib/mk/spec/x86_64/virtualbox6-devices.mk +++ b/repos/ports/lib/mk/spec/x86_64/virtualbox6-devices.mk @@ -9,6 +9,7 @@ SRC_CC += Devices/Audio/DevHdaStream.cpp SRC_CC += Devices/Audio/DevIchAc97.cpp SRC_CC += Devices/Audio/DrvAudio.cpp SRC_CC += Devices/Audio/DrvHostAudioNull.cpp +SRC_CC += Devices/Audio/DrvHostAudioOss.cpp SRC_CC += Devices/Bus/DevPCI.cpp SRC_CC += Devices/Bus/DevPciIch9.cpp SRC_CC += Devices/Bus/MsiCommon.cpp diff --git a/repos/ports/recipes/pkg/vbox6/archives b/repos/ports/recipes/pkg/vbox6/archives index 2a10309819..a311ea3b94 100755 --- a/repos/ports/recipes/pkg/vbox6/archives +++ b/repos/ports/recipes/pkg/vbox6/archives @@ -7,5 +7,6 @@ _/src/posix _/src/stdcxx _/src/vbox6 _/src/vfs +_/src/vfs_oss _/src/vfs_pipe _/src/zlib diff --git a/repos/ports/recipes/pkg/vbox6/runtime b/repos/ports/recipes/pkg/vbox6/runtime index 09bc60ebae..9282b9c04d 100755 --- a/repos/ports/recipes/pkg/vbox6/runtime +++ b/repos/ports/recipes/pkg/vbox6/runtime @@ -16,6 +16,7 @@ + @@ -34,6 +35,8 @@ + + @@ -44,11 +47,12 @@ - + - + + @@ -58,6 +62,12 @@ + + + + + + @@ -88,6 +98,7 @@ + diff --git a/repos/ports/run/virtualbox6.run b/repos/ports/run/virtualbox6.run index 6fe48004b8..11a283ad83 100644 --- a/repos/ports/run/virtualbox6.run +++ b/repos/ports/run/virtualbox6.run @@ -21,6 +21,7 @@ lappend depot_archives [depot_user]/src/nitpicker lappend depot_archives [depot_user]/src/report_rom lappend depot_archives [depot_user]/src/vfs_import lappend depot_archives [depot_user]/src/vfs_pipe +lappend depot_archives [depot_user]/src/vfs_oss lappend_if [expr $use_net] depot_archives [depot_user]/src/ipxe_nic_drv lappend_if [expr $use_net] depot_archives [depot_user]/src/nic_router @@ -34,6 +35,8 @@ lappend_if [expr $use_top] build_components app/top lappend_if [expr $use_serial] build_components server/log_terminal lappend_if [have_spec x86] build_components drivers/rtc +lappend build_components drivers/audio + build $build_components set config { @@ -216,13 +219,13 @@ append config { - + - + } @@ -257,6 +260,20 @@ append config { + + + + + + + + + + + + + + } @@ -268,7 +285,7 @@ copy_file [genode_dir]/repos/ports/run/virtualbox6.vbox bin/ # Instruct vesa_drv to use maximum resolution # set fd [open bin/fb_drv.config w] -puts $fd {} +puts $fd {} close $fd # @@ -293,6 +310,8 @@ append_if [expr $use_net] boot_modules { nic_router } append_if [expr $use_serial] boot_modules { log_terminal } append_if [expr $use_overlay] boot_modules { overlay.vdi } +lappend boot_modules pci_audio_drv + build_boot_image $boot_modules append qemu_args " -m 3500 -cpu phenom " diff --git a/repos/ports/run/virtualbox6.vbox b/repos/ports/run/virtualbox6.vbox index a589a2023d..9e6e6cc943 100644 --- a/repos/ports/run/virtualbox6.vbox +++ b/repos/ports/run/virtualbox6.vbox @@ -68,7 +68,7 @@ - + diff --git a/repos/ports/src/virtualbox6/drivers.cc b/repos/ports/src/virtualbox6/drivers.cc index eb3deb0648..fd0c331afd 100644 --- a/repos/ports/src/virtualbox6/drivers.cc +++ b/repos/ports/src/virtualbox6/drivers.cc @@ -40,6 +40,7 @@ extern "C" DECLEXPORT(int) VBoxDriversRegister(PCPDMDRVREGCB pCallbacks, uint32_ REGISTER(g_DrvHostInterface); REGISTER(g_DrvAUDIO); REGISTER(g_DrvHostNullAudio); + REGISTER(g_DrvHostOSSAudio); REGISTER(g_DrvACPI); REGISTER(g_DrvAcpiCpu); REGISTER(g_DrvVUSBRootHub);