summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJassi Brar <jassi.brar@samsung.com>2010-09-10 16:41:05 +0900
committerMark Brown <broonie@opensource.wolfsonmicro.com>2010-09-14 08:50:17 +0100
commit12280faea62c7e2d7124996d9342b483ac1706d3 (patch)
tree70095ccf83481380ad3db7ae25c4ff5200f4441c
parent28927011e46844aa966971c644d821f9aab2e9f9 (diff)
ASoC: Samsung: Debug PCM snd_soc_dai_driver registration
Each of the two PCM controllers need to be registered during probe with appropriate 'name' of the dai driver. Signed-off-by: Jassi Brar <jassi.brar@samsung.com> Acked-by: Liam Girdwood <lrg@slimlogic.co.uk> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
-rw-r--r--sound/soc/s3c24xx/s3c-pcm.c17
1 files changed, 10 insertions, 7 deletions
diff --git a/sound/soc/s3c24xx/s3c-pcm.c b/sound/soc/s3c24xx/s3c-pcm.c
index 4f73275f4db6..2e020e1b4eab 100644
--- a/sound/soc/s3c24xx/s3c-pcm.c
+++ b/sound/soc/s3c24xx/s3c-pcm.c
@@ -364,8 +364,6 @@ static struct snd_soc_dai_ops s3c_pcm_dai_ops = {
#define S3C_PCM_RATES SNDRV_PCM_RATE_8000_96000
#define S3C_PCM_DAI_DECLARE \
-{ \
- .name = "samsung-dai", \
.symmetric_rates = 1, \
.ops = &s3c_pcm_dai_ops, \
.playback = { \
@@ -379,12 +377,17 @@ static struct snd_soc_dai_ops s3c_pcm_dai_ops = {
.channels_max = 2, \
.rates = S3C_PCM_RATES, \
.formats = SNDRV_PCM_FMTBIT_S16_LE, \
- }, \
-}
+ }
struct snd_soc_dai_driver s3c_pcm_dai[] = {
- S3C_PCM_DAI_DECLARE,
- S3C_PCM_DAI_DECLARE,
+ [0] = {
+ .name = "samsung-pcm.0",
+ S3C_PCM_DAI_DECLARE,
+ },
+ [1] = {
+ .name = "samsung-pcm.1",
+ S3C_PCM_DAI_DECLARE,
+ },
};
EXPORT_SYMBOL_GPL(s3c_pcm_dai);
@@ -468,7 +471,7 @@ static __devinit int s3c_pcm_dev_probe(struct platform_device *pdev)
}
clk_enable(pcm->pclk);
- ret = snd_soc_register_dai(&pdev->dev, s3c_pcm_dai);
+ ret = snd_soc_register_dai(&pdev->dev, &s3c_pcm_dai[pdev->id]);
if (ret != 0) {
dev_err(&pdev->dev, "failed to get pcm_clock\n");
goto err5;