• Oleksandr Andrushchenko's avatar
    xen/sndif: Sync up with the canonical definition in Xen · cd6e992b
    Oleksandr Andrushchenko authored
    This is the sync up with the canonical definition of the sound
    protocol in Xen:
    
    1. Protocol version was referenced in the protocol description,
       but missed its definition. Fixed by adding a constant
       for current protocol version.
    
    2. Some of the request descriptions have "reserved" fields
       missed: fixed by adding corresponding entries.
    
    3. Extend the size of the requests and responses to 64 octets.
       Bump protocol version to 2.
    
    4. Add explicit back and front synchronization
       In order to provide explicit synchronization between backend and
       frontend the following changes are introduced in the protocol:
        - add new ring buffer for sending asynchronous events from
          backend to frontend to report number of bytes played by the
          frontend (XENSND_EVT_CUR_POS)
        - introduce trigger events for playback control: start/stop/pause/resume
        - add "req-" prefix to event-channel and ring-ref to unify naming
          of the Xen event channels for requests and events
    
    5. Add explicit back and front parameter negotiation
       In order to provide explicit stream parameter negotiation between
       backend and frontend the following changes are introduced in the protocol:
       add XENSND_OP_HW_PARAM_QUERY request to read/update
       configuration space for the parameters given: request passes
       desired parameter's intervals/masks and the response to this request
       returns allowed min/max intervals/masks to be used.
    Signed-off-by: default avatarOleksandr Andrushchenko <oleksandr_andrushchenko@epam.com>
    Signed-off-by: default avatarOleksandr Grytsov <oleksandr_grytsov@epam.com>
    Reviewed-by: default avatarKonrad Rzeszutek Wilk <konrad.wilk@oracle.com>
    Reviewed-by: default avatarBoris Ostrovsky <boris.ostrovsky@oracle.com>
    Cc: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
    Cc: Takashi Iwai <tiwai@suse.de>
    Signed-off-by: default avatarBoris Ostrovsky <boris.ostrovsky@oracle.com>
    cd6e992b
sndif.h 48.5 KB