]> asedeno.scripts.mit.edu Git - linux.git/blobdiff - sound/soc/rockchip/rk3399_gru_sound.c
Merge remote-tracking branches 'asoc/topic/max98373', 'asoc/topic/mtk', 'asoc/topic...
[linux.git] / sound / soc / rockchip / rk3399_gru_sound.c
index d64fbbd505448b4c90a04a40d5ebc90dd83fd42b..214bfc78cf5cd466659980db19caaa6d45922a7b 100644 (file)
@@ -206,7 +206,8 @@ static int rockchip_sound_da7219_init(struct snd_soc_pcm_runtime *rtd)
                return ret;
        }
 
-       snd_jack_set_key(rockchip_sound_jack.jack, SND_JACK_BTN_0, KEY_MEDIA);
+       snd_jack_set_key(
+               rockchip_sound_jack.jack, SND_JACK_BTN_0, KEY_PLAYPAUSE);
        snd_jack_set_key(
                rockchip_sound_jack.jack, SND_JACK_BTN_1, KEY_VOLUMEUP);
        snd_jack_set_key(
@@ -367,7 +368,8 @@ static const struct snd_soc_dai_link rockchip_dais[] = {
        [DAILINK_RT5514_DSP] = {
                .name = "RT5514 DSP",
                .stream_name = "Wake on Voice",
-               .codec_dai_name = "rt5514-dsp-cpu-dai",
+               .codec_name = "snd-soc-dummy",
+               .codec_dai_name = "snd-soc-dummy-dai",
        },
 };
 
@@ -528,7 +530,18 @@ static int rockchip_sound_of_parse_dais(struct device *dev,
                if (index < 0)
                        continue;
 
-               np_cpu = (index == DAILINK_CDNDP) ? np_cpu1 : np_cpu0;
+               switch (index) {
+               case DAILINK_CDNDP:
+                       np_cpu = np_cpu1;
+                       break;
+               case DAILINK_RT5514_DSP:
+                       np_cpu = np_codec;
+                       break;
+               default:
+                       np_cpu = np_cpu0;
+                       break;
+               }
+
                if (!np_cpu) {
                        dev_err(dev, "Missing 'rockchip,cpu' for %s\n",
                                rockchip_dais[index].name);
@@ -538,7 +551,8 @@ static int rockchip_sound_of_parse_dais(struct device *dev,
                dai = &card->dai_link[card->num_links++];
                *dai = rockchip_dais[index];
 
-               dai->codec_of_node = np_codec;
+               if (!dai->codec_name)
+                       dai->codec_of_node = np_codec;
                dai->platform_of_node = np_cpu;
                dai->cpu_of_node = np_cpu;