clear-pkgs-linux-iot-lts2018/0368-ASoC-Intel-Board-Add-f...

54 lines
1.7 KiB
Diff

From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Mohit Sinha <mohit.sinha@intel.com>
Date: Mon, 4 Sep 2017 23:31:17 +0530
Subject: [PATCH] ASoC: Intel: Board: Add fixup for 32 bit masking
Fixup function does the masking of the format to set the
SSP2 to 32 bit
Change-Id: I1c5f20ce1244f9c3a47a47342d46184fdd718290
Signed-off-by: Mohit Sinha <mohit.sinha@intel.com>
Reviewed-on:
Reviewed-by: Gogineni, GiribabuX <giribabux.gogineni@intel.com>
Reviewed-by: Shaik, Kareem M <kareem.m.shaik@intel.com>
Reviewed-by: Koul, Vinod <vinod.koul@intel.com>
Tested-by: Sm, Bhadur A <bhadur.a.sm@intel.com>
---
sound/soc/intel/boards/bxt_tdf8532.c | 13 +++++++++++++
1 file changed, 13 insertions(+)
diff --git a/sound/soc/intel/boards/bxt_tdf8532.c b/sound/soc/intel/boards/bxt_tdf8532.c
index c7b7fe3f9ed7..27361e8f72d3 100644
--- a/sound/soc/intel/boards/bxt_tdf8532.c
+++ b/sound/soc/intel/boards/bxt_tdf8532.c
@@ -76,6 +76,18 @@ static const struct snd_soc_dapm_route broxton_tdf8532_map[] = {
{ "ssp3 Tx", NULL, "Modem_ssp3_out"},
};
+static int bxt_tdf8532_ssp2_fixup(struct snd_soc_pcm_runtime *rtd,
+ struct snd_pcm_hw_params *params)
+{
+ struct snd_mask *fmt = hw_param_mask(params, SNDRV_PCM_HW_PARAM_FORMAT);
+
+ /* set SSP to 32 bit */
+ snd_mask_none(fmt);
+ snd_mask_set(fmt, SNDRV_PCM_FORMAT_S32_LE);
+
+ return 0;
+}
+
/* broxton digital audio interface glue - connects codec <--> CPU */
static struct snd_soc_dai_link broxton_tdf8532_dais[] = {
/* Probe DAI links*/
@@ -158,6 +170,7 @@ static struct snd_soc_dai_link broxton_tdf8532_dais[] = {
.dpcm_capture = 1,
.dpcm_playback = 1,
.no_pcm = 1,
+ .be_hw_params_fixup = bxt_tdf8532_ssp2_fixup,
},
{
/* SSP3 - Modem */
--
https://clearlinux.org