From patchwork Mon Jun 7 22:22:36 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Pierre-Louis Bossart X-Patchwork-Id: 12304815 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-16.8 required=3.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER,INCLUDES_PATCH, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 60EDBC47094 for ; Mon, 7 Jun 2021 22:28:14 +0000 (UTC) Received: from alsa0.perex.cz (alsa0.perex.cz [77.48.224.243]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id C131B61078 for ; Mon, 7 Jun 2021 22:28:13 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org C131B61078 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=linux.intel.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=alsa-devel-bounces@alsa-project.org Received: from alsa1.perex.cz (alsa1.perex.cz [207.180.221.201]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by alsa0.perex.cz (Postfix) with ESMTPS id 651DF1686; Tue, 8 Jun 2021 00:27:22 +0200 (CEST) DKIM-Filter: OpenDKIM Filter v2.11.0 alsa0.perex.cz 651DF1686 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=alsa-project.org; s=default; t=1623104892; bh=bKk6zg4vss6/FdhyyfMO4760ms5SyvgHudz/DsP6KVo=; h=From:To:Subject:Date:In-Reply-To:References:Cc:List-Id: List-Unsubscribe:List-Archive:List-Post:List-Help:List-Subscribe: From; b=f6b6qEPLglXNoGqA2ju/XhtkKtZ89XdAWTLVkja8bBdL8ZGYrZyZGtZZZ/kCXaaAX ucht9fbrsQdLn+TGuadHDjW9obDXNT+13iZdEkn2E7SDbYQnTdgzv/Dz80iFs0JjTh c8HfetoeqOfkVAYdbDQ2QVJa4TY49P0e1BYv0lSc= Received: from alsa1.perex.cz (localhost.localdomain [127.0.0.1]) by alsa1.perex.cz (Postfix) with ESMTP id A3E95F80516; Tue, 8 Jun 2021 00:23:41 +0200 (CEST) Received: by alsa1.perex.cz (Postfix, from userid 50401) id 948F6F804FF; Tue, 8 Jun 2021 00:23:36 +0200 (CEST) Received: from mga07.intel.com (mga07.intel.com [134.134.136.100]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by alsa1.perex.cz (Postfix) with ESMTPS id B79CBF804DA for ; Tue, 8 Jun 2021 00:23:23 +0200 (CEST) DKIM-Filter: OpenDKIM Filter v2.11.0 alsa1.perex.cz B79CBF804DA IronPort-SDR: 3bfYrBZIrk8H2o9buE6P8B6js5Iy6y4YKy6mGMQ8GUjzFwswP1hWOtwU6ZLmPBfJ/NE7IrQVCA fQZAbUJemYqA== X-IronPort-AV: E=McAfee;i="6200,9189,10008"; a="268581954" X-IronPort-AV: E=Sophos;i="5.83,256,1616482800"; d="scan'208";a="268581954" Received: from fmsmga008.fm.intel.com ([10.253.24.58]) by orsmga105.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 07 Jun 2021 15:23:13 -0700 IronPort-SDR: Q7TZY9+Y7Hg5KqQ3SOsJ6jQ2On3idUQQdV8A5VJq07OfeVkl4eDKJfjc6DU0IWjEoUg5ZHAqWz /KjN9uMrMysg== X-IronPort-AV: E=Sophos;i="5.83,256,1616482800"; d="scan'208";a="449271016" Received: from ticela-or-160.amr.corp.intel.com (HELO pbossart-mobl3.intel.com) ([10.212.108.70]) by fmsmga008-auth.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 07 Jun 2021 15:23:12 -0700 From: Pierre-Louis Bossart To: alsa-devel@alsa-project.org Subject: [PATCH 12/15] ASoC: rt5682: Fix a problem with error handling in the io init function of the soundwire Date: Mon, 7 Jun 2021 17:22:36 -0500 Message-Id: <20210607222239.582139-13-pierre-louis.bossart@linux.intel.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20210607222239.582139-1-pierre-louis.bossart@linux.intel.com> References: <20210607222239.582139-1-pierre-louis.bossart@linux.intel.com> MIME-Version: 1.0 Cc: Oder Chiou , Jack Yu , Ryan Lee , tiwai@suse.de, Pierre-Louis Bossart , broonie@kernel.org, Shuming Fan , Bard liao , Bard Liao X-BeenThere: alsa-devel@alsa-project.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: "Alsa-devel mailing list for ALSA developers - http://www.alsa-project.org" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: alsa-devel-bounces@alsa-project.org Sender: "Alsa-devel" From: Oder Chiou The device checking error should be a jump to pm_runtime_put_autosuspend() as done before returning value. Fixes: 867f8d18df4f ('ASoC: rt5682: fix getting the wrong device id when the suspend_stress_test') Reviewed-by: Bard Liao Signed-off-by: Oder Chiou Signed-off-by: Pierre-Louis Bossart --- sound/soc/codecs/rt5682-sdw.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/sound/soc/codecs/rt5682-sdw.c b/sound/soc/codecs/rt5682-sdw.c index 8e4bb9dd194e..529a85fd0a00 100644 --- a/sound/soc/codecs/rt5682-sdw.c +++ b/sound/soc/codecs/rt5682-sdw.c @@ -408,9 +408,11 @@ static int rt5682_io_init(struct device *dev, struct sdw_slave *slave) usleep_range(30000, 30005); loop--; } + if (val != DEVICE_ID) { dev_err(dev, "Device with ID register %x is not rt5682\n", val); - return -ENODEV; + ret = -ENODEV; + goto err_nodev; } if (rt5682->first_hw_init) { @@ -486,10 +488,11 @@ static int rt5682_io_init(struct device *dev, struct sdw_slave *slave) rt5682->hw_init = true; rt5682->first_hw_init = true; +err_nodev: pm_runtime_mark_last_busy(&slave->dev); pm_runtime_put_autosuspend(&slave->dev); - dev_dbg(&slave->dev, "%s hw_init complete\n", __func__); + dev_dbg(&slave->dev, "%s hw_init complete: %d\n", __func__, ret); return ret; }