From nobody Tue Apr 7 16:17:46 2026 Received: from mail-4322.protonmail.ch (mail-4322.protonmail.ch [185.70.43.22]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id C57003FE356; Thu, 12 Mar 2026 17:16:34 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=185.70.43.22 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1773335797; cv=none; b=AdeNCYnItOZr4patbCGTXXmwIu1kV2144n7XdDdMriTT46CWB3Nvft+qneweBtnrdJi+MGaCV41CDoUPJSbGzBFZKIyrMakvCml3RgnjcrG+Yhydo2CI8+92iPC24oVElFJfRBftko/AjK0aEtJ8lU5git/9Qr0SSpvk6MP18d4= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1773335797; c=relaxed/simple; bh=VHwg5MUxzEK7wOWuAbvHaAaBfbz4LN/tW8AFhcKVB/g=; h=Date:To:From:Cc:Subject:Message-ID:In-Reply-To:References: MIME-Version:Content-Type; b=DKWE2EhLmXhlbStmV9K0W1weq6WNi6sOHkpuTGr1bf8v12nHcvtQ83n5qMtHfmQ8b7jCz6YQYjkNoTuvHl0IENJLgPZc7Gqdqb27yyHjskB8hHJFvzUavD9HWqVdd3UTiBCMzbqFUKx+UXa/pf7iEL/a9rRDVw82KjeND13dUxI= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=pm.me; spf=pass smtp.mailfrom=pm.me; dkim=pass (2048-bit key) header.d=pm.me header.i=@pm.me header.b=NODXxHQy; arc=none smtp.client-ip=185.70.43.22 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=pm.me Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=pm.me Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=pm.me header.i=@pm.me header.b="NODXxHQy" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=pm.me; s=protonmail3; t=1773335792; x=1773594992; bh=4G2O0xmDvSeKaWNCXXRz8HN+oJP7MY3SAgRZC2ST2Tw=; h=Date:To:From:Cc:Subject:Message-ID:In-Reply-To:References: Feedback-ID:From:To:Cc:Date:Subject:Reply-To:Feedback-ID: Message-ID:BIMI-Selector; b=NODXxHQykYDsDcXzAMdeEZhwjHqOVshfV8bDJ95pUVA1drFBqU/JKIcSN0+bHm6y3 j/4kSW9Cd8LZsdi9HiLXLYBXOQUNlmnPAVr2mE9SC6+VfkMmWiAzPFM55j7dvXaaqP lTNkb97OMatcwPlBTbuyl3mGpzyFzi32V7mXPhd8l4OlkcMgflh7qZXtLbPh6RDvV+ 6NWBPtHOSW2cW3AQOf3eM2G3qnfK5rNfuZTGkBtnwVoSMZzxytp5drzQ/jdKeuIBJ9 xBbDCiYN51IM8lRmzxtqfdE4Vm15HROduUpRB3Sf/q4JbTL41FormizEbr+lVtFo8o 5LldWh8USioTg== Date: Thu, 12 Mar 2026 17:16:28 +0000 To: Sakari Ailus , Mauro Carvalho Chehab , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Ben Kao From: Alexander Koskovich Cc: Laurent Pinchart , linux-media@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, Mauro Carvalho Chehab , Alexander Koskovich Subject: [PATCH v3 3/3] media: i2c: ov8856: parse and register V4L2 device tree properties Message-ID: <20260312-ov8856-v4l2-props-v3-3-3771ab40a4c0@pm.me> In-Reply-To: <20260312-ov8856-v4l2-props-v3-0-3771ab40a4c0@pm.me> References: <20260312-ov8856-v4l2-props-v3-0-3771ab40a4c0@pm.me> Feedback-ID: 37836894:user:proton X-Pm-Message-ID: 133d3e790956b494aa640149e14cd0411ce1317f 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" Parse V4L2 device tree properties and register controls for them. Signed-off-by: Alexander Koskovich --- drivers/media/i2c/ov8856.c | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/drivers/media/i2c/ov8856.c b/drivers/media/i2c/ov8856.c index dd01e1d515ff..8bedb47cd7cf 100644 --- a/drivers/media/i2c/ov8856.c +++ b/drivers/media/i2c/ov8856.c @@ -1887,12 +1887,14 @@ static const struct v4l2_ctrl_ops ov8856_ctrl_ops = =3D { =20 static int ov8856_init_controls(struct ov8856 *ov8856) { + struct i2c_client *client =3D v4l2_get_subdevdata(&ov8856->sd); + struct v4l2_fwnode_device_properties props; struct v4l2_ctrl_handler *ctrl_hdlr; s64 exposure_max, h_blank; int ret; =20 ctrl_hdlr =3D &ov8856->ctrl_handler; - ret =3D v4l2_ctrl_handler_init(ctrl_hdlr, 8); + ret =3D v4l2_ctrl_handler_init(ctrl_hdlr, 10); if (ret) return ret; =20 @@ -1956,6 +1958,15 @@ static int ov8856_init_controls(struct ov8856 *ov885= 6) goto err_ctrl_handler_free; } =20 + ret =3D v4l2_fwnode_device_parse(&client->dev, &props); + if (ret) + goto err_ctrl_handler_free; + + ret =3D v4l2_ctrl_new_fwnode_properties(ctrl_hdlr, &ov8856_ctrl_ops, + &props); + if (ret) + goto err_ctrl_handler_free; + ov8856->sd.ctrl_handler =3D ctrl_hdlr; =20 return 0; --=20 2.53.0