switch (dai->id) {
        case HDMI_RX:
+       case DISPLAY_PORT_RX:
                q6afe_hdmi_port_prepare(dai_data->port[dai->id],
                                        &dai_data->port_config[dai->id].hdmi);
                break;
 
 static const struct snd_soc_dapm_route q6afe_dapm_routes[] = {
        {"HDMI Playback", NULL, "HDMI_RX"},
+       {"Display Port Playback", NULL, "DISPLAY_PORT_RX"},
        {"Slimbus1 Playback", NULL, "SLIMBUS_1_RX"},
        {"Slimbus2 Playback", NULL, "SLIMBUS_2_RX"},
        {"Slimbus3 Playback", NULL, "SLIMBUS_3_RX"},
        Q6AFE_TDM_CAP_DAI("Quinary", 5, QUINARY_TDM_TX_5),
        Q6AFE_TDM_CAP_DAI("Quinary", 6, QUINARY_TDM_TX_6),
        Q6AFE_TDM_CAP_DAI("Quinary", 7, QUINARY_TDM_TX_7),
+       {
+               .playback = {
+                       .stream_name = "Display Port Playback",
+                       .rates = SNDRV_PCM_RATE_48000 |
+                                SNDRV_PCM_RATE_96000 |
+                                SNDRV_PCM_RATE_192000,
+                       .formats = SNDRV_PCM_FMTBIT_S16_LE |
+                                  SNDRV_PCM_FMTBIT_S24_LE,
+                       .channels_min = 2,
+                       .channels_max = 8,
+                       .rate_max =     192000,
+                       .rate_min =     48000,
+               },
+               .ops = &q6hdmi_ops,
+               .id = DISPLAY_PORT_RX,
+               .name = "DISPLAY_PORT",
+               .probe = msm_dai_q6_dai_probe,
+               .remove = msm_dai_q6_dai_remove,
+       },
 };
 
 static int q6afe_of_xlate_dai_name(struct snd_soc_component *component,
                                                0, 0, 0, 0),
        SND_SOC_DAPM_AIF_OUT("QUIN_TDM_TX_7", NULL,
                                                0, 0, 0, 0),
+       SND_SOC_DAPM_AIF_OUT("DISPLAY_PORT_RX", "NULL", 0, 0, 0, 0),
 };
 
 static const struct snd_soc_component_driver q6afe_dai_component = {