From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-dy1-f180.google.com (mail-dy1-f180.google.com [74.125.82.180]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 252013F39DD for ; Wed, 17 Jun 2026 10:38:26 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=74.125.82.180 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1781692710; cv=none; b=K08gV8if/xGupcJwSMqEubWihHwSbRiwYoddmLsM1OUBjJ+PCwNWFbRQQcC++sSWJBJmVx513uRgsP0OHRgn6FYjwwPW7rLOioJu7LRTCTaBWNUYjiuFnw0FZa1a+nL/eL/y1BkgK/RIDMM8CVkjfn2RC4vikZ36ZsTTdkw8z98= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1781692710; c=relaxed/simple; bh=0JhvFKNYeb49RLF6bYiTwSAs/DtlSFc2jfqE8DFfeig=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=olNg2woOLelT0GUgKwB+lYGvO78LS9e0to/GImt8bEfXegmQgZU9iWrfcy1III9tkUbYJ9HeobJrx9Gu/1Vxa4e4VicdDKqGlhQxoYa4ssmMjZI1fdVIrYbzeLTnHCseKknIT+H+v/pQ3fPQliarCal3oaRETO82+1rOjAbGODo= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=Jh/l4rwq; arc=none smtp.client-ip=74.125.82.180 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="Jh/l4rwq" Received: by mail-dy1-f180.google.com with SMTP id 5a478bee46e88-30bc806fcf8so1068969eec.1 for ; Wed, 17 Jun 2026 03:38:26 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1781692705; x=1782297505; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=MkZBCMurUYtbXlyM1bHHJ4jat4Djw6dn8DDEDOcRodM=; b=Jh/l4rwqMEXSULgwXJcwlJs2AxjTyjKt1ulZvQGn7b9v7gOgV7KW7YF/bjaQmXDEiS DpgD7d87o1vr7xnbNxtCnRSVyePFP7ffIkZ7eSB0Xa1jGBAEcNsjAOdhBrP7XrdGDZ/J EtzDGC2HDK/zYMFFr8pkxRa9tmFi7kL5Z+rQ/TE6wW8bPkaSHKBcRS6AyZEUT36VpZ3L sshcVuHBGDOseiMiraOnpGKk+IREL5CbtdtU5dt4+oGC1FI9Hdxu+TD7W5xNy7I9+qCc 4c88zcmNveXBuek/I6Eb2RpyU3m2UD5UvNUfwULMf/1W9pz49iQryYIxImehASGj8wqG JGWg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1781692705; x=1782297505; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=MkZBCMurUYtbXlyM1bHHJ4jat4Djw6dn8DDEDOcRodM=; b=kBS/W6Taq3i6t5nENcj+bIexiwokjaO79ELTSJfTAD0Unfw/4uWDaVoaJ+yfwghEt0 fM0+9/vYXgvCZpfyyhytmz8NJUX2ycgbkhcu42hR7JZhdyXIX9CbIWEsPzt9fqL7bdb5 X2+XjOpKJgZorxTEtPdagpLWWO+HW985H7QyW6OWExWV2Ymnk8nmzowuQ8vnoWC+u5Ob /6dx1D7ryqUYvEJQE4jtDdDBf5vDnmNRyalrzTQ/SkGaHXBb4bsqS8ViVUOcdEGPu2kv J2eio0MjaT2UhLrCFf6zknI2J+5ziZiSYpVXb1ZE7wRrHcrmFIIGOAgvkGEmmaJSqJ5Z tcmA== X-Forwarded-Encrypted: i=1; AFNElJ/HNZ9MxzW6HDnvW2CqwQZ7ffdVKy580NU5aqZ7YxpkKaY8jPGzS1JRwoNwjaFYPG4Xb08eQP5A25r6fb2i@vger.kernel.org X-Gm-Message-State: AOJu0YwVYeOHeQaOxC9L1U3Y0u9BOZ5+buYf1wOAeG9A1IGM7KEW/vCM YI2Xi21gGzfoxeMu2jbQn8I7Jpf4PKBucm3xocYNoa2XR6YaDX2HWQ4V X-Gm-Gg: AfdE7cnFKcvdfzhYph1Omg4SXhq4gryAJ79zHFPswJ5+I9XoTzYWHi/k8d5XaMhiZlR +QC3VsnaX+8Pzg6+u7GMxnmYFR82f0JDVXkBM4IN4ahODeJ2uyuZ6ixGp7gkPfFVYCzT26gGUb3 2xiM8FrndfIDXvvjXpsJFbKRzdQwCxGdsqtOTnKwP52vk/a34nmaF4qf1JZ5wRZQPJbmDNl+veC TMLJDUv9xXUjgHfs/1U0+9yAm+LsnHKhG47l+3tSiPZ7EcKXXvlCSOAtNUDOqhQyuTMYS0ZgKu0 PDGlL76dlrUhuEKxQiCHoVbarkYW4zGXViNUcv/XqwvuR3V9dzXoxe+cZyMGewj/iqTqqt6EyH8 9CG0d6XBr1FoKPqFHwhWLas0AU8O45l0E3D6wIZGzvad/IeyE9PF1Bbc1ENGC3du0lU/TWOW93T smEBKoVjuEBY7aAc8TAJv1AK/zN0DYCd7G5EjxMcaAXLNzYFQ= X-Received: by 2002:a05:7300:2153:b0:30b:8860:94c1 with SMTP id 5a478bee46e88-30bcae21d20mr1491165eec.23.1781692705015; Wed, 17 Jun 2026 03:38:25 -0700 (PDT) Received: from phuc-desktop.. ([183.91.15.56]) by smtp.gmail.com with ESMTPSA id 5a478bee46e88-3081e5d0828sm24616275eec.10.2026.06.17.03.38.17 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 17 Jun 2026 03:38:24 -0700 (PDT) From: phucduc.bui@gmail.com To: Mark Brown Cc: Liam Girdwood , Jaroslav Kysela , Takashi Iwai , Cheng-Yi Chiang , Tzung-Bi Shih , Guenter Roeck , Benson Leung , David Rhodes , Richard Fitzgerald , povik+lin@cutebit.org, Charles Keepax , Support Opensource , Nick Li , Herve Codina , Srinivas Kandagatla , Matthias Brugger , AngeloGioacchino Del Regno , Shenghao Ding , Kevin Lu , Baojun Xu , Sen Wang , Oder Chiou , Lars-Peter Clausen , nuno.sa@analog.com, Steven Eckhoff , patches@opensource.cirrus.com, chrome-platform@lists.linux.dev, asahi@lists.linux.dev, linux-arm-msm@vger.kernel.org, linux-sound@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-mediatek@lists.infradead.org, bui duc phuc Subject: [PATCH 35/78] ASoC: codecs: madera: Use guard() for mutex locks Date: Wed, 17 Jun 2026 17:31:52 +0700 Message-ID: <20260617103235.449609-36-phucduc.bui@gmail.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20260617103235.449609-1-phucduc.bui@gmail.com> References: <20260617103235.449609-1-phucduc.bui@gmail.com> Precedence: bulk X-Mailing-List: linux-arm-msm@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit From: bui duc phuc Clean up the code using guard() for mutex locks. Merely code refactoring, and no behavior change. Signed-off-by: bui duc phuc --- sound/soc/codecs/madera.c | 31 +++++++++---------------------- 1 file changed, 9 insertions(+), 22 deletions(-) diff --git a/sound/soc/codecs/madera.c b/sound/soc/codecs/madera.c index 98d72db599d8..03bb1ed70b29 100644 --- a/sound/soc/codecs/madera.c +++ b/sound/soc/codecs/madera.c @@ -513,7 +513,7 @@ int madera_domain_clk_ev(struct snd_soc_dapm_widget *w, * We can't rely on the DAPM mutex for locking because we need a lock * that can safely be called in hw_params */ - mutex_lock(&priv->rate_lock); + guard(mutex)(&priv->rate_lock); switch (event) { case SND_SOC_DAPM_PRE_PMU: @@ -532,8 +532,6 @@ int madera_domain_clk_ev(struct snd_soc_dapm_widget *w, madera_debug_dump_domain_groups(priv); - mutex_unlock(&priv->rate_lock); - return 0; } EXPORT_SYMBOL_GPL(madera_domain_clk_ev); @@ -875,9 +873,8 @@ static int madera_adsp_rate_get(struct snd_kcontrol *kcontrol, const int adsp_num = e->shift_l; int item; - mutex_lock(&priv->rate_lock); - cached_rate = priv->adsp_rate_cache[adsp_num]; - mutex_unlock(&priv->rate_lock); + scoped_guard(mutex, &priv->rate_lock) + cached_rate = priv->adsp_rate_cache[adsp_num]; item = snd_soc_enum_val_to_item(e, cached_rate); ucontrol->value.enumerated.item[0] = item; @@ -903,7 +900,7 @@ static int madera_adsp_rate_put(struct snd_kcontrol *kcontrol, * maintain consistent behaviour that rate domains cannot be changed * while in use since this is a hardware requirement */ - mutex_lock(&priv->rate_lock); + guard(mutex)(&priv->rate_lock); if (!madera_can_change_grp_rate(priv, priv->adsp[adsp_num].cs_dsp.base)) { dev_warn(priv->madera->dev, @@ -916,8 +913,6 @@ static int madera_adsp_rate_put(struct snd_kcontrol *kcontrol, ret = 1; } - mutex_unlock(&priv->rate_lock); - return ret; } @@ -1061,15 +1056,13 @@ int madera_rate_put(struct snd_kcontrol *kcontrol, * Prevent the domain powering up while we're checking whether it's * safe to change rate domain */ - mutex_lock(&priv->rate_lock); + guard(mutex)(&priv->rate_lock); val = snd_soc_component_read(component, e->reg); val >>= e->shift_l; val &= e->mask; - if (snd_soc_enum_item_to_val(e, item) == val) { - ret = 0; - goto out; - } + if (snd_soc_enum_item_to_val(e, item) == val) + return 0; if (!madera_can_change_grp_rate(priv, e->reg)) { dev_warn(priv->madera->dev, @@ -1082,8 +1075,6 @@ int madera_rate_put(struct snd_kcontrol *kcontrol, ret = snd_soc_put_enum_double(kcontrol, ucontrol); madera_spin_sysclk(priv); } -out: - mutex_unlock(&priv->rate_lock); return ret; } @@ -3041,12 +3032,11 @@ static int madera_hw_params_rate(struct snd_pcm_substream *substream, if ((cur & MADERA_AIF1_RATE_MASK) == (tar & MADERA_AIF1_RATE_MASK)) return 0; - mutex_lock(&priv->rate_lock); + guard(mutex)(&priv->rate_lock); if (!madera_can_change_grp_rate(priv, base + MADERA_AIF_RATE_CTRL)) { madera_aif_warn(dai, "Cannot change rate while active\n"); - ret = -EBUSY; - goto out; + return -EBUSY; } /* Guard the rate change with SYSCLK cycles */ @@ -3055,9 +3045,6 @@ static int madera_hw_params_rate(struct snd_pcm_substream *substream, MADERA_AIF1_RATE_MASK, tar); madera_spin_sysclk(priv); -out: - mutex_unlock(&priv->rate_lock); - return ret; } -- 2.43.0