From nobody Tue Dec 2 01:29:01 2025 Received: from mail-wm1-f46.google.com (mail-wm1-f46.google.com [209.85.128.46]) (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 45F12337B90 for ; Fri, 21 Nov 2025 14:22:48 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.46 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1763734970; cv=none; b=o4uKHok4Qoa+2vULqHG/Yl1YOhpk6/7vAK7VxCaR7IHvo+dMEyceChoxTU/QaNpUOOCabR+VlnKT3kyHYhQctWLoRqOzCreDtDxAv/VNe7u9JzDRV5R75Hht/UmzyysncJlJ4rEX7gU7i0ILuEjLARZ5f0pccYGdhhE5458ci8A= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1763734970; c=relaxed/simple; bh=HDEFNLZbHChbSjezJhWZRHiNquOGC4B+deABIHEvTpM=; h=From:To:Cc:Subject:Date:Message-ID:MIME-Version; b=kERMw/XuzxPRKvRKaNw5TffqG3IyNJNg/jf+ojcOKxo24VpSiuC0cPKtLTjG5cl9ri8YB2SxwAjF6qiYpeNfAMW/W4rHe+rcLXQN/MWdie8z9ZP3sEztw4+eESEHwB4fZ86n++tG7uzKdqV2tcxw7xIMnKZtSwYeCN2inKDWxpQ= 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=HaQ21DOP; arc=none smtp.client-ip=209.85.128.46 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="HaQ21DOP" Received: by mail-wm1-f46.google.com with SMTP id 5b1f17b1804b1-4779cb0a33fso20385685e9.0 for ; Fri, 21 Nov 2025 06:22:48 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1763734966; x=1764339766; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:from:to:cc:subject:date:message-id:reply-to; bh=TNjvlRHq8yldGP9LWeSBbHcpVfEA7AYRv1h3eH8bFU4=; b=HaQ21DOPJBCfCIybrUnqeSKPhbXq4FtylplAcprBwZ1Q0cjLW2fcBMG+7hV7Yk2OOm 5MpONJGMxjB0L6JeKaMmNZl1znBY0CmKueIDp2YmvIDvM9ADFpgRCqkkjP56iger8AqZ fO5uuF7aTE/aTiXVRodNlQCLRkyYnb5GnhLT1pzCXf7vbBUIov12kLf0Dz3Xl0nccYQR KFrjzGkL+sbXg4WXC9rNj9ZrQKkkgr11PFUTW37gtJL7O057chLwpEcKeyIPipSZDS3N jrpuqU54D8YQas3I0NsAlJxiDmMwiuXAFFNKYOFGVUs7dsSNBgnuw4FS/XHiarrk4jQ8 +qWg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1763734966; x=1764339766; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:x-gm-gg:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=TNjvlRHq8yldGP9LWeSBbHcpVfEA7AYRv1h3eH8bFU4=; b=smEZTXWDu4JTxo4ozyxZqGFgKrxlTbQA5Usb70nt8Frf22varIahVRf6Vl6ltzOtKa 73c3ok+esfRWlfx2X28AWa+GKfwM6fXo7ftjTvIIdTUoa+nq8k16Pinrv+XMsQ1NH11t 3uoIiWG8MjrvvPlKPm+S5zvVjwSkerv16qpRnbTsEDMclZM0zawzaFJ94BWSEM91+4kY CsLBEiFH+EZqOouzGSkIVIR+UD/DKnbGGqZoksTVbxP6KOV0BmGbMoxc3rn3bBZyTm/q 1SjryI0fyUCTSItPLNuyGqHFYR8Yr5b2a+aVPG6qx/SHp/hMHk/N3CUHnbHlJOyauXCy ZXuw== X-Forwarded-Encrypted: i=1; AJvYcCXAIFS+wGinmBR0Csy1TTVruH5DCD5n1oLY78xxXpJj8na+DY+cjTL2PFVNyWxAo8bbmjoc386YrY7pedY=@vger.kernel.org X-Gm-Message-State: AOJu0Yx0RHaqEB7cT5YK90OucVtNjiWdKdOhB8Q8tWbTvTbreX7llXui uPQTLP8rJa+mFAijpoG5HVmiL5wwPlHhJPdek9o4SwrzKGNautdbwFEF X-Gm-Gg: ASbGncs8erWno9MLE4COhE51hKqz4b9Vm2B/TIbw0FdAbWYg+CnKOJRNb+zKDpFFL9l zezPAjRog8Gxpp47vtsjQrhwL/5xNXbltucjDNeg/SQip+lVwlNTVI8G3RaqwYvdVJbibu1GEPx jRM8UFgLDGZJYd1u11j3/h70c2bsAHhJBZcIoiSTM8uBJ4mFo9d9E3qRpA7F4OI9JaiZIERH8PB 7MobyXCum6Ho9/yWidANG2l+uRsz7W6mlPkFTnmWNZwX8T41qteJNnPbz3TIK6lYpHsnwyQyu9f mUoALhueGWIlJ1ESGtsNF9pqgJGHGHTHZWylDQ5VPrUctG/Y0UkBqlkS1mO4YVO8jidqfzmychd DxItpx+yCSK0XxWMMF5o+i7u10hReKhfwOgtfSA2vBliZ6FEUM/Fk3G5utyZllzjGgdsBp15NoE ZPQFMlgCqCDSOI X-Google-Smtp-Source: AGHT+IHOPQLDYI2JRfsRISZKbkan/BHMSu4JKZ2NXO4i1fO832Ovu7akI0DyJWfldMrYkC8E0xl0Lw== X-Received: by 2002:a05:600c:354b:b0:46f:b327:ecfb with SMTP id 5b1f17b1804b1-477c0184c45mr25879915e9.9.1763734966414; Fri, 21 Nov 2025 06:22:46 -0800 (PST) Received: from gmail.com ([147.161.143.89]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-477bf3558d5sm45553235e9.1.2025.11.21.06.22.43 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 21 Nov 2025 06:22:45 -0800 (PST) From: hariconscious@gmail.com To: oder_chiou@realtek.com, lgirdwood@gmail.com, broonie@kernel.org Cc: perex@perex.cz, tiwai@suse.com, khalid@kernel.org, shuah@kernel.org, david.hunter.linux@gmail.com, linux-sound@vger.kernel.org, linux-kernel@vger.kernel.org, HariKrishna Sagala Subject: [PATCH RFT] ASoC: codec: rt274: Use devm_request_threaded_irq to manage IRQ lifetime and fix smatch warning Date: Fri, 21 Nov 2025 19:39:43 +0530 Message-ID: <20251121140940.40678-4-hariconscious@gmail.com> X-Mailer: git-send-email 2.43.0 Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: HariKrishna Sagala Replace manual "request_threaded_irq()" with the device managed "devm_request_threaded_irq" to manage the IRQ lifetime and also it removes the smatch reported warning. Remove the manual "free_irq()" in the "remove" function as free_irq is tied to device teardown. Signed-off-by: HariKrishna Sagala --- Hello All, This patch replaces the manual management of IRQ with the device managed IRQ API. Also, it removes the smatch reported warning. sound/soc/codecs/rt274.c:1204 rt274_i2c_probe() warn:=20 'rt274->i2c->irq' from request_threaded_irq() not released on lines: 1204. Removed the "remove" function as IRQ is managed automatically. Runtime testing is requested to see no regressions. Please report any failures or unexpected behaviour, I will support in updating the patch accordingly. Similar warning is present in the codecs rt286 & rt298. If you are ok for updating those, will update them. Thank you. sound/soc/codecs/rt274.c | 12 +----------- 1 file changed, 1 insertion(+), 11 deletions(-) diff --git a/sound/soc/codecs/rt274.c b/sound/soc/codecs/rt274.c index 2c055c45111f..d441851dee8c 100644 --- a/sound/soc/codecs/rt274.c +++ b/sound/soc/codecs/rt274.c @@ -1188,7 +1188,7 @@ static int rt274_i2c_probe(struct i2c_client *i2c) regmap_write(rt274->regmap, RT274_UNSOLICITED_MIC, 0x82); =20 if (rt274->i2c->irq) { - ret =3D request_threaded_irq(rt274->i2c->irq, NULL, rt274_irq, + ret =3D devm_request_threaded_irq(&rt274->i2c->dev, rt274->i2c->irq, NUL= L, rt274_irq, IRQF_TRIGGER_HIGH | IRQF_ONESHOT, "rt274", rt274); if (ret !=3D 0) { dev_err(&i2c->dev, @@ -1204,15 +1204,6 @@ static int rt274_i2c_probe(struct i2c_client *i2c) return ret; } =20 -static void rt274_i2c_remove(struct i2c_client *i2c) -{ - struct rt274_priv *rt274 =3D i2c_get_clientdata(i2c); - - if (i2c->irq) - free_irq(i2c->irq, rt274); -} - - static struct i2c_driver rt274_i2c_driver =3D { .driver =3D { .name =3D "rt274", @@ -1222,7 +1213,6 @@ static struct i2c_driver rt274_i2c_driver =3D { #endif }, .probe =3D rt274_i2c_probe, - .remove =3D rt274_i2c_remove, .id_table =3D rt274_i2c_id, }; =20 base-commit: 24172e0d79900908cf5ebf366600616d29c9b417 --=20 2.43.0