Browse Source

ASoC: codecs: Fix slim_tx port configuration for wcd9335

Add check for valid dai_id in slim_tx_mixer_put().

Change-Id: Ic231c81c2cba02ad25fc07783169601dedd352c0
Signed-off-by: Vaishnavi Kommaraju <[email protected]>
Vaishnavi Kommaraju 6 years ago
parent
commit
3b0d43d89e
1 changed files with 4 additions and 4 deletions
  1. 4 4
      asoc/codecs/wcd9335.c

+ 4 - 4
asoc/codecs/wcd9335.c

@@ -2372,10 +2372,10 @@ static int slim_tx_mixer_put(struct snd_kcontrol *kcontrol,
 
 	mutex_lock(&tasha_p->codec_mutex);
 
-	if (tasha_p->intf_type != WCD9XXX_INTERFACE_TYPE_SLIMBUS) {
-		if (dai_id != AIF1_CAP) {
-			dev_err(codec->dev, "%s: invalid AIF for I2C mode\n",
-				__func__);
+	if (tasha_p->intf_type == WCD9XXX_INTERFACE_TYPE_SLIMBUS) {
+		if (dai_id >= ARRAY_SIZE(vport_slim_check_table)) {
+			dev_err(codec->dev, "%s: dai_id: %d, out of bounds\n",
+				__func__, dai_id);
 			mutex_unlock(&tasha_p->codec_mutex);
 			return -EINVAL;
 		}