[PATCH v2 0/5] Fixes and improvements for Xen pvdrm

From: Oleksandr Andrushchenko
Date: Thu Aug 13 2020 - 02:21:19 EST

From: Oleksandr Andrushchenko <oleksandr_andrushchenko@xxxxxxxx>


This series contains an assorted set of fixes and improvements for
the Xen para-virtualized display driver and grant device driver which
I have collected over the last couple of months:

1. Minor fixes to grant device driver and drm/xen-front.

2. New format (YUYV) added to the list of the PV DRM supported formats
which allows the driver to be used in zero-copying use-cases when
a camera device is the source of the dma-bufs.

3. Synchronization with the latest para-virtualized protocol definition
in Xen [1].

4. SGT offset is now propagated to the backend: while importing a dmabuf
it is possible that the data of the buffer is put with offset which is
indicated by the SGT offset. This is needed for some GPUs which have
non-zero offset.

Thank you,
Oleksandr Andrushchenko

[1] https://xenbits.xen.org/gitweb/?p=xen.git;a=commit;h=c27a184225eab54d20435c8cab5ad0ef384dc2c0

Changes since v1:

1. Removed patch which adds EDID to PV DRM as it needs more time for review:
"5. Version 2 of the Xen displif protocol adds XENDISPL_OP_GET_EDID
request which allows frontends to request EDID structure per
connector. This request is optional and if not supported by the
backend then visible area is still defined by the relevant
XenStore's "resolution" property.
If backend provides EDID with XENDISPL_OP_GET_EDID request then
its values must take precedence over the resolutions defined in
I will send this as a dedicated patch.

2. Added missing CC stable for the patches with fixes

Oleksandr Andrushchenko (5):
xen/gntdev: Fix dmabuf import with non-zero sgt offset
drm/xen-front: Fix misused IS_ERR_OR_NULL checks
drm/xen-front: Add YUYV to supported formats
xen: Sync up with the canonical protocol definition in Xen
drm/xen-front: Pass dumb buffer data offset to the backend

drivers/gpu/drm/xen/xen_drm_front.c | 10 +--
drivers/gpu/drm/xen/xen_drm_front.h | 2 +-
drivers/gpu/drm/xen/xen_drm_front_conn.c | 1 +
drivers/gpu/drm/xen/xen_drm_front_gem.c | 11 +--
drivers/gpu/drm/xen/xen_drm_front_kms.c | 2 +-
drivers/xen/gntdev-dmabuf.c | 8 +++
include/xen/interface/io/displif.h | 91 +++++++++++++++++++++++-
7 files changed, 111 insertions(+), 14 deletions(-)