aboutsummaryrefslogtreecommitdiffstats
path: root/sound/soc/jz4740/qi_lb60.c
diff options
context:
space:
mode:
Diffstat (limited to 'sound/soc/jz4740/qi_lb60.c')
-rw-r--r--sound/soc/jz4740/qi_lb60.c20
1 files changed, 8 insertions, 12 deletions
diff --git a/sound/soc/jz4740/qi_lb60.c b/sound/soc/jz4740/qi_lb60.c
index f15f4918f15f..78dabebe8fd0 100644
--- a/sound/soc/jz4740/qi_lb60.c
+++ b/sound/soc/jz4740/qi_lb60.c
@@ -60,10 +60,11 @@ static const struct snd_soc_dapm_route qi_lb60_routes[] = {
60 SND_SOC_DAIFMT_NB_NF | \ 60 SND_SOC_DAIFMT_NB_NF | \
61 SND_SOC_DAIFMT_CBM_CFM) 61 SND_SOC_DAIFMT_CBM_CFM)
62 62
63static int qi_lb60_codec_init(struct snd_soc_codec *codec) 63static int qi_lb60_codec_init(struct snd_soc_pcm_runtime *rtd)
64{ 64{
65 struct snd_soc_codec *codec = rtd->codec;
66 struct snd_soc_dai *cpu_dai = rtd->cpu_dai;
65 int ret; 67 int ret;
66 struct snd_soc_dai *cpu_dai = codec->socdev->card->dai_link->cpu_dai;
67 68
68 snd_soc_dapm_nc_pin(codec, "LIN"); 69 snd_soc_dapm_nc_pin(codec, "LIN");
69 snd_soc_dapm_nc_pin(codec, "RIN"); 70 snd_soc_dapm_nc_pin(codec, "RIN");
@@ -84,8 +85,10 @@ static int qi_lb60_codec_init(struct snd_soc_codec *codec)
84static struct snd_soc_dai_link qi_lb60_dai = { 85static struct snd_soc_dai_link qi_lb60_dai = {
85 .name = "jz4740", 86 .name = "jz4740",
86 .stream_name = "jz4740", 87 .stream_name = "jz4740",
87 .cpu_dai = &jz4740_i2s_dai, 88 .cpu_dai_name = "jz4740-i2s",
88 .codec_dai = &jz4740_codec_dai, 89 .platform_name = "jz4740-pmc-audio",
90 .codec_dai_name = "jz4740-hifi",
91 .codec_name = "jz4740-codec",
89 .init = qi_lb60_codec_init, 92 .init = qi_lb60_codec_init,
90}; 93};
91 94
@@ -93,12 +96,6 @@ static struct snd_soc_card qi_lb60 = {
93 .name = "QI LB60", 96 .name = "QI LB60",
94 .dai_link = &qi_lb60_dai, 97 .dai_link = &qi_lb60_dai,
95 .num_links = 1, 98 .num_links = 1,
96 .platform = &jz4740_soc_platform,
97};
98
99static struct snd_soc_device qi_lb60_snd_devdata = {
100 .card = &qi_lb60,
101 .codec_dev = &soc_codec_dev_jz4740_codec,
102}; 99};
103 100
104static struct platform_device *qi_lb60_snd_device; 101static struct platform_device *qi_lb60_snd_device;
@@ -129,8 +126,7 @@ static int __init qi_lb60_init(void)
129 gpio_direction_output(QI_LB60_SND_GPIO, 0); 126 gpio_direction_output(QI_LB60_SND_GPIO, 0);
130 gpio_direction_output(QI_LB60_AMP_GPIO, 0); 127 gpio_direction_output(QI_LB60_AMP_GPIO, 0);
131 128
132 platform_set_drvdata(qi_lb60_snd_device, &qi_lb60_snd_devdata); 129 platform_set_drvdata(qi_lb60_snd_device, &qi_lb60);
133 qi_lb60_snd_devdata.dev = &qi_lb60_snd_device->dev;
134 130
135 ret = platform_device_add(qi_lb60_snd_device); 131 ret = platform_device_add(qi_lb60_snd_device);
136 if (ret) { 132 if (ret) {