mbox series

[v4,0/4] vhost-user-gpu get_edid feature

Message ID 20230626164708.1163239-1-ernunes@redhat.com (mailing list archive)
Headers show
Series vhost-user-gpu get_edid feature | expand

Message

Erico Nunes June 26, 2023, 4:47 p.m. UTC
This adds support to the virtio-gpu get_edid command in qemu as the
frontend as well as the vhost-user-gpu implementation in contrib/.
So far, qemu has been outputting the following message:
  EDID requested but the backend doesn't support it.
when using that implementation.

This is tested with vhost-user-gpu, the dbus ui backend and the
monitor-edid application, which now shows complete "QEMU Monitor" edid
data.

The VHOST_USER_GPU_PROTOCOL_F_EDID protocol feature is required if the
frontend sets the VIRTIO_GPU_F_EDID virtio-gpu feature. If the frontend
sets the virtio-gpu feature but does not support the protocol feature,
the backend will abort with an error.

v3 -> v4:
- Remove unused fd code on patch 4/4

v2 -> v3:
- Fixed review comments from v2. Missing struct documentation and
setting feature bits to be compatible with the frontend.

Erico Nunes (4):
  virtio-gpu: refactor generate_edid function to virtio_gpu_base
  docs: vhost-user-gpu: add protocol changes for EDID
  contrib/vhost-user-gpu: implement get_edid feature
  vhost-user-gpu: implement get_edid frontend feature

 contrib/vhost-user-gpu/vhost-user-gpu.c | 73 +++++++++++++++++++++++--
 contrib/vhost-user-gpu/virgl.c          |  3 +
 contrib/vhost-user-gpu/vugpu.h          | 11 ++++
 docs/interop/vhost-user-gpu.rst         | 28 +++++++++-
 hw/display/vhost-user-gpu.c             | 32 +++++++++++
 hw/display/virtio-gpu-base.c            | 17 ++++++
 hw/display/virtio-gpu.c                 | 20 +------
 include/hw/virtio/virtio-gpu.h          |  2 +
 8 files changed, 158 insertions(+), 28 deletions(-)