Loading asoc/msm-dai-q6-v2.c +48 −0 Original line number Diff line number Diff line Loading @@ -2176,6 +2176,8 @@ static int msm_dai_q6_slim_bus_hw_params(struct snd_pcm_hw_params *params, case SLIMBUS_7_TX: case SLIMBUS_8_RX: case SLIMBUS_8_TX: case SLIMBUS_9_RX: case SLIMBUS_9_TX: dai_data->port_config.slim_sch.slimbus_dev_id = AFE_SLIMBUS_DEVICE_2; break; Loading Loading @@ -2350,6 +2352,7 @@ static int msm_dai_q6_hw_params(struct snd_pcm_substream *substream, case SLIMBUS_6_RX: case SLIMBUS_7_RX: case SLIMBUS_8_RX: case SLIMBUS_9_RX: case SLIMBUS_0_TX: case SLIMBUS_1_TX: case SLIMBUS_2_TX: Loading @@ -2359,6 +2362,7 @@ static int msm_dai_q6_hw_params(struct snd_pcm_substream *substream, case SLIMBUS_6_TX: case SLIMBUS_7_TX: case SLIMBUS_8_TX: case SLIMBUS_9_TX: rc = msm_dai_q6_slim_bus_hw_params(params, dai, substream->stream); break; Loading Loading @@ -2475,6 +2479,7 @@ static int msm_dai_q6_set_channel_map(struct snd_soc_dai *dai, case SLIMBUS_6_RX: case SLIMBUS_7_RX: case SLIMBUS_8_RX: case SLIMBUS_9_RX: /* * channel number to be between 128 and 255. * For RX port use channel numbers Loading Loading @@ -2512,6 +2517,7 @@ static int msm_dai_q6_set_channel_map(struct snd_soc_dai *dai, case SLIMBUS_6_TX: case SLIMBUS_7_TX: case SLIMBUS_8_TX: case SLIMBUS_9_TX: /* * channel number to be between 128 and 255. * For TX port use channel numbers Loading Loading @@ -4023,6 +4029,22 @@ static struct snd_soc_dai_driver msm_dai_q6_slimbus_rx_dai[] = { .probe = msm_dai_q6_dai_probe, .remove = msm_dai_q6_dai_remove, }, { .playback = { .stream_name = "Slimbus9 Playback", .aif_name = "SLIMBUS_9_RX", .rates = SNDRV_PCM_RATE_8000_384000, .formats = DAI_FORMATS_S16_S24_S32_LE, .channels_min = 1, .channels_max = 8, .rate_min = 8000, .rate_max = 384000, }, .ops = &msm_dai_q6_ops, .id = SLIMBUS_9_RX, .probe = msm_dai_q6_dai_probe, .remove = msm_dai_q6_dai_remove, }, }; static struct snd_soc_dai_driver msm_dai_q6_slimbus_tx_dai[] = { Loading Loading @@ -4202,6 +4224,26 @@ static struct snd_soc_dai_driver msm_dai_q6_slimbus_tx_dai[] = { .probe = msm_dai_q6_dai_probe, .remove = msm_dai_q6_dai_remove, }, { .capture = { .stream_name = "Slimbus9 Capture", .aif_name = "SLIMBUS_9_TX", .rates = SNDRV_PCM_RATE_8000 | SNDRV_PCM_RATE_16000 | SNDRV_PCM_RATE_48000 | SNDRV_PCM_RATE_96000 | SNDRV_PCM_RATE_192000, .formats = SNDRV_PCM_FMTBIT_S16_LE | SNDRV_PCM_FMTBIT_S24_LE | SNDRV_PCM_FMTBIT_S32_LE, .channels_min = 1, .channels_max = 8, .rate_min = 8000, .rate_max = 192000, }, .ops = &msm_dai_q6_ops, .id = SLIMBUS_9_TX, .probe = msm_dai_q6_dai_probe, .remove = msm_dai_q6_dai_remove, }, }; static int msm_dai_q6_mi2s_format_put(struct snd_kcontrol *kcontrol, Loading Loading @@ -5484,6 +5526,9 @@ static int msm_dai_q6_dev_probe(struct platform_device *pdev) case SLIMBUS_8_RX: strlcpy(stream_name, "Slimbus8 Playback", sizeof(stream_name)); goto register_slim_playback; case SLIMBUS_9_RX: strlcpy(stream_name, "Slimbus9 Playback", sizeof(stream_name)); goto register_slim_playback; register_slim_playback: rc = -ENODEV; len = strnlen(stream_name, 80); Loading Loading @@ -5529,6 +5574,9 @@ static int msm_dai_q6_dev_probe(struct platform_device *pdev) case SLIMBUS_8_TX: strlcpy(stream_name, "Slimbus8 Capture", sizeof(stream_name)); goto register_slim_capture; case SLIMBUS_9_TX: strlcpy(stream_name, "Slimbus9 Capture", sizeof(stream_name)); goto register_slim_capture; register_slim_capture: rc = -ENODEV; len = strnlen(stream_name, 80); Loading asoc/msm-pcm-routing-v2.c +155 −1 Original line number Diff line number Diff line Loading @@ -639,6 +639,8 @@ struct msm_pcm_routing_bdai_data msm_bedais[MSM_BACKEND_DAI_MAX] = { LPASS_BE_SEC_SPDIF_RX}, { AFE_PORT_ID_SECONDARY_SPDIF_TX, 0, {0}, {0}, 0, 0, 0, 0, LPASS_BE_SEC_SPDIF_TX}, { SLIMBUS_9_RX, 0, {0}, {0}, 0, 0, 0, 0, LPASS_BE_SLIMBUS_9_RX}, { SLIMBUS_9_TX, 0, {0}, {0}, 0, 0, 0, 0, LPASS_BE_SLIMBUS_9_TX}, }; /* Track ASM playback & capture sessions of DAI Loading Loading @@ -6562,6 +6564,76 @@ static const struct snd_kcontrol_new slimbus_7_rx_mixer_controls[] = { msm_routing_put_audio_mixer), }; static const struct snd_kcontrol_new slimbus_9_rx_mixer_controls[] = { SOC_DOUBLE_EXT("MultiMedia1", SND_SOC_NOPM, MSM_BACKEND_DAI_SLIMBUS_9_RX, MSM_FRONTEND_DAI_MULTIMEDIA1, 1, 0, msm_routing_get_audio_mixer, msm_routing_put_audio_mixer), SOC_DOUBLE_EXT("MultiMedia2", SND_SOC_NOPM, MSM_BACKEND_DAI_SLIMBUS_9_RX, MSM_FRONTEND_DAI_MULTIMEDIA2, 1, 0, msm_routing_get_audio_mixer, msm_routing_put_audio_mixer), SOC_DOUBLE_EXT("MultiMedia3", SND_SOC_NOPM, MSM_BACKEND_DAI_SLIMBUS_9_RX, MSM_FRONTEND_DAI_MULTIMEDIA3, 1, 0, msm_routing_get_audio_mixer, msm_routing_put_audio_mixer), SOC_DOUBLE_EXT("MultiMedia4", SND_SOC_NOPM, MSM_BACKEND_DAI_SLIMBUS_9_RX, MSM_FRONTEND_DAI_MULTIMEDIA4, 1, 0, msm_routing_get_audio_mixer, msm_routing_put_audio_mixer), SOC_DOUBLE_EXT("MultiMedia5", SND_SOC_NOPM, MSM_BACKEND_DAI_SLIMBUS_9_RX, MSM_FRONTEND_DAI_MULTIMEDIA5, 1, 0, msm_routing_get_audio_mixer, msm_routing_put_audio_mixer), SOC_DOUBLE_EXT("MultiMedia6", SND_SOC_NOPM, MSM_BACKEND_DAI_SLIMBUS_9_RX, MSM_FRONTEND_DAI_MULTIMEDIA6, 1, 0, msm_routing_get_audio_mixer, msm_routing_put_audio_mixer), SOC_DOUBLE_EXT("MultiMedia7", SND_SOC_NOPM, MSM_BACKEND_DAI_SLIMBUS_9_RX, MSM_FRONTEND_DAI_MULTIMEDIA7, 1, 0, msm_routing_get_audio_mixer, msm_routing_put_audio_mixer), SOC_DOUBLE_EXT("MultiMedia8", SND_SOC_NOPM, MSM_BACKEND_DAI_SLIMBUS_9_RX, MSM_FRONTEND_DAI_MULTIMEDIA8, 1, 0, msm_routing_get_audio_mixer, msm_routing_put_audio_mixer), SOC_DOUBLE_EXT("MultiMedia9", SND_SOC_NOPM, MSM_BACKEND_DAI_SLIMBUS_9_RX, MSM_FRONTEND_DAI_MULTIMEDIA9, 1, 0, msm_routing_get_audio_mixer, msm_routing_put_audio_mixer), SOC_DOUBLE_EXT("MultiMedia10", SND_SOC_NOPM, MSM_BACKEND_DAI_SLIMBUS_9_RX, MSM_FRONTEND_DAI_MULTIMEDIA10, 1, 0, msm_routing_get_audio_mixer, msm_routing_put_audio_mixer), SOC_DOUBLE_EXT("MultiMedia11", SND_SOC_NOPM, MSM_BACKEND_DAI_SLIMBUS_9_RX, MSM_FRONTEND_DAI_MULTIMEDIA11, 1, 0, msm_routing_get_audio_mixer, msm_routing_put_audio_mixer), SOC_DOUBLE_EXT("MultiMedia12", SND_SOC_NOPM, MSM_BACKEND_DAI_SLIMBUS_9_RX, MSM_FRONTEND_DAI_MULTIMEDIA12, 1, 0, msm_routing_get_audio_mixer, msm_routing_put_audio_mixer), SOC_DOUBLE_EXT("MultiMedia13", SND_SOC_NOPM, MSM_BACKEND_DAI_SLIMBUS_9_RX, MSM_FRONTEND_DAI_MULTIMEDIA13, 1, 0, msm_routing_get_audio_mixer, msm_routing_put_audio_mixer), SOC_DOUBLE_EXT("MultiMedia14", SND_SOC_NOPM, MSM_BACKEND_DAI_SLIMBUS_9_RX, MSM_FRONTEND_DAI_MULTIMEDIA14, 1, 0, msm_routing_get_audio_mixer, msm_routing_put_audio_mixer), SOC_DOUBLE_EXT("MultiMedia15", SND_SOC_NOPM, MSM_BACKEND_DAI_SLIMBUS_9_RX, MSM_FRONTEND_DAI_MULTIMEDIA15, 1, 0, msm_routing_get_audio_mixer, msm_routing_put_audio_mixer), SOC_DOUBLE_EXT("MultiMedia16", SND_SOC_NOPM, MSM_BACKEND_DAI_SLIMBUS_9_RX, MSM_FRONTEND_DAI_MULTIMEDIA16, 1, 0, msm_routing_get_audio_mixer, msm_routing_put_audio_mixer), SOC_DOUBLE_EXT("MultiMedia26", SND_SOC_NOPM, MSM_BACKEND_DAI_SLIMBUS_9_RX, MSM_FRONTEND_DAI_MULTIMEDIA26, 1, 0, msm_routing_get_audio_mixer, msm_routing_put_audio_mixer), }; static const struct snd_kcontrol_new usb_audio_rx_mixer_controls[] = { SOC_DOUBLE_EXT("MultiMedia1", SND_SOC_NOPM, MSM_BACKEND_DAI_USB_RX, Loading Loading @@ -9470,6 +9542,10 @@ static const struct snd_kcontrol_new mmul1_mixer_controls[] = { MSM_BACKEND_DAI_SEC_SPDIF_TX, MSM_FRONTEND_DAI_MULTIMEDIA1, 1, 0, msm_routing_get_audio_mixer, msm_routing_put_audio_mixer), SOC_DOUBLE_EXT("SLIM_9_TX", SND_SOC_NOPM, MSM_BACKEND_DAI_SLIMBUS_9_TX, MSM_FRONTEND_DAI_MULTIMEDIA1, 1, 0, msm_routing_get_audio_mixer, msm_routing_put_audio_mixer), }; static const struct snd_kcontrol_new mmul2_mixer_controls[] = { Loading Loading @@ -9661,6 +9737,10 @@ static const struct snd_kcontrol_new mmul2_mixer_controls[] = { MSM_BACKEND_DAI_SEC_SPDIF_TX, MSM_FRONTEND_DAI_MULTIMEDIA2, 1, 0, msm_routing_get_audio_mixer, msm_routing_put_audio_mixer), SOC_DOUBLE_EXT("SLIM_9_TX", SND_SOC_NOPM, MSM_BACKEND_DAI_SLIMBUS_9_TX, MSM_FRONTEND_DAI_MULTIMEDIA2, 1, 0, msm_routing_get_audio_mixer, msm_routing_put_audio_mixer), }; static const struct snd_kcontrol_new mmul3_mixer_controls[] = { Loading Loading @@ -10250,6 +10330,10 @@ static const struct snd_kcontrol_new mmul5_mixer_controls[] = { MSM_BACKEND_DAI_SEC_SPDIF_TX, MSM_FRONTEND_DAI_MULTIMEDIA5, 1, 0, msm_routing_get_audio_mixer, msm_routing_put_audio_mixer), SOC_DOUBLE_EXT("SLIM_9_TX", SND_SOC_NOPM, MSM_BACKEND_DAI_SLIMBUS_9_TX, MSM_FRONTEND_DAI_MULTIMEDIA5, 1, 0, msm_routing_get_audio_mixer, msm_routing_put_audio_mixer), }; static const struct snd_kcontrol_new mmul6_mixer_controls[] = { Loading Loading @@ -10636,6 +10720,10 @@ static const struct snd_kcontrol_new mmul8_mixer_controls[] = { MSM_BACKEND_DAI_SEC_SPDIF_TX, MSM_FRONTEND_DAI_MULTIMEDIA8, 1, 0, msm_routing_get_audio_mixer, msm_routing_put_audio_mixer), SOC_DOUBLE_EXT("SLIM_9_TX", SND_SOC_NOPM, MSM_BACKEND_DAI_SLIMBUS_9_TX, MSM_FRONTEND_DAI_MULTIMEDIA8, 1, 0, msm_routing_get_audio_mixer, msm_routing_put_audio_mixer), }; static const struct snd_kcontrol_new mmul16_mixer_controls[] = { Loading Loading @@ -10837,6 +10925,10 @@ static const struct snd_kcontrol_new mmul16_mixer_controls[] = { MSM_BACKEND_DAI_SEC_SPDIF_TX, MSM_FRONTEND_DAI_MULTIMEDIA16, 1, 0, msm_routing_get_audio_mixer, msm_routing_put_audio_mixer), SOC_DOUBLE_EXT("SLIM_9_TX", SND_SOC_NOPM, MSM_BACKEND_DAI_SLIMBUS_9_TX, MSM_FRONTEND_DAI_MULTIMEDIA16, 1, 0, msm_routing_get_audio_mixer, msm_routing_put_audio_mixer), }; static const struct snd_kcontrol_new mmul9_mixer_controls[] = { Loading Loading @@ -11137,6 +11229,10 @@ static const struct snd_kcontrol_new mmul10_mixer_controls[] = { MSM_BACKEND_DAI_SEC_SPDIF_TX, MSM_FRONTEND_DAI_MULTIMEDIA10, 1, 0, msm_routing_get_audio_mixer, msm_routing_put_audio_mixer), SOC_DOUBLE_EXT("SLIM_9_TX", SND_SOC_NOPM, MSM_BACKEND_DAI_SLIMBUS_9_TX, MSM_FRONTEND_DAI_MULTIMEDIA10, 1, 0, msm_routing_get_audio_mixer, msm_routing_put_audio_mixer), }; static const struct snd_kcontrol_new mmul17_mixer_controls[] = { SOC_DOUBLE_EXT("SLIM_0_TX", SND_SOC_NOPM, Loading Loading @@ -11784,6 +11880,10 @@ static const struct snd_kcontrol_new mmul27_mixer_controls[] = { MSM_BACKEND_DAI_SEC_SPDIF_TX, MSM_FRONTEND_DAI_MULTIMEDIA27, 1, 0, msm_routing_get_audio_mixer, msm_routing_put_audio_mixer), SOC_DOUBLE_EXT("SLIM_9_TX", SND_SOC_NOPM, MSM_BACKEND_DAI_SLIMBUS_9_TX, MSM_FRONTEND_DAI_MULTIMEDIA27, 1, 0, msm_routing_get_audio_mixer, msm_routing_put_audio_mixer), }; static const struct snd_kcontrol_new mmul28_mixer_controls[] = { Loading Loading @@ -13507,6 +13607,10 @@ static const struct snd_kcontrol_new int0_mi2s_rx_port_mixer_controls[] = { MSM_BACKEND_DAI_INT0_MI2S_RX, MSM_BACKEND_DAI_SLIMBUS_8_TX, 1, 0, msm_routing_get_port_mixer, msm_routing_put_port_mixer), SOC_DOUBLE_EXT("SLIM_9_TX", SND_SOC_NOPM, MSM_BACKEND_DAI_INT0_MI2S_RX, MSM_BACKEND_DAI_SLIMBUS_9_TX, 1, 0, msm_routing_get_port_mixer, msm_routing_put_port_mixer), }; static const struct snd_kcontrol_new int4_mi2s_rx_port_mixer_controls[] = { Loading Loading @@ -13550,6 +13654,10 @@ static const struct snd_kcontrol_new int4_mi2s_rx_port_mixer_controls[] = { MSM_BACKEND_DAI_INT4_MI2S_RX, MSM_BACKEND_DAI_SLIMBUS_8_TX, 1, 0, msm_routing_get_port_mixer, msm_routing_put_port_mixer), SOC_DOUBLE_EXT("SLIM_9_TX", SND_SOC_NOPM, MSM_BACKEND_DAI_INT4_MI2S_RX, MSM_BACKEND_DAI_SLIMBUS_9_TX, 1, 0, msm_routing_get_port_mixer, msm_routing_put_port_mixer), }; static const struct snd_kcontrol_new wsa_cdc_dma_rx_0_port_mixer_controls[] = { Loading @@ -13576,6 +13684,10 @@ static const struct snd_kcontrol_new rx_cdc_dma_rx_0_port_mixer_controls[] = { MSM_BACKEND_DAI_RX_CDC_DMA_RX_0, MSM_BACKEND_DAI_SLIMBUS_8_TX, 1, 0, msm_routing_get_port_mixer, msm_routing_put_port_mixer), SOC_DOUBLE_EXT("SLIM_9_TX", SND_SOC_NOPM, MSM_BACKEND_DAI_INT4_MI2S_RX, MSM_BACKEND_DAI_SLIMBUS_9_TX, 1, 0, msm_routing_get_port_mixer, msm_routing_put_port_mixer), }; static const struct snd_kcontrol_new sbus_0_rx_port_mixer_controls[] = { Loading Loading @@ -13667,6 +13779,10 @@ static const struct snd_kcontrol_new sbus_0_rx_port_mixer_controls[] = { MSM_BACKEND_DAI_SLIMBUS_0_RX, MSM_BACKEND_DAI_QUINARY_MI2S_RX, 1, 0, msm_routing_get_port_mixer, msm_routing_put_port_mixer), SOC_DOUBLE_EXT("SLIM_9_TX", SND_SOC_NOPM, MSM_BACKEND_DAI_SLIMBUS_0_RX, MSM_BACKEND_DAI_SLIMBUS_9_TX, 1, 0, msm_routing_get_port_mixer, msm_routing_put_port_mixer), }; static const struct snd_kcontrol_new aux_pcm_rx_port_mixer_controls[] = { Loading Loading @@ -13859,6 +13975,10 @@ static const struct snd_kcontrol_new sbus_6_rx_port_mixer_controls[] = { MSM_BACKEND_DAI_SLIMBUS_6_RX, MSM_BACKEND_DAI_INT_BT_SCO_TX, 1, 0, msm_routing_get_port_mixer, msm_routing_put_port_mixer), SOC_DOUBLE_EXT("SLIM_9_TX", SND_SOC_NOPM, MSM_BACKEND_DAI_SLIMBUS_6_RX, MSM_BACKEND_DAI_SLIMBUS_9_TX, 1, 0, msm_routing_get_port_mixer, msm_routing_put_port_mixer), }; static const struct snd_kcontrol_new bt_sco_rx_port_mixer_controls[] = { Loading Loading @@ -18697,6 +18817,8 @@ static const struct snd_soc_dapm_widget msm_qdsp6_widgets[] = { SND_SOC_DAPM_AIF_OUT("SLIMBUS_8_RX", "Slimbus8 Playback", 0, 0, 0, 0), SND_SOC_DAPM_AIF_IN("SLIMBUS_8_TX", "Slimbus8 Capture", 0, 0, 0, 0), SND_SOC_DAPM_AIF_OUT("SLIMBUS_9_RX", "Slimbus9 Playback", 0, 0, 0, 0), SND_SOC_DAPM_AIF_IN("SLIMBUS_9_TX", "Slimbus9 Capture", 0, 0, 0, 0), SND_SOC_DAPM_AIF_OUT("USB_AUDIO_RX", "USB Audio Playback", 0, 0, 0, 0), SND_SOC_DAPM_AIF_IN("USB_AUDIO_TX", "USB Audio Capture", 0, 0, 0, 0), Loading Loading @@ -18757,6 +18879,8 @@ static const struct snd_soc_dapm_widget msm_qdsp6_widgets[] = { slimbus_5_rx_mixer_controls, ARRAY_SIZE(slimbus_5_rx_mixer_controls)), SND_SOC_DAPM_MIXER("SLIMBUS_7_RX Audio Mixer", SND_SOC_NOPM, 0, 0, slimbus_7_rx_mixer_controls, ARRAY_SIZE(slimbus_7_rx_mixer_controls)), SND_SOC_DAPM_MIXER("SLIMBUS_9_RX Audio Mixer", SND_SOC_NOPM, 0, 0, slimbus_9_rx_mixer_controls, ARRAY_SIZE(slimbus_9_rx_mixer_controls)), SND_SOC_DAPM_MIXER("HDMI Mixer", SND_SOC_NOPM, 0, 0, hdmi_mixer_controls, ARRAY_SIZE(hdmi_mixer_controls)), SND_SOC_DAPM_MIXER("DISPLAY_PORT Mixer", SND_SOC_NOPM, 0, 0, Loading Loading @@ -19751,6 +19875,25 @@ static const struct snd_soc_dapm_route intercon[] = { {"SLIMBUS_7_RX Audio Mixer", "MultiMedia26", "MM_DL26"}, {"SLIMBUS_7_RX", NULL, "SLIMBUS_7_RX Audio Mixer"}, {"SLIMBUS_9_RX Audio Mixer", "MultiMedia1", "MM_DL1"}, {"SLIMBUS_9_RX Audio Mixer", "MultiMedia2", "MM_DL2"}, {"SLIMBUS_9_RX Audio Mixer", "MultiMedia3", "MM_DL3"}, {"SLIMBUS_9_RX Audio Mixer", "MultiMedia4", "MM_DL4"}, {"SLIMBUS_9_RX Audio Mixer", "MultiMedia5", "MM_DL5"}, {"SLIMBUS_9_RX Audio Mixer", "MultiMedia6", "MM_DL6"}, {"SLIMBUS_9_RX Audio Mixer", "MultiMedia7", "MM_DL7"}, {"SLIMBUS_9_RX Audio Mixer", "MultiMedia8", "MM_DL8"}, {"SLIMBUS_9_RX Audio Mixer", "MultiMedia9", "MM_DL9"}, {"SLIMBUS_9_RX Audio Mixer", "MultiMedia10", "MM_DL10"}, {"SLIMBUS_9_RX Audio Mixer", "MultiMedia11", "MM_DL11"}, {"SLIMBUS_9_RX Audio Mixer", "MultiMedia12", "MM_DL12"}, {"SLIMBUS_9_RX Audio Mixer", "MultiMedia13", "MM_DL13"}, {"SLIMBUS_9_RX Audio Mixer", "MultiMedia14", "MM_DL14"}, {"SLIMBUS_9_RX Audio Mixer", "MultiMedia15", "MM_DL15"}, {"SLIMBUS_9_RX Audio Mixer", "MultiMedia16", "MM_DL16"}, {"SLIMBUS_9_RX Audio Mixer", "MultiMedia26", "MM_DL26"}, {"SLIMBUS_9_RX", NULL, "SLIMBUS_9_RX Audio Mixer"}, {"USB_AUDIO_RX Audio Mixer", "MultiMedia1", "MM_DL1"}, {"USB_AUDIO_RX Audio Mixer", "MultiMedia2", "MM_DL2"}, {"USB_AUDIO_RX Audio Mixer", "MultiMedia3", "MM_DL3"}, Loading Loading @@ -19780,8 +19923,10 @@ static const struct snd_soc_dapm_route intercon[] = { {"MultiMedia1 Mixer", "SLIM_6_TX", "SLIMBUS_6_TX"}, {"MultiMedia1 Mixer", "SLIM_7_TX", "SLIMBUS_7_TX"}, {"MultiMedia1 Mixer", "SLIM_8_TX", "SLIMBUS_8_TX"}, {"MultiMedia1 Mixer", "SLIM_9_TX", "SLIMBUS_9_TX"}, {"MultiMedia8 Mixer", "SLIM_6_TX", "SLIMBUS_6_TX"}, {"MultiMedia8 Mixer", "SLIM_7_TX", "SLIMBUS_7_TX"}, {"MultiMedia8 Mixer", "SLIM_9_TX", "SLIMBUS_9_TX"}, {"MultiMedia4 Mixer", "SLIM_0_TX", "SLIMBUS_0_TX"}, {"MultiMedia17 Mixer", "SLIM_0_TX", "SLIMBUS_0_TX"}, {"MultiMedia18 Mixer", "SLIM_0_TX", "SLIMBUS_0_TX"}, Loading Loading @@ -19815,7 +19960,9 @@ static const struct snd_soc_dapm_route intercon[] = { {"MultiMedia16 Mixer", "SLIM_0_TX", "SLIMBUS_0_TX"}, {"MultiMedia5 Mixer", "SLIM_7_TX", "SLIMBUS_7_TX"}, {"MultiMedia5 Mixer", "SLIM_8_TX", "SLIMBUS_8_TX"}, {"MultiMedia5 Mixer", "SLIM_9_TX", "SLIMBUS_9_TX"}, {"MultiMedia10 Mixer", "SLIM_7_TX", "SLIMBUS_7_TX"}, {"MultiMedia10 Mixer", "SLIM_9_TX", "SLIMBUS_9_TX"}, {"MultiMedia18 Mixer", "PRI_SPDIF_TX", "PRI_SPDIF_TX"}, {"MultiMedia18 Mixer", "SEC_SPDIF_TX", "SEC_SPDIF_TX"}, Loading Loading @@ -20895,6 +21042,7 @@ static const struct snd_soc_dapm_route intercon[] = { {"MultiMedia27 Mixer", "SLIM_0_TX", "SLIMBUS_0_TX"}, {"MultiMedia27 Mixer", "SLIM_6_TX", "SLIMBUS_6_TX"}, {"MultiMedia27 Mixer", "SLIM_7_TX", "SLIMBUS_7_TX"}, {"MultiMedia27 Mixer", "SLIM_9_TX", "SLIMBUS_9_TX"}, {"MultiMedia27 Mixer", "PRI_MI2S_TX", "PRI_MI2S_TX"}, {"MultiMedia27 Mixer", "SEC_MI2S_TX", "SEC_MI2S_TX"}, {"MultiMedia27 Mixer", "TERT_MI2S_TX", "TERT_MI2S_TX"}, Loading Loading @@ -22246,6 +22394,7 @@ static const struct snd_soc_dapm_route intercon[] = { {"INT0_MI2S_RX Port Mixer", "SLIM_7_TX", "SLIMBUS_7_TX"}, {"INT0_MI2S_RX Port Mixer", "SLIM_8_TX", "SLIMBUS_8_TX"}, {"INT0_MI2S_RX Port Mixer", "INTERNAL_FM_TX", "INT_FM_TX"}, {"INT0_MI2S_RX Port Mixer", "SLIM_9_TX", "SLIMBUS_9_TX"}, {"INT0_MI2S_RX Port Mixer", "INTERNAL_BT_SCO_TX", "INT_BT_SCO_TX"}, {"INT0_MI2S_RX", NULL, "INT0_MI2S_RX Port Mixer"}, Loading @@ -22257,6 +22406,7 @@ static const struct snd_soc_dapm_route intercon[] = { {"INT4_MI2S_RX Port Mixer", "INT3_MI2S_TX", "INT3_MI2S_TX"}, {"INT4_MI2S_RX Port Mixer", "SLIM_7_TX", "SLIMBUS_7_TX"}, {"INT4_MI2S_RX Port Mixer", "SLIM_8_TX", "SLIMBUS_8_TX"}, {"INT4_MI2S_RX Port Mixer", "SLIM_9_TX", "SLIMBUS_9_TX"}, {"INT4_MI2S_RX Port Mixer", "INTERNAL_FM_TX", "INT_FM_TX"}, {"INT4_MI2S_RX Port Mixer", "INTERNAL_BT_SCO_TX", "INT_BT_SCO_TX"}, {"INT4_MI2S_RX", NULL, "INT4_MI2S_RX Port Mixer"}, Loading @@ -22273,6 +22423,7 @@ static const struct snd_soc_dapm_route intercon[] = { {"SLIMBUS_0_RX Port Mixer", "SLIM_1_TX", "SLIMBUS_1_TX"}, {"SLIMBUS_0_RX Port Mixer", "SLIM_7_TX", "SLIMBUS_7_TX"}, {"SLIMBUS_0_RX Port Mixer", "SLIM_8_TX", "SLIMBUS_8_TX"}, {"SLIMBUS_0_RX Port Mixer", "SLIM_9_TX", "SLIMBUS_9_TX"}, {"SLIMBUS_0_RX Port Mixer", "AUX_PCM_UL_TX", "AUX_PCM_TX"}, {"SLIMBUS_0_RX Port Mixer", "SEC_AUX_PCM_UL_TX", "SEC_AUX_PCM_TX"}, {"SLIMBUS_0_RX Port Mixer", "TERT_AUXPCM_UL_TX", "TERT_AUX_PCM_TX"}, Loading Loading @@ -22417,6 +22568,7 @@ static const struct snd_soc_dapm_route intercon[] = { {"SLIMBUS_6_RX Port Mixer", "SLIM_1_TX", "SLIMBUS_1_TX"}, {"SLIMBUS_6_RX Port Mixer", "SLIM_7_TX", "SLIMBUS_7_TX"}, {"SLIMBUS_6_RX Port Mixer", "SLIM_8_TX", "SLIMBUS_8_TX"}, {"SLIMBUS_6_RX Port Mixer", "SLIM_9_TX", "SLIMBUS_9_TX"}, {"SLIMBUS_6_RX Port Mixer", "AUX_PCM_UL_TX", "AUX_PCM_TX"}, {"SLIMBUS_6_RX Port Mixer", "SEC_AUX_PCM_UL_TX", "SEC_AUX_PCM_TX"}, {"SLIMBUS_6_RX Port Mixer", "MI2S_TX", "MI2S_TX"}, Loading Loading @@ -22507,6 +22659,7 @@ static const struct snd_soc_dapm_route intercon[] = { {"BE_OUT", NULL, "SLIMBUS_6_RX"}, {"BE_OUT", NULL, "SLIMBUS_7_RX"}, {"BE_OUT", NULL, "SLIMBUS_8_RX"}, {"BE_OUT", NULL, "SLIMBUS_9_RX"}, {"BE_OUT", NULL, "USB_AUDIO_RX"}, {"BE_OUT", NULL, "HDMI"}, {"BE_OUT", NULL, "DISPLAY_PORT"}, Loading Loading @@ -22594,6 +22747,7 @@ static const struct snd_soc_dapm_route intercon[] = { {"SLIMBUS_6_TX", NULL, "BE_IN" }, {"SLIMBUS_7_TX", NULL, "BE_IN" }, {"SLIMBUS_8_TX", NULL, "BE_IN" }, {"SLIMBUS_9_TX", NULL, "BE_IN" }, {"USB_AUDIO_TX", NULL, "BE_IN" }, {"INT_BT_SCO_TX", NULL, "BE_IN"}, {"INT_FM_TX", NULL, "BE_IN"}, asoc/msm-pcm-routing-v2.h +4 −0 Original line number Diff line number Diff line Loading @@ -170,6 +170,8 @@ #define LPASS_BE_SLIMBUS_7_TX "SLIMBUS_7_TX" #define LPASS_BE_SLIMBUS_8_RX "SLIMBUS_8_RX" #define LPASS_BE_SLIMBUS_8_TX "SLIMBUS_8_TX" #define LPASS_BE_SLIMBUS_9_RX "SLIMBUS_9_RX" #define LPASS_BE_SLIMBUS_9_TX "SLIMBUS_9_TX" #define LPASS_BE_USB_AUDIO_RX "USB_AUDIO_RX" #define LPASS_BE_USB_AUDIO_TX "USB_AUDIO_TX" Loading Loading @@ -453,6 +455,8 @@ enum { MSM_BACKEND_DAI_PRI_SPDIF_TX, MSM_BACKEND_DAI_SEC_SPDIF_RX, MSM_BACKEND_DAI_SEC_SPDIF_TX, MSM_BACKEND_DAI_SLIMBUS_9_RX, MSM_BACKEND_DAI_SLIMBUS_9_TX, MSM_BACKEND_DAI_MAX, }; Loading dsp/q6afe.c +10 −0 Original line number Diff line number Diff line Loading @@ -839,6 +839,8 @@ int afe_sizeof_cfg_cmd(u16 port_id) case SLIMBUS_7_TX: case SLIMBUS_8_RX: case SLIMBUS_8_TX: case SLIMBUS_9_RX: case SLIMBUS_9_TX: ret_size = SIZEOF_CFG_CMD(afe_param_id_slimbus_cfg); break; case VOICE_PLAYBACK_TX: Loading Loading @@ -4041,6 +4043,8 @@ static int __afe_port_start(u16 port_id, union afe_port_config *afe_config, case SLIMBUS_7_TX: case SLIMBUS_8_RX: case SLIMBUS_8_TX: case SLIMBUS_9_RX: case SLIMBUS_9_TX: cfg_type = AFE_PARAM_ID_SLIMBUS_CONFIG; break; case AFE_PORT_ID_USB_RX: Loading Loading @@ -4288,6 +4292,8 @@ int afe_get_port_index(u16 port_id) case SLIMBUS_7_TX: return IDX_SLIMBUS_7_TX; case SLIMBUS_8_RX: return IDX_SLIMBUS_8_RX; case SLIMBUS_8_TX: return IDX_SLIMBUS_8_TX; case SLIMBUS_9_RX: return IDX_SLIMBUS_9_RX; case SLIMBUS_9_TX: return IDX_SLIMBUS_9_TX; case AFE_PORT_ID_USB_RX: return IDX_AFE_PORT_ID_USB_RX; case AFE_PORT_ID_USB_TX: return IDX_AFE_PORT_ID_USB_TX; case AFE_PORT_ID_PRIMARY_MI2S_RX: Loading Loading @@ -4685,6 +4691,8 @@ int afe_open(u16 port_id, case SLIMBUS_7_TX: case SLIMBUS_8_RX: case SLIMBUS_8_TX: case SLIMBUS_9_RX: case SLIMBUS_9_TX: cfg_type = AFE_PARAM_ID_SLIMBUS_CONFIG; break; case AFE_PORT_ID_USB_RX: Loading Loading @@ -6557,6 +6565,8 @@ int afe_validate_port(u16 port_id) case SLIMBUS_7_TX: case SLIMBUS_8_RX: case SLIMBUS_8_TX: case SLIMBUS_9_RX: case SLIMBUS_9_TX: case AFE_PORT_ID_USB_RX: case AFE_PORT_ID_USB_TX: case AFE_PORT_ID_PRIMARY_MI2S_RX: Loading dsp/q6audio-v2.c +6 −0 Original line number Diff line number Diff line Loading @@ -79,6 +79,8 @@ int q6audio_get_port_index(u16 port_id) case SLIMBUS_7_TX: return IDX_SLIMBUS_7_TX; case SLIMBUS_8_RX: return IDX_SLIMBUS_8_RX; case SLIMBUS_8_TX: return IDX_SLIMBUS_8_TX; case SLIMBUS_9_RX: return IDX_SLIMBUS_9_RX; case SLIMBUS_9_TX: return IDX_SLIMBUS_9_TX; case INT_BT_SCO_RX: return IDX_INT_BT_SCO_RX; case INT_BT_SCO_TX: return IDX_INT_BT_SCO_TX; case INT_BT_A2DP_RX: return IDX_INT_BT_A2DP_RX; Loading Loading @@ -415,6 +417,8 @@ int q6audio_get_port_id(u16 port_id) case SLIMBUS_7_TX: return AFE_PORT_ID_SLIMBUS_MULTI_CHAN_7_TX; case SLIMBUS_8_RX: return AFE_PORT_ID_SLIMBUS_MULTI_CHAN_8_RX; case SLIMBUS_8_TX: return AFE_PORT_ID_SLIMBUS_MULTI_CHAN_8_TX; case SLIMBUS_9_RX: return AFE_PORT_ID_SLIMBUS_MULTI_CHAN_9_RX; case SLIMBUS_9_TX: return AFE_PORT_ID_SLIMBUS_MULTI_CHAN_9_TX; case INT_BT_SCO_RX: return AFE_PORT_ID_INTERNAL_BT_SCO_RX; case INT_BT_SCO_TX: return AFE_PORT_ID_INTERNAL_BT_SCO_TX; case INT_BT_A2DP_RX: return AFE_PORT_ID_INTERNAL_BT_A2DP_RX; Loading Loading @@ -925,6 +929,8 @@ int q6audio_validate_port(u16 port_id) case SLIMBUS_7_TX: case SLIMBUS_8_RX: case SLIMBUS_8_TX: case SLIMBUS_9_RX: case SLIMBUS_9_TX: case INT_BT_SCO_RX: case INT_BT_SCO_TX: case INT_BT_A2DP_RX: Loading Loading
asoc/msm-dai-q6-v2.c +48 −0 Original line number Diff line number Diff line Loading @@ -2176,6 +2176,8 @@ static int msm_dai_q6_slim_bus_hw_params(struct snd_pcm_hw_params *params, case SLIMBUS_7_TX: case SLIMBUS_8_RX: case SLIMBUS_8_TX: case SLIMBUS_9_RX: case SLIMBUS_9_TX: dai_data->port_config.slim_sch.slimbus_dev_id = AFE_SLIMBUS_DEVICE_2; break; Loading Loading @@ -2350,6 +2352,7 @@ static int msm_dai_q6_hw_params(struct snd_pcm_substream *substream, case SLIMBUS_6_RX: case SLIMBUS_7_RX: case SLIMBUS_8_RX: case SLIMBUS_9_RX: case SLIMBUS_0_TX: case SLIMBUS_1_TX: case SLIMBUS_2_TX: Loading @@ -2359,6 +2362,7 @@ static int msm_dai_q6_hw_params(struct snd_pcm_substream *substream, case SLIMBUS_6_TX: case SLIMBUS_7_TX: case SLIMBUS_8_TX: case SLIMBUS_9_TX: rc = msm_dai_q6_slim_bus_hw_params(params, dai, substream->stream); break; Loading Loading @@ -2475,6 +2479,7 @@ static int msm_dai_q6_set_channel_map(struct snd_soc_dai *dai, case SLIMBUS_6_RX: case SLIMBUS_7_RX: case SLIMBUS_8_RX: case SLIMBUS_9_RX: /* * channel number to be between 128 and 255. * For RX port use channel numbers Loading Loading @@ -2512,6 +2517,7 @@ static int msm_dai_q6_set_channel_map(struct snd_soc_dai *dai, case SLIMBUS_6_TX: case SLIMBUS_7_TX: case SLIMBUS_8_TX: case SLIMBUS_9_TX: /* * channel number to be between 128 and 255. * For TX port use channel numbers Loading Loading @@ -4023,6 +4029,22 @@ static struct snd_soc_dai_driver msm_dai_q6_slimbus_rx_dai[] = { .probe = msm_dai_q6_dai_probe, .remove = msm_dai_q6_dai_remove, }, { .playback = { .stream_name = "Slimbus9 Playback", .aif_name = "SLIMBUS_9_RX", .rates = SNDRV_PCM_RATE_8000_384000, .formats = DAI_FORMATS_S16_S24_S32_LE, .channels_min = 1, .channels_max = 8, .rate_min = 8000, .rate_max = 384000, }, .ops = &msm_dai_q6_ops, .id = SLIMBUS_9_RX, .probe = msm_dai_q6_dai_probe, .remove = msm_dai_q6_dai_remove, }, }; static struct snd_soc_dai_driver msm_dai_q6_slimbus_tx_dai[] = { Loading Loading @@ -4202,6 +4224,26 @@ static struct snd_soc_dai_driver msm_dai_q6_slimbus_tx_dai[] = { .probe = msm_dai_q6_dai_probe, .remove = msm_dai_q6_dai_remove, }, { .capture = { .stream_name = "Slimbus9 Capture", .aif_name = "SLIMBUS_9_TX", .rates = SNDRV_PCM_RATE_8000 | SNDRV_PCM_RATE_16000 | SNDRV_PCM_RATE_48000 | SNDRV_PCM_RATE_96000 | SNDRV_PCM_RATE_192000, .formats = SNDRV_PCM_FMTBIT_S16_LE | SNDRV_PCM_FMTBIT_S24_LE | SNDRV_PCM_FMTBIT_S32_LE, .channels_min = 1, .channels_max = 8, .rate_min = 8000, .rate_max = 192000, }, .ops = &msm_dai_q6_ops, .id = SLIMBUS_9_TX, .probe = msm_dai_q6_dai_probe, .remove = msm_dai_q6_dai_remove, }, }; static int msm_dai_q6_mi2s_format_put(struct snd_kcontrol *kcontrol, Loading Loading @@ -5484,6 +5526,9 @@ static int msm_dai_q6_dev_probe(struct platform_device *pdev) case SLIMBUS_8_RX: strlcpy(stream_name, "Slimbus8 Playback", sizeof(stream_name)); goto register_slim_playback; case SLIMBUS_9_RX: strlcpy(stream_name, "Slimbus9 Playback", sizeof(stream_name)); goto register_slim_playback; register_slim_playback: rc = -ENODEV; len = strnlen(stream_name, 80); Loading Loading @@ -5529,6 +5574,9 @@ static int msm_dai_q6_dev_probe(struct platform_device *pdev) case SLIMBUS_8_TX: strlcpy(stream_name, "Slimbus8 Capture", sizeof(stream_name)); goto register_slim_capture; case SLIMBUS_9_TX: strlcpy(stream_name, "Slimbus9 Capture", sizeof(stream_name)); goto register_slim_capture; register_slim_capture: rc = -ENODEV; len = strnlen(stream_name, 80); Loading
asoc/msm-pcm-routing-v2.c +155 −1 Original line number Diff line number Diff line Loading @@ -639,6 +639,8 @@ struct msm_pcm_routing_bdai_data msm_bedais[MSM_BACKEND_DAI_MAX] = { LPASS_BE_SEC_SPDIF_RX}, { AFE_PORT_ID_SECONDARY_SPDIF_TX, 0, {0}, {0}, 0, 0, 0, 0, LPASS_BE_SEC_SPDIF_TX}, { SLIMBUS_9_RX, 0, {0}, {0}, 0, 0, 0, 0, LPASS_BE_SLIMBUS_9_RX}, { SLIMBUS_9_TX, 0, {0}, {0}, 0, 0, 0, 0, LPASS_BE_SLIMBUS_9_TX}, }; /* Track ASM playback & capture sessions of DAI Loading Loading @@ -6562,6 +6564,76 @@ static const struct snd_kcontrol_new slimbus_7_rx_mixer_controls[] = { msm_routing_put_audio_mixer), }; static const struct snd_kcontrol_new slimbus_9_rx_mixer_controls[] = { SOC_DOUBLE_EXT("MultiMedia1", SND_SOC_NOPM, MSM_BACKEND_DAI_SLIMBUS_9_RX, MSM_FRONTEND_DAI_MULTIMEDIA1, 1, 0, msm_routing_get_audio_mixer, msm_routing_put_audio_mixer), SOC_DOUBLE_EXT("MultiMedia2", SND_SOC_NOPM, MSM_BACKEND_DAI_SLIMBUS_9_RX, MSM_FRONTEND_DAI_MULTIMEDIA2, 1, 0, msm_routing_get_audio_mixer, msm_routing_put_audio_mixer), SOC_DOUBLE_EXT("MultiMedia3", SND_SOC_NOPM, MSM_BACKEND_DAI_SLIMBUS_9_RX, MSM_FRONTEND_DAI_MULTIMEDIA3, 1, 0, msm_routing_get_audio_mixer, msm_routing_put_audio_mixer), SOC_DOUBLE_EXT("MultiMedia4", SND_SOC_NOPM, MSM_BACKEND_DAI_SLIMBUS_9_RX, MSM_FRONTEND_DAI_MULTIMEDIA4, 1, 0, msm_routing_get_audio_mixer, msm_routing_put_audio_mixer), SOC_DOUBLE_EXT("MultiMedia5", SND_SOC_NOPM, MSM_BACKEND_DAI_SLIMBUS_9_RX, MSM_FRONTEND_DAI_MULTIMEDIA5, 1, 0, msm_routing_get_audio_mixer, msm_routing_put_audio_mixer), SOC_DOUBLE_EXT("MultiMedia6", SND_SOC_NOPM, MSM_BACKEND_DAI_SLIMBUS_9_RX, MSM_FRONTEND_DAI_MULTIMEDIA6, 1, 0, msm_routing_get_audio_mixer, msm_routing_put_audio_mixer), SOC_DOUBLE_EXT("MultiMedia7", SND_SOC_NOPM, MSM_BACKEND_DAI_SLIMBUS_9_RX, MSM_FRONTEND_DAI_MULTIMEDIA7, 1, 0, msm_routing_get_audio_mixer, msm_routing_put_audio_mixer), SOC_DOUBLE_EXT("MultiMedia8", SND_SOC_NOPM, MSM_BACKEND_DAI_SLIMBUS_9_RX, MSM_FRONTEND_DAI_MULTIMEDIA8, 1, 0, msm_routing_get_audio_mixer, msm_routing_put_audio_mixer), SOC_DOUBLE_EXT("MultiMedia9", SND_SOC_NOPM, MSM_BACKEND_DAI_SLIMBUS_9_RX, MSM_FRONTEND_DAI_MULTIMEDIA9, 1, 0, msm_routing_get_audio_mixer, msm_routing_put_audio_mixer), SOC_DOUBLE_EXT("MultiMedia10", SND_SOC_NOPM, MSM_BACKEND_DAI_SLIMBUS_9_RX, MSM_FRONTEND_DAI_MULTIMEDIA10, 1, 0, msm_routing_get_audio_mixer, msm_routing_put_audio_mixer), SOC_DOUBLE_EXT("MultiMedia11", SND_SOC_NOPM, MSM_BACKEND_DAI_SLIMBUS_9_RX, MSM_FRONTEND_DAI_MULTIMEDIA11, 1, 0, msm_routing_get_audio_mixer, msm_routing_put_audio_mixer), SOC_DOUBLE_EXT("MultiMedia12", SND_SOC_NOPM, MSM_BACKEND_DAI_SLIMBUS_9_RX, MSM_FRONTEND_DAI_MULTIMEDIA12, 1, 0, msm_routing_get_audio_mixer, msm_routing_put_audio_mixer), SOC_DOUBLE_EXT("MultiMedia13", SND_SOC_NOPM, MSM_BACKEND_DAI_SLIMBUS_9_RX, MSM_FRONTEND_DAI_MULTIMEDIA13, 1, 0, msm_routing_get_audio_mixer, msm_routing_put_audio_mixer), SOC_DOUBLE_EXT("MultiMedia14", SND_SOC_NOPM, MSM_BACKEND_DAI_SLIMBUS_9_RX, MSM_FRONTEND_DAI_MULTIMEDIA14, 1, 0, msm_routing_get_audio_mixer, msm_routing_put_audio_mixer), SOC_DOUBLE_EXT("MultiMedia15", SND_SOC_NOPM, MSM_BACKEND_DAI_SLIMBUS_9_RX, MSM_FRONTEND_DAI_MULTIMEDIA15, 1, 0, msm_routing_get_audio_mixer, msm_routing_put_audio_mixer), SOC_DOUBLE_EXT("MultiMedia16", SND_SOC_NOPM, MSM_BACKEND_DAI_SLIMBUS_9_RX, MSM_FRONTEND_DAI_MULTIMEDIA16, 1, 0, msm_routing_get_audio_mixer, msm_routing_put_audio_mixer), SOC_DOUBLE_EXT("MultiMedia26", SND_SOC_NOPM, MSM_BACKEND_DAI_SLIMBUS_9_RX, MSM_FRONTEND_DAI_MULTIMEDIA26, 1, 0, msm_routing_get_audio_mixer, msm_routing_put_audio_mixer), }; static const struct snd_kcontrol_new usb_audio_rx_mixer_controls[] = { SOC_DOUBLE_EXT("MultiMedia1", SND_SOC_NOPM, MSM_BACKEND_DAI_USB_RX, Loading Loading @@ -9470,6 +9542,10 @@ static const struct snd_kcontrol_new mmul1_mixer_controls[] = { MSM_BACKEND_DAI_SEC_SPDIF_TX, MSM_FRONTEND_DAI_MULTIMEDIA1, 1, 0, msm_routing_get_audio_mixer, msm_routing_put_audio_mixer), SOC_DOUBLE_EXT("SLIM_9_TX", SND_SOC_NOPM, MSM_BACKEND_DAI_SLIMBUS_9_TX, MSM_FRONTEND_DAI_MULTIMEDIA1, 1, 0, msm_routing_get_audio_mixer, msm_routing_put_audio_mixer), }; static const struct snd_kcontrol_new mmul2_mixer_controls[] = { Loading Loading @@ -9661,6 +9737,10 @@ static const struct snd_kcontrol_new mmul2_mixer_controls[] = { MSM_BACKEND_DAI_SEC_SPDIF_TX, MSM_FRONTEND_DAI_MULTIMEDIA2, 1, 0, msm_routing_get_audio_mixer, msm_routing_put_audio_mixer), SOC_DOUBLE_EXT("SLIM_9_TX", SND_SOC_NOPM, MSM_BACKEND_DAI_SLIMBUS_9_TX, MSM_FRONTEND_DAI_MULTIMEDIA2, 1, 0, msm_routing_get_audio_mixer, msm_routing_put_audio_mixer), }; static const struct snd_kcontrol_new mmul3_mixer_controls[] = { Loading Loading @@ -10250,6 +10330,10 @@ static const struct snd_kcontrol_new mmul5_mixer_controls[] = { MSM_BACKEND_DAI_SEC_SPDIF_TX, MSM_FRONTEND_DAI_MULTIMEDIA5, 1, 0, msm_routing_get_audio_mixer, msm_routing_put_audio_mixer), SOC_DOUBLE_EXT("SLIM_9_TX", SND_SOC_NOPM, MSM_BACKEND_DAI_SLIMBUS_9_TX, MSM_FRONTEND_DAI_MULTIMEDIA5, 1, 0, msm_routing_get_audio_mixer, msm_routing_put_audio_mixer), }; static const struct snd_kcontrol_new mmul6_mixer_controls[] = { Loading Loading @@ -10636,6 +10720,10 @@ static const struct snd_kcontrol_new mmul8_mixer_controls[] = { MSM_BACKEND_DAI_SEC_SPDIF_TX, MSM_FRONTEND_DAI_MULTIMEDIA8, 1, 0, msm_routing_get_audio_mixer, msm_routing_put_audio_mixer), SOC_DOUBLE_EXT("SLIM_9_TX", SND_SOC_NOPM, MSM_BACKEND_DAI_SLIMBUS_9_TX, MSM_FRONTEND_DAI_MULTIMEDIA8, 1, 0, msm_routing_get_audio_mixer, msm_routing_put_audio_mixer), }; static const struct snd_kcontrol_new mmul16_mixer_controls[] = { Loading Loading @@ -10837,6 +10925,10 @@ static const struct snd_kcontrol_new mmul16_mixer_controls[] = { MSM_BACKEND_DAI_SEC_SPDIF_TX, MSM_FRONTEND_DAI_MULTIMEDIA16, 1, 0, msm_routing_get_audio_mixer, msm_routing_put_audio_mixer), SOC_DOUBLE_EXT("SLIM_9_TX", SND_SOC_NOPM, MSM_BACKEND_DAI_SLIMBUS_9_TX, MSM_FRONTEND_DAI_MULTIMEDIA16, 1, 0, msm_routing_get_audio_mixer, msm_routing_put_audio_mixer), }; static const struct snd_kcontrol_new mmul9_mixer_controls[] = { Loading Loading @@ -11137,6 +11229,10 @@ static const struct snd_kcontrol_new mmul10_mixer_controls[] = { MSM_BACKEND_DAI_SEC_SPDIF_TX, MSM_FRONTEND_DAI_MULTIMEDIA10, 1, 0, msm_routing_get_audio_mixer, msm_routing_put_audio_mixer), SOC_DOUBLE_EXT("SLIM_9_TX", SND_SOC_NOPM, MSM_BACKEND_DAI_SLIMBUS_9_TX, MSM_FRONTEND_DAI_MULTIMEDIA10, 1, 0, msm_routing_get_audio_mixer, msm_routing_put_audio_mixer), }; static const struct snd_kcontrol_new mmul17_mixer_controls[] = { SOC_DOUBLE_EXT("SLIM_0_TX", SND_SOC_NOPM, Loading Loading @@ -11784,6 +11880,10 @@ static const struct snd_kcontrol_new mmul27_mixer_controls[] = { MSM_BACKEND_DAI_SEC_SPDIF_TX, MSM_FRONTEND_DAI_MULTIMEDIA27, 1, 0, msm_routing_get_audio_mixer, msm_routing_put_audio_mixer), SOC_DOUBLE_EXT("SLIM_9_TX", SND_SOC_NOPM, MSM_BACKEND_DAI_SLIMBUS_9_TX, MSM_FRONTEND_DAI_MULTIMEDIA27, 1, 0, msm_routing_get_audio_mixer, msm_routing_put_audio_mixer), }; static const struct snd_kcontrol_new mmul28_mixer_controls[] = { Loading Loading @@ -13507,6 +13607,10 @@ static const struct snd_kcontrol_new int0_mi2s_rx_port_mixer_controls[] = { MSM_BACKEND_DAI_INT0_MI2S_RX, MSM_BACKEND_DAI_SLIMBUS_8_TX, 1, 0, msm_routing_get_port_mixer, msm_routing_put_port_mixer), SOC_DOUBLE_EXT("SLIM_9_TX", SND_SOC_NOPM, MSM_BACKEND_DAI_INT0_MI2S_RX, MSM_BACKEND_DAI_SLIMBUS_9_TX, 1, 0, msm_routing_get_port_mixer, msm_routing_put_port_mixer), }; static const struct snd_kcontrol_new int4_mi2s_rx_port_mixer_controls[] = { Loading Loading @@ -13550,6 +13654,10 @@ static const struct snd_kcontrol_new int4_mi2s_rx_port_mixer_controls[] = { MSM_BACKEND_DAI_INT4_MI2S_RX, MSM_BACKEND_DAI_SLIMBUS_8_TX, 1, 0, msm_routing_get_port_mixer, msm_routing_put_port_mixer), SOC_DOUBLE_EXT("SLIM_9_TX", SND_SOC_NOPM, MSM_BACKEND_DAI_INT4_MI2S_RX, MSM_BACKEND_DAI_SLIMBUS_9_TX, 1, 0, msm_routing_get_port_mixer, msm_routing_put_port_mixer), }; static const struct snd_kcontrol_new wsa_cdc_dma_rx_0_port_mixer_controls[] = { Loading @@ -13576,6 +13684,10 @@ static const struct snd_kcontrol_new rx_cdc_dma_rx_0_port_mixer_controls[] = { MSM_BACKEND_DAI_RX_CDC_DMA_RX_0, MSM_BACKEND_DAI_SLIMBUS_8_TX, 1, 0, msm_routing_get_port_mixer, msm_routing_put_port_mixer), SOC_DOUBLE_EXT("SLIM_9_TX", SND_SOC_NOPM, MSM_BACKEND_DAI_INT4_MI2S_RX, MSM_BACKEND_DAI_SLIMBUS_9_TX, 1, 0, msm_routing_get_port_mixer, msm_routing_put_port_mixer), }; static const struct snd_kcontrol_new sbus_0_rx_port_mixer_controls[] = { Loading Loading @@ -13667,6 +13779,10 @@ static const struct snd_kcontrol_new sbus_0_rx_port_mixer_controls[] = { MSM_BACKEND_DAI_SLIMBUS_0_RX, MSM_BACKEND_DAI_QUINARY_MI2S_RX, 1, 0, msm_routing_get_port_mixer, msm_routing_put_port_mixer), SOC_DOUBLE_EXT("SLIM_9_TX", SND_SOC_NOPM, MSM_BACKEND_DAI_SLIMBUS_0_RX, MSM_BACKEND_DAI_SLIMBUS_9_TX, 1, 0, msm_routing_get_port_mixer, msm_routing_put_port_mixer), }; static const struct snd_kcontrol_new aux_pcm_rx_port_mixer_controls[] = { Loading Loading @@ -13859,6 +13975,10 @@ static const struct snd_kcontrol_new sbus_6_rx_port_mixer_controls[] = { MSM_BACKEND_DAI_SLIMBUS_6_RX, MSM_BACKEND_DAI_INT_BT_SCO_TX, 1, 0, msm_routing_get_port_mixer, msm_routing_put_port_mixer), SOC_DOUBLE_EXT("SLIM_9_TX", SND_SOC_NOPM, MSM_BACKEND_DAI_SLIMBUS_6_RX, MSM_BACKEND_DAI_SLIMBUS_9_TX, 1, 0, msm_routing_get_port_mixer, msm_routing_put_port_mixer), }; static const struct snd_kcontrol_new bt_sco_rx_port_mixer_controls[] = { Loading Loading @@ -18697,6 +18817,8 @@ static const struct snd_soc_dapm_widget msm_qdsp6_widgets[] = { SND_SOC_DAPM_AIF_OUT("SLIMBUS_8_RX", "Slimbus8 Playback", 0, 0, 0, 0), SND_SOC_DAPM_AIF_IN("SLIMBUS_8_TX", "Slimbus8 Capture", 0, 0, 0, 0), SND_SOC_DAPM_AIF_OUT("SLIMBUS_9_RX", "Slimbus9 Playback", 0, 0, 0, 0), SND_SOC_DAPM_AIF_IN("SLIMBUS_9_TX", "Slimbus9 Capture", 0, 0, 0, 0), SND_SOC_DAPM_AIF_OUT("USB_AUDIO_RX", "USB Audio Playback", 0, 0, 0, 0), SND_SOC_DAPM_AIF_IN("USB_AUDIO_TX", "USB Audio Capture", 0, 0, 0, 0), Loading Loading @@ -18757,6 +18879,8 @@ static const struct snd_soc_dapm_widget msm_qdsp6_widgets[] = { slimbus_5_rx_mixer_controls, ARRAY_SIZE(slimbus_5_rx_mixer_controls)), SND_SOC_DAPM_MIXER("SLIMBUS_7_RX Audio Mixer", SND_SOC_NOPM, 0, 0, slimbus_7_rx_mixer_controls, ARRAY_SIZE(slimbus_7_rx_mixer_controls)), SND_SOC_DAPM_MIXER("SLIMBUS_9_RX Audio Mixer", SND_SOC_NOPM, 0, 0, slimbus_9_rx_mixer_controls, ARRAY_SIZE(slimbus_9_rx_mixer_controls)), SND_SOC_DAPM_MIXER("HDMI Mixer", SND_SOC_NOPM, 0, 0, hdmi_mixer_controls, ARRAY_SIZE(hdmi_mixer_controls)), SND_SOC_DAPM_MIXER("DISPLAY_PORT Mixer", SND_SOC_NOPM, 0, 0, Loading Loading @@ -19751,6 +19875,25 @@ static const struct snd_soc_dapm_route intercon[] = { {"SLIMBUS_7_RX Audio Mixer", "MultiMedia26", "MM_DL26"}, {"SLIMBUS_7_RX", NULL, "SLIMBUS_7_RX Audio Mixer"}, {"SLIMBUS_9_RX Audio Mixer", "MultiMedia1", "MM_DL1"}, {"SLIMBUS_9_RX Audio Mixer", "MultiMedia2", "MM_DL2"}, {"SLIMBUS_9_RX Audio Mixer", "MultiMedia3", "MM_DL3"}, {"SLIMBUS_9_RX Audio Mixer", "MultiMedia4", "MM_DL4"}, {"SLIMBUS_9_RX Audio Mixer", "MultiMedia5", "MM_DL5"}, {"SLIMBUS_9_RX Audio Mixer", "MultiMedia6", "MM_DL6"}, {"SLIMBUS_9_RX Audio Mixer", "MultiMedia7", "MM_DL7"}, {"SLIMBUS_9_RX Audio Mixer", "MultiMedia8", "MM_DL8"}, {"SLIMBUS_9_RX Audio Mixer", "MultiMedia9", "MM_DL9"}, {"SLIMBUS_9_RX Audio Mixer", "MultiMedia10", "MM_DL10"}, {"SLIMBUS_9_RX Audio Mixer", "MultiMedia11", "MM_DL11"}, {"SLIMBUS_9_RX Audio Mixer", "MultiMedia12", "MM_DL12"}, {"SLIMBUS_9_RX Audio Mixer", "MultiMedia13", "MM_DL13"}, {"SLIMBUS_9_RX Audio Mixer", "MultiMedia14", "MM_DL14"}, {"SLIMBUS_9_RX Audio Mixer", "MultiMedia15", "MM_DL15"}, {"SLIMBUS_9_RX Audio Mixer", "MultiMedia16", "MM_DL16"}, {"SLIMBUS_9_RX Audio Mixer", "MultiMedia26", "MM_DL26"}, {"SLIMBUS_9_RX", NULL, "SLIMBUS_9_RX Audio Mixer"}, {"USB_AUDIO_RX Audio Mixer", "MultiMedia1", "MM_DL1"}, {"USB_AUDIO_RX Audio Mixer", "MultiMedia2", "MM_DL2"}, {"USB_AUDIO_RX Audio Mixer", "MultiMedia3", "MM_DL3"}, Loading Loading @@ -19780,8 +19923,10 @@ static const struct snd_soc_dapm_route intercon[] = { {"MultiMedia1 Mixer", "SLIM_6_TX", "SLIMBUS_6_TX"}, {"MultiMedia1 Mixer", "SLIM_7_TX", "SLIMBUS_7_TX"}, {"MultiMedia1 Mixer", "SLIM_8_TX", "SLIMBUS_8_TX"}, {"MultiMedia1 Mixer", "SLIM_9_TX", "SLIMBUS_9_TX"}, {"MultiMedia8 Mixer", "SLIM_6_TX", "SLIMBUS_6_TX"}, {"MultiMedia8 Mixer", "SLIM_7_TX", "SLIMBUS_7_TX"}, {"MultiMedia8 Mixer", "SLIM_9_TX", "SLIMBUS_9_TX"}, {"MultiMedia4 Mixer", "SLIM_0_TX", "SLIMBUS_0_TX"}, {"MultiMedia17 Mixer", "SLIM_0_TX", "SLIMBUS_0_TX"}, {"MultiMedia18 Mixer", "SLIM_0_TX", "SLIMBUS_0_TX"}, Loading Loading @@ -19815,7 +19960,9 @@ static const struct snd_soc_dapm_route intercon[] = { {"MultiMedia16 Mixer", "SLIM_0_TX", "SLIMBUS_0_TX"}, {"MultiMedia5 Mixer", "SLIM_7_TX", "SLIMBUS_7_TX"}, {"MultiMedia5 Mixer", "SLIM_8_TX", "SLIMBUS_8_TX"}, {"MultiMedia5 Mixer", "SLIM_9_TX", "SLIMBUS_9_TX"}, {"MultiMedia10 Mixer", "SLIM_7_TX", "SLIMBUS_7_TX"}, {"MultiMedia10 Mixer", "SLIM_9_TX", "SLIMBUS_9_TX"}, {"MultiMedia18 Mixer", "PRI_SPDIF_TX", "PRI_SPDIF_TX"}, {"MultiMedia18 Mixer", "SEC_SPDIF_TX", "SEC_SPDIF_TX"}, Loading Loading @@ -20895,6 +21042,7 @@ static const struct snd_soc_dapm_route intercon[] = { {"MultiMedia27 Mixer", "SLIM_0_TX", "SLIMBUS_0_TX"}, {"MultiMedia27 Mixer", "SLIM_6_TX", "SLIMBUS_6_TX"}, {"MultiMedia27 Mixer", "SLIM_7_TX", "SLIMBUS_7_TX"}, {"MultiMedia27 Mixer", "SLIM_9_TX", "SLIMBUS_9_TX"}, {"MultiMedia27 Mixer", "PRI_MI2S_TX", "PRI_MI2S_TX"}, {"MultiMedia27 Mixer", "SEC_MI2S_TX", "SEC_MI2S_TX"}, {"MultiMedia27 Mixer", "TERT_MI2S_TX", "TERT_MI2S_TX"}, Loading Loading @@ -22246,6 +22394,7 @@ static const struct snd_soc_dapm_route intercon[] = { {"INT0_MI2S_RX Port Mixer", "SLIM_7_TX", "SLIMBUS_7_TX"}, {"INT0_MI2S_RX Port Mixer", "SLIM_8_TX", "SLIMBUS_8_TX"}, {"INT0_MI2S_RX Port Mixer", "INTERNAL_FM_TX", "INT_FM_TX"}, {"INT0_MI2S_RX Port Mixer", "SLIM_9_TX", "SLIMBUS_9_TX"}, {"INT0_MI2S_RX Port Mixer", "INTERNAL_BT_SCO_TX", "INT_BT_SCO_TX"}, {"INT0_MI2S_RX", NULL, "INT0_MI2S_RX Port Mixer"}, Loading @@ -22257,6 +22406,7 @@ static const struct snd_soc_dapm_route intercon[] = { {"INT4_MI2S_RX Port Mixer", "INT3_MI2S_TX", "INT3_MI2S_TX"}, {"INT4_MI2S_RX Port Mixer", "SLIM_7_TX", "SLIMBUS_7_TX"}, {"INT4_MI2S_RX Port Mixer", "SLIM_8_TX", "SLIMBUS_8_TX"}, {"INT4_MI2S_RX Port Mixer", "SLIM_9_TX", "SLIMBUS_9_TX"}, {"INT4_MI2S_RX Port Mixer", "INTERNAL_FM_TX", "INT_FM_TX"}, {"INT4_MI2S_RX Port Mixer", "INTERNAL_BT_SCO_TX", "INT_BT_SCO_TX"}, {"INT4_MI2S_RX", NULL, "INT4_MI2S_RX Port Mixer"}, Loading @@ -22273,6 +22423,7 @@ static const struct snd_soc_dapm_route intercon[] = { {"SLIMBUS_0_RX Port Mixer", "SLIM_1_TX", "SLIMBUS_1_TX"}, {"SLIMBUS_0_RX Port Mixer", "SLIM_7_TX", "SLIMBUS_7_TX"}, {"SLIMBUS_0_RX Port Mixer", "SLIM_8_TX", "SLIMBUS_8_TX"}, {"SLIMBUS_0_RX Port Mixer", "SLIM_9_TX", "SLIMBUS_9_TX"}, {"SLIMBUS_0_RX Port Mixer", "AUX_PCM_UL_TX", "AUX_PCM_TX"}, {"SLIMBUS_0_RX Port Mixer", "SEC_AUX_PCM_UL_TX", "SEC_AUX_PCM_TX"}, {"SLIMBUS_0_RX Port Mixer", "TERT_AUXPCM_UL_TX", "TERT_AUX_PCM_TX"}, Loading Loading @@ -22417,6 +22568,7 @@ static const struct snd_soc_dapm_route intercon[] = { {"SLIMBUS_6_RX Port Mixer", "SLIM_1_TX", "SLIMBUS_1_TX"}, {"SLIMBUS_6_RX Port Mixer", "SLIM_7_TX", "SLIMBUS_7_TX"}, {"SLIMBUS_6_RX Port Mixer", "SLIM_8_TX", "SLIMBUS_8_TX"}, {"SLIMBUS_6_RX Port Mixer", "SLIM_9_TX", "SLIMBUS_9_TX"}, {"SLIMBUS_6_RX Port Mixer", "AUX_PCM_UL_TX", "AUX_PCM_TX"}, {"SLIMBUS_6_RX Port Mixer", "SEC_AUX_PCM_UL_TX", "SEC_AUX_PCM_TX"}, {"SLIMBUS_6_RX Port Mixer", "MI2S_TX", "MI2S_TX"}, Loading Loading @@ -22507,6 +22659,7 @@ static const struct snd_soc_dapm_route intercon[] = { {"BE_OUT", NULL, "SLIMBUS_6_RX"}, {"BE_OUT", NULL, "SLIMBUS_7_RX"}, {"BE_OUT", NULL, "SLIMBUS_8_RX"}, {"BE_OUT", NULL, "SLIMBUS_9_RX"}, {"BE_OUT", NULL, "USB_AUDIO_RX"}, {"BE_OUT", NULL, "HDMI"}, {"BE_OUT", NULL, "DISPLAY_PORT"}, Loading Loading @@ -22594,6 +22747,7 @@ static const struct snd_soc_dapm_route intercon[] = { {"SLIMBUS_6_TX", NULL, "BE_IN" }, {"SLIMBUS_7_TX", NULL, "BE_IN" }, {"SLIMBUS_8_TX", NULL, "BE_IN" }, {"SLIMBUS_9_TX", NULL, "BE_IN" }, {"USB_AUDIO_TX", NULL, "BE_IN" }, {"INT_BT_SCO_TX", NULL, "BE_IN"}, {"INT_FM_TX", NULL, "BE_IN"},
asoc/msm-pcm-routing-v2.h +4 −0 Original line number Diff line number Diff line Loading @@ -170,6 +170,8 @@ #define LPASS_BE_SLIMBUS_7_TX "SLIMBUS_7_TX" #define LPASS_BE_SLIMBUS_8_RX "SLIMBUS_8_RX" #define LPASS_BE_SLIMBUS_8_TX "SLIMBUS_8_TX" #define LPASS_BE_SLIMBUS_9_RX "SLIMBUS_9_RX" #define LPASS_BE_SLIMBUS_9_TX "SLIMBUS_9_TX" #define LPASS_BE_USB_AUDIO_RX "USB_AUDIO_RX" #define LPASS_BE_USB_AUDIO_TX "USB_AUDIO_TX" Loading Loading @@ -453,6 +455,8 @@ enum { MSM_BACKEND_DAI_PRI_SPDIF_TX, MSM_BACKEND_DAI_SEC_SPDIF_RX, MSM_BACKEND_DAI_SEC_SPDIF_TX, MSM_BACKEND_DAI_SLIMBUS_9_RX, MSM_BACKEND_DAI_SLIMBUS_9_TX, MSM_BACKEND_DAI_MAX, }; Loading
dsp/q6afe.c +10 −0 Original line number Diff line number Diff line Loading @@ -839,6 +839,8 @@ int afe_sizeof_cfg_cmd(u16 port_id) case SLIMBUS_7_TX: case SLIMBUS_8_RX: case SLIMBUS_8_TX: case SLIMBUS_9_RX: case SLIMBUS_9_TX: ret_size = SIZEOF_CFG_CMD(afe_param_id_slimbus_cfg); break; case VOICE_PLAYBACK_TX: Loading Loading @@ -4041,6 +4043,8 @@ static int __afe_port_start(u16 port_id, union afe_port_config *afe_config, case SLIMBUS_7_TX: case SLIMBUS_8_RX: case SLIMBUS_8_TX: case SLIMBUS_9_RX: case SLIMBUS_9_TX: cfg_type = AFE_PARAM_ID_SLIMBUS_CONFIG; break; case AFE_PORT_ID_USB_RX: Loading Loading @@ -4288,6 +4292,8 @@ int afe_get_port_index(u16 port_id) case SLIMBUS_7_TX: return IDX_SLIMBUS_7_TX; case SLIMBUS_8_RX: return IDX_SLIMBUS_8_RX; case SLIMBUS_8_TX: return IDX_SLIMBUS_8_TX; case SLIMBUS_9_RX: return IDX_SLIMBUS_9_RX; case SLIMBUS_9_TX: return IDX_SLIMBUS_9_TX; case AFE_PORT_ID_USB_RX: return IDX_AFE_PORT_ID_USB_RX; case AFE_PORT_ID_USB_TX: return IDX_AFE_PORT_ID_USB_TX; case AFE_PORT_ID_PRIMARY_MI2S_RX: Loading Loading @@ -4685,6 +4691,8 @@ int afe_open(u16 port_id, case SLIMBUS_7_TX: case SLIMBUS_8_RX: case SLIMBUS_8_TX: case SLIMBUS_9_RX: case SLIMBUS_9_TX: cfg_type = AFE_PARAM_ID_SLIMBUS_CONFIG; break; case AFE_PORT_ID_USB_RX: Loading Loading @@ -6557,6 +6565,8 @@ int afe_validate_port(u16 port_id) case SLIMBUS_7_TX: case SLIMBUS_8_RX: case SLIMBUS_8_TX: case SLIMBUS_9_RX: case SLIMBUS_9_TX: case AFE_PORT_ID_USB_RX: case AFE_PORT_ID_USB_TX: case AFE_PORT_ID_PRIMARY_MI2S_RX: Loading
dsp/q6audio-v2.c +6 −0 Original line number Diff line number Diff line Loading @@ -79,6 +79,8 @@ int q6audio_get_port_index(u16 port_id) case SLIMBUS_7_TX: return IDX_SLIMBUS_7_TX; case SLIMBUS_8_RX: return IDX_SLIMBUS_8_RX; case SLIMBUS_8_TX: return IDX_SLIMBUS_8_TX; case SLIMBUS_9_RX: return IDX_SLIMBUS_9_RX; case SLIMBUS_9_TX: return IDX_SLIMBUS_9_TX; case INT_BT_SCO_RX: return IDX_INT_BT_SCO_RX; case INT_BT_SCO_TX: return IDX_INT_BT_SCO_TX; case INT_BT_A2DP_RX: return IDX_INT_BT_A2DP_RX; Loading Loading @@ -415,6 +417,8 @@ int q6audio_get_port_id(u16 port_id) case SLIMBUS_7_TX: return AFE_PORT_ID_SLIMBUS_MULTI_CHAN_7_TX; case SLIMBUS_8_RX: return AFE_PORT_ID_SLIMBUS_MULTI_CHAN_8_RX; case SLIMBUS_8_TX: return AFE_PORT_ID_SLIMBUS_MULTI_CHAN_8_TX; case SLIMBUS_9_RX: return AFE_PORT_ID_SLIMBUS_MULTI_CHAN_9_RX; case SLIMBUS_9_TX: return AFE_PORT_ID_SLIMBUS_MULTI_CHAN_9_TX; case INT_BT_SCO_RX: return AFE_PORT_ID_INTERNAL_BT_SCO_RX; case INT_BT_SCO_TX: return AFE_PORT_ID_INTERNAL_BT_SCO_TX; case INT_BT_A2DP_RX: return AFE_PORT_ID_INTERNAL_BT_A2DP_RX; Loading Loading @@ -925,6 +929,8 @@ int q6audio_validate_port(u16 port_id) case SLIMBUS_7_TX: case SLIMBUS_8_RX: case SLIMBUS_8_TX: case SLIMBUS_9_RX: case SLIMBUS_9_TX: case INT_BT_SCO_RX: case INT_BT_SCO_TX: case INT_BT_A2DP_RX: Loading