summaryrefslogtreecommitdiffstats
path: root/sound/soc/soc-pcm.c
diff options
context:
space:
mode:
authorKuninori Morimoto <kuninori.morimoto.gx@renesas.com>2017-09-24 21:38:54 -0400
committerMark Brown <broonie@kernel.org>2017-09-25 12:30:50 -0400
commit9900a4226c785dbb32c08af5ae8fbbf1fc4c31d0 (patch)
tree8d809c90ce811ebb786c2a655b5489eb98bdbb72 /sound/soc/soc-pcm.c
parent464719255e095b0cc05a30b124f2cdc67a930d7f (diff)
ASoC: remove unneeded dai->driver->ops check
On soc_add_dai(), it uses null_dai_ops if driver doesn't have its own ops. This means, dai->driver->ops never been NULL. dai->driver->ops check is not needed. This patch removes it. Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> Signed-off-by: Mark Brown <broonie@kernel.org>
Diffstat (limited to 'sound/soc/soc-pcm.c')
-rw-r--r--sound/soc/soc-pcm.c31
1 files changed, 15 insertions, 16 deletions
diff --git a/sound/soc/soc-pcm.c b/sound/soc/soc-pcm.c
index f11421f08065..983edd0e6e8f 100644
--- a/sound/soc/soc-pcm.c
+++ b/sound/soc/soc-pcm.c
@@ -474,7 +474,7 @@ static int soc_pcm_open(struct snd_pcm_substream *substream)
474 mutex_lock_nested(&rtd->pcm_mutex, rtd->pcm_subclass); 474 mutex_lock_nested(&rtd->pcm_mutex, rtd->pcm_subclass);
475 475
476 /* startup the audio subsystem */ 476 /* startup the audio subsystem */
477 if (cpu_dai->driver->ops && cpu_dai->driver->ops->startup) { 477 if (cpu_dai->driver->ops->startup) {
478 ret = cpu_dai->driver->ops->startup(substream, cpu_dai); 478 ret = cpu_dai->driver->ops->startup(substream, cpu_dai);
479 if (ret < 0) { 479 if (ret < 0) {
480 dev_err(cpu_dai->dev, "ASoC: can't open interface" 480 dev_err(cpu_dai->dev, "ASoC: can't open interface"
@@ -494,7 +494,7 @@ static int soc_pcm_open(struct snd_pcm_substream *substream)
494 494
495 for (i = 0; i < rtd->num_codecs; i++) { 495 for (i = 0; i < rtd->num_codecs; i++) {
496 codec_dai = rtd->codec_dais[i]; 496 codec_dai = rtd->codec_dais[i];
497 if (codec_dai->driver->ops && codec_dai->driver->ops->startup) { 497 if (codec_dai->driver->ops->startup) {
498 ret = codec_dai->driver->ops->startup(substream, 498 ret = codec_dai->driver->ops->startup(substream,
499 codec_dai); 499 codec_dai);
500 if (ret < 0) { 500 if (ret < 0) {
@@ -771,7 +771,7 @@ static int soc_pcm_prepare(struct snd_pcm_substream *substream)
771 771
772 for (i = 0; i < rtd->num_codecs; i++) { 772 for (i = 0; i < rtd->num_codecs; i++) {
773 codec_dai = rtd->codec_dais[i]; 773 codec_dai = rtd->codec_dais[i];
774 if (codec_dai->driver->ops && codec_dai->driver->ops->prepare) { 774 if (codec_dai->driver->ops->prepare) {
775 ret = codec_dai->driver->ops->prepare(substream, 775 ret = codec_dai->driver->ops->prepare(substream,
776 codec_dai); 776 codec_dai);
777 if (ret < 0) { 777 if (ret < 0) {
@@ -783,7 +783,7 @@ static int soc_pcm_prepare(struct snd_pcm_substream *substream)
783 } 783 }
784 } 784 }
785 785
786 if (cpu_dai->driver->ops && cpu_dai->driver->ops->prepare) { 786 if (cpu_dai->driver->ops->prepare) {
787 ret = cpu_dai->driver->ops->prepare(substream, cpu_dai); 787 ret = cpu_dai->driver->ops->prepare(substream, cpu_dai);
788 if (ret < 0) { 788 if (ret < 0) {
789 dev_err(cpu_dai->dev, 789 dev_err(cpu_dai->dev,
@@ -829,7 +829,7 @@ int soc_dai_hw_params(struct snd_pcm_substream *substream,
829{ 829{
830 int ret; 830 int ret;
831 831
832 if (dai->driver->ops && dai->driver->ops->hw_params) { 832 if (dai->driver->ops->hw_params) {
833 ret = dai->driver->ops->hw_params(substream, params, dai); 833 ret = dai->driver->ops->hw_params(substream, params, dai);
834 if (ret < 0) { 834 if (ret < 0) {
835 dev_err(dai->dev, "ASoC: can't set %s hw params: %d\n", 835 dev_err(dai->dev, "ASoC: can't set %s hw params: %d\n",
@@ -934,7 +934,7 @@ out:
934 return ret; 934 return ret;
935 935
936platform_err: 936platform_err:
937 if (cpu_dai->driver->ops && cpu_dai->driver->ops->hw_free) 937 if (cpu_dai->driver->ops->hw_free)
938 cpu_dai->driver->ops->hw_free(substream, cpu_dai); 938 cpu_dai->driver->ops->hw_free(substream, cpu_dai);
939 939
940interface_err: 940interface_err:
@@ -943,7 +943,7 @@ interface_err:
943codec_err: 943codec_err:
944 while (--i >= 0) { 944 while (--i >= 0) {
945 struct snd_soc_dai *codec_dai = rtd->codec_dais[i]; 945 struct snd_soc_dai *codec_dai = rtd->codec_dais[i];
946 if (codec_dai->driver->ops && codec_dai->driver->ops->hw_free) 946 if (codec_dai->driver->ops->hw_free)
947 codec_dai->driver->ops->hw_free(substream, codec_dai); 947 codec_dai->driver->ops->hw_free(substream, codec_dai);
948 codec_dai->rate = 0; 948 codec_dai->rate = 0;
949 } 949 }
@@ -1004,11 +1004,11 @@ static int soc_pcm_hw_free(struct snd_pcm_substream *substream)
1004 /* now free hw params for the DAIs */ 1004 /* now free hw params for the DAIs */
1005 for (i = 0; i < rtd->num_codecs; i++) { 1005 for (i = 0; i < rtd->num_codecs; i++) {
1006 codec_dai = rtd->codec_dais[i]; 1006 codec_dai = rtd->codec_dais[i];
1007 if (codec_dai->driver->ops && codec_dai->driver->ops->hw_free) 1007 if (codec_dai->driver->ops->hw_free)
1008 codec_dai->driver->ops->hw_free(substream, codec_dai); 1008 codec_dai->driver->ops->hw_free(substream, codec_dai);
1009 } 1009 }
1010 1010
1011 if (cpu_dai->driver->ops && cpu_dai->driver->ops->hw_free) 1011 if (cpu_dai->driver->ops->hw_free)
1012 cpu_dai->driver->ops->hw_free(substream, cpu_dai); 1012 cpu_dai->driver->ops->hw_free(substream, cpu_dai);
1013 1013
1014 mutex_unlock(&rtd->pcm_mutex); 1014 mutex_unlock(&rtd->pcm_mutex);
@@ -1025,7 +1025,7 @@ static int soc_pcm_trigger(struct snd_pcm_substream *substream, int cmd)
1025 1025
1026 for (i = 0; i < rtd->num_codecs; i++) { 1026 for (i = 0; i < rtd->num_codecs; i++) {
1027 codec_dai = rtd->codec_dais[i]; 1027 codec_dai = rtd->codec_dais[i];
1028 if (codec_dai->driver->ops && codec_dai->driver->ops->trigger) { 1028 if (codec_dai->driver->ops->trigger) {
1029 ret = codec_dai->driver->ops->trigger(substream, 1029 ret = codec_dai->driver->ops->trigger(substream,
1030 cmd, codec_dai); 1030 cmd, codec_dai);
1031 if (ret < 0) 1031 if (ret < 0)
@@ -1039,7 +1039,7 @@ static int soc_pcm_trigger(struct snd_pcm_substream *substream, int cmd)
1039 return ret; 1039 return ret;
1040 } 1040 }
1041 1041
1042 if (cpu_dai->driver->ops && cpu_dai->driver->ops->trigger) { 1042 if (cpu_dai->driver->ops->trigger) {
1043 ret = cpu_dai->driver->ops->trigger(substream, cmd, cpu_dai); 1043 ret = cpu_dai->driver->ops->trigger(substream, cmd, cpu_dai);
1044 if (ret < 0) 1044 if (ret < 0)
1045 return ret; 1045 return ret;
@@ -1064,8 +1064,7 @@ static int soc_pcm_bespoke_trigger(struct snd_pcm_substream *substream,
1064 1064
1065 for (i = 0; i < rtd->num_codecs; i++) { 1065 for (i = 0; i < rtd->num_codecs; i++) {
1066 codec_dai = rtd->codec_dais[i]; 1066 codec_dai = rtd->codec_dais[i];
1067 if (codec_dai->driver->ops && 1067 if (codec_dai->driver->ops->bespoke_trigger) {
1068 codec_dai->driver->ops->bespoke_trigger) {
1069 ret = codec_dai->driver->ops->bespoke_trigger(substream, 1068 ret = codec_dai->driver->ops->bespoke_trigger(substream,
1070 cmd, codec_dai); 1069 cmd, codec_dai);
1071 if (ret < 0) 1070 if (ret < 0)
@@ -1073,7 +1072,7 @@ static int soc_pcm_bespoke_trigger(struct snd_pcm_substream *substream,
1073 } 1072 }
1074 } 1073 }
1075 1074
1076 if (cpu_dai->driver->ops && cpu_dai->driver->ops->bespoke_trigger) { 1075 if (cpu_dai->driver->ops->bespoke_trigger) {
1077 ret = cpu_dai->driver->ops->bespoke_trigger(substream, cmd, cpu_dai); 1076 ret = cpu_dai->driver->ops->bespoke_trigger(substream, cmd, cpu_dai);
1078 if (ret < 0) 1077 if (ret < 0)
1079 return ret; 1078 return ret;
@@ -1100,12 +1099,12 @@ static snd_pcm_uframes_t soc_pcm_pointer(struct snd_pcm_substream *substream)
1100 if (platform->driver->ops && platform->driver->ops->pointer) 1099 if (platform->driver->ops && platform->driver->ops->pointer)
1101 offset = platform->driver->ops->pointer(substream); 1100 offset = platform->driver->ops->pointer(substream);
1102 1101
1103 if (cpu_dai->driver->ops && cpu_dai->driver->ops->delay) 1102 if (cpu_dai->driver->ops->delay)
1104 delay += cpu_dai->driver->ops->delay(substream, cpu_dai); 1103 delay += cpu_dai->driver->ops->delay(substream, cpu_dai);
1105 1104
1106 for (i = 0; i < rtd->num_codecs; i++) { 1105 for (i = 0; i < rtd->num_codecs; i++) {
1107 codec_dai = rtd->codec_dais[i]; 1106 codec_dai = rtd->codec_dais[i];
1108 if (codec_dai->driver->ops && codec_dai->driver->ops->delay) 1107 if (codec_dai->driver->ops->delay)
1109 codec_delay = max(codec_delay, 1108 codec_delay = max(codec_delay,
1110 codec_dai->driver->ops->delay(substream, 1109 codec_dai->driver->ops->delay(substream,
1111 codec_dai)); 1110 codec_dai));