ASoC: codecs: tas*: merge .digital_mute() into .mute_stream()
authorKuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Thu, 9 Jul 2020 01:56:30 +0000 (10:56 +0900)
committerMark Brown <broonie@kernel.org>
Thu, 16 Jul 2020 22:06:12 +0000 (23:06 +0100)
snd_soc_dai_digital_mute() is internally using both
mute_stream() (1) or digital_mute() (2), but the difference between
these 2 are only handling direction.
We can merge digital_mute() into mute_stream

int snd_soc_dai_digital_mute(xxx, int direction)
{
...
else if (dai->driver->ops->mute_stream)
(1) return dai->driver->ops->mute_stream(xxx, direction);
else if (direction == SNDRV_PCM_STREAM_PLAYBACK &&
 dai->driver->ops->digital_mute)
(2) return dai->driver->ops->digital_mute(xxx);
...
}

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Reviewed-by: Peter Ujfalusi <peter.ujfalusi@ti.com>
Link: https://lore.kernel.org/r/873661xxhu.wl-kuninori.morimoto.gx@renesas.com
Signed-off-by: Mark Brown <broonie@kernel.org>
sound/soc/codecs/tas2552.c
sound/soc/codecs/tas2562.c
sound/soc/codecs/tas2770.c
sound/soc/codecs/tas571x.c
sound/soc/codecs/tas5720.c
sound/soc/codecs/tas6424.c

index d9d239d4256e739be1530582d1965d97a6159846..e23905e3f2407ffcd03f7e71f5c7f483c6436cf3 100644 (file)
@@ -465,7 +465,7 @@ static int tas2552_set_dai_tdm_slot(struct snd_soc_dai *dai,
        return 0;
 }
 
-static int tas2552_mute(struct snd_soc_dai *dai, int mute)
+static int tas2552_mute(struct snd_soc_dai *dai, int mute, int direction)
 {
        u8 cfg1_reg = 0;
        struct snd_soc_component *component = dai->component;
@@ -519,7 +519,8 @@ static const struct snd_soc_dai_ops tas2552_speaker_dai_ops = {
        .set_sysclk     = tas2552_set_dai_sysclk,
        .set_fmt        = tas2552_set_dai_fmt,
        .set_tdm_slot   = tas2552_set_dai_tdm_slot,
-       .digital_mute = tas2552_mute,
+       .mute_stream    = tas2552_mute,
+       .no_capture_mute = 1,
 };
 
 /* Formats supported by TAS2552 driver. */
index 5c28af370bd410de9101ee4cc06d2fd39ac0af95..e746280610401c20102fd96537da36917347d7f6 100644 (file)
@@ -394,7 +394,7 @@ static int tas2562_set_dai_fmt(struct snd_soc_dai *dai, unsigned int fmt)
        return 0;
 }
 
