crosvm/gpu_display/Cargo.toml
Idan Raiter 3c21f8e313 device: vhost-user: Cross-platform GPU base
Makes the async vhost-user backend cross-platform. The next change will
add the plumbing to turn it on. The plan is to create GpuBackendConfig
and GpuVmmConfig in the broker and pass to the relevant processes.
This way, we can also pass GpuBackendConfig to the main process if we
want to use the original non-vhost-user worker. The config changes will
be included with the plumbing CL that follows.

- Split into a sys module.

- Introduce 'platform_workers' that tracks platform-dependent futures.
  Reasoning: Windows will need to be able to launch more futures at
  runtime due to our input handling, it's useful to have a vector of
  workers to append to. This way the specific worker function doesn't
  need to leak into the shared file. We can also put the resource
  bridge workers here following the same logic.

- Introduce backend and VMM config structures to pass around.

BUG=b:243061269
TEST=downstream / presubmit

Change-Id: I53458c4dd2cf74b9e6bf5d10819533206e47a683
Reviewed-on: https://chromium-review.googlesource.com/c/crosvm/crosvm/+/3963645
Reviewed-by: Keiichi Watanabe <keiichiw@chromium.org>
Reviewed-by: Gurchetan Singh <gurchetansingh@chromium.org>
Reviewed-by: Kaiyi Li <kaiyili@google.com>
Reviewed-by: Ryan Neph <ryanneph@google.com>
Commit-Queue: Idan Raiter <idanr@google.com>
Reviewed-by: Daniel Verkamp <dverkamp@chromium.org>
2022-10-31 18:26:02 +00:00

34 lines
692 B
TOML

[package]
name = "gpu_display"
version = "0.1.0"
authors = ["The Chromium OS Authors"]
edition = "2021"
[features]
x = []
kiwi = []
[dependencies]
data_model = { path = "../common/data_model" }
libc = "*"
base = { path = "../base" }
linux_input_sys = { path = "../linux_input_sys" }
remain = "*"
thiserror = "*"
cfg-if = "*"
serde = { version = "1", features = [ "derive" ] }
[target.'cfg(windows)'.dependencies]
anyhow = "*"
metrics = { path = "../metrics" }
num-traits = "*"
winapi = "*"
win_util = { path = "../win_util" }
sync = { path = "../common/sync" }
euclid = "*"
vm_control = { path = "../vm_control" }
[build-dependencies]
cc = "1.0.25"
pkg-config = "0.3.11"
cfg-if = "1.0.0"