mirror of
https://chromium.googlesource.com/crosvm/crosvm
synced 2025-02-11 12:35:26 +00:00
This CL adds a "tpm" Cargo cfg to crosvm which enables a TPM device backed by libtpm2 simulator. Tested by running the following inside cros_sdk: LIBRARY_PATH=~/src/minijail LD_LIBRARY_PATH=~/src/minijail \ cargo run --release \ --features tpm \ -- \ run \ -r rootfs.ext4 \ --seccomp-policy-dir seccomp/x86_64/ \ -p init=/bin/bash \ -p panic=-1 \ --disable-sandbox \ vmlinux.bin with a Linux image built from CL:1387655. The TPM self test completes successfully with the following output: https://paste.googleplex.com/5996075978588160?raw Justin's TPM playground runs with the following trace output. https://paste.googleplex.com/4909751007707136?raw Design doc: go/vtpm-for-glinux TEST=ran TPM playground program inside crosvm TEST=local kokoro BUG=chromium:911799 Change-Id: I2feb24a3e38cba91f62c6d2cd1f378de4dd03ecf Reviewed-on: https://chromium-review.googlesource.com/1387624 Commit-Ready: David Tolnay <dtolnay@chromium.org> Tested-by: David Tolnay <dtolnay@chromium.org> Tested-by: kokoro <noreply+kokoro@google.com> Reviewed-by: Dylan Reid <dgreid@chromium.org>
32 lines
997 B
TOML
32 lines
997 B
TOML
[package]
|
|
name = "devices"
|
|
version = "0.1.0"
|
|
authors = ["The Chromium OS Authors"]
|
|
|
|
[features]
|
|
wl-dmabuf = []
|
|
gpu = ["gpu_buffer", "gpu_display", "gpu_renderer"]
|
|
tpm = ["tpm2"]
|
|
|
|
[dependencies]
|
|
bit_field = { path = "../bit_field" }
|
|
byteorder = "*"
|
|
data_model = { path = "../data_model" }
|
|
gpu_buffer = { path = "../gpu_buffer", optional = true }
|
|
gpu_display = { path = "../gpu_display", optional = true }
|
|
gpu_renderer = { path = "../gpu_renderer", optional = true }
|
|
kvm = { path = "../kvm" }
|
|
libc = "*"
|
|
io_jail = { path = "../io_jail" }
|
|
msg_on_socket_derive = { path = "../msg_socket/msg_on_socket_derive" }
|
|
msg_socket = { path = "../msg_socket" }
|
|
net_sys = { path = "../net_sys" }
|
|
net_util = { path = "../net_util" }
|
|
p9 = { path = "../p9" }
|
|
resources = { path = "../resources" }
|
|
sync = { path = "../sync" }
|
|
sys_util = { path = "../sys_util" }
|
|
tpm2 = { path = "../tpm2", optional = true }
|
|
vhost = { path = "../vhost" }
|
|
virtio_sys = { path = "../virtio_sys" }
|
|
vm_control = { path = "../vm_control" }
|