diff options
author | Mark Brown <broonie@opensource.wolfsonmicro.com> | 2009-09-16 14:38:53 -0400 |
---|---|---|
committer | Mark Brown <broonie@opensource.wolfsonmicro.com> | 2009-09-16 16:07:50 -0400 |
commit | 8bb014895547eeeb9aa61a654f24e41e15919304 (patch) | |
tree | 0a2510d00ade805b7088cf33c65199ff106034e8 /sound/soc/s3c24xx/s3c64xx-i2s.c | |
parent | 9b95b166789d3ec57cea8cca0d42e602b8643ab0 (diff) |
ASoC: Add S3C64xx IIS CDCLK source selection
CDCLK can either be an output generated by the CPU, intended for use
as the CODEC master clock, or an input (probably from the CODEC)
providing a master clock for the IIS block.
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Diffstat (limited to 'sound/soc/s3c24xx/s3c64xx-i2s.c')
-rw-r--r-- | sound/soc/s3c24xx/s3c64xx-i2s.c | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/sound/soc/s3c24xx/s3c64xx-i2s.c b/sound/soc/s3c24xx/s3c64xx-i2s.c index 3c06c401d0fb..aaf452096be2 100644 --- a/sound/soc/s3c24xx/s3c64xx-i2s.c +++ b/sound/soc/s3c24xx/s3c64xx-i2s.c | |||
@@ -99,6 +99,19 @@ static int s3c64xx_i2s_set_sysclk(struct snd_soc_dai *cpu_dai, | |||
99 | iismod |= S3C64XX_IISMOD_IMS_SYSMUX; | 99 | iismod |= S3C64XX_IISMOD_IMS_SYSMUX; |
100 | break; | 100 | break; |
101 | 101 | ||
102 | case S3C64XX_CLKSRC_CDCLK: | ||
103 | switch (dir) { | ||
104 | case SND_SOC_CLOCK_IN: | ||
105 | iismod |= S3C64XX_IISMOD_CDCLKCON; | ||
106 | break; | ||
107 | case SND_SOC_CLOCK_OUT: | ||
108 | iismod &= ~S3C64XX_IISMOD_CDCLKCON; | ||
109 | break; | ||
110 | default: | ||
111 | return -EINVAL; | ||
112 | } | ||
113 | break; | ||
114 | |||
102 | default: | 115 | default: |
103 | return -EINVAL; | 116 | return -EINVAL; |
104 | } | 117 | } |