Commit | Line | Data |
---|---|---|
c0f41bb1 | 1 | /* |
4b640cf3 | 2 | * dma.h -- |
c0f41bb1 BD |
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 | * | |
344b4c48 | 9 | * ALSA PCM interface for the Samsung SoC |
c0f41bb1 BD |
10 | */ |
11 | ||
faa31776 JB |
12 | #ifndef _S3C_AUDIO_H |
13 | #define _S3C_AUDIO_H | |
c0f41bb1 | 14 | |
d37bdf73 MB |
15 | #include <sound/dmaengine_pcm.h> |
16 | ||
71e5222c SK |
17 | struct s3c_dma_client { |
18 | char *name; | |
19 | }; | |
20 | ||
faa31776 | 21 | struct s3c_dma_params { |
71e5222c | 22 | struct s3c_dma_client *client; /* stream identifier */ |
7f1bc26e | 23 | int channel; /* Channel ID */ |
c0f41bb1 | 24 | dma_addr_t dma_addr; |
7f1bc26e | 25 | int dma_size; /* Size of the DMA transfer */ |
344b4c48 BK |
26 | unsigned ch; |
27 | struct samsung_dma_ops *ops; | |
40476f61 | 28 | char *ch_name; |
d37bdf73 | 29 | struct snd_dmaengine_dai_dma_data dma_data; |
c0f41bb1 BD |
30 | }; |
31 | ||
3688569e MB |
32 | void samsung_asoc_init_dma_data(struct snd_soc_dai *dai, |
33 | struct s3c_dma_params *playback, | |
34 | struct s3c_dma_params *capture); | |
85ff3c29 MB |
35 | int samsung_asoc_dma_platform_register(struct device *dev); |
36 | void samsung_asoc_dma_platform_unregister(struct device *dev); | |
a08485d8 | 37 | |
c0f41bb1 | 38 | #endif |