From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-pl1-f172.google.com (mail-pl1-f172.google.com [209.85.214.172]) (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 353E837E314 for ; Wed, 8 Jul 2026 13:44:39 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.214.172 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1783518281; cv=none; b=fZUf21zqcxGjl/bGWUqhWZJmbot5VFMq8vXl3deCrZPyYymllv+vvUCRPWn2LDE94xifLVAAbb6foBxn7pgQKeL2OCzPha+og+qfOXOGQd/w4tdezQXEre5MhVPnRYJxc78IOcm3tcyRduCd6BHb+S2ujL51ughuEklwPuQuKIw= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1783518281; c=relaxed/simple; bh=/6Y5BzB+EVp5vKZkO9J82JZh78BmOLVDTi8bf+Sx4O4=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=jGdINYajg6q3b+kxfMo9d9jQ42Dc9//jJNccHCp9Wwl5ULTKHC7vYaggDbRD6pFoZ6gjP/h7pC/IEu3wFRoOUg1RCc62e9ShdVBltERPJVzasdc9Xtat5T7lRDswqTAbCh1oAHaPmSvF9TmjXz467vcE/y/rhGwR8B9xrTzLbx4= 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=osLdB7ul; arc=none smtp.client-ip=209.85.214.172 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="osLdB7ul" Received: by mail-pl1-f172.google.com with SMTP id d9443c01a7336-2cca0c5799eso5866985ad.0 for ; Wed, 08 Jul 2026 06:44:39 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1783518278; x=1784123078; 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:content-type; bh=srig+IvhMKute5mu4bsH0Xyo4Nt0NXF37ssG3w80uYE=; b=osLdB7ulSOYNLbyi4HhN758jJPYXYf1pvbIKZOFKtOJjOabBWIUBTW8dSxR2L2Fr6f KuFDPuaidVKuEcy5x0JKJdfplWSWed43XFAjA3DevzL1rWxV2vZCNe5MqnY0klUkqfY7 idDzqTehO50UXytT/8gEHYT8KjPZkl+9SnXHim+/fsRgzngSkm7J0gWAIeI1b4RqZl7s wTUaW4SwWfqCm52b/GN/xCcKVgD5G5FIe46nP+vADODujT0T327UaImdnjXJZi1RrzMn zlPFFbD+MaG51vCG5fAioLePWAoGBxO58YHa7FE17xAy4zIsM2aV57CUyOULRigTH25m mNVQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1783518278; x=1784123078; 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:content-type; bh=srig+IvhMKute5mu4bsH0Xyo4Nt0NXF37ssG3w80uYE=; b=dJm9kN8X6kcKnmD9wLoVx8XGP3KdUMiKMvxw7vAT87ArMV/o2hNKaMpURgrx7e3WYG TMi4cMAjN9TSVn5GPco+M7mqtsHNgNg+rQYZLEyAF5TMEHJmSSEcDWRUXYK/zE/SQBim La27kOHKHcF5nd3qdvU4kfpoLrjBGzFqHuaytUEeLpgfm+l+lv2ZftjBSTVzPOqU9GlZ CNj1y6ivcay9KvcCACuW/gPKRszgcol33WDasj3jCUMPj3t0rI6taBsBM0VxF7XWEhC0 JTIdEkPh9g9J+mOpVkyvjeYF9f+6nxVgbg8pXMCGg+yJh1CLZLSfkQY3YdwCXW1jMBIP oWfg== X-Forwarded-Encrypted: i=1; AHgh+RoB2lQJaszitlttVNArxISUAbv2R2wrZVLGKWaRsB3EjEpq2eBsdAxGL7tpEgTO+xay8E8B65mPIKCtrTA=@vger.kernel.org X-Gm-Message-State: AOJu0Yw1RN2rid5WxKQIsdtzLs715ztiG+M4s96kKh2HFaJvGXp//KGI s6ELrncU3FAryEUBLbWHRkGe8f0x+e209yJfs5oUmy7mOghIjFOt352vi5Y7vrsH X-Gm-Gg: AfdE7cnLcQloSorzQaB8jRhkiAjx7ECw7sQV2dJVrVPNJhRj2MLius46ubuBSwhGM0r bW64K5Ri8bLjk/fj51yIGHgAvpJFZcXx82b3LHo9dipVzNGx2SllfHaLEbOnuMD81IawhBn27PC QPj6g3owL7jKuCW/y3N+VZidiKT3B3QTJNe6Grwzf8K9225zy0SNiyxtdS2UStAyr8UriGwsppn u+ebSXwuQVtqa6RdUCwT8iEXtxU5SG8StSAhdF1PbB337ITvbkYlcd9OSTw/Qh63wit3yYfrpLd SoiNPwPU56ahgx2+pFEubD5NZIgvg4n/tRBF4CFeqrOEgYIzSHFzZWmpwwlFAHEMzlCtCidvDLo CZiL9iLYDPcTeqZMPSQEbTpaWLR3TH1U7jSZaf3/yeVC5pXjqqP7Eaa6x6sqhyUMHtEFdGAO7yc 4iMbfc5bmG5YTmzT5GtGmDJMVxI5EMo0wONtwyC3H3hlY= X-Received: by 2002:a05:6a21:a49:b0:3bf:9a30:3a12 with SMTP id adf61e73a8af0-3c0bd1d8b2fmr2976963637.50.1783518278453; Wed, 08 Jul 2026 06:44:38 -0700 (PDT) Received: from localhost.localdomain ([49.207.223.101]) by smtp.gmail.com with ESMTPSA id 5a478bee46e88-311747f72a6sm23648662eec.1.2026.07.08.06.44.35 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Wed, 08 Jul 2026 06:44:38 -0700 (PDT) From: Biren Pandya To: sakari.ailus@linux.intel.com, mani@kernel.org, mchehab@kernel.org, linux-media@vger.kernel.org, linux-kernel@vger.kernel.org Cc: Biren Pandya Subject: [PATCH v3 2/3] media: i2c: imx290: Drop manual fwnode_handle_put() via scope-based cleanup Date: Wed, 8 Jul 2026 19:14:05 +0530 Message-ID: <20260708134403.45935-7-birenpandya@gmail.com> X-Mailer: git-send-email 2.50.1 In-Reply-To: <20260708134403.45935-5-birenpandya@gmail.com> References: <20260615223055.39953-1-birenpandya@gmail.com> <20260708134403.45935-5-birenpandya@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 Utilize the __free(fwnode_handle) scoped guard macro from to automate the lifecycle management of the endpoint fwnode in imx290_parse_dt(). This safely ties the release of the fwnode_handle to its compiler scope, allowing us to drop the manual fwnode_handle_put() call and removing the risk of missed puts if new early returns are added in the future. Signed-off-by: Biren Pandya Reviewed-by: Manivannan Sadhasivam --- Changes in v3: - Resend as a complete series to fix broken threading. - Collected Reviewed-by tag. drivers/media/i2c/imx290.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/drivers/media/i2c/imx290.c b/drivers/media/i2c/imx290.c index 21cbc81cb2edc..5c369c7ee21f7 100644 --- a/drivers/media/i2c/imx290.c +++ b/drivers/media/i2c/imx290.c @@ -8,6 +8,7 @@ * Author: Manivannan Sadhasivam */ +#include #include #include #include @@ -1514,7 +1515,7 @@ static int imx290_parse_dt(struct imx290 *imx290) struct v4l2_fwnode_endpoint ep = { .bus_type = V4L2_MBUS_CSI2_DPHY }; - struct fwnode_handle *endpoint; + struct fwnode_handle *endpoint __free(fwnode_handle) = NULL; int ret; s64 fq; @@ -1527,7 +1528,6 @@ static int imx290_parse_dt(struct imx290 *imx290) } ret = v4l2_fwnode_endpoint_alloc_parse(endpoint, &ep); - fwnode_handle_put(endpoint); if (ret == -ENXIO) { dev_err(imx290->dev, "Unsupported bus type, should be CSI2\n"); goto done; -- 2.50.1 (Apple Git-155)