diff options
Diffstat (limited to 'sound/soc/fsl/efika-audio-fabric.c')
-rw-r--r-- | sound/soc/fsl/efika-audio-fabric.c | 21 |
1 files changed, 10 insertions, 11 deletions
diff --git a/sound/soc/fsl/efika-audio-fabric.c b/sound/soc/fsl/efika-audio-fabric.c index 1a5b8e0d6a34..108b5d8bd0e9 100644 --- a/sound/soc/fsl/efika-audio-fabric.c +++ b/sound/soc/fsl/efika-audio-fabric.c | |||
@@ -24,7 +24,6 @@ | |||
24 | #include <sound/pcm_params.h> | 24 | #include <sound/pcm_params.h> |
25 | #include <sound/initval.h> | 25 | #include <sound/initval.h> |
26 | #include <sound/soc.h> | 26 | #include <sound/soc.h> |
27 | #include <sound/soc-of-simple.h> | ||
28 | 27 | ||
29 | #include "mpc5200_dma.h" | 28 | #include "mpc5200_dma.h" |
30 | #include "mpc5200_psc_ac97.h" | 29 | #include "mpc5200_psc_ac97.h" |
@@ -32,21 +31,24 @@ | |||
32 | 31 | ||
33 | #define DRV_NAME "efika-audio-fabric" | 32 | #define DRV_NAME "efika-audio-fabric" |
34 | 33 | ||
35 | static struct snd_soc_device device; | ||
36 | static struct snd_soc_card card; | 34 | static struct snd_soc_card card; |
37 | 35 | ||
38 | static struct snd_soc_dai_link efika_fabric_dai[] = { | 36 | static struct snd_soc_dai_link efika_fabric_dai[] = { |
39 | { | 37 | { |
40 | .name = "AC97", | 38 | .name = "AC97", |
41 | .stream_name = "AC97 Analog", | 39 | .stream_name = "AC97 Analog", |
42 | .codec_dai = &stac9766_dai[STAC9766_DAI_AC97_ANALOG], | 40 | .codec_dai_name = "stac9766-hifi-analog", |
43 | .cpu_dai = &psc_ac97_dai[MPC5200_AC97_NORMAL], | 41 | .cpu_dai_name = "mpc5200-psc-ac97.0", |
42 | .platform_name = "mpc5200-pcm-audio", | ||
43 | .codec_name = "stac9766-codec", | ||
44 | }, | 44 | }, |
45 | { | 45 | { |
46 | .name = "AC97", | 46 | .name = "AC97", |
47 | .stream_name = "AC97 IEC958", | 47 | .stream_name = "AC97 IEC958", |
48 | .codec_dai = &stac9766_dai[STAC9766_DAI_AC97_DIGITAL], | 48 | .codec_dai_name = "stac9766-hifi-IEC958", |
49 | .cpu_dai = &psc_ac97_dai[MPC5200_AC97_SPDIF], | 49 | .cpu_dai_name = "mpc5200-psc-ac97.1", |
50 | .platform_name = "mpc5200-pcm-audio", | ||
51 | .codec_name = "stac9766-codec", | ||
50 | }, | 52 | }, |
51 | }; | 53 | }; |
52 | 54 | ||
@@ -58,13 +60,10 @@ static __init int efika_fabric_init(void) | |||
58 | if (!of_machine_is_compatible("bplan,efika")) | 60 | if (!of_machine_is_compatible("bplan,efika")) |
59 | return -ENODEV; | 61 | return -ENODEV; |
60 | 62 | ||
61 | card.platform = &mpc5200_audio_dma_platform; | ||
62 | card.name = "Efika"; | 63 | card.name = "Efika"; |
63 | card.dai_link = efika_fabric_dai; | 64 | card.dai_link = efika_fabric_dai; |
64 | card.num_links = ARRAY_SIZE(efika_fabric_dai); | 65 | card.num_links = ARRAY_SIZE(efika_fabric_dai); |
65 | 66 | ||
66 | device.card = &card; | ||
67 | device.codec_dev = &soc_codec_dev_stac9766; | ||
68 | 67 | ||
69 | pdev = platform_device_alloc("soc-audio", 1); | 68 | pdev = platform_device_alloc("soc-audio", 1); |
70 | if (!pdev) { | 69 | if (!pdev) { |
@@ -72,12 +71,12 @@ static __init int efika_fabric_init(void) | |||
72 | return -ENODEV; | 71 | return -ENODEV; |
73 | } | 72 | } |
74 | 73 | ||
75 | platform_set_drvdata(pdev, &device); | 74 | platform_set_drvdata(pdev, &card); |
76 | device.dev = &pdev->dev; | ||
77 | 75 | ||
78 | rc = platform_device_add(pdev); | 76 | rc = platform_device_add(pdev); |
79 | if (rc) { | 77 | if (rc) { |
80 | pr_err("efika_fabric_init: platform_device_add() failed\n"); | 78 | pr_err("efika_fabric_init: platform_device_add() failed\n"); |
79 | platform_device_put(pdev); | ||
81 | return -ENODEV; | 80 | return -ENODEV; |
82 | } | 81 | } |
83 | return 0; | 82 | return 0; |