[alsa-devel] [Xen-devel][PATCH v3 0/5] sndif: add explicit back and front synchronization
Konrad Rzeszutek Wilk
konrad.wilk at oracle.com
Thu Apr 12 16:31:17 CEST 2018
On Wed, Mar 21, 2018 at 09:15:36AM +0200, Oleksandr Andrushchenko wrote:
> On 03/20/2018 10:22 PM, Takashi Iwai wrote:
> > On Mon, 19 Mar 2018 08:22:19 +0100,
> > Oleksandr Andrushchenko wrote:
> > > From: Oleksandr Andrushchenko <oleksandr_andrushchenko at epam.com>
> > >
> > > Hello, all!
> > >
> > > In order to provide explicit synchronization between backend and
> > > frontend the following changes are introduced in the protocol:
> > > - bump protocol version to 2
> > > - 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 XENSND_OP_HW_PARAM_QUERY request to read/update
> > > stream configuration space: request passes desired intervals/formats for
> > > the stream parameters and the response returns allowed intervals and
> > > formats mask that can be used.
> > >
> > > Changes since v2:
> > > 1. Konrad's r-b tag for version patch
> > > 2. MAJOR: changed req/resp/evt packet sizes from 32 to 64 octets
> > > 3. Reworked XENSND_OP_HW_PARAM_QUERY so it now sends all
> > > parameters at once, allowing to check all the configuration
> > > space.
> > > 4. Minor documentation cleanup (added missed "reserved" fields)
> > >
> > > Changes since v1:
> > >
> > > 1. Changed protocol version definition from string to integer,
> > > so it can easily be used in comparisons.
> > > Konrad, I have removed your r-b tag for the reason of this change.
> > >
> > > 2. 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 parameter given: request passes
> > > desired parameter interval (mask) and the response to this request
> > > returns min/max interval (mask) for the parameter to be used.
> > >
> > > Parameters supported by this request/response:
> > > - format mask
> > > - sample rate interval
> > > - number of channels interval
> > > - buffer size, interval, frames
> > > - period size, interval, frames
> > I can't judge exactly about the protocol without the actual FE/BE
> > implementations, but the change looks good to me, especially if you've
> > already tested something.
> Thank you, I have tested the changes and need them to start upstreaming
> the frontend driver used to test the protocol.
> Do you mind if I put your Acked-by (or you prefer Reviewed-by?) tag to these
> patches:
>
> [PATCH v3 4/5] sndif: Add explicit back and front synchronization
> [PATCH v3 5/5] sndif: Add explicit back and front parameter negotiation
>
> Please note, that the changes first to be merged into Xen and then I'll
> prepare
> the same, but for the kernel
> >
> > If other people have no concern, let's go ahead with FE/BE stuff.
> Konrad, are you ok with the changes?
Yes. Thank you for your persistence.
Can you also add:
Reviewed-by: Konrad Rzeszutek Wilk <konrad.wilk at oracle.com>
Thank you!
> >
> > thanks,
> >
> > Takashi
> Thank you,
> Oleksandr
More information about the Alsa-devel
mailing list