From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-pl1-f170.google.com (mail-pl1-f170.google.com [209.85.214.170]) (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 0D24A3F54A0 for ; Wed, 13 May 2026 10:44:06 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.214.170 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1778669048; cv=none; b=D7VoyknyT5vaUmZVlBjvf6v4DvZCa5K7sCDnrS5G1wsjSUm0M2CNIw+uQEWM7mwKs1lGa5/bk2Q0pI3NmsQ1mngoBm0cmWz7/Z0bxPCH4lUjI8/Y6bEvwt7/7wEgABWQLY1n4Su+YvH9N+gmpkC4QBuCQSxKx7SpdAdabHNOkUM= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1778669048; c=relaxed/simple; bh=9X50H0I+x7I976Wzew0r+L0k3lHvMtlfL5mk+JUjdSM=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=O0SE930qEHKwUO02saQhtY9VaBdGZtcrvK4r57beJnjkK52DZI1oqgpQrJdYSTfLMzuyo6A9e+TLhmkWaWPkkU3OL+hKPrNlhjSk/Jn1UrNlxKR4xeOZkv/DY7nB2PGQ1uQRfsRjjcEenmOQXtg/y0xEJ6jO2GoQQIYUh3c43kk= 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=XYNx756L; arc=none smtp.client-ip=209.85.214.170 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="XYNx756L" Received: by mail-pl1-f170.google.com with SMTP id d9443c01a7336-2ba0fc8b1f0so42458075ad.3 for ; Wed, 13 May 2026 03:44:06 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1778669046; x=1779273846; 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=8VLjZ5HRUHB7pc8eNKnSNbRiReFzaEooAwXWvAuxy2w=; b=XYNx756Lh159wN91tytiBD4euWzr0DG7vFLLDtOtvNm1au8eyE3a+sf77M10ONLMg+ gNQrOPYwml8Z7CBnmtnj1jMTEsTQ+upa9QyweWGXiAzbWuriHRS1EWRdeRBuX3t+y/+U Va1Kmcfub/7nPoggf2BYOPQDrDZ9mroBjQCTKK3E/qcPysSAGYytjrjLUWiviap3EmhS soSLOvPoVAeEWuL3/7EpvRbfyHKKHsfjZpVcXkAy8KHVP7H20pBSEpptbvsWgJMPvBlT SZTrvJcSAEiGaOzZITMcVl+30KGhQxtNq2Ra1mgY2ga3RVvaq3JB4lGeRmqG9I9YuOLt 6eqw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1778669046; x=1779273846; 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=8VLjZ5HRUHB7pc8eNKnSNbRiReFzaEooAwXWvAuxy2w=; b=OusLs3LuoaQFb6St/OJI5BtNmwNy5rAY63VHzTTEuOyB1JrrZ9N3iA/YslJO2DGiku pr4/KJhH5V2CWW90XK9+cGIcFpVvwZIAGlg409QrYA/D3sUMK9rjOAxFRvdAaNPuXNPm Wd0FbG7hgDgeU+SeWI1r+Tvewtggw3S5EpsheAeErsb2nHhnupjI5RBC8cQQyioi+InS 7FDfsh4OSLbcYF5ZNq2VXbRuBcxG8i9igKGtmrvIlHX/7YpLSEw+RPxZg9sLwApD1z/Z nrUh1ygy+5i+3CWWHdXK4e2HtmUoB28yzR+VGQ92+4aM2gMxz6+QSAPwXeygAu6ermUw DD3g== X-Forwarded-Encrypted: i=1; AFNElJ9RB8H9cRFBGfA7GefzkeL+5omg3MyNejH0CmPmdW1Ehw5V5tgSRtjTvMKMrlgC2pMNhJMGCOhm32l/vBU=@vger.kernel.org X-Gm-Message-State: AOJu0YzqETrOIqArtdtIryc8q24RY36BeYoBKl2GXsjqNpB41fwVPJJD Vco7PVLY7tqkpP0Ogpnp45WpLWo/WWlwh0JrWTpRm3G4u+g9hsrSh9LH X-Gm-Gg: Acq92OGJA8ac9oyK/No1PC6KgdbGoUkRpKvYoJZELQ62lJjhVsT6TW1Uifpza1FdsBh IY/3WYp3eJy5NDzxozaiTDAVNtBt/yHg5iPW+wSGKqJt7GSWVjtqn2pRI/PqhOsIaAP5o2//l0e uzg93pAJqDa5J1UCj3EumXL8hOpkc0PMcI5Ao4AEVmpatvg8cW00HUMlBh2WaQYV6dGc3Xb2G/k E/sDxB1IDSazaKTXNDoBuM13g/6o+OkCvU1H9coQfG6i3Js8P6t2Ygk2hxK9VqmtdD4iXEH85H4 KK0TTRhOd2Q5xQCdAfVxG1RZXwgCu4riQp/PTrsGRh3Jqz01vTujddjhfRHtuFTzo3PPSKdC8yS DSH2sMAMVpl6dZL4inrCtX9eJoVA+8cXGr59wj7IglqlEsGXwVtTSoh4Beud5jMc4muMTAhU2Zb POf4YAzkVJlPH3CabyU20gjop3vYx+3fHtKIkuxXVTUGpR/zhVYi+fVefeOg== X-Received: by 2002:a17:902:c40f:b0:2ba:bfc:76b5 with SMTP id d9443c01a7336-2bd2f4dba62mr24128275ad.4.1778669046222; Wed, 13 May 2026 03:44:06 -0700 (PDT) Received: from phuc-desktop.. ([183.91.15.56]) by smtp.gmail.com with ESMTPSA id d9443c01a7336-2baf1e35e9dsm170479535ad.39.2026.05.13.03.44.03 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 13 May 2026 03:44:06 -0700 (PDT) From: phucduc.bui@gmail.com To: Olivier Moysan , Arnaud Pouliquen , Mark Brown Cc: Liam Girdwood , Jaroslav Kysela , Takashi Iwai , Maxime Coquelin , Alexandre Torgue , linux-sound@vger.kernel.org, linux-stm32@st-md-mailman.stormreply.com, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, bui duc phuc Subject: [PATCH 3/4] ASoC: stm: stm32_sai_sub: Use guard() for mutex & spin locks Date: Wed, 13 May 2026 17:43:28 +0700 Message-ID: <20260513104329.81592-4-phucduc.bui@gmail.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20260513104329.81592-1-phucduc.bui@gmail.com> References: <20260513104329.81592-1-phucduc.bui@gmail.com> Precedence: bulk X-Mailing-List: linux-kernel@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 & spin locks. Merely code refactoring, and no behavior change. Signed-off-by: bui duc phuc --- sound/soc/stm/stm32_sai_sub.c | 29 +++++++++++------------------ 1 file changed, 11 insertions(+), 18 deletions(-) diff --git a/sound/soc/stm/stm32_sai_sub.c b/sound/soc/stm/stm32_sai_sub.c index 3e82fa90e719..ea9e8bddd63f 100644 --- a/sound/soc/stm/stm32_sai_sub.c +++ b/sound/soc/stm/stm32_sai_sub.c @@ -280,9 +280,8 @@ static int snd_pcm_iec958_get(struct snd_kcontrol *kcontrol, { struct stm32_sai_sub_data *sai = snd_kcontrol_chip(kcontrol); - mutex_lock(&sai->ctrl_lock); + guard(mutex)(&sai->ctrl_lock); memcpy(uctl->value.iec958.status, sai->iec958.status, 4); - mutex_unlock(&sai->ctrl_lock); return 0; } @@ -292,9 +291,8 @@ static int snd_pcm_iec958_put(struct snd_kcontrol *kcontrol, { struct stm32_sai_sub_data *sai = snd_kcontrol_chip(kcontrol); - mutex_lock(&sai->ctrl_lock); + guard(mutex)(&sai->ctrl_lock); memcpy(sai->iec958.status, uctl->value.iec958.status, 4); - mutex_unlock(&sai->ctrl_lock); return 0; } @@ -658,10 +656,10 @@ static irqreturn_t stm32_sai_isr(int irq, void *devid) status = SNDRV_PCM_STATE_XRUN; } - spin_lock(&sai->irq_lock); - if (status != SNDRV_PCM_STATE_RUNNING && sai->substream) - snd_pcm_stop_xrun(sai->substream); - spin_unlock(&sai->irq_lock); + scoped_guard(spinlock, &sai->irq_lock) { + if (status != SNDRV_PCM_STATE_RUNNING && sai->substream) + snd_pcm_stop_xrun(sai->substream); + } return IRQ_HANDLED; } @@ -894,11 +892,9 @@ static int stm32_sai_startup(struct snd_pcm_substream *substream, { struct stm32_sai_sub_data *sai = snd_soc_dai_get_drvdata(cpu_dai); int imr, cr2, ret; - unsigned long flags; - spin_lock_irqsave(&sai->irq_lock, flags); - sai->substream = substream; - spin_unlock_irqrestore(&sai->irq_lock, flags); + scoped_guard(spinlock_irqsave, &sai->irq_lock) + sai->substream = substream; if (STM_SAI_PROTOCOL_IS_SPDIF(sai)) { snd_pcm_hw_constraint_mask64(substream->runtime, @@ -1083,7 +1079,7 @@ static void stm32_sai_set_iec958_status(struct stm32_sai_sub_data *sai, return; /* Force the sample rate according to runtime rate */ - mutex_lock(&sai->ctrl_lock); + guard(mutex)(&sai->ctrl_lock); switch (runtime->rate) { case 22050: sai->iec958.status[3] = IEC958_AES3_CON_FS_22050; @@ -1116,7 +1112,6 @@ static void stm32_sai_set_iec958_status(struct stm32_sai_sub_data *sai, sai->iec958.status[3] = IEC958_AES3_CON_FS_NOTID; break; } - mutex_unlock(&sai->ctrl_lock); } static int stm32_sai_configure_clock(struct snd_soc_dai *cpu_dai, @@ -1284,7 +1279,6 @@ static void stm32_sai_shutdown(struct snd_pcm_substream *substream, struct snd_soc_dai *cpu_dai) { struct stm32_sai_sub_data *sai = snd_soc_dai_get_drvdata(cpu_dai); - unsigned long flags; stm32_sai_sub_reg_up(sai, STM_SAI_IMR_REGX, SAI_XIMR_MASK, 0); @@ -1298,9 +1292,8 @@ static void stm32_sai_shutdown(struct snd_pcm_substream *substream, if (!sai->sai_mclk && sai->put_sai_ck_rate) sai->put_sai_ck_rate(sai); - spin_lock_irqsave(&sai->irq_lock, flags); - sai->substream = NULL; - spin_unlock_irqrestore(&sai->irq_lock, flags); + scoped_guard(spinlock_irqsave, &sai->irq_lock) + sai->substream = NULL; } static int stm32_sai_pcm_new(struct snd_soc_pcm_runtime *rtd, -- 2.43.0