aboutsummaryrefslogtreecommitdiffstats
path: root/sound/soc/fsl/mpc5200_psc_i2s.c
diff options
context:
space:
mode:
Diffstat (limited to 'sound/soc/fsl/mpc5200_psc_i2s.c')
-rw-r--r--sound/soc/fsl/mpc5200_psc_i2s.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/sound/soc/fsl/mpc5200_psc_i2s.c b/sound/soc/fsl/mpc5200_psc_i2s.c
index 7b530327553a..ba1f0a66358f 100644
--- a/sound/soc/fsl/mpc5200_psc_i2s.c
+++ b/sound/soc/fsl/mpc5200_psc_i2s.c
@@ -130,13 +130,16 @@ static const struct snd_soc_dai_ops psc_i2s_dai_ops = {
130}; 130};
131 131
132static struct snd_soc_dai_driver psc_i2s_dai[] = {{ 132static struct snd_soc_dai_driver psc_i2s_dai[] = {{
133 .name = "mpc5200-psc-i2s.0",
133 .playback = { 134 .playback = {
135 .stream_name = "I2S Playback",
134 .channels_min = 2, 136 .channels_min = 2,
135 .channels_max = 2, 137 .channels_max = 2,
136 .rates = PSC_I2S_RATES, 138 .rates = PSC_I2S_RATES,
137 .formats = PSC_I2S_FORMATS, 139 .formats = PSC_I2S_FORMATS,
138 }, 140 },
139 .capture = { 141 .capture = {
142 .stream_name = "I2S Capture",
140 .channels_min = 2, 143 .channels_min = 2,
141 .channels_max = 2, 144 .channels_max = 2,
142 .rates = PSC_I2S_RATES, 145 .rates = PSC_I2S_RATES,
@@ -156,6 +159,10 @@ static int __devinit psc_i2s_of_probe(struct platform_device *op)
156 struct psc_dma *psc_dma; 159 struct psc_dma *psc_dma;
157 struct mpc52xx_psc __iomem *regs; 160 struct mpc52xx_psc __iomem *regs;
158 161
162 rc = mpc5200_audio_dma_create(op);
163 if (rc != 0)
164 return rc;
165
159 rc = snd_soc_register_dais(&op->dev, psc_i2s_dai, ARRAY_SIZE(psc_i2s_dai)); 166 rc = snd_soc_register_dais(&op->dev, psc_i2s_dai, ARRAY_SIZE(psc_i2s_dai));
160 if (rc != 0) { 167 if (rc != 0) {
161 pr_err("Failed to register DAI\n"); 168 pr_err("Failed to register DAI\n");
@@ -200,6 +207,7 @@ static int __devinit psc_i2s_of_probe(struct platform_device *op)
200 207
201static int __devexit psc_i2s_of_remove(struct platform_device *op) 208static int __devexit psc_i2s_of_remove(struct platform_device *op)
202{ 209{
210 mpc5200_audio_dma_destroy(op);
203 snd_soc_unregister_dais(&op->dev, ARRAY_SIZE(psc_i2s_dai)); 211 snd_soc_unregister_dais(&op->dev, ARRAY_SIZE(psc_i2s_dai));
204 return 0; 212 return 0;
205} 213}