crosvm/Cargo.toml
David Reveman 52ba4e5c64 virtwl: Add DMABuf allocation support.
This implements DMABuf allocation type in the virtio wayland
device.

We attempt to locate a supported DRM device prior to engaging
the device jail. If found, the DRM device is passed to the
wayland device code and used to serve DMABuf allocations.

DMABuf support can be disabled by not providing crosvm with
access to any DRM device nodes.

The guest is expected to handle the case when DMABuf allocation
fails and fall-back to standard shared memory.

This initial change uses DRM directly but is structured in a
way that would allow the allocator to be replaced by minigbm
with minimal effort.

BUG=chromium:837209
TEST=crosvm finds drm device and returns valid dmabufs to guest

Change-Id: Ic1fd776dfdfefae2d7b321d449273ef269e9cc62
Reviewed-on: https://chromium-review.googlesource.com/1034088
Commit-Ready: David Reveman <reveman@chromium.org>
Tested-by: David Reveman <reveman@chromium.org>
Reviewed-by: Zach Reizner <zachr@chromium.org>
2018-05-16 08:34:40 -07:00

49 lines
1.3 KiB
TOML

[package]
name = "crosvm"
version = "0.1.0"
authors = ["The Chromium OS Authors"]
[profile.release]
lto = true
panic = 'abort'
[workspace]
[features]
plugin = ["plugin_proto", "crosvm_plugin", "protobuf"]
default-no-sandbox = []
wl-dmabuf = ["devices/wl-dmabuf", "gpu_buffer"]
[dependencies]
arch = { path = "arch" }
devices = { path = "devices" }
device_manager = { path = "device_manager" }
gpu_buffer = { path = "gpu_buffer", optional = true }
io_jail = { path = "io_jail" }
kvm = { path = "kvm" }
kvm_sys = { path = "kvm_sys" }
sys_util = { path = "sys_util" }
kernel_cmdline = { path = "kernel_cmdline" }
kernel_loader = { path = "kernel_loader" }
libc = "=0.2.34"
byteorder = "=1.1.0"
net_util = { path = "net_util" }
vhost = { path = "vhost" }
vm_control = { path = "vm_control" }
data_model = { path = "data_model" }
qcow = { path = "qcow" }
plugin_proto = { path = "plugin_proto", optional = true }
crosvm_plugin = { path = "crosvm_plugin", optional = true }
protobuf = { version = "=1.4.3", optional = true }
qcow_utils = { path = "qcow_utils" }
[target.'cfg(target_arch = "x86_64")'.dependencies]
x86_64 = { path = "x86_64" }
[target.'cfg(any(target_arch = "aarch64", target_arch = "arm"))'.dependencies]
aarch64 = { path = "aarch64" }
[dev-dependencies]
rand = "=0.3.20"
sys_util = { path = "sys_util" }