xref: /openbmc/linux/sound/soc/samsung/dma.h (revision 7132fe4f)
1 /*
2  *  dma.h --
3  *
4  *  This program is free software; you can redistribute  it and/or modify it
5  *  under  the terms of  the GNU General  Public License as published by the
6  *  Free Software Foundation;  either version 2 of the  License, or (at your
7  *  option) any later version.
8  *
9  *  ALSA PCM interface for the Samsung SoC
10  */
11 
12 #ifndef _S3C_AUDIO_H
13 #define _S3C_AUDIO_H
14 
15 #include <sound/dmaengine_pcm.h>
16 
17 struct s3c_dma_client {
18 	char *name;
19 };
20 
21 struct s3c_dma_params {
22 	struct s3c_dma_client *client;	/* stream identifier */
23 	int channel;				/* Channel ID */
24 	dma_addr_t dma_addr;
25 	int dma_size;			/* Size of the DMA transfer */
26 	unsigned ch;
27 	struct samsung_dma_ops *ops;
28 	char *ch_name;
29 	struct snd_dmaengine_dai_dma_data dma_data;
30 };
31 
32 void samsung_asoc_init_dma_data(struct snd_soc_dai *dai,
33 				struct s3c_dma_params *playback,
34 				struct s3c_dma_params *capture);
35 int samsung_asoc_dma_platform_register(struct device *dev);
36 
37 #endif
38