Ben Dooks | c0f41bb | 2007-02-14 13:20:03 +0100 | [diff] [blame] | 1 | /* |
Jassi Brar | 4b640cf | 2010-11-22 15:35:57 +0900 | [diff] [blame] | 2 | * dma.h -- |
Ben Dooks | c0f41bb | 2007-02-14 13:20:03 +0100 | [diff] [blame] | 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 | * |
Boojin Kim | 344b4c4 | 2011-09-02 09:44:43 +0900 | [diff] [blame] | 9 | * ALSA PCM interface for the Samsung SoC |
Ben Dooks | c0f41bb | 2007-02-14 13:20:03 +0100 | [diff] [blame] | 10 | */ |
| 11 | |
Jassi Brar | faa3177 | 2009-11-17 16:53:23 +0900 | [diff] [blame] | 12 | #ifndef _S3C_AUDIO_H |
| 13 | #define _S3C_AUDIO_H |
Ben Dooks | c0f41bb | 2007-02-14 13:20:03 +0100 | [diff] [blame] | 14 | |
Jassi Brar | faa3177 | 2009-11-17 16:53:23 +0900 | [diff] [blame] | 15 | struct s3c_dma_params { |
Graeme Gregory | 7f1bc26 | 2007-04-17 12:35:18 +0200 | [diff] [blame] | 16 | struct s3c2410_dma_client *client; /* stream identifier */ |
| 17 | int channel; /* Channel ID */ |
Ben Dooks | c0f41bb | 2007-02-14 13:20:03 +0100 | [diff] [blame] | 18 | dma_addr_t dma_addr; |
Graeme Gregory | 7f1bc26 | 2007-04-17 12:35:18 +0200 | [diff] [blame] | 19 | int dma_size; /* Size of the DMA transfer */ |
Boojin Kim | 344b4c4 | 2011-09-02 09:44:43 +0900 | [diff] [blame] | 20 | unsigned ch; |
| 21 | struct samsung_dma_ops *ops; |
Padmavathi Venna | 40476f6 | 2013-01-18 17:17:01 +0530 | [diff] [blame] | 22 | char *ch_name; |
Ben Dooks | c0f41bb | 2007-02-14 13:20:03 +0100 | [diff] [blame] | 23 | }; |
| 24 | |
Mark Brown | 3688569 | 2013-10-19 15:23:15 +0100 | [diff] [blame^] | 25 | void samsung_asoc_init_dma_data(struct snd_soc_dai *dai, |
| 26 | struct s3c_dma_params *playback, |
| 27 | struct s3c_dma_params *capture); |
Mark Brown | 85ff3c2 | 2013-08-19 22:59:05 +0100 | [diff] [blame] | 28 | int samsung_asoc_dma_platform_register(struct device *dev); |
| 29 | void samsung_asoc_dma_platform_unregister(struct device *dev); |
Padmavathi Venna | a08485d8 | 2012-12-07 13:59:21 +0530 | [diff] [blame] | 30 | |
Ben Dooks | c0f41bb | 2007-02-14 13:20:03 +0100 | [diff] [blame] | 31 | #endif |