Commit a08485d8fdf6f67ca5f173b68d8f873c574745f2
Committed by
Mark Brown
1 parent
1974a042dd
Exists in
smarc-l5.0.0_1.0.0-ga
and in
5 other branches
ASoC: Samsung: Do not register samsung audio dma device as pdev
Previously, the ASoC 'platform' (PCM/DMA) object was instantiated via a platform_device. This didn't represent the hardware well, since there was no separate hardware associated with this platform_device; it was a virtual device with sole purpose to call snd_soc_register_platform(). This change removes the platform_device completely. Each Samsung DAI now registers the ASoC 'platform' itself. Machine drivers are adjusted for the new 'platform' name. Signed-off-by: Padmavathi Venna <padma.v@samsung.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Showing 45 changed files with 105 additions and 72 deletions Side-by-side Diff
- arch/arm/mach-exynos/mach-armlex4210.c
- arch/arm/mach-exynos/mach-smdkv310.c
- arch/arm/mach-s3c24xx/mach-gta02.c
- arch/arm/mach-s3c24xx/mach-h1940.c
- arch/arm/mach-s3c24xx/mach-mini2440.c
- arch/arm/mach-s3c24xx/mach-rx1950.c
- arch/arm/mach-s3c64xx/mach-crag6410.c
- arch/arm/mach-s3c64xx/mach-smdk6410.c
- arch/arm/mach-s5p64x0/mach-smdk6440.c
- arch/arm/mach-s5p64x0/mach-smdk6450.c
- arch/arm/mach-s5pc100/mach-smdkc100.c
- arch/arm/mach-s5pv210/mach-smdkc110.c
- arch/arm/mach-s5pv210/mach-smdkv210.c
- arch/arm/plat-samsung/devs.c
- arch/arm/plat-samsung/include/plat/devs.h
- sound/soc/samsung/ac97.c
- sound/soc/samsung/bells.c
- sound/soc/samsung/dma.c
- sound/soc/samsung/dma.h
- sound/soc/samsung/goni_wm8994.c
- sound/soc/samsung/h1940_uda1380.c
- sound/soc/samsung/i2s.c
- sound/soc/samsung/jive_wm8750.c
- sound/soc/samsung/littlemill.c
- sound/soc/samsung/ln2440sbc_alc650.c
- sound/soc/samsung/lowland.c
- sound/soc/samsung/neo1973_wm8753.c
- sound/soc/samsung/pcm.c
- sound/soc/samsung/rx1950_uda1380.c
- sound/soc/samsung/s3c2412-i2s.c
- sound/soc/samsung/s3c24xx-i2s.c
- sound/soc/samsung/s3c24xx_simtec_hermes.c
- sound/soc/samsung/s3c24xx_simtec_tlv320aic23.c
- sound/soc/samsung/s3c24xx_uda134x.c
- sound/soc/samsung/smartq_wm8987.c
- sound/soc/samsung/smdk2443_wm9710.c
- sound/soc/samsung/smdk_spdif.c
- sound/soc/samsung/smdk_wm8580.c
- sound/soc/samsung/smdk_wm8580pcm.c
- sound/soc/samsung/smdk_wm8994.c
- sound/soc/samsung/smdk_wm8994pcm.c
- sound/soc/samsung/smdk_wm9713.c
- sound/soc/samsung/spdif.c
- sound/soc/samsung/speyside.c
- sound/soc/samsung/tobermory.c
arch/arm/mach-exynos/mach-armlex4210.c
arch/arm/mach-exynos/mach-smdkv310.c
arch/arm/mach-s3c24xx/mach-gta02.c
arch/arm/mach-s3c24xx/mach-h1940.c
arch/arm/mach-s3c24xx/mach-mini2440.c
arch/arm/mach-s3c24xx/mach-rx1950.c
arch/arm/mach-s3c64xx/mach-crag6410.c
arch/arm/mach-s3c64xx/mach-smdk6410.c
arch/arm/mach-s5p64x0/mach-smdk6440.c
arch/arm/mach-s5p64x0/mach-smdk6450.c
arch/arm/mach-s5pc100/mach-smdkc100.c
arch/arm/mach-s5pv210/mach-smdkc110.c
arch/arm/mach-s5pv210/mach-smdkv210.c
arch/arm/plat-samsung/devs.c
... | ... | @@ -146,15 +146,6 @@ |
146 | 146 | |
147 | 147 | /* ASOC DMA */ |
148 | 148 | |
149 | -struct platform_device samsung_asoc_dma = { | |
150 | - .name = "samsung-audio", | |
151 | - .id = -1, | |
152 | - .dev = { | |
153 | - .dma_mask = &samsung_device_dma_mask, | |
154 | - .coherent_dma_mask = DMA_BIT_MASK(32), | |
155 | - } | |
156 | -}; | |
157 | - | |
158 | 149 | struct platform_device samsung_asoc_idma = { |
159 | 150 | .name = "samsung-idma", |
160 | 151 | .id = -1, |
arch/arm/plat-samsung/include/plat/devs.h
sound/soc/samsung/ac97.c
... | ... | @@ -462,8 +462,15 @@ |
462 | 462 | if (ret) |
463 | 463 | goto err5; |
464 | 464 | |
465 | - return 0; | |
465 | + ret = asoc_dma_platform_register(&pdev->dev); | |
466 | + if (ret) { | |
467 | + dev_err(&pdev->dev, "failed to get register DMA: %d\n", ret); | |
468 | + goto err6; | |
469 | + } | |
466 | 470 | |
471 | + return 0; | |
472 | +err6: | |
473 | + snd_soc_unregister_dais(&pdev->dev, ARRAY_SIZE(s3c_ac97_dai)); | |
467 | 474 | err5: |
468 | 475 | free_irq(irq_res->start, NULL); |
469 | 476 | err4: |
... | ... | @@ -482,6 +489,7 @@ |
482 | 489 | { |
483 | 490 | struct resource *mem_res, *irq_res; |
484 | 491 | |
492 | + asoc_dma_platform_unregister(&pdev->dev); | |
485 | 493 | snd_soc_unregister_dais(&pdev->dev, ARRAY_SIZE(s3c_ac97_dai)); |
486 | 494 | |
487 | 495 | irq_res = platform_get_resource(pdev, IORESOURCE_IRQ, 0); |
sound/soc/samsung/bells.c
... | ... | @@ -233,7 +233,7 @@ |
233 | 233 | .stream_name = "CPU-DSP", |
234 | 234 | .cpu_dai_name = "samsung-i2s.0", |
235 | 235 | .codec_dai_name = "wm0010-sdi1", |
236 | - .platform_name = "samsung-audio", | |
236 | + .platform_name = "samsung-i2s.0", | |
237 | 237 | .codec_name = "spi0.0", |
238 | 238 | .dai_fmt = SND_SOC_DAIFMT_I2S | SND_SOC_DAIFMT_NB_NF |
239 | 239 | | SND_SOC_DAIFMT_CBM_CFM, |
... | ... | @@ -257,7 +257,7 @@ |
257 | 257 | .stream_name = "CPU-DSP", |
258 | 258 | .cpu_dai_name = "samsung-i2s.0", |
259 | 259 | .codec_dai_name = "wm0010-sdi1", |
260 | - .platform_name = "samsung-audio", | |
260 | + .platform_name = "samsung-i2s.0", | |
261 | 261 | .codec_name = "spi0.0", |
262 | 262 | .dai_fmt = SND_SOC_DAIFMT_I2S | SND_SOC_DAIFMT_NB_NF |
263 | 263 | | SND_SOC_DAIFMT_CBM_CFM, |
... | ... | @@ -303,7 +303,7 @@ |
303 | 303 | .stream_name = "CPU-DSP", |
304 | 304 | .cpu_dai_name = "samsung-i2s.0", |
305 | 305 | .codec_dai_name = "wm0010-sdi1", |
306 | - .platform_name = "samsung-audio", | |
306 | + .platform_name = "samsung-i2s.0", | |
307 | 307 | .codec_name = "spi0.0", |
308 | 308 | .dai_fmt = SND_SOC_DAIFMT_I2S | SND_SOC_DAIFMT_NB_NF |
309 | 309 | | SND_SOC_DAIFMT_CBM_CFM, |
sound/soc/samsung/dma.c
... | ... | @@ -432,31 +432,19 @@ |
432 | 432 | .pcm_free = dma_free_dma_buffers, |
433 | 433 | }; |
434 | 434 | |
435 | -static int __devinit samsung_asoc_platform_probe(struct platform_device *pdev) | |
435 | +int __devinit asoc_dma_platform_register(struct device *dev) | |
436 | 436 | { |
437 | - return snd_soc_register_platform(&pdev->dev, &samsung_asoc_platform); | |
437 | + return snd_soc_register_platform(dev, &samsung_asoc_platform); | |
438 | 438 | } |
439 | +EXPORT_SYMBOL_GPL(asoc_dma_platform_register); | |
439 | 440 | |
440 | -static int __devexit samsung_asoc_platform_remove(struct platform_device *pdev) | |
441 | +void __devexit asoc_dma_platform_unregister(struct device *dev) | |
441 | 442 | { |
442 | - snd_soc_unregister_platform(&pdev->dev); | |
443 | - return 0; | |
443 | + snd_soc_unregister_platform(dev); | |
444 | 444 | } |
445 | +EXPORT_SYMBOL_GPL(asoc_dma_platform_unregister); | |
445 | 446 | |
446 | -static struct platform_driver asoc_dma_driver = { | |
447 | - .driver = { | |
448 | - .name = "samsung-audio", | |
449 | - .owner = THIS_MODULE, | |
450 | - }, | |
451 | - | |
452 | - .probe = samsung_asoc_platform_probe, | |
453 | - .remove = __devexit_p(samsung_asoc_platform_remove), | |
454 | -}; | |
455 | - | |
456 | -module_platform_driver(asoc_dma_driver); | |
457 | - | |
458 | 447 | MODULE_AUTHOR("Ben Dooks, <ben@simtec.co.uk>"); |
459 | 448 | MODULE_DESCRIPTION("Samsung ASoC DMA Driver"); |
460 | 449 | MODULE_LICENSE("GPL"); |
461 | -MODULE_ALIAS("platform:samsung-audio"); |
sound/soc/samsung/dma.h
sound/soc/samsung/goni_wm8994.c
... | ... | @@ -228,7 +228,7 @@ |
228 | 228 | .stream_name = "WM8994 HiFi", |
229 | 229 | .cpu_dai_name = "samsung-i2s.0", |
230 | 230 | .codec_dai_name = "wm8994-aif1", |
231 | - .platform_name = "samsung-audio", | |
231 | + .platform_name = "samsung-i2s.0", | |
232 | 232 | .codec_name = "wm8994-codec.0-001a", |
233 | 233 | .init = goni_wm8994_init, |
234 | 234 | .ops = &goni_hifi_ops, |
sound/soc/samsung/h1940_uda1380.c
... | ... | @@ -207,7 +207,7 @@ |
207 | 207 | .cpu_dai_name = "s3c24xx-iis", |
208 | 208 | .codec_dai_name = "uda1380-hifi", |
209 | 209 | .init = h1940_uda1380_init, |
210 | - .platform_name = "samsung-audio", | |
210 | + .platform_name = "s3c24xx-iis", | |
211 | 211 | .codec_name = "uda1380-codec.0-001a", |
212 | 212 | .ops = &h1940_ops, |
213 | 213 | }, |
sound/soc/samsung/i2s.c
... | ... | @@ -1009,6 +1009,7 @@ |
1009 | 1009 | sec_dai = dev_get_drvdata(&pdev->dev); |
1010 | 1010 | snd_soc_register_dai(&sec_dai->pdev->dev, |
1011 | 1011 | &sec_dai->i2s_dai_drv); |
1012 | + asoc_dma_platform_register(&pdev->dev); | |
1012 | 1013 | return 0; |
1013 | 1014 | } |
1014 | 1015 | |
... | ... | @@ -1107,6 +1108,8 @@ |
1107 | 1108 | |
1108 | 1109 | pm_runtime_enable(&pdev->dev); |
1109 | 1110 | |
1111 | + asoc_dma_platform_register(&pdev->dev); | |
1112 | + | |
1110 | 1113 | return 0; |
1111 | 1114 | err: |
1112 | 1115 | release_mem_region(regs_base, resource_size(res)); |
... | ... | @@ -1135,6 +1138,7 @@ |
1135 | 1138 | i2s->pri_dai = NULL; |
1136 | 1139 | i2s->sec_dai = NULL; |
1137 | 1140 | |
1141 | + asoc_dma_platform_unregister(&pdev->dev); | |
1138 | 1142 | snd_soc_unregister_dai(&pdev->dev); |
1139 | 1143 | |
1140 | 1144 | return 0; |
sound/soc/samsung/jive_wm8750.c
... | ... | @@ -118,7 +118,7 @@ |
118 | 118 | .stream_name = "WM8750", |
119 | 119 | .cpu_dai_name = "s3c2412-i2s", |
120 | 120 | .codec_dai_name = "wm8750-hifi", |
121 | - .platform_name = "samsung-audio", | |
121 | + .platform_name = "s3c2412-i2s", | |
122 | 122 | .codec_name = "wm8750.0-001a", |
123 | 123 | .init = jive_wm8750_init, |
124 | 124 | .ops = &jive_ops, |
sound/soc/samsung/littlemill.c
... | ... | @@ -145,7 +145,7 @@ |
145 | 145 | .stream_name = "CPU", |
146 | 146 | .cpu_dai_name = "samsung-i2s.0", |
147 | 147 | .codec_dai_name = "wm8994-aif1", |
148 | - .platform_name = "samsung-audio", | |
148 | + .platform_name = "samsung-i2s.0", | |
149 | 149 | .codec_name = "wm8994-codec", |
150 | 150 | .dai_fmt = SND_SOC_DAIFMT_I2S | SND_SOC_DAIFMT_NB_NF |
151 | 151 | | SND_SOC_DAIFMT_CBM_CFM, |
sound/soc/samsung/ln2440sbc_alc650.c
sound/soc/samsung/lowland.c
... | ... | @@ -99,7 +99,7 @@ |
99 | 99 | .stream_name = "CPU", |
100 | 100 | .cpu_dai_name = "samsung-i2s.0", |
101 | 101 | .codec_dai_name = "wm5100-aif1", |
102 | - .platform_name = "samsung-audio", | |
102 | + .platform_name = "samsung-i2s.0", | |
103 | 103 | .codec_name = "wm5100.1-001a", |
104 | 104 | .dai_fmt = SND_SOC_DAIFMT_I2S | SND_SOC_DAIFMT_NB_NF | |
105 | 105 | SND_SOC_DAIFMT_CBM_CFM, |
sound/soc/samsung/neo1973_wm8753.c
... | ... | @@ -364,7 +364,7 @@ |
364 | 364 | { /* Hifi Playback - for similatious use with voice below */ |
365 | 365 | .name = "WM8753", |
366 | 366 | .stream_name = "WM8753 HiFi", |
367 | - .platform_name = "samsung-audio", | |
367 | + .platform_name = "s3c24xx-iis", | |
368 | 368 | .cpu_dai_name = "s3c24xx-iis", |
369 | 369 | .codec_dai_name = "wm8753-hifi", |
370 | 370 | .codec_name = "wm8753.0-001a", |
sound/soc/samsung/pcm.c
... | ... | @@ -589,8 +589,16 @@ |
589 | 589 | goto err5; |
590 | 590 | } |
591 | 591 | |
592 | + ret = asoc_dma_platform_register(&pdev->dev); | |
593 | + if (ret) { | |
594 | + dev_err(&pdev->dev, "failed to get register DMA: %d\n", ret); | |
595 | + goto err6; | |
596 | + } | |
597 | + | |
592 | 598 | return 0; |
593 | 599 | |
600 | +err6: | |
601 | + snd_soc_unregister_dai(&pdev->dev); | |
594 | 602 | err5: |
595 | 603 | clk_disable_unprepare(pcm->pclk); |
596 | 604 | clk_put(pcm->pclk); |
... | ... | @@ -610,6 +618,7 @@ |
610 | 618 | struct s3c_pcm_info *pcm = &s3c_pcm[pdev->id]; |
611 | 619 | struct resource *mem_res; |
612 | 620 | |
621 | + asoc_dma_platform_unregister(&pdev->dev); | |
613 | 622 | snd_soc_unregister_dai(&pdev->dev); |
614 | 623 | |
615 | 624 | pm_runtime_disable(&pdev->dev); |
sound/soc/samsung/rx1950_uda1380.c
sound/soc/samsung/s3c2412-i2s.c
... | ... | @@ -162,11 +162,29 @@ |
162 | 162 | |
163 | 163 | static __devinit int s3c2412_iis_dev_probe(struct platform_device *pdev) |
164 | 164 | { |
165 | - return s3c_i2sv2_register_dai(&pdev->dev, -1, &s3c2412_i2s_dai); | |
165 | + int ret = 0; | |
166 | + | |
167 | + ret = s3c_i2sv2_register_dai(&pdev->dev, -1, &s3c2412_i2s_dai); | |
168 | + if (ret) { | |
169 | + pr_err("failed to register the dai\n"); | |
170 | + return ret; | |
171 | + } | |
172 | + | |
173 | + ret = asoc_dma_platform_register(&pdev->dev); | |
174 | + if (ret) { | |
175 | + pr_err("failed to register the DMA: %d\n", ret); | |
176 | + goto err; | |
177 | + } | |
178 | + | |
179 | + return 0; | |
180 | +err: | |
181 | + snd_soc_unregister_dai(&pdev->dev); | |
182 | + return ret; | |
166 | 183 | } |
167 | 184 | |
168 | 185 | static __devexit int s3c2412_iis_dev_remove(struct platform_device *pdev) |
169 | 186 | { |
187 | + asoc_dma_platform_unregister(&pdev->dev); | |
170 | 188 | snd_soc_unregister_dai(&pdev->dev); |
171 | 189 | return 0; |
172 | 190 | } |
sound/soc/samsung/s3c24xx-i2s.c
... | ... | @@ -467,11 +467,29 @@ |
467 | 467 | |
468 | 468 | static __devinit int s3c24xx_iis_dev_probe(struct platform_device *pdev) |
469 | 469 | { |
470 | - return snd_soc_register_dai(&pdev->dev, &s3c24xx_i2s_dai); | |
470 | + int ret = 0; | |
471 | + | |
472 | + ret = s3c_i2sv2_register_dai(&pdev->dev, -1, &s3c2412_i2s_dai); | |
473 | + if (ret) { | |
474 | + pr_err("failed to register the dai\n"); | |
475 | + return ret; | |
476 | + } | |
477 | + | |
478 | + ret = asoc_dma_platform_register(&pdev->dev); | |
479 | + if (ret) { | |
480 | + pr_err("failed to register the dma: %d\n", ret); | |
481 | + goto err; | |
482 | + } | |
483 | + | |
484 | + return 0; | |
485 | +err: | |
486 | + snd_soc_unregister_dai(&pdev->dev); | |
487 | + return ret; | |
471 | 488 | } |
472 | 489 | |
473 | 490 | static __devexit int s3c24xx_iis_dev_remove(struct platform_device *pdev) |
474 | 491 | { |
492 | + asoc_dma_platform_unregister(&pdev->dev); | |
475 | 493 | snd_soc_unregister_dai(&pdev->dev); |
476 | 494 | return 0; |
477 | 495 | } |
sound/soc/samsung/s3c24xx_simtec_hermes.c
sound/soc/samsung/s3c24xx_simtec_tlv320aic23.c
sound/soc/samsung/s3c24xx_uda134x.c
... | ... | @@ -224,7 +224,7 @@ |
224 | 224 | .codec_dai_name = "uda134x-hifi", |
225 | 225 | .cpu_dai_name = "s3c24xx-iis", |
226 | 226 | .ops = &s3c24xx_uda134x_ops, |
227 | - .platform_name = "samsung-audio", | |
227 | + .platform_name = "s3c24xx-iis", | |
228 | 228 | }; |
229 | 229 | |
230 | 230 | static struct snd_soc_card snd_soc_s3c24xx_uda134x = { |
sound/soc/samsung/smartq_wm8987.c
... | ... | @@ -189,7 +189,7 @@ |
189 | 189 | .stream_name = "SmartQ Hi-Fi", |
190 | 190 | .cpu_dai_name = "samsung-i2s.0", |
191 | 191 | .codec_dai_name = "wm8750-hifi", |
192 | - .platform_name = "samsung-audio", | |
192 | + .platform_name = "samsung-i2s.0", | |
193 | 193 | .codec_name = "wm8750.0-0x1a", |
194 | 194 | .init = smartq_wm8987_init, |
195 | 195 | .ops = &smartq_hifi_ops, |
sound/soc/samsung/smdk2443_wm9710.c
sound/soc/samsung/smdk_spdif.c
... | ... | @@ -151,7 +151,7 @@ |
151 | 151 | static struct snd_soc_dai_link smdk_dai = { |
152 | 152 | .name = "S/PDIF", |
153 | 153 | .stream_name = "S/PDIF PCM Playback", |
154 | - .platform_name = "samsung-audio", | |
154 | + .platform_name = "samsung-spdif", | |
155 | 155 | .cpu_dai_name = "samsung-spdif", |
156 | 156 | .codec_dai_name = "dit-hifi", |
157 | 157 | .codec_name = "spdif-dit", |
sound/soc/samsung/smdk_wm8580.c
... | ... | @@ -176,7 +176,7 @@ |
176 | 176 | .stream_name = "Playback", |
177 | 177 | .cpu_dai_name = "samsung-i2s.0", |
178 | 178 | .codec_dai_name = "wm8580-hifi-playback", |
179 | - .platform_name = "samsung-audio", | |
179 | + .platform_name = "samsung-i2s.0", | |
180 | 180 | .codec_name = "wm8580.0-001b", |
181 | 181 | .ops = &smdk_ops, |
182 | 182 | }, |
... | ... | @@ -185,7 +185,7 @@ |
185 | 185 | .stream_name = "Capture", |
186 | 186 | .cpu_dai_name = "samsung-i2s.0", |
187 | 187 | .codec_dai_name = "wm8580-hifi-capture", |
188 | - .platform_name = "samsung-audio", | |
188 | + .platform_name = "samsung-i2s.0", | |
189 | 189 | .codec_name = "wm8580.0-001b", |
190 | 190 | .init = smdk_wm8580_init_paiftx, |
191 | 191 | .ops = &smdk_ops, |
... | ... | @@ -195,7 +195,7 @@ |
195 | 195 | .stream_name = "Playback", |
196 | 196 | .cpu_dai_name = "samsung-i2s.x", |
197 | 197 | .codec_dai_name = "wm8580-hifi-playback", |
198 | - .platform_name = "samsung-audio", | |
198 | + .platform_name = "samsung-i2s.x", | |
199 | 199 | .codec_name = "wm8580.0-001b", |
200 | 200 | .ops = &smdk_ops, |
201 | 201 | }, |
sound/soc/samsung/smdk_wm8580pcm.c
... | ... | @@ -135,7 +135,7 @@ |
135 | 135 | .stream_name = "Capture", |
136 | 136 | .cpu_dai_name = "samsung-pcm.0", |
137 | 137 | .codec_dai_name = "wm8580-hifi-capture", |
138 | - .platform_name = "samsung-audio", | |
138 | + .platform_name = "samsung-pcm.0", | |
139 | 139 | .codec_name = "wm8580.0-001b", |
140 | 140 | .ops = &smdk_wm8580_pcm_ops, |
141 | 141 | }, |
sound/soc/samsung/smdk_wm8994.c
... | ... | @@ -127,7 +127,7 @@ |
127 | 127 | .stream_name = "Pri_Dai", |
128 | 128 | .cpu_dai_name = "samsung-i2s.0", |
129 | 129 | .codec_dai_name = "wm8994-aif1", |
130 | - .platform_name = "samsung-audio", | |
130 | + .platform_name = "samsung-i2s.0", | |
131 | 131 | .codec_name = "wm8994-codec", |
132 | 132 | .init = smdk_wm8994_init_paiftx, |
133 | 133 | .ops = &smdk_ops, |
... | ... | @@ -136,7 +136,7 @@ |
136 | 136 | .stream_name = "Sec_Dai", |
137 | 137 | .cpu_dai_name = "samsung-i2s.4", |
138 | 138 | .codec_dai_name = "wm8994-aif1", |
139 | - .platform_name = "samsung-audio", | |
139 | + .platform_name = "samsung-i2s.4", | |
140 | 140 | .codec_name = "wm8994-codec", |
141 | 141 | .ops = &smdk_ops, |
142 | 142 | }, |
sound/soc/samsung/smdk_wm8994pcm.c
... | ... | @@ -116,7 +116,7 @@ |
116 | 116 | .stream_name = "Primary PCM", |
117 | 117 | .cpu_dai_name = "samsung-pcm.0", |
118 | 118 | .codec_dai_name = "wm8994-aif1", |
119 | - .platform_name = "samsung-audio", | |
119 | + .platform_name = "samsung-pcm.0", | |
120 | 120 | .codec_name = "wm8994-codec", |
121 | 121 | .ops = &smdk_wm8994_pcm_ops, |
122 | 122 | }, |
sound/soc/samsung/smdk_wm9713.c
... | ... | @@ -42,7 +42,7 @@ |
42 | 42 | static struct snd_soc_dai_link smdk_dai = { |
43 | 43 | .name = "AC97", |
44 | 44 | .stream_name = "AC97 PCM", |
45 | - .platform_name = "samsung-audio", | |
45 | + .platform_name = "samsung-ac97", | |
46 | 46 | .cpu_dai_name = "samsung-ac97", |
47 | 47 | .codec_dai_name = "wm9713-hifi", |
48 | 48 | .codec_name = "wm9713-codec", |
sound/soc/samsung/spdif.c
... | ... | @@ -437,8 +437,15 @@ |
437 | 437 | |
438 | 438 | spdif->dma_playback = &spdif_stereo_out; |
439 | 439 | |
440 | - return 0; | |
440 | + ret = asoc_dma_platform_register(&pdev->dev); | |
441 | + if (ret) { | |
442 | + dev_err(&pdev->dev, "failed to register DMA: %d\n", ret); | |
443 | + goto err5; | |
444 | + } | |
441 | 445 | |
446 | + return 0; | |
447 | +err5: | |
448 | + snd_soc_unregister_dai(&pdev->dev); | |
442 | 449 | err4: |
443 | 450 | iounmap(spdif->regs); |
444 | 451 | err3: |
... | ... | @@ -458,6 +465,7 @@ |
458 | 465 | struct samsung_spdif_info *spdif = &spdif_info; |
459 | 466 | struct resource *mem_res; |
460 | 467 | |
468 | + asoc_dma_platform_unregister(&pdev->dev); | |
461 | 469 | snd_soc_unregister_dai(&pdev->dev); |
462 | 470 | |
463 | 471 | iounmap(spdif->regs); |
sound/soc/samsung/speyside.c
... | ... | @@ -198,7 +198,7 @@ |
198 | 198 | .stream_name = "CPU-DSP", |
199 | 199 | .cpu_dai_name = "samsung-i2s.0", |
200 | 200 | .codec_dai_name = "wm0010-sdi1", |
201 | - .platform_name = "samsung-audio", | |
201 | + .platform_name = "samsung-i2s.0", | |
202 | 202 | .codec_name = "spi0.0", |
203 | 203 | .init = speyside_wm0010_init, |
204 | 204 | .dai_fmt = SND_SOC_DAIFMT_I2S | SND_SOC_DAIFMT_NB_NF |
sound/soc/samsung/tobermory.c
... | ... | @@ -110,7 +110,7 @@ |
110 | 110 | .stream_name = "CPU", |
111 | 111 | .cpu_dai_name = "samsung-i2s.0", |
112 | 112 | .codec_dai_name = "wm8962", |
113 | - .platform_name = "samsung-audio", | |
113 | + .platform_name = "samsung-i2s.0", | |
114 | 114 | .codec_name = "wm8962.1-001a", |
115 | 115 | .dai_fmt = SND_SOC_DAIFMT_I2S | SND_SOC_DAIFMT_NB_NF |
116 | 116 | | SND_SOC_DAIFMT_CBM_CFM, |