ASoC: fsl_ssi: instantiate AC'97 CODEC
authorMaciej S. Szmigiero <mail@maciej.szmigiero.name>
Wed, 5 Aug 2015 15:26:44 +0000 (17:26 +0200)
committerMark Brown <broonie@kernel.org>
Fri, 14 Aug 2015 19:22:26 +0000 (20:22 +0100)
Instantiate AC'97 CODEC in fsl_ssi driver AC'97 mode.

Signed-off-by: Maciej Szmigiero <mail@maciej.szmigiero.name>
Signed-off-by: Mark Brown <broonie@kernel.org>
sound/soc/fsl/fsl_ssi.c

index 0b4fcd97c53300ebc30c139b3e1c448e7ea735b4..e79dc162006e83585c8db4f4d9cf2c6449b82d2d 100644 (file)
@@ -1460,6 +1460,27 @@ done:
                _fsl_ssi_set_dai_fmt(&pdev->dev, ssi_private,
                                     ssi_private->dai_fmt);
 
+       if (fsl_ssi_is_ac97(ssi_private)) {
+               u32 ssi_idx;
+
+               ret = of_property_read_u32(np, "cell-index", &ssi_idx);
+               if (ret) {
+                       dev_err(&pdev->dev, "cannot get SSI index property\n");
+                       goto error_sound_card;
+               }
+
+               ssi_private->pdev =
+                       platform_device_register_data(NULL,
+                                       "ac97-codec", ssi_idx, NULL, 0);
+               if (IS_ERR(ssi_private->pdev)) {
+                       ret = PTR_ERR(ssi_private->pdev);
+                       dev_err(&pdev->dev,
+                               "failed to register AC97 codec platform: %d\n",
+                               ret);
+                       goto error_sound_card;
+               }
+       }
+
        return 0;
 
 error_sound_card: