|
@@ -2936,6 +2936,20 @@ static struct snd_soc_dai_driver msm_fe_dais[] = {
|
|
|
.rate_min = 8000,
|
|
|
.rate_max = 384000,
|
|
|
},
|
|
|
+ .capture = {
|
|
|
+ .stream_name = "MultiMedia31 Capture",
|
|
|
+ .aif_name = "MM_UL31",
|
|
|
+ .rates = (SNDRV_PCM_RATE_8000_384000 |
|
|
|
+ SNDRV_PCM_RATE_KNOT),
|
|
|
+ .formats = (SNDRV_PCM_FMTBIT_S16_LE |
|
|
|
+ SNDRV_PCM_FMTBIT_S24_LE |
|
|
|
+ SNDRV_PCM_FMTBIT_S24_3LE |
|
|
|
+ SNDRV_PCM_FMTBIT_S32_LE),
|
|
|
+ .channels_min = 1,
|
|
|
+ .channels_max = 32,
|
|
|
+ .rate_min = 8000,
|
|
|
+ .rate_max = 48000,
|
|
|
+ },
|
|
|
.ops = &msm_fe_Multimedia_dai_ops,
|
|
|
.name = "MultiMedia31",
|
|
|
.probe = fe_dai_probe,
|
|
@@ -2955,10 +2969,90 @@ static struct snd_soc_dai_driver msm_fe_dais[] = {
|
|
|
.rate_min = 8000,
|
|
|
.rate_max = 384000,
|
|
|
},
|
|
|
+ .capture = {
|
|
|
+ .stream_name = "MultiMedia32 Capture",
|
|
|
+ .aif_name = "MM_UL32",
|
|
|
+ .rates = (SNDRV_PCM_RATE_8000_384000 |
|
|
|
+ SNDRV_PCM_RATE_KNOT),
|
|
|
+ .formats = (SNDRV_PCM_FMTBIT_S16_LE |
|
|
|
+ SNDRV_PCM_FMTBIT_S24_LE |
|
|
|
+ SNDRV_PCM_FMTBIT_S24_3LE |
|
|
|
+ SNDRV_PCM_FMTBIT_S32_LE),
|
|
|
+ .channels_min = 1,
|
|
|
+ .channels_max = 32,
|
|
|
+ .rate_min = 8000,
|
|
|
+ .rate_max = 48000,
|
|
|
+ },
|
|
|
.ops = &msm_fe_Multimedia_dai_ops,
|
|
|
.name = "MultiMedia32",
|
|
|
.probe = fe_dai_probe,
|
|
|
},
|
|
|
+ {
|
|
|
+ .playback = {
|
|
|
+ .stream_name = "MultiMedia33 Playback",
|
|
|
+ .aif_name = "MM_DL33",
|
|
|
+ .rates = (SNDRV_PCM_RATE_8000_384000 |
|
|
|
+ SNDRV_PCM_RATE_KNOT),
|
|
|
+ .formats = (SNDRV_PCM_FMTBIT_S16_LE |
|
|
|
+ SNDRV_PCM_FMTBIT_S24_LE |
|
|
|
+ SNDRV_PCM_FMTBIT_S24_3LE |
|
|
|
+ SNDRV_PCM_FMTBIT_S32_LE),
|
|
|
+ .channels_min = 1,
|
|
|
+ .channels_max = 32,
|
|
|
+ .rate_min = 8000,
|
|
|
+ .rate_max = 384000,
|
|
|
+ },
|
|
|
+ .capture = {
|
|
|
+ .stream_name = "MultiMedia33 Capture",
|
|
|
+ .aif_name = "MM_UL33",
|
|
|
+ .rates = (SNDRV_PCM_RATE_8000_384000 |
|
|
|
+ SNDRV_PCM_RATE_KNOT),
|
|
|
+ .formats = (SNDRV_PCM_FMTBIT_S16_LE |
|
|
|
+ SNDRV_PCM_FMTBIT_S24_LE |
|
|
|
+ SNDRV_PCM_FMTBIT_S24_3LE |
|
|
|
+ SNDRV_PCM_FMTBIT_S32_LE),
|
|
|
+ .channels_min = 1,
|
|
|
+ .channels_max = 32,
|
|
|
+ .rate_min = 8000,
|
|
|
+ .rate_max = 48000,
|
|
|
+ },
|
|
|
+ .ops = &msm_fe_Multimedia_dai_ops,
|
|
|
+ .name = "MultiMedia33",
|
|
|
+ .probe = fe_dai_probe,
|
|
|
+ },
|
|
|
+ {
|
|
|
+ .playback = {
|
|
|
+ .stream_name = "MultiMedia34 Playback",
|
|
|
+ .aif_name = "MM_DL34",
|
|
|
+ .rates = (SNDRV_PCM_RATE_8000_384000 |
|
|
|
+ SNDRV_PCM_RATE_KNOT),
|
|
|
+ .formats = (SNDRV_PCM_FMTBIT_S16_LE |
|
|
|
+ SNDRV_PCM_FMTBIT_S24_LE |
|
|
|
+ SNDRV_PCM_FMTBIT_S24_3LE |
|
|
|
+ SNDRV_PCM_FMTBIT_S32_LE),
|
|
|
+ .channels_min = 1,
|
|
|
+ .channels_max = 32,
|
|
|
+ .rate_min = 8000,
|
|
|
+ .rate_max = 384000,
|
|
|
+ },
|
|
|
+ .capture = {
|
|
|
+ .stream_name = "MultiMedia34 Capture",
|
|
|
+ .aif_name = "MM_UL34",
|
|
|
+ .rates = (SNDRV_PCM_RATE_8000_384000 |
|
|
|
+ SNDRV_PCM_RATE_KNOT),
|
|
|
+ .formats = (SNDRV_PCM_FMTBIT_S16_LE |
|
|
|
+ SNDRV_PCM_FMTBIT_S24_LE |
|
|
|
+ SNDRV_PCM_FMTBIT_S24_3LE |
|
|
|
+ SNDRV_PCM_FMTBIT_S32_LE),
|
|
|
+ .channels_min = 1,
|
|
|
+ .channels_max = 32,
|
|
|
+ .rate_min = 8000,
|
|
|
+ .rate_max = 48000,
|
|
|
+ },
|
|
|
+ .ops = &msm_fe_Multimedia_dai_ops,
|
|
|
+ .name = "MultiMedia34",
|
|
|
+ .probe = fe_dai_probe,
|
|
|
+ },
|
|
|
};
|
|
|
|
|
|
static int msm_fe_dai_dev_probe(struct platform_device *pdev)
|