crosvm/devices/Cargo.toml
Woody Chow 737ff125ca Add virtio-snd device with CRAS backend
Enable with `--cras-snd`.

Verified:
Basic playback and capture

Missing features:
* Getting chmap/jack/stream info from CRAS. They are hardcoded for now.
* Jack connect/disconnect notifications from CRAS
* Reporting latency bytes to the driver. It is currently hardcoded to 0.

BUG=b:179757101
TEST=`aplay` and `arecord` inside a debian img with a 5.10 kernel built
     with virtio snd support. Launched with crosvm on rammus/kukui/hatch

Change-Id: I240000a92418b75b3eb8dcd241ff320214b68739
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/crosvm/+/2777991
Tested-by: kokoro <noreply+kokoro@google.com>
Commit-Queue: Woody Chow <woodychow@google.com>
Reviewed-by: Chih-Yang Hsia <paulhsia@chromium.org>
2021-09-02 04:29:55 +00:00

71 lines
2 KiB
TOML

[package]
name = "devices"
version = "0.1.0"
authors = ["The Chromium OS Authors"]
edition = "2018"
[features]
audio = []
audio_cras = ["libcras"]
direct = []
gpu = ["gpu_display","rutabaga_gfx"]
tpm = ["tpm2"]
usb = []
video-decoder = ["libvda"]
video-encoder = ["libvda"]
minigbm = ["rutabaga_gfx/minigbm"]
x = ["gpu_display/x"]
virgl_renderer = ["gpu", "rutabaga_gfx/virgl_renderer"]
gfxstream = ["gpu", "rutabaga_gfx/gfxstream"]
[dependencies]
async-task = "4"
acpi_tables = {path = "../acpi_tables" }
anyhow = "*"
audio_streams = "*"
base = { path = "../base" }
bit_field = { path = "../bit_field" }
cros_async = { path = "../cros_async" }
data_model = { path = "../data_model" }
disk = { path = "../disk" }
enumn = { path = "../enumn" }
fuse = {path = "../fuse" }
getopts = { version = "0.2" }
gpu_display = { path = "../gpu_display", optional = true }
rutabaga_gfx = { path = "../rutabaga_gfx", optional = true }
hypervisor = { path = "../hypervisor" }
kvm_sys = { path = "../kvm_sys" }
libc = "*"
libcras = { version = "*", optional = true }
libvda = { path = "../libvda", optional = true }
linux_input_sys = { path = "../linux_input_sys" }
minijail = "*"
net_sys = { path = "../net_sys" }
net_util = { path = "../net_util" }
once_cell = "1.7.2"
p9 = "*"
power_monitor = { path = "../power_monitor" }
protos = { path = "../protos", optional = true }
remain = "*"
resources = { path = "../resources" }
serde = { version = "1", features = [ "derive" ] }
smallvec = "1.6.1"
sync = { path = "../sync" }
sys_util = { path = "../sys_util" }
thiserror = "1.0.20"
tpm2 = { path = "../tpm2", optional = true }
usb_util = { path = "../usb_util" }
vfio_sys = { path = "../vfio_sys" }
vhost = { path = "../vhost" }
vmm_vhost = { version = "*", features = ["vhost-user-master", "vhost-user-slave"] }
virtio_sys = { path = "../virtio_sys" }
vm_control = { path = "../vm_control" }
vm_memory = { path = "../vm_memory" }
[dependencies.futures]
version = "*"
features = ["std"]
default-features = false
[dev-dependencies]
tempfile = { path = "../tempfile" }