Message ID | 20200128104356.16570-5-cezary.rojewski@intel.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | ASoC: SOF: Data probing | expand |
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@kernel.org> > Signed-off-by: Cezary Rojewski <cezary.rojewski@intel.com> > --- > 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@alsa-project.org > https://mailman.alsa-project.org/mailman/listinfo/alsa-devel
On 2020-01-28 11:59, Vinod Koul wrote: > 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@kernel.org> > No ALSA core & hda patches changed since v1. Sorry for missing the Acked-by signature from Takashi. Should I resend and add the missing ack in v4? Czarek
On Tue, 28 Jan 2020 12:58:18 +0100, Cezary Rojewski wrote: > > On 2020-01-28 11:59, Vinod Koul wrote: > > 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@kernel.org> > > > > No ALSA core & hda patches changed since v1. Sorry for missing the > Acked-by signature from Takashi. Should I resend and add the missing > ack in v4? Not necessary just for the lack of my ack. Of course, if you plan to submit v4 in anyway later, feel free to add them there :) thanks, Takashi > > Czarek >
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,
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. Signed-off-by: Cezary Rojewski <cezary.rojewski@intel.com> --- include/sound/compress_driver.h | 35 ++++++++++++++++++++++++--------- 1 file changed, 26 insertions(+), 9 deletions(-)