On 04/12/2018 01:26 PM, Oleksandr Andrushchenko wrote:
This is the sync up with the canonical definition of the sound protocol in Xen:
Protocol version was referenced in the protocol description, but missed its definition. Fixed by adding a constant for current protocol version.
Some of the request descriptions have "reserved" fields missed: fixed by adding corresponding entries.
Extend the size of the requests and responses to 64 octets. Bump protocol version to 2.
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
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: Oleksandr Andrushchenko oleksandr_andrushchenko@epam.com Signed-off-by: Oleksandr Grytsov oleksandr_grytsov@epam.com Cc: Konrad Rzeszutek Wilk konrad.wilk@oracle.com Cc: Takashi Iwai tiwai@suse.de
Applied to for-linus-4.17
-boris