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