• Oleksandr Andrushchenko's avatar
    xen: Sync up with the canonical protocol definition in Xen · 6f92337b
    Oleksandr Andrushchenko authored
    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: default avatarOleksandr Andrushchenko <oleksandr_andrushchenko@epam.com>
    Reviewed-by: default avatarJuergen Gross <jgross@suse.com>
    Link: https://lore.kernel.org/r/20200813062113.11030-5-andr2000@gmail.comSigned-off-by: default avatarJuergen Gross <jgross@suse.com>
    6f92337b
displif.h 43.2 KB