On 28-01-20, 11:43, Cezary Rojewski wrote: > Update DMA buffer definition for snd_compr_runtime so it is represented > similarly as in snd_pcm_runtime. While at it, modify > snd_compr_set_runtime_buffer to account for newly added members. Please run ./scripts/get_maintainer.pl, it will tell you the people you should CC on a patch. Also Takashi already acked, so you should add the acks/reviews received in subsequent versions (unless they changed) And for this: Acked-by: Vinod Koul <vkoul@xxxxxxxxxx> > Signed-off-by: Cezary Rojewski <cezary.rojewski@xxxxxxxxx> > --- > include/sound/compress_driver.h | 35 ++++++++++++++++++++++++--------- > 1 file changed, 26 insertions(+), 9 deletions(-) > > diff --git a/include/sound/compress_driver.h b/include/sound/compress_driver.h > index bc88d6f964da..00f633c0c3ba 100644 > --- a/include/sound/compress_driver.h > +++ b/include/sound/compress_driver.h > @@ -23,7 +23,6 @@ struct snd_compr_ops; > * struct snd_compr_runtime: runtime stream description > * @state: stream state > * @ops: pointer to DSP callbacks > - * @dma_buffer_p: runtime dma buffer pointer > * @buffer: pointer to kernel buffer, valid only when not in mmap mode or > * DSP doesn't implement copy > * @buffer_size: size of the above buffer > @@ -34,11 +33,14 @@ struct snd_compr_ops; > * @total_bytes_transferred: cumulative bytes transferred by offload DSP > * @sleep: poll sleep > * @private_data: driver private data pointer > + * @dma_area: virtual buffer address > + * @dma_addr: physical buffer address (not accessible from main CPU) > + * @dma_bytes: size of DMA area > + * @dma_buffer_p: runtime dma buffer pointer > */ > struct snd_compr_runtime { > snd_pcm_state_t state; > struct snd_compr_ops *ops; > - struct snd_dma_buffer *dma_buffer_p; > void *buffer; > u64 buffer_size; > u32 fragment_size; > @@ -47,6 +49,11 @@ struct snd_compr_runtime { > u64 total_bytes_transferred; > wait_queue_head_t sleep; > void *private_data; > + > + unsigned char *dma_area; > + dma_addr_t dma_addr; > + size_t dma_bytes; > + struct snd_dma_buffer *dma_buffer_p; > }; > > /** > @@ -180,19 +187,29 @@ static inline void snd_compr_drain_notify(struct snd_compr_stream *stream) > > /** > * snd_compr_set_runtime_buffer - Set the Compress runtime buffer > - * @substream: compress substream to set > + * @stream: compress stream to set > * @bufp: the buffer information, NULL to clear > * > * Copy the buffer information to runtime buffer when @bufp is non-NULL. > * Otherwise it clears the current buffer information. > */ > -static inline void snd_compr_set_runtime_buffer( > - struct snd_compr_stream *substream, > - struct snd_dma_buffer *bufp) > +static inline void > +snd_compr_set_runtime_buffer(struct snd_compr_stream *stream, > + struct snd_dma_buffer *bufp) > { > - struct snd_compr_runtime *runtime = substream->runtime; > - > - runtime->dma_buffer_p = bufp; > + struct snd_compr_runtime *runtime = stream->runtime; > + > + if (bufp) { > + runtime->dma_buffer_p = bufp; > + runtime->dma_area = bufp->area; > + runtime->dma_addr = bufp->addr; > + runtime->dma_bytes = bufp->bytes; > + } else { > + runtime->dma_buffer_p = NULL; > + runtime->dma_area = NULL; > + runtime->dma_addr = 0; > + runtime->dma_bytes = 0; > + } > } > > int snd_compr_stop_error(struct snd_compr_stream *stream, > -- > 2.17.1 > > _______________________________________________ > Alsa-devel mailing list > Alsa-devel@xxxxxxxxxxxxxxxx > https://mailman.alsa-project.org/mailman/listinfo/alsa-devel -- ~Vinod _______________________________________________ Alsa-devel mailing list Alsa-devel@xxxxxxxxxxxxxxxx https://mailman.alsa-project.org/mailman/listinfo/alsa-devel