aboutsummaryrefslogtreecommitdiffstats
path: root/sound/soc/s3c24xx/s3c24xx_uda134x.c
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2010-10-25 11:32:05 -0400
committerLinus Torvalds <torvalds@linux-foundation.org>2010-10-25 11:32:05 -0400
commit33081adf8b89d5a716d7e1c60171768d39795b39 (patch)
tree275de58bbbb5f7ddffcdc087844cfc7fbe4315be /sound/soc/s3c24xx/s3c24xx_uda134x.c
parentc55960499f810357a29659b32d6ea594abee9237 (diff)
parent506ecbca71d07fa327dd986be1682e90885678ee (diff)
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6
* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6: (365 commits) ALSA: hda - Disable sticky PCM stream assignment for AD codecs ALSA: usb - Creative USB X-Fi volume knob support ALSA: ca0106: Use card specific dac id for mute controls. ALSA: ca0106: Allow different sound cards to use different SPI channel mappings. ALSA: ca0106: Create a nice spot for mapping channels to dacs. ALSA: ca0106: Move enabling of front dac out of hardcoded setup sequence. ALSA: ca0106: Pull out dac powering routine into separate function. ALSA: ca0106 - add Sound Blaster 5.1vx info. ASoC: tlv320dac33: Use usleep_range for delays ALSA: usb-audio: add Novation Launchpad support ALSA: hda - Add workarounds for CT-IBG controllers ALSA: hda - Fix wrong TLV mute bit for STAC/IDT codecs ASoC: tpa6130a2: Error handling for broken chip ASoC: max98088: Staticise m98088_eq_band ASoC: soc-core: Fix codec->name memory leak ALSA: hda - Apply ideapad quirk to Acer laptops with Cxt5066 ALSA: hda - Add some workarounds for Creative IBG ALSA: hda - Fix wrong SPDIF NID assignment for CA0110 ALSA: hda - Fix codec rename rules for ALC662-compatible codecs ALSA: hda - Add alc_init_jacks() call to other codecs ...
Diffstat (limited to 'sound/soc/s3c24xx/s3c24xx_uda134x.c')
-rw-r--r--sound/soc/s3c24xx/s3c24xx_uda134x.c21
1 files changed, 8 insertions, 13 deletions
diff --git a/sound/soc/s3c24xx/s3c24xx_uda134x.c b/sound/soc/s3c24xx/s3c24xx_uda134x.c
index 052d59659c29..bd48ffbde880 100644
--- a/sound/soc/s3c24xx/s3c24xx_uda134x.c
+++ b/sound/soc/s3c24xx/s3c24xx_uda134x.c
@@ -133,8 +133,8 @@ static int s3c24xx_uda134x_hw_params(struct snd_pcm_substream *substream,
133 struct snd_pcm_hw_params *params) 133 struct snd_pcm_hw_params *params)
134{ 134{
135 struct snd_soc_pcm_runtime *rtd = substream->private_data; 135 struct snd_soc_pcm_runtime *rtd = substream->private_data;
136 struct snd_soc_dai *codec_dai = rtd->dai->codec_dai; 136 struct snd_soc_dai *codec_dai = rtd->codec_dai;
137 struct snd_soc_dai *cpu_dai = rtd->dai->cpu_dai; 137 struct snd_soc_dai *cpu_dai = rtd->cpu_dai;
138 unsigned int clk = 0; 138 unsigned int clk = 0;
139 int ret = 0; 139 int ret = 0;
140 int clk_source, fs_mode; 140 int clk_source, fs_mode;
@@ -227,14 +227,15 @@ static struct snd_soc_ops s3c24xx_uda134x_ops = {
227static struct snd_soc_dai_link s3c24xx_uda134x_dai_link = { 227static struct snd_soc_dai_link s3c24xx_uda134x_dai_link = {
228 .name = "UDA134X", 228 .name = "UDA134X",
229 .stream_name = "UDA134X", 229 .stream_name = "UDA134X",
230 .codec_dai = &uda134x_dai, 230 .codec_name = "uda134x-hifi",
231 .cpu_dai = &s3c24xx_i2s_dai, 231 .codec_dai_name = "uda134x-hifi",
232 .cpu_dai_name = "s3c24xx-i2s",
232 .ops = &s3c24xx_uda134x_ops, 233 .ops = &s3c24xx_uda134x_ops,
234 .platform_name = "s3c24xx-pcm-audio",
233}; 235};
234 236
235static struct snd_soc_card snd_soc_s3c24xx_uda134x = { 237static struct snd_soc_card snd_soc_s3c24xx_uda134x = {
236 .name = "S3C24XX_UDA134X", 238 .name = "S3C24XX_UDA134X",
237 .platform = &s3c24xx_soc_platform,
238 .dai_link = &s3c24xx_uda134x_dai_link, 239 .dai_link = &s3c24xx_uda134x_dai_link,
239 .num_links = 1, 240 .num_links = 1,
240}; 241};
@@ -256,6 +257,7 @@ static void setmode(int v)
256 gpio_set_value(s3c24xx_uda134x_l3_pins->l3_mode, v > 0); 257 gpio_set_value(s3c24xx_uda134x_l3_pins->l3_mode, v > 0);
257} 258}
258 259
260/* FIXME - This must be codec platform data but in which board file ?? */
259static struct uda134x_platform_data s3c24xx_uda134x = { 261static struct uda134x_platform_data s3c24xx_uda134x = {
260 .l3 = { 262 .l3 = {
261 .setdat = setdat, 263 .setdat = setdat,
@@ -270,12 +272,6 @@ static struct uda134x_platform_data s3c24xx_uda134x = {
270 }, 272 },
271}; 273};
272 274
273static struct snd_soc_device s3c24xx_uda134x_snd_devdata = {
274 .card = &snd_soc_s3c24xx_uda134x,
275 .codec_dev = &soc_codec_dev_uda134x,
276 .codec_data = &s3c24xx_uda134x,
277};
278
279static int s3c24xx_uda134x_setup_pin(int pin, char *fun) 275static int s3c24xx_uda134x_setup_pin(int pin, char *fun)
280{ 276{
281 if (gpio_request(pin, "s3c24xx_uda134x") < 0) { 277 if (gpio_request(pin, "s3c24xx_uda134x") < 0) {
@@ -325,8 +321,7 @@ static int s3c24xx_uda134x_probe(struct platform_device *pdev)
325 } 321 }
326 322
327 platform_set_drvdata(s3c24xx_uda134x_snd_device, 323 platform_set_drvdata(s3c24xx_uda134x_snd_device,
328 &s3c24xx_uda134x_snd_devdata); 324 &snd_soc_s3c24xx_uda134x);
329 s3c24xx_uda134x_snd_devdata.dev = &s3c24xx_uda134x_snd_device->dev;
330 ret = platform_device_add(s3c24xx_uda134x_snd_device); 325 ret = platform_device_add(s3c24xx_uda134x_snd_device);
331 if (ret) { 326 if (ret) {
332 printk(KERN_ERR "S3C24XX_UDA134X SoC Audio: Unable to add\n"); 327 printk(KERN_ERR "S3C24XX_UDA134X SoC Audio: Unable to add\n");