aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGerd Hoffmann <kraxel@redhat.com>2020-02-27 10:24:51 -0500
committerMichael S. Tsirkin <mst@redhat.com>2020-02-27 10:25:42 -0500
commit61124330bf1cadf8059e21ecf5766360ec19e742 (patch)
treec66e8af09186825395e8e6564e49e4af7e0373ae
parentda60923ce1645f6afdbcb41dbe765a46780af49d (diff)
downloadvirtio-text-61124330bf1cadf8059e21ecf5766360ec19e742.tar.gz
virtio-gpu: add 3d command overview
Add 3d commands to the command enumeration. Add a section with a very short overview. Fixes: https://github.com/oasis-tcs/virtio-spec/issues/65 Signed-off-by: Gerd Hoffmann <kraxel@redhat.com> Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
-rw-r--r--virtio-gpu.tex35
1 files changed, 35 insertions, 0 deletions
diff --git a/virtio-gpu.tex b/virtio-gpu.tex
index af4ca61..9098e65 100644
--- a/virtio-gpu.tex
+++ b/virtio-gpu.tex
@@ -182,6 +182,16 @@ enum virtio_gpu_ctrl_type {
VIRTIO_GPU_CMD_GET_CAPSET,
VIRTIO_GPU_CMD_GET_EDID,
+ /* 3d commands (OpenGL) */
+ VIRTIO_GPU_CMD_CTX_CREATE = 0x0200,
+ VIRTIO_GPU_CMD_CTX_DESTROY,
+ VIRTIO_GPU_CMD_CTX_ATTACH_RESOURCE,
+ VIRTIO_GPU_CMD_CTX_DETACH_RESOURCE,
+ VIRTIO_GPU_CMD_RESOURCE_CREATE_3D,
+ VIRTIO_GPU_CMD_TRANSFER_TO_HOST_3D,
+ VIRTIO_GPU_CMD_TRANSFER_FROM_HOST_3D,
+ VIRTIO_GPU_CMD_SUBMIT_3D,
+
/* cursor commands */
VIRTIO_GPU_CMD_UPDATE_CURSOR = 0x0300,
VIRTIO_GPU_CMD_MOVE_CURSOR,
@@ -456,6 +466,31 @@ guest swapping or object destruction.
\end{description}
+\subsubsection{Device Operation: controlq (3d)}\label{sec:Device Types / GPU Device / Device Operation / Device Operation: controlq (3d)}
+
+These commands are supported by the device if the VIRTIO_GPU_F_VIRGL
+feature flag is set.
+
+\begin{description}
+
+\item[VIRTIO_GPU_CMD_CTX_CREATE]
+\item[VIRTIO_GPU_CMD_CTX_DESTROY]
+\item[VIRTIO_GPU_CMD_CTX_ATTACH_RESOURCE]
+\item[VIRTIO_GPU_CMD_CTX_DETACH_RESOURCE]
+ Manage OpenGL contexts.
+
+\item[VIRTIO_GPU_CMD_RESOURCE_CREATE_3D]
+ Create OpenGL resources.
+
+\item[VIRTIO_GPU_CMD_TRANSFER_TO_HOST_3D]
+\item[VIRTIO_GPU_CMD_TRANSFER_FROM_HOST_3D]
+ Transfer data from and to OpenGL resources.
+
+\item[VIRTIO_GPU_CMD_SUBMIT_3D]
+ Submit rendering commands (mesa gallium command stream).
+
+\end{description}
+
\subsubsection{Device Operation: cursorq}\label{sec:Device Types / GPU Device / Device Operation / Device Operation: cursorq}
Both cursorq commands use the same command struct.