dma: Define processing function typedef

To keep code clean and consistent create processing function
interface outside comp_data function definition to omit
duplicated definitions.

Signed-off-by: Karol Trzcinski <karolx.trzcinski@linux.intel.com>
This commit is contained in:
Karol Trzcinski 2020-01-17 11:00:37 +01:00 committed by Liam Girdwood
parent 28f8bd8df1
commit 92c6bb4087
2 changed files with 7 additions and 12 deletions

View File

@ -222,6 +222,9 @@ struct dma_info {
size_t num_dmas;
};
typedef void (*dma_process_func)(struct comp_buffer *source,
struct comp_buffer *sink, uint32_t frames);
/**
* \brief API to initialize a platform DMA controllers.
*
@ -610,16 +613,12 @@ static inline uint32_t dma_sg_get_size(struct dma_sg_elem_array *ea)
/* copies data from DMA buffer using provided processing function */
void dma_buffer_copy_from(struct comp_buffer *source, uint32_t source_bytes,
struct comp_buffer *sink, uint32_t sink_bytes,
void (*process)(const struct comp_buffer *,
struct comp_buffer *, uint32_t),
uint32_t samples);
dma_process_func process, uint32_t samples);
/* copies data to DMA buffer using provided processing function */
void dma_buffer_copy_to(struct comp_buffer *source, uint32_t source_bytes,
struct comp_buffer *sink, uint32_t sink_bytes,
void (*process)(const struct comp_buffer *,
struct comp_buffer *, uint32_t),
uint32_t samples);
dma_process_func process, uint32_t samples);
/* generic DMA DSP <-> Host copier */

View File

@ -187,9 +187,7 @@ void dma_sg_free(struct dma_sg_elem_array *elem_array)
void dma_buffer_copy_from(struct comp_buffer *source, uint32_t source_bytes,
struct comp_buffer *sink, uint32_t sink_bytes,
void (*process)(const struct comp_buffer *,
struct comp_buffer *, uint32_t),
uint32_t samples)
dma_process_func process, uint32_t samples)
{
uint32_t head = source_bytes;
uint32_t tail = 0;
@ -219,9 +217,7 @@ void dma_buffer_copy_from(struct comp_buffer *source, uint32_t source_bytes,
void dma_buffer_copy_to(struct comp_buffer *source, uint32_t source_bytes,
struct comp_buffer *sink, uint32_t sink_bytes,
void (*process)(const struct comp_buffer *,
struct comp_buffer *, uint32_t),
uint32_t samples)
dma_process_func process, uint32_t samples)
{
uint32_t head = sink_bytes;
uint32_t tail = 0;