From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-pj1-f44.google.com (mail-pj1-f44.google.com [209.85.216.44]) (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 6B5923DFC80 for ; Thu, 11 Jun 2026 12:00:34 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.216.44 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1781179235; cv=none; b=jfOBBS81b1x5ZogVPxQKDrHoGrgSK+kjoX7tr4ads4UkocH6AEWu1Mf9C0HFyc+gKT1RuqBM0/Nb3h6yHlE7ZMgnskf9W0YfM/6HEAKfBlj9mOyFKOD1RQk+zCZ6CeyR79PgDaBamOiWl2KoVx2zuNpUjSfb/BHW2/5rNg8hJDY= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1781179235; c=relaxed/simple; bh=eq/gkGLfR9tm82RQg4vtnNIfvzPowe/IyfBc2126z5Y=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=XhWfAmtXqGeKBd2rCyCtGGApPHmZFTUW6rS/XqRuy1mNeRjV/28+6Fc7xSODLyF7h/3I6RzPum6E3pa1SYiupiR+XjKEYC2gn1D/vhLjCH54B7L8PlTl/bpLAw1+B1q+tabHADsvOHYs6PdlSb4k7SXG6J3OfeYh1i/6R0GnJTE= 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=rnhrsKId; arc=none smtp.client-ip=209.85.216.44 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="rnhrsKId" Received: by mail-pj1-f44.google.com with SMTP id 98e67ed59e1d1-372b4330deeso3315514a91.0 for ; Thu, 11 Jun 2026 05:00:34 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1781179234; x=1781784034; 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=B5Kf5J038lfih6KxKA7XwnJbOeOSrjAYMTJJcwO356c=; b=rnhrsKIdNZMO6+rd8HUU+tnCmmdE5H7yccHNFvVV+vX/kQ3ZrcWi7pUri0dQObiAR7 Zns0pR3IxFXJ0U3EblFbcpBiUcFli1DRZS7qqLynGYcSeAB6uLiF0D2BqWXiLKGdrpA2 l8s2d8JWqfopODgqfnjRSzSzy6lrnCulXjUH5WFXf/Gm0Sz5sLsDOIWOjqy0reEGqMs6 NlLzboyWfGtmIlADl9+XAT5YOxElQ8fVbX9Yaiv4X2CcvL0F/eoIdfRA1vyX4MSbUXHO TeXTH6cRLoKZWzITWo0/qB4w5VYCdmtxn5dh+cjUOKhHOIwjUqKiVJTD3W8wJhlA0php HnuA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1781179234; x=1781784034; 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=B5Kf5J038lfih6KxKA7XwnJbOeOSrjAYMTJJcwO356c=; b=IroVn7F424/h7pIE3mKkG89ce9yXAOVQlYBHJauTNZXS+mmDOasaz1m/ITlbe4ezvX nCQOsT6ssxzc5oQOtmNjZu7JZuBNINV0xXHvWhMkjijpyAzExXdw2sPQiHcudnmvUOu9 iSuV418zhm0VQs0nm48u8/awpn05UQtmAZIztTtK+BUJN2oOj3cqmfakMTqQEIGlLYk+ gevYKp7n9kBlgjkr7DCtjHxznL5CXXJcrv61NA6SjIG7IYvklKIZGx40B03kVcSIv93i Q1Ghr7pbZMkoZpoXNkjTCME0W5sRUIZ/AuEpyjl+gl+elj7cbzlsfXYOVyEIDhtAOu3/ 4hYA== X-Forwarded-Encrypted: i=1; AFNElJ8YS+1A0nOc98gcTFc80x146zfPZwbmLN61qCUdt3Zws4beCTXKjtggL0UQoLYGsYxXDUu2y4dBB+P/G8c=@vger.kernel.org X-Gm-Message-State: AOJu0YxOYT2oCV4QKCxa9lF3wngCQ+VqgwRgf1k8mmoru8jyU3J6O7z8 82x69ogfTSR1CUDI5X3tZs/fku0jyHWAI2z93WwsvhYYwgQh/Q2ucIf+ X-Gm-Gg: Acq92OHs3BgpwmoQawNGZeIv8eVYhyXWcQMoeShWWLcSveMZtO4Sd+hdUf1apbdubTF qDFisU68RTC/LfIjGWe6efknfSxkLkUhM+L4Y8U9tHoTFQTbxBjp7GSwGkXJE9BM+VkXnRVryj9 omxxa7DLm1YTo7GAv9Q4u03DBmnzCWS6B+uFHxbJSgmFBU3/P0nRYOUrEAUNKWrT7ngfGcjKYEt J5jiCiU7ibnFLvkp8ADtFwFZEX89Fj+gUxie8rC0RXW0i2AxA7du0nzt+Xli8WJwGTXtmUIhueU 0vO+4ZMBdHJbKkiDe+bYpfL0PtOE4WrYLCaSvXT0jcC3grneoSdqbw/ufXyPpT7saUuu4iDHCfJ cO5sDOVldDTLSgYfICrWzVW0XtnzJH2qV3/srxpBZcbY4LeRNXHZC+CUdtgSfceAwa0OMo53VDq 4FMvb4B2ZPW8G2A3kE+DJsm3+++QaUBXKnXmtu40sfLl4kGTfn3iOJtd5CWfEnh50XJ4BO X-Received: by 2002:a17:90b:2dcb:b0:36d:79c6:1562 with SMTP id 98e67ed59e1d1-377aa88fdb7mr2567629a91.25.1781179229061; Thu, 11 Jun 2026 05:00:29 -0700 (PDT) Received: from phuc-desktop.. ([183.91.15.56]) by smtp.gmail.com with ESMTPSA id 98e67ed59e1d1-37753d02ca4sm2499692a91.12.2026.06.11.05.00.25 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 11 Jun 2026 05:00:28 -0700 (PDT) From: phucduc.bui@gmail.com To: Mark Brown , Liam Girdwood , Cezary Rojewski Cc: Jaroslav Kysela , Takashi Iwai , Peter Ujfalusi , Bard Liao , Kai Vehmanen , Pierre-Louis Bossart , linux-sound@vger.kernel.org, linux-kernel@vger.kernel.org, bui duc phuc Subject: [PATCH 17/20] ASoC: Intel: atom: sst: Use guard() for spin locks Date: Thu, 11 Jun 2026 18:58:58 +0700 Message-ID: <20260611115901.80438-18-phucduc.bui@gmail.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20260611115901.80438-1-phucduc.bui@gmail.com> References: <20260611115901.80438-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 spin locks. Merely code refactoring, and no behavior change. Signed-off-by: bui duc phuc --- sound/soc/intel/atom/sst/sst.c | 37 +++++++++++++++++----------------- 1 file changed, 18 insertions(+), 19 deletions(-) diff --git a/sound/soc/intel/atom/sst/sst.c b/sound/soc/intel/atom/sst/sst.c index d9d695ed7cfb..7af76188db3e 100644 --- a/sound/soc/intel/atom/sst/sst.c +++ b/sound/soc/intel/atom/sst/sst.c @@ -57,17 +57,17 @@ static irqreturn_t intel_sst_interrupt_mrfld(int irq, void *context) isr.full = sst_shim_read64(drv->shim, SST_ISRX); if (isr.part.done_interrupt) { - /* Clear done bit */ - spin_lock(&drv->ipc_spin_lock); - header.full = sst_shim_read64(drv->shim, - drv->ipc_reg.ipcx); - header.p.header_high.part.done = 0; - sst_shim_write64(drv->shim, drv->ipc_reg.ipcx, header.full); - - /* write 1 to clear status register */ - isr.part.done_interrupt = 1; - sst_shim_write64(drv->shim, SST_ISRX, isr.full); - spin_unlock(&drv->ipc_spin_lock); + scoped_guard(spinlock, &drv->ipc_spin_lock) { + /* Clear done bit */ + header.full = sst_shim_read64(drv->shim, + drv->ipc_reg.ipcx); + header.p.header_high.part.done = 0; + sst_shim_write64(drv->shim, drv->ipc_reg.ipcx, header.full); + + /* write 1 to clear status register */ + isr.part.done_interrupt = 1; + sst_shim_write64(drv->shim, SST_ISRX, isr.full); + } /* we can send more messages to DSP so trigger work */ queue_work(drv->post_msg_wq, &drv->ipc_post_msg_wq); @@ -76,11 +76,11 @@ static irqreturn_t intel_sst_interrupt_mrfld(int irq, void *context) if (isr.part.busy_interrupt) { /* message from dsp so copy that */ - spin_lock(&drv->ipc_spin_lock); - imr.full = sst_shim_read64(drv->shim, SST_IMRX); - imr.part.busy_interrupt = 1; - sst_shim_write64(drv->shim, SST_IMRX, imr.full); - spin_unlock(&drv->ipc_spin_lock); + scoped_guard(spinlock, &drv->ipc_spin_lock) { + imr.full = sst_shim_read64(drv->shim, SST_IMRX); + imr.part.busy_interrupt = 1; + sst_shim_write64(drv->shim, SST_IMRX, imr.full); + } header.full = sst_shim_read64(drv->shim, drv->ipc_reg.ipcd); if (sst_create_ipc_msg(&msg, header.p.header_high.part.large)) { @@ -103,9 +103,8 @@ static irqreturn_t intel_sst_interrupt_mrfld(int irq, void *context) msg->mrfld_header = header; msg->is_process_reply = sst_is_process_reply(header.p.header_high.part.msg_id); - spin_lock(&drv->rx_msg_lock); - list_add_tail(&msg->node, &drv->rx_list); - spin_unlock(&drv->rx_msg_lock); + scoped_guard(spinlock, &drv->rx_msg_lock) + list_add_tail(&msg->node, &drv->rx_list); drv->ops->clear_interrupt(drv); retval = IRQ_WAKE_THREAD; } -- 2.43.0