From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751870AbdIFRfo (ORCPT ); Wed, 6 Sep 2017 13:35:44 -0400 Received: from mout.web.de ([212.227.15.3]:62477 "EHLO mout.web.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751345AbdIFRfm (ORCPT ); Wed, 6 Sep 2017 13:35:42 -0400 To: alsa-devel@alsa-project.org, Brian Austin , Jaroslav Kysela , Liam Girdwood , Mark Brown , Paul Handrigan , Takashi Iwai Cc: LKML , kernel-janitors@vger.kernel.org From: SF Markus Elfring Subject: [PATCH] ASoC: cs4270: Use common error handling code in two functions Message-ID: Date: Wed, 6 Sep 2017 19:34:50 +0200 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.3.0 MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Language: en-GB Content-Transfer-Encoding: 7bit X-Provags-ID: V03:K0:T98nLX4SiCQzUpHbjiCYWsiF9duDrN7chvkeYYvH8UrbcIKQY/T ON/kjm3BK2RJNBGOh73b+lA60EYRYEK4SvRINTv7I564GSeRquwoZQbOZ8+A3EULnUIHBC/ JOI4vlcbFPUrsxEvbMhEfe8VdHL5dYDtBqpc1OXFaLZzyEQTk5YfNdFKJMdMD6toDQP40AD 9bzJEAO/Yub62j8vHbKSA== X-UI-Out-Filterresults: notjunk:1;V01:K0:LI5GEyMcnMY=:D/McyW1Oe/3UFrFgQXt1g/ iM4EBCrsQIJX3oIpHQL8tsHM7Za44HdJ+eSIRhcajCmG1qaIfD647oGwooCNjv01il/L4V/i1 iPjTmttNwbI1+kegMsOHCu41ML37pn9hL1XWklMgpEC4kIQpyKM3s3HtCM+bYY6i8hKH8WEsV WX5JEG8wnEhZbJsJTnqWjdrAFJ+Icd9f1LAFicgd9CaPeM/a/bEKbZ7y0xTYuF+38eLnEqapL 4n8u/FFHerI95cEdUVcxV0sRFz+d8TRV39QxShXCr0VMbBhocintGaQgfocIDfDt4flY+V1mg eoUR/YBflVanyYxBgvtTsFOPSySgmqdaZlMM3n8DxIM03XOJ9+/HS3EZ6OFW7fmSvxKvP6qWi TLrVoBAvNBLw0Sxpcjn+LbD/WpivQ6vX6Ihk7N64cKwOWyxzOLWyLWP+bRtUGyGJXeOtpLmtA 91/SQ6zNIkHN73XT421u6CZK//F61lvq6zLTHg+gpDH50jR/eBR9Hiqo3569Byo8TJst3YT32 i1d4PcBC+P7Y0sUP/fcuOrK/bCg8Fqt7uQbmFHdrpKoeCzPirSSVTYimWrqpIcsb2AaqMHNBd YAsnZPqioWvlhK7bm1T9O+9qK9tQBcBbhWTp5+tjkppdVy4qZVhyIM2SL6hO1xcr7F6G5gxbT iJD+uUxulL8Zx+nMutVsWzkRgHLyF45Ujpyv0j0RVnUYLSNAE3G/Cyd2dHwRxxs5Yq8i5dISr lG3mB/coLkQLqjS6BdAoqwFWCe0WwU4ytHdig9eaylh+fbVrXqLJh80hq4sJu5e7fXRJZfZ2Q h53rQiDEbke7CD5PXUcTQMcmk3/NsAyYKUcO3wHC/viZx6WnxY= Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Markus Elfring Date: Wed, 6 Sep 2017 19:09:31 +0200 Add jump targets so that a bit of exception handling can be better reused at the end of these functions. This issue was detected by using the Coccinelle software. Signed-off-by: Markus Elfring --- sound/soc/codecs/cs4270.c | 32 ++++++++++++++++---------------- 1 file changed, 16 insertions(+), 16 deletions(-) diff --git a/sound/soc/codecs/cs4270.c b/sound/soc/codecs/cs4270.c index 84f86745c30e..aa70d471cc57 100644 --- a/sound/soc/codecs/cs4270.c +++ b/sound/soc/codecs/cs4270.c @@ -362,10 +362,8 @@ static int cs4270_hw_params(struct snd_pcm_substream *substream, reg |= cs4270_mode_ratios[i].speed_mode; ret = snd_soc_write(codec, CS4270_MODE, reg); - if (ret < 0) { - dev_err(codec->dev, "i2c write failed\n"); - return ret; - } + if (ret < 0) + goto report_failure; /* Set the DAI format */ @@ -385,11 +383,13 @@ static int cs4270_hw_params(struct snd_pcm_substream *substream, } ret = snd_soc_write(codec, CS4270_FORMAT, reg); - if (ret < 0) { - dev_err(codec->dev, "i2c write failed\n"); - return ret; - } + if (ret < 0) + goto report_failure; + + return ret; +report_failure: + dev_err(codec->dev, "i2c write failed\n"); return ret; } @@ -512,10 +512,8 @@ static int cs4270_probe(struct snd_soc_codec *codec) * re-enabled it by using the controls. */ ret = snd_soc_update_bits(codec, CS4270_MUTE, CS4270_MUTE_AUTO, 0); - if (ret < 0) { - dev_err(codec->dev, "i2c write failed\n"); - return ret; - } + if (ret < 0) + goto report_failure; /* Disable automatic volume control. The hardware enables, and it * causes volume change commands to be delayed, sometimes until after @@ -524,15 +522,17 @@ static int cs4270_probe(struct snd_soc_codec *codec) */ ret = snd_soc_update_bits(codec, CS4270_TRANS, CS4270_TRANS_SOFT | CS4270_TRANS_ZERO, 0); - if (ret < 0) { - dev_err(codec->dev, "i2c write failed\n"); - return ret; - } + if (ret < 0) + goto report_failure; ret = regulator_bulk_enable(ARRAY_SIZE(cs4270->supplies), cs4270->supplies); return ret; + +report_failure: + dev_err(codec->dev, "i2c write failed\n"); + return ret; } /** -- 2.14.1