-static int tas2562_mute(struct snd_soc_dai *dai, int mute)
+static int tas2562_mute(struct snd_soc_dai *dai, int mute, int direction)
 {
        struct snd_soc_component *component = dai->component;
 
@@ -612,7 +612,8 @@ static const struct snd_soc_dai_ops tas2562_speaker_dai_ops = {
        .hw_params      = tas2562_hw_params,
        .set_fmt        = tas2562_set_dai_fmt,
        .set_tdm_slot   = tas2562_set_dai_tdm_slot,
-       .digital_mute   = tas2562_mute,
+       .mute_stream    = tas2562_mute,
+       .no_capture_mute = 1,
 };
 
 static struct snd_soc_dai_driver tas2562_dai[] = {
index 54c8135fe43c17ba068dd8efc017eabe1a296ee1..4538b2d0216f2fad57bb7fbd3daa65f0031b5e35 100644 (file)
@@ -189,7 +189,7 @@ static const struct snd_soc_dapm_route tas2770_audio_map[] = {
        {"VSENSE", "Switch", "VMON"},
 };
 
-static int tas2770_mute(struct snd_soc_dai *dai, int mute)
+static int tas2770_mute(struct snd_soc_dai *dai, int mute, int direction)
 {
        struct snd_soc_component *component = dai->component;
        int ret;
@@ -530,10 +530,11 @@ static int tas2770_set_dai_tdm_slot(struct snd_soc_dai *dai,
 }
 
 static struct snd_soc_dai_ops tas2770_dai_ops = {
-       .digital_mute = tas2770_mute,
+       .mute_stream = tas2770_mute,
        .hw_params  = tas2770_hw_params,
        .set_fmt    = tas2770_set_fmt,
        .set_tdm_slot = tas2770_set_dai_tdm_slot,
+       .no_capture_mute = 1,
 };
 
 #define TAS2770_FORMATS (SNDRV_PCM_FMTBIT_S16_LE | SNDRV_PCM_FMTBIT_S20_3LE |\
index 5b7f9fcf6cbf3b2781f0f38df83f37cfb7efb110..835a723ce5bc082eebe1c6c95f9edf8b32b6a6cd 100644 (file)
@@ -301,7 +301,7 @@ static int tas571x_hw_params(struct snd_pcm_substream *substream,
                                  TAS571X_SDI_FMT_MASK, val);
 }
 
-static int tas571x_mute(struct snd_soc_dai *dai, int mute)
+static int tas571x_mute(struct snd_soc_dai *dai, int mute, int direction)
 {
        struct snd_soc_component *component = dai->component;
        u8 sysctl2;
@@ -354,7 +354,8 @@ static int tas571x_set_bias_level(struct snd_soc_component *component,
 static const struct snd_soc_dai_ops tas571x_dai_ops = {
        .set_fmt        = tas571x_set_dai_fmt,
        .hw_params      = tas571x_hw_params,
-       .digital_mute   = tas571x_mute,
+       .mute_stream    = tas571x_mute,
+       .no_capture_mute = 1,
 };
 
 
index e159f839d928e4647997a2bfdcf786ef9efe0887..139ac5e683bff0f93621f90ce2bf547535bfaa44 100644 (file)
@@ -199,7 +199,7 @@ error_snd_soc_component_update_bits:
        return ret;
 }
 
-static int tas5720_mute(struct snd_soc_dai *dai, int mute)
+static int tas5720_mute(struct snd_soc_dai *dai, int mute, int direction)
 {
        struct snd_soc_component *component = dai->component;
        int ret;
@@ -604,7 +604,8 @@ static const struct snd_soc_dai_ops tas5720_speaker_dai_ops = {
        .hw_params      = tas5720_hw_params,
        .set_fmt        = tas5720_set_dai_fmt,
        .set_tdm_slot   = tas5720_set_dai_tdm_slot,
-       .digital_mute   = tas5720_mute,
+       .mute_stream    = tas5720_mute,
+       .no_capture_mute = 1,
 };
 
 /*
index aaba3929507993d9e84206cbcae28e176258b9bf..6198138e693ac9b955589896127eca8ef5f66dcf 100644 (file)
@@ -252,7 +252,7 @@ static int tas6424_set_dai_tdm_slot(struct snd_soc_dai *dai,
        return 0;
 }
 
-static int tas6424_mute(struct snd_soc_dai *dai, int mute)
+static int tas6424_mute(struct snd_soc_dai *dai, int mute, int direction)
 {
        struct snd_soc_component *component = dai->component;
        struct tas6424_data *tas6424 = snd_soc_component_get_drvdata(component);
@@ -382,7 +382,8 @@ static const struct snd_soc_dai_ops tas6424_speaker_dai_ops = {
        .hw_params      = tas6424_hw_params,
        .set_fmt        = tas6424_set_dai_fmt,
        .set_tdm_slot   = tas6424_set_dai_tdm_slot,
-       .digital_mute   = tas6424_mute,
+       .mute_stream    = tas6424_mute,
+       .no_capture_mute = 1,
 };
 
 static struct snd_soc_dai_driver tas6424_dai[] = {