]> git.proxmox.com Git - mirror_ubuntu-kernels.git/commit
xen: Sync up with the canonical protocol definition in Xen
authorOleksandr Andrushchenko <oleksandr_andrushchenko@epam.com>
Thu, 13 Aug 2020 06:21:12 +0000 (09:21 +0300)
committerJuergen Gross <jgross@suse.com>
Thu, 13 Aug 2020 10:50:28 +0000 (12:50 +0200)
commit6f92337b6bffb3d9e509024d6ef5c3f2b112757d
tree31fc9687ce90ca18b5803878f5728667ce049edf
parent129572999a1eb6e125e645d0436de7d4ab6b8a6c
xen: Sync up with the canonical protocol definition in Xen

This is the sync up with the canonical definition of the
display protocol in Xen.

1. Add protocol version as an integer

Version string, which is in fact an integer, is hard to handle in the
code that supports different protocol versions. To simplify that
also add the version as an integer.

2. Pass buffer offset with XENDISPL_OP_DBUF_CREATE

There are cases when display data buffer is created with non-zero
offset to the data start. Handle such cases and provide that offset
while creating a display buffer.

3. Add XENDISPL_OP_GET_EDID command

Add an optional request for reading Extended Display Identification
Data (EDID) structure which allows better configuration of the
display connectors over the configuration set in XenStore.
With this change connectors may have multiple resolutions defined
with respect to detailed timing definitions and additional properties
normally provided by displays.

If this request is not supported by the backend then visible area
is defined by the relevant XenStore's "resolution" property.

If backend provides extended display identification data (EDID) with
XENDISPL_OP_GET_EDID request then EDID values must take precedence
over the resolutions defined in XenStore.

4. Bump protocol version to 2.

Signed-off-by: Oleksandr Andrushchenko <oleksandr_andrushchenko@epam.com>
Reviewed-by: Juergen Gross <jgross@suse.com>
Link: https://lore.kernel.org/r/20200813062113.11030-5-andr2000@gmail.com
Signed-off-by: Juergen Gross <jgross@suse.com>
include/xen/interface/io/displif.h