diff options
Diffstat (limited to 'sound')
-rw-r--r-- | sound/soc/samsung/Kconfig | 10 | ||||
-rw-r--r-- | sound/soc/samsung/Makefile | 2 | ||||
-rw-r--r-- | sound/soc/samsung/ac97.c | 17 |
3 files changed, 3 insertions, 26 deletions
diff --git a/sound/soc/samsung/Kconfig b/sound/soc/samsung/Kconfig index 91ee5023668b..55a38697443d 100644 --- a/sound/soc/samsung/Kconfig +++ b/sound/soc/samsung/Kconfig | |||
@@ -1,18 +1,14 @@ | |||
1 | config SND_SOC_SAMSUNG | 1 | config SND_SOC_SAMSUNG |
2 | tristate "ASoC support for Samsung" | 2 | tristate "ASoC support for Samsung" |
3 | depends on PLAT_SAMSUNG | 3 | depends on PLAT_SAMSUNG |
4 | select S3C24XX_DMAC if ARCH_S3C24XX | 4 | depends on S3C64XX_PL080 || !ARCH_S3C64XX |
5 | select S3C64XX_PL080 if ARCH_S3C64XX | 5 | depends on S3C24XX_DMAC || !ARCH_S3C24XX |
6 | select SND_S3C_DMA | ||
7 | select SND_SOC_GENERIC_DMAENGINE_PCM | 6 | select SND_SOC_GENERIC_DMAENGINE_PCM |
8 | help | 7 | help |
9 | Say Y or M if you want to add support for codecs attached to | 8 | Say Y or M if you want to add support for codecs attached to |
10 | the Samsung SoCs' Audio interfaces. You will also need to | 9 | the Samsung SoCs' Audio interfaces. You will also need to |
11 | select the audio interfaces to support below. | 10 | select the audio interfaces to support below. |
12 | 11 | ||
13 | config SND_S3C_DMA | ||
14 | tristate | ||
15 | |||
16 | config SND_S3C24XX_I2S | 12 | config SND_S3C24XX_I2S |
17 | tristate | 13 | tristate |
18 | 14 | ||
@@ -77,7 +73,6 @@ config SND_SOC_SAMSUNG_SMDK_WM8994 | |||
77 | config SND_SOC_SAMSUNG_SMDK2443_WM9710 | 73 | config SND_SOC_SAMSUNG_SMDK2443_WM9710 |
78 | tristate "SoC AC97 Audio support for SMDK2443 - WM9710" | 74 | tristate "SoC AC97 Audio support for SMDK2443 - WM9710" |
79 | depends on SND_SOC_SAMSUNG && MACH_SMDK2443 | 75 | depends on SND_SOC_SAMSUNG && MACH_SMDK2443 |
80 | select S3C2410_DMA | ||
81 | select AC97_BUS | 76 | select AC97_BUS |
82 | select SND_SOC_AC97_CODEC | 77 | select SND_SOC_AC97_CODEC |
83 | select SND_SAMSUNG_AC97 | 78 | select SND_SAMSUNG_AC97 |
@@ -88,7 +83,6 @@ config SND_SOC_SAMSUNG_SMDK2443_WM9710 | |||
88 | config SND_SOC_SAMSUNG_LN2440SBC_ALC650 | 83 | config SND_SOC_SAMSUNG_LN2440SBC_ALC650 |
89 | tristate "SoC AC97 Audio support for LN2440SBC - ALC650" | 84 | tristate "SoC AC97 Audio support for LN2440SBC - ALC650" |
90 | depends on SND_SOC_SAMSUNG && ARCH_S3C24XX | 85 | depends on SND_SOC_SAMSUNG && ARCH_S3C24XX |
91 | select S3C2410_DMA | ||
92 | select AC97_BUS | 86 | select AC97_BUS |
93 | select SND_SOC_AC97_CODEC | 87 | select SND_SOC_AC97_CODEC |
94 | select SND_SAMSUNG_AC97 | 88 | select SND_SAMSUNG_AC97 |
diff --git a/sound/soc/samsung/Makefile b/sound/soc/samsung/Makefile index e8d9ccdc41fd..91505ddaaf95 100644 --- a/sound/soc/samsung/Makefile +++ b/sound/soc/samsung/Makefile | |||
@@ -9,7 +9,7 @@ snd-soc-samsung-spdif-objs := spdif.o | |||
9 | snd-soc-pcm-objs := pcm.o | 9 | snd-soc-pcm-objs := pcm.o |
10 | snd-soc-i2s-objs := i2s.o | 10 | snd-soc-i2s-objs := i2s.o |
11 | 11 | ||
12 | obj-$(CONFIG_SND_S3C_DMA) += snd-soc-s3c-dma.o | 12 | obj-$(CONFIG_SND_SOC_SAMSUNG) += snd-soc-s3c-dma.o |
13 | obj-$(CONFIG_SND_S3C24XX_I2S) += snd-soc-s3c24xx-i2s.o | 13 | obj-$(CONFIG_SND_S3C24XX_I2S) += snd-soc-s3c24xx-i2s.o |
14 | obj-$(CONFIG_SND_SAMSUNG_AC97) += snd-soc-ac97.o | 14 | obj-$(CONFIG_SND_SAMSUNG_AC97) += snd-soc-ac97.o |
15 | obj-$(CONFIG_SND_S3C2412_SOC_I2S) += snd-soc-s3c2412-i2s.o | 15 | obj-$(CONFIG_SND_S3C2412_SOC_I2S) += snd-soc-s3c2412-i2s.o |
diff --git a/sound/soc/samsung/ac97.c b/sound/soc/samsung/ac97.c index 68d9303047e8..2aa24d052a4a 100644 --- a/sound/soc/samsung/ac97.c +++ b/sound/soc/samsung/ac97.c | |||
@@ -19,7 +19,6 @@ | |||
19 | 19 | ||
20 | #include <sound/soc.h> | 20 | #include <sound/soc.h> |
21 | 21 | ||
22 | #include <mach/dma.h> | ||
23 | #include "regs-ac97.h" | 22 | #include "regs-ac97.h" |
24 | #include <linux/platform_data/asoc-s3c.h> | 23 | #include <linux/platform_data/asoc-s3c.h> |
25 | 24 | ||
@@ -225,9 +224,6 @@ static int s3c_ac97_trigger(struct snd_pcm_substream *substream, int cmd, | |||
225 | struct snd_soc_dai *dai) | 224 | struct snd_soc_dai *dai) |
226 | { | 225 | { |
227 | u32 ac_glbctrl; | 226 | u32 ac_glbctrl; |
228 | struct snd_soc_pcm_runtime *rtd = substream->private_data; | ||
229 | struct s3c_dma_params *dma_data = | ||
230 | snd_soc_dai_get_dma_data(rtd->cpu_dai, substream); | ||
231 | 227 | ||
232 | ac_glbctrl = readl(s3c_ac97.regs + S3C_AC97_GLBCTRL); | 228 | ac_glbctrl = readl(s3c_ac97.regs + S3C_AC97_GLBCTRL); |
233 | if (substream->stream == SNDRV_PCM_STREAM_CAPTURE) | 229 | if (substream->stream == SNDRV_PCM_STREAM_CAPTURE) |
@@ -253,11 +249,6 @@ static int s3c_ac97_trigger(struct snd_pcm_substream *substream, int cmd, | |||
253 | 249 | ||
254 | writel(ac_glbctrl, s3c_ac97.regs + S3C_AC97_GLBCTRL); | 250 | writel(ac_glbctrl, s3c_ac97.regs + S3C_AC97_GLBCTRL); |
255 | 251 | ||
256 | if (!dma_data->ops) | ||
257 | dma_data->ops = samsung_dma_get_ops(); | ||
258 | |||
259 | dma_data->ops->started(dma_data->channel); | ||
260 | |||
261 | return 0; | 252 | return 0; |
262 | } | 253 | } |
263 | 254 | ||
@@ -265,9 +256,6 @@ static int s3c_ac97_mic_trigger(struct snd_pcm_substream *substream, | |||
265 | int cmd, struct snd_soc_dai *dai) | 256 | int cmd, struct snd_soc_dai *dai) |
266 | { | 257 | { |
267 | u32 ac_glbctrl; | 258 | u32 ac_glbctrl; |
268 | struct snd_soc_pcm_runtime *rtd = substream->private_data; | ||
269 | struct s3c_dma_params *dma_data = | ||
270 | snd_soc_dai_get_dma_data(rtd->cpu_dai, substream); | ||
271 | 259 | ||
272 | ac_glbctrl = readl(s3c_ac97.regs + S3C_AC97_GLBCTRL); | 260 | ac_glbctrl = readl(s3c_ac97.regs + S3C_AC97_GLBCTRL); |
273 | ac_glbctrl &= ~S3C_AC97_GLBCTRL_MICINTM_MASK; | 261 | ac_glbctrl &= ~S3C_AC97_GLBCTRL_MICINTM_MASK; |
@@ -287,11 +275,6 @@ static int s3c_ac97_mic_trigger(struct snd_pcm_substream *substream, | |||
287 | 275 | ||
288 | writel(ac_glbctrl, s3c_ac97.regs + S3C_AC97_GLBCTRL); | 276 | writel(ac_glbctrl, s3c_ac97.regs + S3C_AC97_GLBCTRL); |
289 | 277 | ||
290 | if (!dma_data->ops) | ||
291 | dma_data->ops = samsung_dma_get_ops(); | ||
292 | |||
293 | dma_data->ops->started(dma_data->channel); | ||
294 | |||
295 | return 0; | 278 | return 0; |
296 | } | 279 | } |
297 | 280 | ||