* [virtio-dev] [PATCH] Add VIRTIO_GPU_F_EDID to virtio-gpu.
@ 2018-09-13 8:51 Gerd Hoffmann
0 siblings, 0 replies; only message in thread
From: Gerd Hoffmann @ 2018-09-13 8:51 UTC (permalink / raw)
To: virtio-dev; +Cc: Gerd Hoffmann
The feature allows the guest request an EDID blob (describing monitor
capabilities) for a given scanout (aka virtual monitor connector).
It brings a new command message, which has just a scanout field (beside
the standard virtio-gpu header) and a response message which carries the
EDID data.
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
---
virtio-gpu.tex | 30 ++++++++++++++++++++++++++++++
1 file changed, 30 insertions(+)
diff --git a/virtio-gpu.tex b/virtio-gpu.tex
index 5d4709ad30..c64ecfe859 100644
--- a/virtio-gpu.tex
+++ b/virtio-gpu.tex
@@ -34,6 +34,7 @@ control queue.
\begin{description}
\item[VIRTIO_GPU_F_VIRGL (0)] virgl 3D mode is supported.
+\item[VIRTIO_GPU_F_EDID (1)] EDID is supported.
\end{description}
\subsection{Device configuration layout}\label{sec:Device Types / GPU Device / Device configuration layout}
@@ -171,6 +172,9 @@ enum virtio_gpu_ctrl_type {
VIRTIO_GPU_CMD_TRANSFER_TO_HOST_2D,
VIRTIO_GPU_CMD_RESOURCE_ATTACH_BACKING,
VIRTIO_GPU_CMD_RESOURCE_DETACH_BACKING,
+ VIRTIO_GPU_CMD_GET_CAPSET_INFO,
+ VIRTIO_GPU_CMD_GET_CAPSET,
+ VIRTIO_GPU_CMD_GET_EDID,
/* cursor commands */
VIRTIO_GPU_CMD_UPDATE_CURSOR = 0x0300,
@@ -179,6 +183,9 @@ enum virtio_gpu_ctrl_type {
/* success responses */
VIRTIO_GPU_RESP_OK_NODATA = 0x1100,
VIRTIO_GPU_RESP_OK_DISPLAY_INFO,
+ VIRTIO_GPU_RESP_OK_CAPSET_INFO,
+ VIRTIO_GPU_RESP_OK_CAPSET,
+ VIRTIO_GPU_RESP_OK_EDID,
/* error responses */
VIRTIO_GPU_RESP_ERR_UNSPEC = 0x1200,
@@ -275,6 +282,29 @@ The \field{enabled} field is set when the user enabled the display.
It is roughly the same as the connected state of a phyiscal display
connector.
+\item[VIRTIO_GPU_CMD_GET_EDID] Retrieve the EDID data for a given
+ scanout. Request data is \field{struct virtio_gpu_get_edid}).
+ Response type is VIRTIO_GPU_RESP_OK_EDID, response data is
+ \field{struct virtio_gpu_resp_EDID}. Support is optional and
+ negotiated using the VIRTIO_GPU_F_EDID feature flag.
+
+\begin{lstlisting}
+struct virtio_gpu_get_edid {
+ struct virtio_gpu_ctrl_hdr hdr;
+ le32 scanout;
+};
+
+struct virtio_gpu_resp_edid {
+ struct virtio_gpu_ctrl_hdr hdr;
+ le32 scanout;
+ le32 size;
+ u8 edid[512];
+};
+\end{lstlisting}
+
+The response contains the EDID display data blob (as specified by
+VESA) for the scanout.
+
\item[VIRTIO_GPU_CMD_RESOURCE_CREATE_2D] Create a 2D resource on the
host. Request data is \field{struct virtio_gpu_resource_create_2d}.
Response type is VIRTIO_GPU_RESP_OK_NODATA.
--
2.9.3
---------------------------------------------------------------------
To unsubscribe, e-mail: virtio-dev-unsubscribe@lists.oasis-open.org
For additional commands, e-mail: virtio-dev-help@lists.oasis-open.org
^ permalink raw reply related [flat|nested] only message in thread
only message in thread, other threads:[~2018-09-13 8:51 UTC | newest]
Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-09-13 8:51 [virtio-dev] [PATCH] Add VIRTIO_GPU_F_EDID to virtio-gpu Gerd Hoffmann
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.