diff options
author | Mark Brown <broonie@opensource.wolfsonmicro.com> | 2009-04-16 09:14:35 -0400 |
---|---|---|
committer | Mark Brown <broonie@opensource.wolfsonmicro.com> | 2009-04-16 09:14:35 -0400 |
commit | 8d98f2246d7c622198ae0b8ca66f1c82b8a25377 (patch) | |
tree | 6e1dd0347aadc121f6933f070bffd34bb3b33f70 | |
parent | 3ba191ce051a32b20757f063120496e860ea8f9d (diff) | |
parent | 002fbad829883a3ad9b185077f9e54c37dc7502d (diff) |
Merge branch 'for-2.6.30' into for-2.6.31
-rw-r--r-- | sound/soc/omap/omap-mcbsp.c | 7 | ||||
-rw-r--r-- | sound/soc/omap/osk5912.c | 4 | ||||
-rw-r--r-- | sound/soc/pxa/pxa-ssp.c | 1 | ||||
-rw-r--r-- | sound/soc/s3c24xx/jive_wm8750.c | 12 | ||||
-rw-r--r-- | sound/soc/s3c24xx/s3c-i2s-v2.c | 18 | ||||
-rw-r--r-- | sound/soc/s3c24xx/s3c2412-i2s.c | 2 |
6 files changed, 25 insertions, 19 deletions
diff --git a/sound/soc/omap/omap-mcbsp.c b/sound/soc/omap/omap-mcbsp.c index 2b4a8da09918..4d6ef0bf71dd 100644 --- a/sound/soc/omap/omap-mcbsp.c +++ b/sound/soc/omap/omap-mcbsp.c | |||
@@ -290,7 +290,7 @@ static int omap_mcbsp_dai_hw_params(struct snd_pcm_substream *substream, | |||
290 | case SND_SOC_DAIFMT_DSP_A: | 290 | case SND_SOC_DAIFMT_DSP_A: |
291 | case SND_SOC_DAIFMT_DSP_B: | 291 | case SND_SOC_DAIFMT_DSP_B: |
292 | regs->srgr2 |= FPER(wlen * channels - 1); | 292 | regs->srgr2 |= FPER(wlen * channels - 1); |
293 | regs->srgr1 |= FWID(wlen * channels - 2); | 293 | regs->srgr1 |= FWID(0); |
294 | break; | 294 | break; |
295 | } | 295 | } |
296 | 296 | ||
@@ -309,6 +309,7 @@ static int omap_mcbsp_dai_set_dai_fmt(struct snd_soc_dai *cpu_dai, | |||
309 | { | 309 | { |
310 | struct omap_mcbsp_data *mcbsp_data = to_mcbsp(cpu_dai->private_data); | 310 | struct omap_mcbsp_data *mcbsp_data = to_mcbsp(cpu_dai->private_data); |
311 | struct omap_mcbsp_reg_cfg *regs = &mcbsp_data->regs; | 311 | struct omap_mcbsp_reg_cfg *regs = &mcbsp_data->regs; |
312 | unsigned int temp_fmt = fmt; | ||
312 | 313 | ||
313 | if (mcbsp_data->configured) | 314 | if (mcbsp_data->configured) |
314 | return 0; | 315 | return 0; |
@@ -342,6 +343,8 @@ static int omap_mcbsp_dai_set_dai_fmt(struct snd_soc_dai *cpu_dai, | |||
342 | /* 0-bit data delay */ | 343 | /* 0-bit data delay */ |
343 | regs->rcr2 |= RDATDLY(0); | 344 | regs->rcr2 |= RDATDLY(0); |
344 | regs->xcr2 |= XDATDLY(0); | 345 | regs->xcr2 |= XDATDLY(0); |
346 | /* Invert FS polarity configuration */ | ||
347 | temp_fmt ^= SND_SOC_DAIFMT_NB_IF; | ||
345 | break; | 348 | break; |
346 | default: | 349 | default: |
347 | /* Unsupported data format */ | 350 | /* Unsupported data format */ |
@@ -365,7 +368,7 @@ static int omap_mcbsp_dai_set_dai_fmt(struct snd_soc_dai *cpu_dai, | |||
365 | } | 368 | } |
366 | 369 | ||
367 | /* Set bit clock (CLKX/CLKR) and FS polarities */ | 370 | /* Set bit clock (CLKX/CLKR) and FS polarities */ |
368 | switch (fmt & SND_SOC_DAIFMT_INV_MASK) { | 371 | switch (temp_fmt & SND_SOC_DAIFMT_INV_MASK) { |
369 | case SND_SOC_DAIFMT_NB_NF: | 372 | case SND_SOC_DAIFMT_NB_NF: |
370 | /* | 373 | /* |
371 | * Normal BCLK + FS. | 374 | * Normal BCLK + FS. |
diff --git a/sound/soc/omap/osk5912.c b/sound/soc/omap/osk5912.c index a952a4eb3361..a4e149b7f0eb 100644 --- a/sound/soc/omap/osk5912.c +++ b/sound/soc/omap/osk5912.c | |||
@@ -62,7 +62,7 @@ static int osk_hw_params(struct snd_pcm_substream *substream, | |||
62 | /* Set codec DAI configuration */ | 62 | /* Set codec DAI configuration */ |
63 | err = snd_soc_dai_set_fmt(codec_dai, | 63 | err = snd_soc_dai_set_fmt(codec_dai, |
64 | SND_SOC_DAIFMT_DSP_B | | 64 | SND_SOC_DAIFMT_DSP_B | |
65 | SND_SOC_DAIFMT_NB_IF | | 65 | SND_SOC_DAIFMT_NB_NF | |
66 | SND_SOC_DAIFMT_CBM_CFM); | 66 | SND_SOC_DAIFMT_CBM_CFM); |
67 | if (err < 0) { | 67 | if (err < 0) { |
68 | printk(KERN_ERR "can't set codec DAI configuration\n"); | 68 | printk(KERN_ERR "can't set codec DAI configuration\n"); |
@@ -72,7 +72,7 @@ static int osk_hw_params(struct snd_pcm_substream *substream, | |||
72 | /* Set cpu DAI configuration */ | 72 | /* Set cpu DAI configuration */ |
73 | err = snd_soc_dai_set_fmt(cpu_dai, | 73 | err = snd_soc_dai_set_fmt(cpu_dai, |
74 | SND_SOC_DAIFMT_DSP_B | | 74 | SND_SOC_DAIFMT_DSP_B | |
75 | SND_SOC_DAIFMT_NB_IF | | 75 | SND_SOC_DAIFMT_NB_NF | |
76 | SND_SOC_DAIFMT_CBM_CFM); | 76 | SND_SOC_DAIFMT_CBM_CFM); |
77 | if (err < 0) { | 77 | if (err < 0) { |
78 | printk(KERN_ERR "can't set cpu DAI configuration\n"); | 78 | printk(KERN_ERR "can't set cpu DAI configuration\n"); |
diff --git a/sound/soc/pxa/pxa-ssp.c b/sound/soc/pxa/pxa-ssp.c index 6768e4ecfd75..487079550e71 100644 --- a/sound/soc/pxa/pxa-ssp.c +++ b/sound/soc/pxa/pxa-ssp.c | |||
@@ -815,6 +815,7 @@ static int pxa_ssp_probe(struct platform_device *pdev, | |||
815 | goto err_priv; | 815 | goto err_priv; |
816 | } | 816 | } |
817 | 817 | ||
818 | priv->dai_fmt = (unsigned int) -1; | ||
818 | dai->private_data = priv; | 819 | dai->private_data = priv; |
819 | 820 | ||
820 | return 0; | 821 | return 0; |
diff --git a/sound/soc/s3c24xx/jive_wm8750.c b/sound/soc/s3c24xx/jive_wm8750.c index 32063790d95b..93e6c87b7399 100644 --- a/sound/soc/s3c24xx/jive_wm8750.c +++ b/sound/soc/s3c24xx/jive_wm8750.c | |||
@@ -69,8 +69,8 @@ static int jive_hw_params(struct snd_pcm_substream *substream, | |||
69 | break; | 69 | break; |
70 | } | 70 | } |
71 | 71 | ||
72 | s3c_i2sv2_calc_rate(&div, NULL, params_rate(params), | 72 | s3c_i2sv2_iis_calc_rate(&div, NULL, params_rate(params), |
73 | s3c2412_get_iisclk()); | 73 | s3c2412_get_iisclk()); |
74 | 74 | ||
75 | /* set codec DAI configuration */ | 75 | /* set codec DAI configuration */ |
76 | ret = snd_soc_dai_set_fmt(codec_dai, SND_SOC_DAIFMT_I2S | | 76 | ret = snd_soc_dai_set_fmt(codec_dai, SND_SOC_DAIFMT_I2S | |
@@ -145,8 +145,9 @@ static struct snd_soc_dai_link jive_dai = { | |||
145 | }; | 145 | }; |
146 | 146 | ||
147 | /* jive audio machine driver */ | 147 | /* jive audio machine driver */ |
148 | static struct snd_soc_machine snd_soc_machine_jive = { | 148 | static struct snd_soc_card snd_soc_machine_jive = { |
149 | .name = "Jive", | 149 | .name = "Jive", |
150 | .platform = &s3c24xx_soc_platform, | ||
150 | .dai_link = &jive_dai, | 151 | .dai_link = &jive_dai, |
151 | .num_links = 1, | 152 | .num_links = 1, |
152 | }; | 153 | }; |
@@ -157,9 +158,8 @@ static struct wm8750_setup_data jive_wm8750_setup = { | |||
157 | 158 | ||
158 | /* jive audio subsystem */ | 159 | /* jive audio subsystem */ |
159 | static struct snd_soc_device jive_snd_devdata = { | 160 | static struct snd_soc_device jive_snd_devdata = { |
160 | .machine = &snd_soc_machine_jive, | 161 | .card = &snd_soc_machine_jive, |
161 | .platform = &s3c24xx_soc_platform, | 162 | .codec_dev = &soc_codec_dev_wm8750, |
162 | .codec_dev = &soc_codec_dev_wm8750_spi, | ||
163 | .codec_data = &jive_wm8750_setup, | 163 | .codec_data = &jive_wm8750_setup, |
164 | }; | 164 | }; |
165 | 165 | ||
diff --git a/sound/soc/s3c24xx/s3c-i2s-v2.c b/sound/soc/s3c24xx/s3c-i2s-v2.c index 295a4c910262..689ffcd17e1f 100644 --- a/sound/soc/s3c24xx/s3c-i2s-v2.c +++ b/sound/soc/s3c24xx/s3c-i2s-v2.c | |||
@@ -473,9 +473,9 @@ static int s3c2412_i2s_set_clkdiv(struct snd_soc_dai *cpu_dai, | |||
473 | /* default table of all avaialable root fs divisors */ | 473 | /* default table of all avaialable root fs divisors */ |
474 | static unsigned int iis_fs_tab[] = { 256, 512, 384, 768 }; | 474 | static unsigned int iis_fs_tab[] = { 256, 512, 384, 768 }; |
475 | 475 | ||
476 | int s3c2412_iis_calc_rate(struct s3c_i2sv2_rate_calc *info, | 476 | int s3c_i2sv2_iis_calc_rate(struct s3c_i2sv2_rate_calc *info, |
477 | unsigned int *fstab, | 477 | unsigned int *fstab, |
478 | unsigned int rate, struct clk *clk) | 478 | unsigned int rate, struct clk *clk) |
479 | { | 479 | { |
480 | unsigned long clkrate = clk_get_rate(clk); | 480 | unsigned long clkrate = clk_get_rate(clk); |
481 | unsigned int div; | 481 | unsigned int div; |
@@ -531,7 +531,7 @@ int s3c2412_iis_calc_rate(struct s3c_i2sv2_rate_calc *info, | |||
531 | 531 | ||
532 | return 0; | 532 | return 0; |
533 | } | 533 | } |
534 | EXPORT_SYMBOL_GPL(s3c2412_iis_calc_rate); | 534 | EXPORT_SYMBOL_GPL(s3c_i2sv2_iis_calc_rate); |
535 | 535 | ||
536 | int s3c_i2sv2_probe(struct platform_device *pdev, | 536 | int s3c_i2sv2_probe(struct platform_device *pdev, |
537 | struct snd_soc_dai *dai, | 537 | struct snd_soc_dai *dai, |
@@ -624,10 +624,12 @@ static int s3c2412_i2s_resume(struct snd_soc_dai *dai) | |||
624 | 624 | ||
625 | int s3c_i2sv2_register_dai(struct snd_soc_dai *dai) | 625 | int s3c_i2sv2_register_dai(struct snd_soc_dai *dai) |
626 | { | 626 | { |
627 | dai->ops.trigger = s3c2412_i2s_trigger; | 627 | struct snd_soc_dai_ops *ops = dai->ops; |
628 | dai->ops.hw_params = s3c2412_i2s_hw_params; | 628 | |
629 | dai->ops.set_fmt = s3c2412_i2s_set_fmt; | 629 | ops->trigger = s3c2412_i2s_trigger; |
630 | dai->ops.set_clkdiv = s3c2412_i2s_set_clkdiv; | 630 | ops->hw_params = s3c2412_i2s_hw_params; |
631 | ops->set_fmt = s3c2412_i2s_set_fmt; | ||
632 | ops->set_clkdiv = s3c2412_i2s_set_clkdiv; | ||
631 | 633 | ||
632 | dai->suspend = s3c2412_i2s_suspend; | 634 | dai->suspend = s3c2412_i2s_suspend; |
633 | dai->resume = s3c2412_i2s_resume; | 635 | dai->resume = s3c2412_i2s_resume; |
diff --git a/sound/soc/s3c24xx/s3c2412-i2s.c b/sound/soc/s3c24xx/s3c2412-i2s.c index 1ca3cdaa8213..b7e0b3f0bfc8 100644 --- a/sound/soc/s3c24xx/s3c2412-i2s.c +++ b/sound/soc/s3c24xx/s3c2412-i2s.c | |||
@@ -33,8 +33,8 @@ | |||
33 | 33 | ||
34 | #include <plat/regs-s3c2412-iis.h> | 34 | #include <plat/regs-s3c2412-iis.h> |
35 | 35 | ||
36 | #include <plat/regs-gpio.h> | ||
37 | #include <plat/audio.h> | 36 | #include <plat/audio.h> |
37 | #include <mach/regs-gpio.h> | ||
38 | #include <mach/dma.h> | 38 | #include <mach/dma.h> |
39 | 39 | ||
40 | #include "s3c24xx-pcm.h" | 40 | #include "s3c24xx-pcm.h" |