crosvm/vm_control/Cargo.toml
Jason Macnak 1e077db461 devices: gpu: Support display hotplug
Adds `crosvm gpu <>` commands which allows for interactively
adding/listing/removing virtio-gpu displays/scanouts.

Also updates the virtio gpu device to use a Map<u32, Scanout>
instead of a Vec<Scanout> and always report the maximum number
of displays (16) with enabled/disabled. This helps handle the
case of removing a display that is not the last display number.

BUG=b:163864461
TEST=cargo build
TEST=cargo build (with gpu feature disabled)
TEST=Android build
TEST=launch Cuttlefish
TEST=crosvm gpu list-displays <socket>
TEST=crosvm gpu add-displays
     --gpu-display=width=900,height=600
     --gpu-display=width=600,height=480
     <socket>
TEST=crosvm gpu list-displays <socket>
TEST=crosvm gpu remove-displays
     --display-id=1
     <socket>

Change-Id: I7530498897eb4e84199eaeb3d66df006df62817f
Reviewed-on: https://chromium-review.googlesource.com/c/crosvm/crosvm/+/3911102
Commit-Queue: Jason Macnak <natsu@google.com>
Reviewed-by: Daniel Verkamp <dverkamp@chromium.org>
2022-10-11 16:20:31 +00:00

30 lines
826 B
TOML

[package]
name = "vm_control"
version = "0.1.0"
authors = ["The Chromium OS Authors"]
edition = "2021"
[features]
balloon = []
gdb = ["gdbstub", "gdbstub_arch"]
gpu = []
[dependencies]
anyhow = "*"
balloon_control = { path = "../common/balloon_control" }
base = { path = "../base" }
cfg-if = "*"
data_model = { path = "../common/data_model" }
gdbstub = { version = "0.6.3", optional = true }
gdbstub_arch = { version = "0.2.4", optional = true }
hypervisor = { path = "../hypervisor" }
libc = "*"
remain = "*"
resources = { path = "../resources" }
rutabaga_gfx = { path = "../rutabaga_gfx"}
serde = { version = "1", features = [ "derive" ] }
serde_json = "*"
serde_keyvalue = { path = "../serde_keyvalue", features = ["argh_derive"] }
sync = { path = "../common/sync" }
thiserror = "*"
vm_memory = { path = "../vm_memory" }