From nobody Thu Apr 9 04:05:06 2026 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (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 74F8939C63E; Mon, 6 Apr 2026 20:15:21 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1775506521; cv=none; b=I+bD9XsOaP7dwDBtxM6FQMpbV0CekCh8tQxC398ifpAiZwZVY2lj5kANkRWKckAp4Ir7S8ijRvKFqRVNqJHXPdmEQPjla5wuF6Lgb3D/Tl6C2ud4JcUpnA8Lo+kxJdL/AjRKXdbIgDRXu6HVCJWxxtkxTnwV8DqoMYF6DLJFa18= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1775506521; c=relaxed/simple; bh=slk4MNgaSC+kx7c2W231pz1R1uk/0PZTCyNeXo53Hek=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=KrTC8DGHCRCQfpir6uuEQx/cCXoUTX0q9h0x/nuUMz+s6GFKbKNsuci+CazKD8eMBykN8vvadjzpErxh/Ck7mIn1x2qYnsn0UbrbNZJS8NVkorqxdS6deCsBDnitssw933r0VzzeUYHx+ypHjgp9qhZNTuzx0TdR7nEZQHydxCw= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=nMjq8TK2; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="nMjq8TK2" Received: by smtp.kernel.org (Postfix) with ESMTPS id 3480CC19425; Mon, 6 Apr 2026 20:15:21 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1775506521; bh=slk4MNgaSC+kx7c2W231pz1R1uk/0PZTCyNeXo53Hek=; h=From:Date:Subject:References:In-Reply-To:To:Cc:Reply-To:From; b=nMjq8TK24j3D63dSO4imLTwT3pwAmhb60Ugm2mOs7ntNshQls6p5RZG4gae+PG0Zc 3amAqPSDKhvw+DGuEdjUKhL0XX6295iNLWO8+5IQzWUnEwzJEjSKi9KRHpmdTxSqhc c5P2n+NgoB2roiYzadhAp63AibafVK6uKQ/1v4kZRPN34QL3A8dCtFS81XIiNQfeIy leCkMMmIWsE+aMjIJjOAjqRK6bNU/JW1eclG8rwJHrMaMQpUQL8FWw73/nfPHflNNX mcxoPjV4EhCN0GasxHJWWSB9PM/JYLBVk2oEEfaNNczCiHw1mZ/M+e+d2Uwtj+/UWM gV59807RTBRAg== Received: from aws-us-west-2-korg-lkml-1.web.codeaurora.org (localhost.localdomain [127.0.0.1]) by smtp.lore.kernel.org (Postfix) with ESMTP id 1CE4BF46C78; Mon, 6 Apr 2026 20:15:21 +0000 (UTC) From: Dumitru Ceclan via B4 Relay Date: Mon, 06 Apr 2026 23:14:40 +0300 Subject: [PATCH v10 01/22] media: mc: Add INTERNAL pad flag Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260406-gmsl2-3_serdes-v10-1-645560fedca5@analog.com> References: <20260406-gmsl2-3_serdes-v10-0-645560fedca5@analog.com> In-Reply-To: <20260406-gmsl2-3_serdes-v10-0-645560fedca5@analog.com> To: Tomi Valkeinen , Mauro Carvalho Chehab , Sakari Ailus , Laurent Pinchart , Julien Massot , Rob Herring , =?utf-8?q?Niklas_S=C3=B6derlund?= , Greg Kroah-Hartman , Cosmin Tanislav Cc: mitrutzceclan@gmail.com, linux-media@vger.kernel.org, linux-kernel@vger.kernel.org, devicetree@vger.kernel.org, linux-staging@lists.linux.dev, linux-gpio@vger.kernel.org, =?utf-8?q?Niklas_S=C3=B6derlund?= , Martin Hecht , Tomi Valkeinen X-Mailer: b4 0.14.3 X-Developer-Signature: v=1; a=ed25519-sha256; t=1775506518; l=4211; i=dumitru.ceclan@analog.com; s=20240313; h=from:subject:message-id; bh=AreK0kDB/CS0mvU6CVYiJXYgsOXsG4rDStXAaRX8fng=; b=+vIQLXVmK0Ie8XAN23rqnkTqkJO+5z+G1Q2Eg871gD5nkQ3ILglp2zgpZQy2noi7ZQyDponFo CG2Smw1YPWtBL3kupQZmSmYlSNBfXcoxTtXki4gCs7mHVV3r2zGaPtI X-Developer-Key: i=dumitru.ceclan@analog.com; a=ed25519; pk=HdqMlVyrcazwoiai7oN6ghU+Bj1pusGUFRl30jhS7Bo= X-Endpoint-Received: by B4 Relay for dumitru.ceclan@analog.com/20240313 with auth_id=140 X-Original-From: Dumitru Ceclan Reply-To: dumitru.ceclan@analog.com From: Sakari Ailus Internal sink pads will be used as routing endpoints in V4L2 [GS]_ROUTING IOCTLs, to indicate that the stream begins in the entity. Internal sink pads are pads that have both SINK and INTERNAL flags set. Also prevent creating links to pads that have been flagged as internal and initialising SOURCE pads with INTERNAL flag set. Signed-off-by: Sakari Ailus Reviewed-by: Tomi Valkeinen Reviewed-by: Laurent Pinchart --- .../userspace-api/media/mediactl/media-types.rst | 9 +++++++++ drivers/media/mc/mc-entity.c | 15 +++++++++++= +--- include/uapi/linux/media.h | 1 + 3 files changed, 22 insertions(+), 3 deletions(-) diff --git a/Documentation/userspace-api/media/mediactl/media-types.rst b/D= ocumentation/userspace-api/media/mediactl/media-types.rst index 6332e8395263..200c37a1da26 100644 --- a/Documentation/userspace-api/media/mediactl/media-types.rst +++ b/Documentation/userspace-api/media/mediactl/media-types.rst @@ -361,6 +361,7 @@ Types and flags used to represent the media graph eleme= nts .. _MEDIA-PAD-FL-SINK: .. _MEDIA-PAD-FL-SOURCE: .. _MEDIA-PAD-FL-MUST-CONNECT: +.. _MEDIA-PAD-FL-INTERNAL: =20 .. flat-table:: Media pad flags :header-rows: 0 @@ -381,6 +382,14 @@ Types and flags used to represent the media graph elem= ents enabled links even when this flag isn't set; the absence of the flag doesn't imply there is none. =20 + * - ``MEDIA_PAD_FL_INTERNAL`` + - The internal flag indicates an internal pad that has no external + connections. As they are internal to entities, internal pads shall not + be connected with links. + + The internal flag may currently be present only in a sink pad where it + indicates that the :ref:``stream `` originates + from within the entity. =20 One and only one of ``MEDIA_PAD_FL_SINK`` and ``MEDIA_PAD_FL_SOURCE`` must be set for every pad. diff --git a/drivers/media/mc/mc-entity.c b/drivers/media/mc/mc-entity.c index 9519a537bfa2..df20356fa98b 100644 --- a/drivers/media/mc/mc-entity.c +++ b/drivers/media/mc/mc-entity.c @@ -209,11 +209,16 @@ int media_entity_pads_init(struct media_entity *entit= y, u16 num_pads, mutex_lock(&mdev->graph_mutex); =20 media_entity_for_each_pad(entity, iter) { + const u32 pad_flags =3D iter->flags & (MEDIA_PAD_FL_SINK | + MEDIA_PAD_FL_SOURCE | + MEDIA_PAD_FL_INTERNAL); + iter->entity =3D entity; iter->index =3D i++; =20 - if (hweight32(iter->flags & (MEDIA_PAD_FL_SINK | - MEDIA_PAD_FL_SOURCE)) !=3D 1) { + if (pad_flags !=3D MEDIA_PAD_FL_SINK && + pad_flags !=3D (MEDIA_PAD_FL_SINK | MEDIA_PAD_FL_INTERNAL) && + pad_flags !=3D MEDIA_PAD_FL_SOURCE) { ret =3D -EINVAL; break; } @@ -1118,7 +1123,8 @@ int media_get_pad_index(struct media_entity *entity, = u32 pad_type, =20 for (i =3D 0; i < entity->num_pads; i++) { if ((entity->pads[i].flags & - (MEDIA_PAD_FL_SINK | MEDIA_PAD_FL_SOURCE)) !=3D pad_type) + (MEDIA_PAD_FL_SINK | MEDIA_PAD_FL_SOURCE | + MEDIA_PAD_FL_INTERNAL)) !=3D pad_type) continue; =20 if (entity->pads[i].sig_type =3D=3D sig_type) @@ -1148,6 +1154,9 @@ media_create_pad_link(struct media_entity *source, u1= 6 source_pad, return -EINVAL; if (WARN_ON(!(sink->pads[sink_pad].flags & MEDIA_PAD_FL_SINK))) return -EINVAL; + if (WARN_ON(source->pads[source_pad].flags & MEDIA_PAD_FL_INTERNAL) || + WARN_ON(sink->pads[sink_pad].flags & MEDIA_PAD_FL_INTERNAL)) + return -EINVAL; =20 link =3D media_add_link(&source->links); if (link =3D=3D NULL) diff --git a/include/uapi/linux/media.h b/include/uapi/linux/media.h index 1c80b1d6bbaf..80cfd12a43fc 100644 --- a/include/uapi/linux/media.h +++ b/include/uapi/linux/media.h @@ -208,6 +208,7 @@ struct media_entity_desc { #define MEDIA_PAD_FL_SINK (1U << 0) #define MEDIA_PAD_FL_SOURCE (1U << 1) #define MEDIA_PAD_FL_MUST_CONNECT (1U << 2) +#define MEDIA_PAD_FL_INTERNAL (1U << 3) =20 struct media_pad_desc { __u32 entity; /* entity ID */ --=20 2.51.0 From nobody Thu Apr 9 04:05:06 2026 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (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 7543A39C643; Mon, 6 Apr 2026 20:15:21 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1775506521; cv=none; b=NQTxRoJJlbDFVBAkwqMJLkaRz62Vzw1BNdYwrN2TmtCwmJTaufSm4dn67A7h4EddBbZQ5RT6DMa1n+0Qlh3Nyd/iTHSxry7d0RT0yhZvfO9YcrxysSapht2qlG2Ewa1s4vHIuknTc4IHolD5ktc1j1/QpkhoG/M837JMBAK0bUs= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1775506521; c=relaxed/simple; bh=Xn5/p8wZ+o0On/psUllQui3rTHU86ibt8plFhXgBEtw=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=AtTA3j8CwHds+ELSfhZldzU0Ny1yPWQEkjHf0uhGR1BRDoqzUahATIA6dhSWqwN/nJrhalBACXcsav/xwuEHhvpfM573+uCZSdFZGGMgMr3vstogPE78KB9d2R8EnaCWepnGjWT8UENtuNLC+xcTedXAKMlc1WYqSsDSvDVzpdM= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=k91jTdAv; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="k91jTdAv" Received: by smtp.kernel.org (Postfix) with ESMTPS id 42752C2BCB2; Mon, 6 Apr 2026 20:15:21 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1775506521; bh=Xn5/p8wZ+o0On/psUllQui3rTHU86ibt8plFhXgBEtw=; h=From:Date:Subject:References:In-Reply-To:To:Cc:Reply-To:From; b=k91jTdAvTwA7Hd+mnEUWKTmEBtinjiP80DBlQh+tOAksvxulCPNgjkbLOGNbyO5pT M2TQbbwDq/pSFGyfKmhRzDWbk7oyVpajLZEfS6X7mBv3HiPlByMLh0wUzNUelNVS6N 8BEUe2NT+ly8ODMIG0yTBJd/B5z5uZVxslQyEcvAnVlv+3zVOvj9RUJlyFFo/3GAqD u3k3MhueqWOfFkLCFJin/iGqbVfFuWjBLGPhvOpLArTeKgCqoJ8Pj6MqDwJnaBgRrf d7Wf3NYBlxABTEIPVs2z05B3YbtPhutB2qlTmEl6Vil8twOjdBXYUTyJKtQS2KvMi0 aU0YRhLe8c9Nw== Received: from aws-us-west-2-korg-lkml-1.web.codeaurora.org (localhost.localdomain [127.0.0.1]) by smtp.lore.kernel.org (Postfix) with ESMTP id 35B25F46C7C; Mon, 6 Apr 2026 20:15:21 +0000 (UTC) From: Dumitru Ceclan via B4 Relay Date: Mon, 06 Apr 2026 23:14:41 +0300 Subject: [PATCH v10 02/22] dt-bindings: media: i2c: max96717: add support for I2C ATR Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260406-gmsl2-3_serdes-v10-2-645560fedca5@analog.com> References: <20260406-gmsl2-3_serdes-v10-0-645560fedca5@analog.com> In-Reply-To: <20260406-gmsl2-3_serdes-v10-0-645560fedca5@analog.com> To: Tomi Valkeinen , Mauro Carvalho Chehab , Sakari Ailus , Laurent Pinchart , Julien Massot , Rob Herring , =?utf-8?q?Niklas_S=C3=B6derlund?= , Greg Kroah-Hartman , Cosmin Tanislav Cc: mitrutzceclan@gmail.com, linux-media@vger.kernel.org, linux-kernel@vger.kernel.org, devicetree@vger.kernel.org, linux-staging@lists.linux.dev, linux-gpio@vger.kernel.org, =?utf-8?q?Niklas_S=C3=B6derlund?= , Martin Hecht , Cosmin Tanislav X-Mailer: b4 0.14.3 X-Developer-Signature: v=1; a=ed25519-sha256; t=1775506518; l=1814; i=dumitru.ceclan@analog.com; s=20240313; h=from:subject:message-id; bh=qfde6m/Zuq9hlZ5MNFTWYc4DyblJJG2tEqlBoZZrCn8=; b=chxkvMdYSg7hLLneO5F1FHCgGGhiUIpMFWsmtsLESPfI0Ah3E4CnRq0IskRB4t5GdlGHVIYp8 iaGC5MzWl3xDeN2OnwsIhF1Q8u1u7tvQ3YrsgQajBQgtSSlhXPt2J6A X-Developer-Key: i=dumitru.ceclan@analog.com; a=ed25519; pk=HdqMlVyrcazwoiai7oN6ghU+Bj1pusGUFRl30jhS7Bo= X-Endpoint-Received: by B4 Relay for dumitru.ceclan@analog.com/20240313 with auth_id=140 X-Original-From: Dumitru Ceclan Reply-To: dumitru.ceclan@analog.com From: Cosmin Tanislav MAX96717 is capable of address translation for the connected I2C slaves. Add support for I2C ATR while keeping I2C gate for compatibility to support this usecase. Signed-off-by: Cosmin Tanislav Acked-by: Rob Herring (Arm) --- .../bindings/media/i2c/maxim,max96717.yaml | 39 ++++++++++++++++++= ++++ 1 file changed, 39 insertions(+) diff --git a/Documentation/devicetree/bindings/media/i2c/maxim,max96717.yam= l b/Documentation/devicetree/bindings/media/i2c/maxim,max96717.yaml index d1e8ba6e368e..976f6dd2c164 100644 --- a/Documentation/devicetree/bindings/media/i2c/maxim,max96717.yaml +++ b/Documentation/devicetree/bindings/media/i2c/maxim,max96717.yaml @@ -91,6 +91,30 @@ properties: incoming GMSL2 link. Therefore, it supports an i2c-gate subnode to configure a sensor. =20 + i2c-alias-pool: + maxItems: 2 + + i2c-atr: + type: object + additionalProperties: false + + properties: + '#address-cells': + const: 1 + + '#size-cells': + const: 0 + + patternProperties: + '^i2c@[01]$': + $ref: /schemas/i2c/i2c-controller.yaml# + unevaluatedProperties: false + properties: + reg: + items: + minimum: 0 + maximum: 1 + required: - compatible - reg @@ -98,6 +122,21 @@ required: =20 additionalProperties: false =20 +allOf: + - $ref: /schemas/i2c/i2c-atr.yaml# + + - anyOf: + - oneOf: + - required: [i2c-atr] + - required: [i2c-gate] + + - not: + required: [i2c-atr, i2c-gate] + +dependentRequired: + i2c-atr: [i2c-alias-pool] + i2c-alias-pool: [i2c-atr] + examples: - | #include --=20 2.51.0 From nobody Thu Apr 9 04:05:06 2026 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (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 74EF439C63C; Mon, 6 Apr 2026 20:15:21 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1775506521; cv=none; b=D542pcRXNjDjDwhFSJctQvTW6M32LbkguMGUoyzdpTdHHtyAAvS9E9wTe3ocU+xOrqbrGLB2vVS+uzzK/4a5Rz3tc25J98aH/CuC8+4IIrlE23scv7AxmYnNkUh5+ml0jYz2aFWksrc8PwYxdUe5qMR3XMz/FngDkpmlhiIFlVY= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1775506521; c=relaxed/simple; bh=TN5gW6iNB2jW1IrzWJimE/kYjWyumxoU2kSZpdU/BtA=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=q7ZB9SQyV921F3sSU0KCDGA7leB3E4wjmlLF9jaDi9IkxtEHhGvp5SNu4R9qa/6uP2xg8xx2nNnN7CCbYBn3g8NKPWQWWvdfvxQCBS7HGZ5Ix7m5L4ova8DQHgDRhkEV6DhaPGH8Dgi1Rr2xooruYsC89r+XW6F/4N/br5jhj0A= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=T7wzcy07; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="T7wzcy07" Received: by smtp.kernel.org (Postfix) with ESMTPS id 55AF4C4AF09; Mon, 6 Apr 2026 20:15:21 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1775506521; bh=TN5gW6iNB2jW1IrzWJimE/kYjWyumxoU2kSZpdU/BtA=; h=From:Date:Subject:References:In-Reply-To:To:Cc:Reply-To:From; b=T7wzcy07TwxtXqaHmuVfQbhI5sx0mfuExs0+m0p5Pj6y6mjB7VbKp1hipPv5ypMna 4vEoVgOgOgEUJs81NdZKuKOeieOs3AxuiQYVcTfkIMYbGVo6oGnjHY4ZJHwRyIYLWO MVgP25tadGXuTb4001JC0iUAKX2W/lRdVH9cmfGK3S2OzNfoPbzWEnoH3CaHM59Kkc PoSzvGs7aW7FixToLM8/Jm7mNSD3Jo0VDJUzwPSWckVkiPLtz9/iUisetf4ZvJVwvh fI7NxhAFcADZ7WccA0VWeQMXpuTqcIVQ9GkSIqhXPaeNUdOcYY1FdPRpXQNjAtQELo VzZEvIeMHqChw== Received: from aws-us-west-2-korg-lkml-1.web.codeaurora.org (localhost.localdomain [127.0.0.1]) by smtp.lore.kernel.org (Postfix) with ESMTP id 47A3EF46C7E; Mon, 6 Apr 2026 20:15:21 +0000 (UTC) From: Dumitru Ceclan via B4 Relay Date: Mon, 06 Apr 2026 23:14:42 +0300 Subject: [PATCH v10 03/22] dt-bindings: media: i2c: max96717: add support for pinctrl/pinconf Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260406-gmsl2-3_serdes-v10-3-645560fedca5@analog.com> References: <20260406-gmsl2-3_serdes-v10-0-645560fedca5@analog.com> In-Reply-To: <20260406-gmsl2-3_serdes-v10-0-645560fedca5@analog.com> To: Tomi Valkeinen , Mauro Carvalho Chehab , Sakari Ailus , Laurent Pinchart , Julien Massot , Rob Herring , =?utf-8?q?Niklas_S=C3=B6derlund?= , Greg Kroah-Hartman , Cosmin Tanislav Cc: mitrutzceclan@gmail.com, linux-media@vger.kernel.org, linux-kernel@vger.kernel.org, devicetree@vger.kernel.org, linux-staging@lists.linux.dev, linux-gpio@vger.kernel.org, =?utf-8?q?Niklas_S=C3=B6derlund?= , Martin Hecht , Cosmin Tanislav X-Mailer: b4 0.14.3 X-Developer-Signature: v=1; a=ed25519-sha256; t=1775506518; l=4016; i=dumitru.ceclan@analog.com; s=20240313; h=from:subject:message-id; bh=sExaJUhOeiAGEBZqr9l/7UndPhdjAg2W2En5kv5tuKE=; b=3/qzg3zCnDP1tb7OY1oG/gCYXT0JBP6jwJ1OjDxxBnC1VK7gRYT0XacvkOWs14LZYghC6v9MA HcB+qA4NYQ3DPTAd1OwrXMmjZ9RN0nen4GUX/W/laLFD02I/jMK7aY6 X-Developer-Key: i=dumitru.ceclan@analog.com; a=ed25519; pk=HdqMlVyrcazwoiai7oN6ghU+Bj1pusGUFRl30jhS7Bo= X-Endpoint-Received: by B4 Relay for dumitru.ceclan@analog.com/20240313 with auth_id=140 X-Original-From: Dumitru Ceclan Reply-To: dumitru.ceclan@analog.com From: Cosmin Tanislav MAX96717 is capable of configuring various pin properties. Add pinctrl/pinconf properties to support this usecase. Signed-off-by: Cosmin Tanislav Reviewed-by: Rob Herring (Arm) --- .../bindings/media/i2c/maxim,max96717.yaml | 105 +++++++++++++++++= ++++ 1 file changed, 105 insertions(+) diff --git a/Documentation/devicetree/bindings/media/i2c/maxim,max96717.yam= l b/Documentation/devicetree/bindings/media/i2c/maxim,max96717.yaml index 976f6dd2c164..d507cad18edc 100644 --- a/Documentation/devicetree/bindings/media/i2c/maxim,max96717.yaml +++ b/Documentation/devicetree/bindings/media/i2c/maxim,max96717.yaml @@ -120,6 +120,111 @@ required: - reg - ports =20 +patternProperties: + '-pins$': + type: object + additionalProperties: false + + properties: + function: + enum: [gpio, rclkout] + + pins: true + drive-open-drain: true + drive-push-pull: true + bias-disable: true + output-disable: true + output-enable: true + output-low: true + output-high: true + input-enable: true + + slew-rate: + description: | + Slew rate. + Rise and fall times represent the time needed for a GPIO to go + from 20% to 80% of VDDIO. + 0 - Fastest + rise: 1.0ns @ 1.8V, 0.6ns @ 3.3V, + fall: 0.8ns @ 1.8V, 0.5ns @ 3.3V + 1 - Fast + rise: 2.1ns @ 1.8V, 1.1ns @ 3.3V, + fall: 2.0ns @ 1.8V, 1.1ns @ 3.3V + 2 - Slow + rise: 4.0ns @ 1.8V, 2.3ns @3.3V, + fall: 10.0ns @ 1.8V, 5.0ns @3.3V + 3 - Slowest + rise: 9.0ns @ 1.8V, 5.0ns @3.3V, + fall: 10.0ns @ 1.8V, 5.0ns @3.3V + maximum: 3 + + bias-pull-up: + oneOf: + - type: boolean + description: Enable regular 40kOhm pull-up + - enum: [ 40000, 1000000 ] + description: Enable either the 40kOhm or the 1MOhm pull-up + + bias-pull-down: + oneOf: + - type: boolean + description: Enable regular 40kOhm pull-down + - enum: [ 40000, 1000000 ] + description: Enable either the 40kOhm or the 1MOhm pull-down + + maxim,jitter-compensation: + type: boolean + description: | + Enables jitter compensation. + Jitter compensation is used to minimize the jitter of the + signals transmitted from the deserializer to the serializer + by adding a fixed delay to every transition on the serializer + side. This can be used for pulse generation where timing is + critical. + + maxim,tx-id: + $ref: /schemas/types.yaml#/definitions/uint32 + description: + Enable transmission of the pin state from the serializer to + the deserializer using the specified identifier. + maximum: 31 + + maxim,rx-id: + $ref: /schemas/types.yaml#/definitions/uint32 + description: + Enable transmission of the pin state from the deserializer to + the serializer using the specified identifier. + maximum: 31 + + required: + - pins + - function + + allOf: + - $ref: /schemas/pinctrl/pincfg-node.yaml# + - $ref: /schemas/pinctrl/pinmux-node.yaml# + + - if: + properties: + function: + const: gpio + then: + properties: + pins: + items: + enum: [mfp0, mfp1, mfp2, mfp3, mfp4, mfp5, mfp6, mfp7, + mfp8, mfp9, mfp10] + + - if: + properties: + function: + const: rclkout + then: + properties: + pins: + items: + enum: [mfp2, mfp4] + additionalProperties: false =20 allOf: --=20 2.51.0 From nobody Thu Apr 9 04:05:06 2026 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (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 83A9639C645; Mon, 6 Apr 2026 20:15:21 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1775506521; cv=none; b=W8yOy0hH8+RF7OW0C//QtA4p257Ahrq58jNQhsziGovKoITl8Bgfys5bNklbXhqbitPBuTOoHZtV6GzEavyztjh/QGap6ME/r8OddA813P6tpBy503MeznWiNSUMEg5+wt5v3uXkHsrE/p9TvkQNqPskf0e+PYibmpa1xUwtQXY= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1775506521; c=relaxed/simple; bh=Sry+uDii319VRYofHQb5iOaUnnf0yvES4yy/guIbB1I=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=uiV9ojHXl9cN4x1V1xnCR7kY51plZgBkLOS/jIhCjwiUf9xdUKYh/M1KlkcDby188pXinT969zowAR3qHVEtHnkRhC7cKpFCWKy06NGq/Mx7vJ2hRBC7I6ZZH8PQFKd3SW2NZro+SjN+1RMKXgqza4ODY7vCdFVdqd93k0wtkS0= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=rESA4Koe; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="rESA4Koe" Received: by smtp.kernel.org (Postfix) with ESMTPS id 5FA03C2BCAF; Mon, 6 Apr 2026 20:15:21 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1775506521; bh=Sry+uDii319VRYofHQb5iOaUnnf0yvES4yy/guIbB1I=; h=From:Date:Subject:References:In-Reply-To:To:Cc:Reply-To:From; b=rESA4KoeiIZdlBMRJyWtb8GCtw4drLhRhSF99kym6rX8kgUbJrfmyTUujB8V8v1o5 QUA+UeaDfufgL/ls5ulNqf5hbswy5xDRKe6li9Mu7ab4jRWxBkcMxiY6h/NLqDDjaP jcIzk5XukLimRiCC4HwnRyBBy/ppoZxejqeUH2Mhnpzte8CRG59CYXCZ8UgHlIfPXm V3T2i1/u3dKZi7RWx2eSBjloFdiGSshj8i3ZWJxZtthMLt9StV9L9WjdzgR+vRSYcO lWCY3bTiCh5zdRY7FMepL1nwAwpoGq62wISfU3a8k+6prTVgESJGBXyjHW+rhEmHOa zHgO+kaid0GJw== Received: from aws-us-west-2-korg-lkml-1.web.codeaurora.org (localhost.localdomain [127.0.0.1]) by smtp.lore.kernel.org (Postfix) with ESMTP id 573BBF46C48; Mon, 6 Apr 2026 20:15:21 +0000 (UTC) From: Dumitru Ceclan via B4 Relay Date: Mon, 06 Apr 2026 23:14:43 +0300 Subject: [PATCH v10 04/22] dt-bindings: media: i2c: max96717: add support for MAX9295A Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260406-gmsl2-3_serdes-v10-4-645560fedca5@analog.com> References: <20260406-gmsl2-3_serdes-v10-0-645560fedca5@analog.com> In-Reply-To: <20260406-gmsl2-3_serdes-v10-0-645560fedca5@analog.com> To: Tomi Valkeinen , Mauro Carvalho Chehab , Sakari Ailus , Laurent Pinchart , Julien Massot , Rob Herring , =?utf-8?q?Niklas_S=C3=B6derlund?= , Greg Kroah-Hartman , Cosmin Tanislav Cc: mitrutzceclan@gmail.com, linux-media@vger.kernel.org, linux-kernel@vger.kernel.org, devicetree@vger.kernel.org, linux-staging@lists.linux.dev, linux-gpio@vger.kernel.org, =?utf-8?q?Niklas_S=C3=B6derlund?= , Martin Hecht , Cosmin Tanislav X-Mailer: b4 0.14.3 X-Developer-Signature: v=1; a=ed25519-sha256; t=1775506518; l=1215; i=dumitru.ceclan@analog.com; s=20240313; h=from:subject:message-id; bh=8jacOUwQxTYOOAqlRYCuRO4h/l1w0TlJWVRJXtwaMxI=; b=SDnFkPLK1Ecy/yKbPLQUh8xHjM9dzVq0bELfY+b4K8Mz8y0yo7vjDRoiVZIX8TLEzKElYYfFY 02H+L1hzzYKCGKEKPow3nuJPmyOOEKFZp3GhrbQ9KTCmoqtvyEVFXle X-Developer-Key: i=dumitru.ceclan@analog.com; a=ed25519; pk=HdqMlVyrcazwoiai7oN6ghU+Bj1pusGUFRl30jhS7Bo= X-Endpoint-Received: by B4 Relay for dumitru.ceclan@analog.com/20240313 with auth_id=140 X-Original-From: Dumitru Ceclan Reply-To: dumitru.ceclan@analog.com From: Cosmin Tanislav MAX9295A is an older variant of the MAX96717 which does not support tunnel mode. Document the compatibility. Signed-off-by: Cosmin Tanislav Acked-by: Rob Herring (Arm) --- Documentation/devicetree/bindings/media/i2c/maxim,max96717.yaml | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/Documentation/devicetree/bindings/media/i2c/maxim,max96717.yam= l b/Documentation/devicetree/bindings/media/i2c/maxim,max96717.yaml index d507cad18edc..bbb38b3de7df 100644 --- a/Documentation/devicetree/bindings/media/i2c/maxim,max96717.yaml +++ b/Documentation/devicetree/bindings/media/i2c/maxim,max96717.yaml @@ -24,12 +24,17 @@ description: =20 The GMSL2 serial link operates at a fixed rate of 3Gbps or 6Gbps in the forward direction and 187.5Mbps in the reverse direction. + MAX96717F only supports a fixed rate of 3Gbps in the forward direction. =20 + MAX9295A only supports pixel mode. + properties: compatible: oneOf: - - const: maxim,max96717f + - enum: + - maxim,max9295a + - maxim,max96717f - items: - enum: - maxim,max96717 --=20 2.51.0 From nobody Thu Apr 9 04:05:06 2026 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (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 A02BB39D6D1; Mon, 6 Apr 2026 20:15:21 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1775506521; cv=none; b=b4QgGJSaEa9TdYSNjVeTZPFd7cbZ9rCSuzRBUVSNYIDIoi07O1urR7DfG5OeBFNyZx0pHsKvinlJR+xhNHLfUOZTtPJsH4lpYUwbF3Ra65g+NBdXAF9K8GCtNiU4k3TJHlqOKhhXW5xdas7DGg4pr/uF+BcceLw5oRssl+fGbYw= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1775506521; c=relaxed/simple; bh=xMIlwRdst1SeOe2HLSassKpp6FloKB+OdNNB6+GEXuc=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=BELg8CrPSI4oinhMMbwk3hYNgaz0lAuFWcFTereUsOdkLUqYTcDfWRrNbqYwuXxAMR1FhTVKL0ydhBTbK1IN7CgCtlZlP0HkTUmK9yj9JyN5IExucl4bNPFL/YKLS4xGyy75hcv6NDq5Rsf83yE+1RhKZVXRA7l3PYpvBpJekcM= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=YQ6olXn1; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="YQ6olXn1" Received: by smtp.kernel.org (Postfix) with ESMTPS id 7397DC2BCB6; Mon, 6 Apr 2026 20:15:21 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1775506521; bh=xMIlwRdst1SeOe2HLSassKpp6FloKB+OdNNB6+GEXuc=; h=From:Date:Subject:References:In-Reply-To:To:Cc:Reply-To:From; b=YQ6olXn1q3ZLvyQoKLpJ/PTrj3EO5zad2gqLE57ardQrzTklwvBW7bTYi4Y2AFDZ/ +TWiGen4jKhS0W0/VJuk3CZhXRYp8gZDOXljvlcZ7cLnRhWQA5zXxEVkCU0cPJVX3u qn3dD8XvfqnlcY5hvZwJHXtNUMXaYVZ8n8lynmStyrDhiQVzUJ7KPsfDx992HZPS0C nQlZ74VrQdQ8+yvl672KQwR5040CghZmyoJgvxucXu2jBFMI16eQvz9B1qEhmmf9ri jJUtTF5vVcAtA0jw9Ccz7k9UFZ9HnNFyTJ7NTz+Zg6lXJG8Jj6rlltzP+f0DeVqgUx rEsvJbrlWa7FA== Received: from aws-us-west-2-korg-lkml-1.web.codeaurora.org (localhost.localdomain [127.0.0.1]) by smtp.lore.kernel.org (Postfix) with ESMTP id 69845F46C7B; Mon, 6 Apr 2026 20:15:21 +0000 (UTC) From: Dumitru Ceclan via B4 Relay Date: Mon, 06 Apr 2026 23:14:44 +0300 Subject: [PATCH v10 05/22] dt-bindings: media: i2c: max96717: add support for MAX96793 Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260406-gmsl2-3_serdes-v10-5-645560fedca5@analog.com> References: <20260406-gmsl2-3_serdes-v10-0-645560fedca5@analog.com> In-Reply-To: <20260406-gmsl2-3_serdes-v10-0-645560fedca5@analog.com> To: Tomi Valkeinen , Mauro Carvalho Chehab , Sakari Ailus , Laurent Pinchart , Julien Massot , Rob Herring , =?utf-8?q?Niklas_S=C3=B6derlund?= , Greg Kroah-Hartman , Cosmin Tanislav Cc: mitrutzceclan@gmail.com, linux-media@vger.kernel.org, linux-kernel@vger.kernel.org, devicetree@vger.kernel.org, linux-staging@lists.linux.dev, linux-gpio@vger.kernel.org, =?utf-8?q?Niklas_S=C3=B6derlund?= , Martin Hecht , Cosmin Tanislav X-Mailer: b4 0.14.3 X-Developer-Signature: v=1; a=ed25519-sha256; t=1775506518; l=1028; i=dumitru.ceclan@analog.com; s=20240313; h=from:subject:message-id; bh=41yLSzOEvoj0Jv3WU/O/DMBlpijKUM4gvomwlNGqTSk=; b=I74Ntcm65APAwmXF/zoNlyjP7IKTwdClyNRGFWY8AhoKXGEWakKi6gWlVVaZmHL1rrqQvLT9M AD0S5FGyIwLCtKwhvwhNej/iZDoFrSH3O8lFpG7d6k2Aykzt3IEkIWZ X-Developer-Key: i=dumitru.ceclan@analog.com; a=ed25519; pk=HdqMlVyrcazwoiai7oN6ghU+Bj1pusGUFRl30jhS7Bo= X-Endpoint-Received: by B4 Relay for dumitru.ceclan@analog.com/20240313 with auth_id=140 X-Original-From: Dumitru Ceclan Reply-To: dumitru.ceclan@analog.com From: Cosmin Tanislav MAX96793 is a newer variant of the MAX96717 which also supports GMSL3 links. Document this compatibility. Signed-off-by: Cosmin Tanislav Acked-by: Rob Herring (Arm) --- Documentation/devicetree/bindings/media/i2c/maxim,max96717.yaml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/Documentation/devicetree/bindings/media/i2c/maxim,max96717.yam= l b/Documentation/devicetree/bindings/media/i2c/maxim,max96717.yaml index bbb38b3de7df..0d53637a6991 100644 --- a/Documentation/devicetree/bindings/media/i2c/maxim,max96717.yaml +++ b/Documentation/devicetree/bindings/media/i2c/maxim,max96717.yaml @@ -29,6 +29,8 @@ description: =20 MAX9295A only supports pixel mode. =20 + MAX96793 also supports GMSL3 mode. + properties: compatible: oneOf: @@ -38,6 +40,7 @@ properties: - items: - enum: - maxim,max96717 + - maxim,max96793 - const: maxim,max96717f =20 '#gpio-cells': --=20 2.51.0 From nobody Thu Apr 9 04:05:06 2026 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (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 A6EE839D6E1; Mon, 6 Apr 2026 20:15:21 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1775506521; cv=none; b=FzJLVhV1pLf72n2GOovV6vEdK/URx8CfaXIXV0GrSqiEozwVl8vGCU8ie77NhaNL0xjCCRdQUz4cYKPy0Egdj8c5CHKZRrITtMiJE7qG+gX3Wy4eEzSbeIw1EZfNP1zaEen/7btlurFM9XVqAn4MKLFx9EFzGtNm1RDeUM73Hr0= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1775506521; c=relaxed/simple; bh=IQBwMweUNw6Rt0TiIjy8p83MEuUtBZbfZ7258tl1oDQ=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=CndtLUpLibzTw6L5l9Y09l5WmnmmC29iKI0jcUvWnKq8eBwUGcuziFeGADl+xQY1/dmvzyaPrXeSErndsGJZ4dL0KHnJq+ANQr1AciMaOoVO6XPx60GL5jrL+1f5KCHTxorRV2W0u+HqJSlArxD3Mv9bnGDJ9hes/UiUYv0qYjU= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=c5Dn8HPb; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="c5Dn8HPb" Received: by smtp.kernel.org (Postfix) with ESMTPS id 875B7C2BCB1; Mon, 6 Apr 2026 20:15:21 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1775506521; bh=IQBwMweUNw6Rt0TiIjy8p83MEuUtBZbfZ7258tl1oDQ=; h=From:Date:Subject:References:In-Reply-To:To:Cc:Reply-To:From; b=c5Dn8HPbJR6i75U0y4N1Do8FclnV036KKGC6/NAUEaMdgoX0a4YxeiOGwNVYdBD4i 0oBzS+DD7C0lyy72S1seROKLQDFfKwWHexOu3lbJIL9colfXGglpbaN5XHvq0yD3N+ qX+GI7vu4+88SPV9QxbNuQGqYhtm0LzS33AAKaNDMUfWM8r8qiQ+QZBOqZuvxU+dCm SoYHaB2qA43dLiTb/eCdVKlOvAJrcBFZuivVMltS14T+vrxSpTRUreKFAonrytgukj zSunhJBaSNRiFgmPAlohE6KF/8/7p9kk6ZFQdknahFpr9fHX3HQxYLaeg3KR4cvRS4 YWw3mGUApRf1g== Received: from aws-us-west-2-korg-lkml-1.web.codeaurora.org (localhost.localdomain [127.0.0.1]) by smtp.lore.kernel.org (Postfix) with ESMTP id 7B473F46C7C; Mon, 6 Apr 2026 20:15:21 +0000 (UTC) From: Dumitru Ceclan via B4 Relay Date: Mon, 06 Apr 2026 23:14:45 +0300 Subject: [PATCH v10 06/22] dt-bindings: media: i2c: max96712: use pattern properties for ports Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260406-gmsl2-3_serdes-v10-6-645560fedca5@analog.com> References: <20260406-gmsl2-3_serdes-v10-0-645560fedca5@analog.com> In-Reply-To: <20260406-gmsl2-3_serdes-v10-0-645560fedca5@analog.com> To: Tomi Valkeinen , Mauro Carvalho Chehab , Sakari Ailus , Laurent Pinchart , Julien Massot , Rob Herring , =?utf-8?q?Niklas_S=C3=B6derlund?= , Greg Kroah-Hartman , Cosmin Tanislav Cc: mitrutzceclan@gmail.com, linux-media@vger.kernel.org, linux-kernel@vger.kernel.org, devicetree@vger.kernel.org, linux-staging@lists.linux.dev, linux-gpio@vger.kernel.org, =?utf-8?q?Niklas_S=C3=B6derlund?= , Martin Hecht , Cosmin Tanislav X-Mailer: b4 0.14.3 X-Developer-Signature: v=1; a=ed25519-sha256; t=1775506518; l=2057; i=dumitru.ceclan@analog.com; s=20240313; h=from:subject:message-id; bh=jS3B9xKEhVOSCEaka8S3gGwbqQ79uBc4o5geNrA6dpY=; b=bhkun5Y+Ph3DTaCcRhX8gK937XWKDeZ0E1ZzyGLf8Ls2Q4htReucSvwI/WWOqeSsOqs+Q/DG7 7q62zOndlcvBzLcTZoEPCpRLE2e0IMcNBl1cPRlXzxz9MDpIfzLbx1g X-Developer-Key: i=dumitru.ceclan@analog.com; a=ed25519; pk=HdqMlVyrcazwoiai7oN6ghU+Bj1pusGUFRl30jhS7Bo= X-Endpoint-Received: by B4 Relay for dumitru.ceclan@analog.com/20240313 with auth_id=140 X-Original-From: Dumitru Ceclan Reply-To: dumitru.ceclan@analog.com From: Cosmin Tanislav The MAX96712 and MAX96724 support up to 4 separate PHYs, depending on the selected PHY configuration. Use patternProperties to document this. The input ports are all the same, use patternProperties for them. Signed-off-by: Cosmin Tanislav Acked-by: Rob Herring (Arm) Reviewed-by: Niklas S=C3=B6derlund --- .../bindings/media/i2c/maxim,max96712.yaml | 29 ++++++++----------= ---- 1 file changed, 10 insertions(+), 19 deletions(-) diff --git a/Documentation/devicetree/bindings/media/i2c/maxim,max96712.yam= l b/Documentation/devicetree/bindings/media/i2c/maxim,max96712.yaml index 26f85151afbd..583bbd60157c 100644 --- a/Documentation/devicetree/bindings/media/i2c/maxim,max96712.yaml +++ b/Documentation/devicetree/bindings/media/i2c/maxim,max96712.yaml @@ -39,27 +39,15 @@ properties: ports: $ref: /schemas/graph.yaml#/properties/ports =20 - properties: - port@0: + patternProperties: + '^port@[0-3]$': $ref: /schemas/graph.yaml#/properties/port - description: GMSL Input 0 + description: GMSL Input ports 0-3 =20 - port@1: - $ref: /schemas/graph.yaml#/properties/port - description: GMSL Input 1 - - port@2: - $ref: /schemas/graph.yaml#/properties/port - description: GMSL Input 2 - - port@3: - $ref: /schemas/graph.yaml#/properties/port - description: GMSL Input 3 - - port@4: + '^port@[4-7]$': $ref: /schemas/graph.yaml#/$defs/port-base unevaluatedProperties: false - description: CSI-2 Output + description: CSI-2 Output port 0-3 =20 properties: endpoint: @@ -77,8 +65,11 @@ properties: - data-lanes - bus-type =20 - required: - - port@4 + anyOf: + - required: [port@4] + - required: [port@5] + - required: [port@6] + - required: [port@7] =20 required: - compatible --=20 2.51.0 From nobody Thu Apr 9 04:05:06 2026 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (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 BDC8839DBC7; Mon, 6 Apr 2026 20:15:21 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1775506521; cv=none; b=at5G8P+nqWPCiyyNDxYnSsfb0T86POp3XXhSQ/2toDwCIs89gvbYvQFb76N3epoIquzmxJuJWFHKEEk4B6PfMACVkUNvOoY+yY0mNynnXPexOWdqzHt79dB8pG1mTT/8djcecJjVzViliutDu3Z8PTrYjvkLYPwtus1sGsG1cNk= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1775506521; c=relaxed/simple; bh=GGsSB1d2PoY/kuEuTnxLtG47ZzK+g95451GAUdj53K0=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=KJWkN7xD+5Qeux8GgvKm1JIjtsUSYUk/9qZVXGGXVqZ8kQs7wHANkpEOrdqkvX9jwThyA6LZxRgK1wXWFxLOnU+F5vlL7DOJ+krbpC5xjo3o9wYHx14jIrrfE3aX0RlSNJE0b054BbwEij1fNinlgKIX6rVo3JjU+YIXbj3nUMQ= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=pPJ7wJzL; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="pPJ7wJzL" Received: by smtp.kernel.org (Postfix) with ESMTPS id 95D8DC2BCB4; Mon, 6 Apr 2026 20:15:21 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1775506521; bh=GGsSB1d2PoY/kuEuTnxLtG47ZzK+g95451GAUdj53K0=; h=From:Date:Subject:References:In-Reply-To:To:Cc:Reply-To:From; b=pPJ7wJzLgCtGc2EwUhFAhwyeWsM7OHjcJhYYxtRFdXNa5zQADL/z35shqA88fdpst vOQdB0KZb476H8kt6x5PC6SkPD1oezecNhBqXmTHQBTrZG/UxBsZcrhPhJD49KQqIL 5FVmduUGIfx/0Ie4iP7SbV+r6PWZX/BTSkS5186O1TW+0zReys6Jbo/K2YoVFWQCVL wR0wWdS/7eGUAggXcWyX/oMssVTYysU1t87csRqoG9PPOPbUp5a5yhG9GrAsIAuSE7 ExN6jPQLTC4rE8flAZlHR+R62EHG66u9JL13ZZQ6mz768bbzlYQns57LsRO9EU75sP 4J9oA4ByfXL2g== Received: from aws-us-west-2-korg-lkml-1.web.codeaurora.org (localhost.localdomain [127.0.0.1]) by smtp.lore.kernel.org (Postfix) with ESMTP id 8D260F46C7B; Mon, 6 Apr 2026 20:15:21 +0000 (UTC) From: Dumitru Ceclan via B4 Relay Date: Mon, 06 Apr 2026 23:14:46 +0300 Subject: [PATCH v10 07/22] dt-bindings: media: i2c: max96712: add support for I2C ATR Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260406-gmsl2-3_serdes-v10-7-645560fedca5@analog.com> References: <20260406-gmsl2-3_serdes-v10-0-645560fedca5@analog.com> In-Reply-To: <20260406-gmsl2-3_serdes-v10-0-645560fedca5@analog.com> To: Tomi Valkeinen , Mauro Carvalho Chehab , Sakari Ailus , Laurent Pinchart , Julien Massot , Rob Herring , =?utf-8?q?Niklas_S=C3=B6derlund?= , Greg Kroah-Hartman , Cosmin Tanislav Cc: mitrutzceclan@gmail.com, linux-media@vger.kernel.org, linux-kernel@vger.kernel.org, devicetree@vger.kernel.org, linux-staging@lists.linux.dev, linux-gpio@vger.kernel.org, =?utf-8?q?Niklas_S=C3=B6derlund?= , Martin Hecht , Cosmin Tanislav X-Mailer: b4 0.14.3 X-Developer-Signature: v=1; a=ed25519-sha256; t=1775506518; l=1871; i=dumitru.ceclan@analog.com; s=20240313; h=from:subject:message-id; bh=RSvh87m8UTUuPKmdiJPBrCURSGQkmSAhRt3cRzeUwAs=; b=2Qagw4Bkgm0KaLa+iywGsHSt3kO4iHeJfl0aF87KGiT/UC4C76wanhkK/gdrrjmNKeL7CYxpl GWa8fRFvxFEDvxnUhjgqimRq2FEbxdsaOMkVhpUVf5kcTd9Xz7NP9yG X-Developer-Key: i=dumitru.ceclan@analog.com; a=ed25519; pk=HdqMlVyrcazwoiai7oN6ghU+Bj1pusGUFRl30jhS7Bo= X-Endpoint-Received: by B4 Relay for dumitru.ceclan@analog.com/20240313 with auth_id=140 X-Original-From: Dumitru Ceclan Reply-To: dumitru.ceclan@analog.com From: Cosmin Tanislav MAX96712 and MAX96724 have more than one GMSL2 link, and each link is capable of connecting to a separate serializer. If these serializers have the same CFG pins configuration, they will also have the same I2C address, causing conflicts unless the deserializer changes the address of the connected serializers. The MAX96712 and MAX96724 support changing the I2C address of the connected serializers. Document this capability. Signed-off-by: Cosmin Tanislav Acked-by: Rob Herring (Arm) --- .../bindings/media/i2c/maxim,max96712.yaml | 31 ++++++++++++++++++= ++++ 1 file changed, 31 insertions(+) diff --git a/Documentation/devicetree/bindings/media/i2c/maxim,max96712.yam= l b/Documentation/devicetree/bindings/media/i2c/maxim,max96712.yaml index 583bbd60157c..abacc3c874a9 100644 --- a/Documentation/devicetree/bindings/media/i2c/maxim,max96712.yaml +++ b/Documentation/devicetree/bindings/media/i2c/maxim,max96712.yaml @@ -36,6 +36,30 @@ properties: =20 enable-gpios: true =20 + i2c-alias-pool: + maxItems: 4 + + i2c-atr: + type: object + additionalProperties: false + + properties: + '#address-cells': + const: 1 + + '#size-cells': + const: 0 + + patternProperties: + '^i2c@[0-3]$': + $ref: /schemas/i2c/i2c-controller.yaml# + unevaluatedProperties: false + properties: + reg: + items: + minimum: 0 + maximum: 3 + ports: $ref: /schemas/graph.yaml#/properties/ports =20 @@ -78,6 +102,13 @@ required: =20 additionalProperties: false =20 +allOf: + - $ref: /schemas/i2c/i2c-atr.yaml# + +dependentRequired: + i2c-atr: [i2c-alias-pool] + i2c-alias-pool: [i2c-atr] + examples: - | #include --=20 2.51.0 From nobody Thu Apr 9 04:05:06 2026 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (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 C3B4E39DBD9; Mon, 6 Apr 2026 20:15:21 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1775506521; cv=none; b=dkezjPdUZT5xf9W1pxvHSc69bTDbmhGzRs0YzdgfRiqXB2jNIVO5M1soQgRkpvSzfnfZeEhg6TTc8diN5sAAVOT0w/JQ1SD9bT1xqa6JqnxHEJPSaPijzcvHyoHDcIHgUqSnj+b3Ej3HAFmrFIR2EgJLIfhzoRlxsc9c+wGnIz8= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1775506521; c=relaxed/simple; bh=jdUh6DHiZcC8xmAK/C829JnMcr3ixwqGWi9aHZissgg=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=IKIv5pVNdKfiEaVm6F5+KJVYK26079gsZMmJ/PWE6plTuSQJ88bxc4g4rnpYWH9WbIjwZK4agylfsiXAWyaMuU9aP5uS6DBesXNBJhRGpXYCsC+/4TajS/MBAizJS+YdeqgYO0XcnL3bsplG47AxgqA3P7J44pxDyKqMbH0OZbY= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=Knld4nYv; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="Knld4nYv" Received: by smtp.kernel.org (Postfix) with ESMTPS id A9858C2BCAF; Mon, 6 Apr 2026 20:15:21 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1775506521; bh=jdUh6DHiZcC8xmAK/C829JnMcr3ixwqGWi9aHZissgg=; h=From:Date:Subject:References:In-Reply-To:To:Cc:Reply-To:From; b=Knld4nYv6rqGIjm39fuC5JLefRCHKmBvNB5ir/evGQVJ6iGpjzTN87uQctcBRquZ6 Djwjli7VgQ5V2pMlMXA0ogQ8lfQ0ZP/psRIJ1m+q+kDk6saXx0MkPJ9JtuVlrLo1O0 Gl/086h0iOw96SRqCPli+a3SHDMwYzEISVjgr6QYcziVNMAttest7cXevhUNGJ4fnU 3cUZcBY8HhIYK+RiqYgu0lJWnmFoZcXfXi7hOnnwWFzZZ1PN4bc3vC7Z37t6YUSIpi PshUern8KJfEa0A3+3BBMp7YHvQHC88k8wYbmLKXdsKqLaHeq3f/QVDzF5Nt0McHgX kuqruqketOQ9g== Received: from aws-us-west-2-korg-lkml-1.web.codeaurora.org (localhost.localdomain [127.0.0.1]) by smtp.lore.kernel.org (Postfix) with ESMTP id 9EC0FF46C7C; Mon, 6 Apr 2026 20:15:21 +0000 (UTC) From: Dumitru Ceclan via B4 Relay Date: Mon, 06 Apr 2026 23:14:47 +0300 Subject: [PATCH v10 08/22] dt-bindings: media: i2c: max96712: add support for POC supplies Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260406-gmsl2-3_serdes-v10-8-645560fedca5@analog.com> References: <20260406-gmsl2-3_serdes-v10-0-645560fedca5@analog.com> In-Reply-To: <20260406-gmsl2-3_serdes-v10-0-645560fedca5@analog.com> To: Tomi Valkeinen , Mauro Carvalho Chehab , Sakari Ailus , Laurent Pinchart , Julien Massot , Rob Herring , =?utf-8?q?Niklas_S=C3=B6derlund?= , Greg Kroah-Hartman , Cosmin Tanislav Cc: mitrutzceclan@gmail.com, linux-media@vger.kernel.org, linux-kernel@vger.kernel.org, devicetree@vger.kernel.org, linux-staging@lists.linux.dev, linux-gpio@vger.kernel.org, =?utf-8?q?Niklas_S=C3=B6derlund?= , Martin Hecht , Cosmin Tanislav X-Mailer: b4 0.14.3 X-Developer-Signature: v=1; a=ed25519-sha256; t=1775506518; l=998; i=dumitru.ceclan@analog.com; s=20240313; h=from:subject:message-id; bh=qHuwnHnH5Gp9JKhOtp7Ej/Lg9rykd9GgxcARp32ip7E=; b=dGXfUfR8b3SvVFufId7XiOJSvgqmBDPnkuYzivU2P6RRIVxbXmxVS7BfIJpExyoA2HYiE2WRd aubNodH0FqJCELoNinpeBrEYw4W+GctcWiKxnFlAqgWKsx4sdtJ+Ksl X-Developer-Key: i=dumitru.ceclan@analog.com; a=ed25519; pk=HdqMlVyrcazwoiai7oN6ghU+Bj1pusGUFRl30jhS7Bo= X-Endpoint-Received: by B4 Relay for dumitru.ceclan@analog.com/20240313 with auth_id=140 X-Original-From: Dumitru Ceclan Reply-To: dumitru.ceclan@analog.com From: Cosmin Tanislav The GMSL links can carry power to the serializer when using coaxial cables. Document this capability. Signed-off-by: Cosmin Tanislav Acked-by: Rob Herring (Arm) Reviewed-by: Niklas S=C3=B6derlund --- Documentation/devicetree/bindings/media/i2c/maxim,max96712.yaml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/Documentation/devicetree/bindings/media/i2c/maxim,max96712.yam= l b/Documentation/devicetree/bindings/media/i2c/maxim,max96712.yaml index abacc3c874a9..d2dd72f2e924 100644 --- a/Documentation/devicetree/bindings/media/i2c/maxim,max96712.yaml +++ b/Documentation/devicetree/bindings/media/i2c/maxim,max96712.yaml @@ -95,6 +95,10 @@ properties: - required: [port@6] - required: [port@7] =20 +patternProperties: + '^port[0-3]-poc-supply$': + description: Regulator providing Power over Coax for GMSL ports + required: - compatible - reg --=20 2.51.0 From nobody Thu Apr 9 04:05:06 2026 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (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 D64CD39DBE8; Mon, 6 Apr 2026 20:15:21 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1775506521; cv=none; b=DJmQTdzlr0Oo4XTDBW4zvG/rfXt+VSrb/UdGMIxpBxt3hlzGwlmPkIZhOSFYNLhJMQ7XWMF+H5VSKBj/34Xm9O0JVtscPCDH8m+VW00iDgsuvGnzsdR18DPqrjhUNtTEhMyvV956aGFjFb1TjLg2c6L1D43fMb230F799Va4/ZA= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1775506521; c=relaxed/simple; bh=Naw/eq3duVjNCge473NEbRgpjB3MiSzNqdh3TZ55RKM=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=YivVC8mZV8UHSBerHkvaeCM9Ad8UCeaD7I6wu/k2NNA/yrlD2oSsXNhl+7aeXrCnoi5G2DGZjxtrqfcKsBy4xcSZ0Xhz+6Y4mnsJCMpCjecAutb57hJKhQBRAwS1CQIl2Fq0ofLYQ6GYkJjan3ad3iTvAjq0ST3csQSF6hYax+M= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=EBTVg8HE; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="EBTVg8HE" Received: by smtp.kernel.org (Postfix) with ESMTPS id BB7DAC4CEF7; Mon, 6 Apr 2026 20:15:21 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1775506521; bh=Naw/eq3duVjNCge473NEbRgpjB3MiSzNqdh3TZ55RKM=; h=From:Date:Subject:References:In-Reply-To:To:Cc:Reply-To:From; b=EBTVg8HEosdWEo2gVmTUHrMc51NjnlkyF9qzSL6t1dTozxCtgjnb1v6SsfuuZqqcy +9hwPTTZMVQwETyqVsNnd7ZZFiv0kFTWAW9zHKmIORwUGBS0l5aNCLA5nwHjoc1Ygo vtDsOpxZWmQ8GZ5UJ2bQUTLa+g/hhK6MVuvG0ahfD+whb4H26ZRHuLLdQcn4u9BCB6 M1u9SNn44Sg9olyjiXK8jOZO2SjvMpDSU+h/GA7R5zT61+tlHHwlMWAmdrAHDcXaAb A6tbsjCSuD2M6jUYy1WZSzWQLdZ9ZkJ9yI+Qqbsqu/qJaQPPUJPxiqLbRw0a45YyAz Beu2yqSteYZhQ== Received: from aws-us-west-2-korg-lkml-1.web.codeaurora.org (localhost.localdomain [127.0.0.1]) by smtp.lore.kernel.org (Postfix) with ESMTP id B233EF46C7F; Mon, 6 Apr 2026 20:15:21 +0000 (UTC) From: Dumitru Ceclan via B4 Relay Date: Mon, 06 Apr 2026 23:14:48 +0300 Subject: [PATCH v10 09/22] dt-bindings: media: i2c: max96712: add support for MAX96724F/R Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260406-gmsl2-3_serdes-v10-9-645560fedca5@analog.com> References: <20260406-gmsl2-3_serdes-v10-0-645560fedca5@analog.com> In-Reply-To: <20260406-gmsl2-3_serdes-v10-0-645560fedca5@analog.com> To: Tomi Valkeinen , Mauro Carvalho Chehab , Sakari Ailus , Laurent Pinchart , Julien Massot , Rob Herring , =?utf-8?q?Niklas_S=C3=B6derlund?= , Greg Kroah-Hartman , Cosmin Tanislav Cc: mitrutzceclan@gmail.com, linux-media@vger.kernel.org, linux-kernel@vger.kernel.org, devicetree@vger.kernel.org, linux-staging@lists.linux.dev, linux-gpio@vger.kernel.org, =?utf-8?q?Niklas_S=C3=B6derlund?= , Martin Hecht , Cosmin Tanislav X-Mailer: b4 0.14.3 X-Developer-Signature: v=1; a=ed25519-sha256; t=1775506518; l=1289; i=dumitru.ceclan@analog.com; s=20240313; h=from:subject:message-id; bh=X7Z5jo9cVDCZvZQWGTLLa9EvhT59pgE3U0xPNb18WHI=; b=U2uRxNHM+A9wpM/8Tze11IisyAIcUMc1s8ATsp8102Kw9nJXxEDhyf33qw2hM77ADRvQusNFk 5bi5D0CvQ8vCMSaOSZOABkTpNulPbJ46fmQjpAj1gkhD3CnDbJuVkDU X-Developer-Key: i=dumitru.ceclan@analog.com; a=ed25519; pk=HdqMlVyrcazwoiai7oN6ghU+Bj1pusGUFRl30jhS7Bo= X-Endpoint-Received: by B4 Relay for dumitru.ceclan@analog.com/20240313 with auth_id=140 X-Original-From: Dumitru Ceclan Reply-To: dumitru.ceclan@analog.com From: Cosmin Tanislav MAX96724F/MAX96724R are a lower capability variant of the MAX96724 which only support a fixed rate of 3Gbps in the forward direction. Signed-off-by: Cosmin Tanislav Acked-by: Rob Herring (Arm) Reviewed-by: Niklas S=C3=B6derlund --- Documentation/devicetree/bindings/media/i2c/maxim,max96712.yaml | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/Documentation/devicetree/bindings/media/i2c/maxim,max96712.yam= l b/Documentation/devicetree/bindings/media/i2c/maxim,max96712.yaml index d2dd72f2e924..161d40acdd28 100644 --- a/Documentation/devicetree/bindings/media/i2c/maxim,max96712.yaml +++ b/Documentation/devicetree/bindings/media/i2c/maxim,max96712.yaml @@ -23,12 +23,17 @@ description: | MAX96712 can be paired with first-generation 3.12Gbps or 1.5Gbps GMSL1 serializers or operate up to 3.12Gbps with GMSL2 serializers in GMSL1 mo= de. =20 + MAX96724F and MAX96724R only support a fixed rate of 3Gbps in the forward + direction. + properties: compatible: items: - enum: - maxim,max96712 - maxim,max96724 + - maxim,max96724f + - maxim,max96724r =20 reg: description: I2C device address --=20 2.51.0 From nobody Thu Apr 9 04:05:06 2026 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (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 0620B39E6C7; Mon, 6 Apr 2026 20:15:22 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1775506522; cv=none; b=DW2lpJKeuU0NUaihZj/I1wviBYLyrwVQz7apYxNYsN9cKgE+Dd5jYyCjuWWZDrrEap1Ex1J3d04ox10OoBBXXo2JtW9h4yYsw37WOLiMWM0uUii8W4/o6LlPDLsbSbBqjUO2unlxaIxFyeUBIJS5Uah2O3HwOFfU11vRvl07Vrc= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1775506522; c=relaxed/simple; bh=G76PpLC/7BPt690BF0XHtiHAgQNsg5NjfQiaP37ghzg=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=gFzSwK3P1KhV+dWVg7xKlJ1bm9KI2/c5aDRzd5Q77ytmogCEASqfQdQltIQHnX6QZGUWkaGF2KdUkJb28G1xMPaJjQadiZz9bBekJlQgY87v8wTvb3kXctACLsBtmPkl1bR+Pwp3gTnHNSDc/m3PN8q6RL5d9ZfxacAlLJL19nw= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=IRzU71JG; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="IRzU71JG" Received: by smtp.kernel.org (Postfix) with ESMTPS id DDF3AC19425; Mon, 6 Apr 2026 20:15:21 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1775506521; bh=G76PpLC/7BPt690BF0XHtiHAgQNsg5NjfQiaP37ghzg=; h=From:Date:Subject:References:In-Reply-To:To:Cc:Reply-To:From; b=IRzU71JGITSWMNlILC6LJwzw2jmGYYy+qnDR1dwA4Q78dCmtxb5MZJoMUeHQVD13E FoI1uUTCJJqEyk1n64IDkFl/N4TJjtoyEQYdnAgi7Lc1vVvvXvLQyBeSzLA35DZs6U LLNjSQLSmBtxHHM3BG5hb/0//yTPQW78hlrkZNl3rubVxoqxq0MKWeLd5QSvoKmi4U rGAmrMKMb3aXtFYembzkWQUErJC570IONxoAp72VRCs2yuPTfEJbF9JtRtTTAVGgkq UMM66jYPWwE0zPrkMsyGYmIDY3Iw4fxiEfj9fzIjWuAXuaUB8PkT+ghOSZyR0PvNb2 F0eoXf247YQ8A== Received: from aws-us-west-2-korg-lkml-1.web.codeaurora.org (localhost.localdomain [127.0.0.1]) by smtp.lore.kernel.org (Postfix) with ESMTP id D18CBF46C7B; Mon, 6 Apr 2026 20:15:21 +0000 (UTC) From: Dumitru Ceclan via B4 Relay Date: Mon, 06 Apr 2026 23:14:49 +0300 Subject: [PATCH v10 10/22] dt-bindings: media: i2c: max96712: add control-channel-port property Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260406-gmsl2-3_serdes-v10-10-645560fedca5@analog.com> References: <20260406-gmsl2-3_serdes-v10-0-645560fedca5@analog.com> In-Reply-To: <20260406-gmsl2-3_serdes-v10-0-645560fedca5@analog.com> To: Tomi Valkeinen , Mauro Carvalho Chehab , Sakari Ailus , Laurent Pinchart , Julien Massot , Rob Herring , =?utf-8?q?Niklas_S=C3=B6derlund?= , Greg Kroah-Hartman , Cosmin Tanislav Cc: mitrutzceclan@gmail.com, linux-media@vger.kernel.org, linux-kernel@vger.kernel.org, devicetree@vger.kernel.org, linux-staging@lists.linux.dev, linux-gpio@vger.kernel.org, =?utf-8?q?Niklas_S=C3=B6derlund?= , Martin Hecht , Vivekananda Dayananda , Dumitru Ceclan X-Mailer: b4 0.14.3 X-Developer-Signature: v=1; a=ed25519-sha256; t=1775506518; l=1145; i=dumitru.ceclan@analog.com; s=20240313; h=from:subject:message-id; bh=xchRMQiT8AWTxP8couCFswILSzWIlgCuPS2gmm7hIMY=; b=u5bX+8oCuFBS2NhtJ+J7vO0+voDcfYhPFGBirgBS9cnWYdYVqfkZJVImSHbytghxjkY865R1W mR1P7uneosVB+/1ab3tAY6g1D0Iwvn0DKxlQa/KfETG76PdywtOmMnl X-Developer-Key: i=dumitru.ceclan@analog.com; a=ed25519; pk=HdqMlVyrcazwoiai7oN6ghU+Bj1pusGUFRl30jhS7Bo= X-Endpoint-Received: by B4 Relay for dumitru.ceclan@analog.com/20240313 with auth_id=140 X-Original-From: Dumitru Ceclan Reply-To: dumitru.ceclan@analog.com From: Dumitru Ceclan Add maxim,control-channel-port property to allow platforms choose which control-channel port MAX96724 exposes to the upstream I2C host. Suggested-by: Vivekananda Dayananda Signed-off-by: Dumitru Ceclan --- Documentation/devicetree/bindings/media/i2c/maxim,max96712.yaml | 8 ++++++= ++ 1 file changed, 8 insertions(+) diff --git a/Documentation/devicetree/bindings/media/i2c/maxim,max96712.yam= l b/Documentation/devicetree/bindings/media/i2c/maxim,max96712.yaml index 161d40acdd28..538b639d4f54 100644 --- a/Documentation/devicetree/bindings/media/i2c/maxim,max96712.yaml +++ b/Documentation/devicetree/bindings/media/i2c/maxim,max96712.yaml @@ -41,6 +41,14 @@ properties: =20 enable-gpios: true =20 + maxim,control-channel-port: + description: + Selects which deserializer control-channel port is connected to the + upstream I2C segment when the device resets. 0 selects port 0, 1 sel= ects + port 1. Defaults to 0 when omitted. + $ref: /schemas/types.yaml#/definitions/uint32 + enum: [0, 1] + i2c-alias-pool: maxItems: 4 =20 --=20 2.51.0 From nobody Thu Apr 9 04:05:06 2026 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (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 15FA639E6F5; Mon, 6 Apr 2026 20:15:22 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1775506522; cv=none; b=IVhtFdzoHkM2ktvY3ckPkRHV3MLaqLCaIA4SSzP2kxEk8oHaXD9JSMbZYi+bcDLKoO+BFvMd+ldVrhRHs8X1r7eGvmN0lQxPBTWCcMNALYfXncz8KDurPtq8+juDUa4fny0GEIKTvVmuilx+k30+6OGLy4ZTrkyeYbvpZhPGFGk= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1775506522; c=relaxed/simple; bh=YsjXeUcn9qhbYLaqF5kqQeAp3Xr+WGO7JYIzMmEbR2o=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=rNY4lbjRsnRmRXqQmGBieglN+PIJNEeNnDXqTUbDdLCbY//38/SqVydLxzgNvgH9R1kX7eqNRYrRdU+B3vNnc32xDU76yGItBK8VCnD5lApoHa7Ej5oSmf6TpNNnMarwZYCqiI/x5AlmetXhX7ziLE7kISXsSdoyKkFsDhesfiw= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=qY5NRjvo; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="qY5NRjvo" Received: by smtp.kernel.org (Postfix) with ESMTPS id ED50AC2BCB2; Mon, 6 Apr 2026 20:15:21 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1775506522; bh=YsjXeUcn9qhbYLaqF5kqQeAp3Xr+WGO7JYIzMmEbR2o=; h=From:Date:Subject:References:In-Reply-To:To:Cc:Reply-To:From; b=qY5NRjvoT77wICWUsFlqUnXPaYR5mdOZhZ9IKC/0+bTV4cYjlM4cQDFTn6RBirydk fdSpneTmUhJXuEjV70gir388tDW2SKcfZ2N051458mw7pJlliACv36jvj23mLXAkLK NzFYQb3Tq7wgfKCx1zLp0BQZcIBK9C9I74XVqQ2onCHju58GxSXM9/YEQbtEYvbnyS C6lsy18lino4pR4EbQ/tAw3hdwgmMOkT1bWO+c+Q4U7qdSkqZSghhyNc3uEqlQSNmz z7nXcGbLf5iOVbAlzGApQKIVNemOTaPVQHKEqgQFTWgEKCRgw4PIBkdTFibYsU5a3Z jLevqnY4372lA== Received: from aws-us-west-2-korg-lkml-1.web.codeaurora.org (localhost.localdomain [127.0.0.1]) by smtp.lore.kernel.org (Postfix) with ESMTP id E5036F46C78; Mon, 6 Apr 2026 20:15:21 +0000 (UTC) From: Dumitru Ceclan via B4 Relay Date: Mon, 06 Apr 2026 23:14:50 +0300 Subject: [PATCH v10 11/22] dt-bindings: media: i2c: max96714: add support for MAX96714R Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260406-gmsl2-3_serdes-v10-11-645560fedca5@analog.com> References: <20260406-gmsl2-3_serdes-v10-0-645560fedca5@analog.com> In-Reply-To: <20260406-gmsl2-3_serdes-v10-0-645560fedca5@analog.com> To: Tomi Valkeinen , Mauro Carvalho Chehab , Sakari Ailus , Laurent Pinchart , Julien Massot , Rob Herring , =?utf-8?q?Niklas_S=C3=B6derlund?= , Greg Kroah-Hartman , Cosmin Tanislav Cc: mitrutzceclan@gmail.com, linux-media@vger.kernel.org, linux-kernel@vger.kernel.org, devicetree@vger.kernel.org, linux-staging@lists.linux.dev, linux-gpio@vger.kernel.org, =?utf-8?q?Niklas_S=C3=B6derlund?= , Martin Hecht , Cosmin Tanislav X-Mailer: b4 0.14.3 X-Developer-Signature: v=1; a=ed25519-sha256; t=1775506518; l=1267; i=dumitru.ceclan@analog.com; s=20240313; h=from:subject:message-id; bh=7ctH/2Vx+KX20AODScSmND3oP+TtSyOrnfglXDuMGh0=; b=bz0WCZPyNQGnFNFWV/RriETqa8xNB7izzbxOOy5D9gPpra+EOqdknVMXXWlVuRC1t0vXeKqoN CGDm9CrErimDeViJcIxBZVr8QFzL6W0+VPKVDpITn0pihkvT6OdxMd7 X-Developer-Key: i=dumitru.ceclan@analog.com; a=ed25519; pk=HdqMlVyrcazwoiai7oN6ghU+Bj1pusGUFRl30jhS7Bo= X-Endpoint-Received: by B4 Relay for dumitru.ceclan@analog.com/20240313 with auth_id=140 X-Original-From: Dumitru Ceclan Reply-To: dumitru.ceclan@analog.com From: Cosmin Tanislav MAX96714R is a lower capability variant of the MAX96714 which only supports a fixed rate of 3Gbps in the forward direction. Signed-off-by: Cosmin Tanislav Acked-by: Rob Herring (Arm) --- Documentation/devicetree/bindings/media/i2c/maxim,max96714.yaml | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/Documentation/devicetree/bindings/media/i2c/maxim,max96714.yam= l b/Documentation/devicetree/bindings/media/i2c/maxim,max96714.yaml index 3ace50e11921..ec6a91c4a51c 100644 --- a/Documentation/devicetree/bindings/media/i2c/maxim,max96714.yaml +++ b/Documentation/devicetree/bindings/media/i2c/maxim,max96714.yaml @@ -22,7 +22,9 @@ description: =20 The GMSL2 serial link operates at a fixed rate of 3Gbps or 6Gbps in the forward direction and 187.5Mbps in the reverse direction. - MAX96714F only supports a fixed rate of 3Gbps in the forward direction. + + MAX96714F and MAX96714R only support a fixed rate of 3Gbps in the forward + direction. =20 properties: compatible: @@ -31,6 +33,7 @@ properties: - items: - enum: - maxim,max96714 + - maxim,max96714r - const: maxim,max96714f =20 reg: --=20 2.51.0 From nobody Thu Apr 9 04:05:06 2026 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (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 2F72A39EF34; Mon, 6 Apr 2026 20:15:22 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1775506522; cv=none; b=DFRUDxMMykbqGTLTmNvWkESoCDzyGbsGEQxW3KcJJbWYxay2gSUfzsoZGIcLuFMTNiCMET4peJPlGtriP2/ikwd8lR/A0Bk40FMmNc6mjdkZtxgU0NljR7kqOVU4CyGX3C8omUBgOGe77qbwoivW/j/5Iz0Rg35ID9Pduj2Jvls= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1775506522; c=relaxed/simple; bh=9bUvO9jmr4n76eZcAAb+VBJtZRbGcpHo0LOtElQF2Ag=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=icelDR3ONA8jvvo1BWf4V+LdinsCIMFOzEfPyQO6lBI7vqE9+qS753dqK6rgRVnhF5rTrh8ttcCet1KceeFv3X17I0jH7tGubNZ+9wT8k5OC29eptmwmcRT3P733nmLOCIfkuTBANE+tvMsyg5kOKqII3WFF0I/4R8gBynn756M= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=a72ItFf2; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="a72ItFf2" Received: by smtp.kernel.org (Postfix) with ESMTPS id 15B49C2BCAF; Mon, 6 Apr 2026 20:15:22 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1775506522; bh=9bUvO9jmr4n76eZcAAb+VBJtZRbGcpHo0LOtElQF2Ag=; h=From:Date:Subject:References:In-Reply-To:To:Cc:Reply-To:From; b=a72ItFf20s/3Si3JX0WVzCYUcDh+/kAaI2Y++kUV6zz7qGKd03Bwznm/Tv5DU5+zH iNtNFU7jwVX/eL22+ZgvUz3ONws6vB+dc+FcSomdUZ/uJojQyGAToa27FpAj1XxJ2S YibI3T4SR1nJfHtsD0EhPxha0kiMyu2+W3S5IidZeh7dDcynUKi9CmBnkZt0JABvQP hVojYPE3gubDRx0KjFX9AOxPBD2cGm0cDYaxpNiyIXRMHdBQhOhnp5Ew4k6wvueN2L 4f2cY2976u6iqvJsg8mdDqZ21zVwc00SZZHHSsWLiIUkPO1rUyYaQROOTArBvlp2BW CHwgr4N0SgfQw== Received: from aws-us-west-2-korg-lkml-1.web.codeaurora.org (localhost.localdomain [127.0.0.1]) by smtp.lore.kernel.org (Postfix) with ESMTP id 04020F46C7B; Mon, 6 Apr 2026 20:15:22 +0000 (UTC) From: Dumitru Ceclan via B4 Relay Date: Mon, 06 Apr 2026 23:14:51 +0300 Subject: [PATCH v10 12/22] dt-bindings: media: i2c: add MAX9296A, MAX96716A, MAX96792A Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260406-gmsl2-3_serdes-v10-12-645560fedca5@analog.com> References: <20260406-gmsl2-3_serdes-v10-0-645560fedca5@analog.com> In-Reply-To: <20260406-gmsl2-3_serdes-v10-0-645560fedca5@analog.com> To: Tomi Valkeinen , Mauro Carvalho Chehab , Sakari Ailus , Laurent Pinchart , Julien Massot , Rob Herring , =?utf-8?q?Niklas_S=C3=B6derlund?= , Greg Kroah-Hartman , Cosmin Tanislav Cc: mitrutzceclan@gmail.com, linux-media@vger.kernel.org, linux-kernel@vger.kernel.org, devicetree@vger.kernel.org, linux-staging@lists.linux.dev, linux-gpio@vger.kernel.org, =?utf-8?q?Niklas_S=C3=B6derlund?= , Martin Hecht , Cosmin Tanislav X-Mailer: b4 0.14.3 X-Developer-Signature: v=1; a=ed25519-sha256; t=1775506518; l=9145; i=dumitru.ceclan@analog.com; s=20240313; h=from:subject:message-id; bh=GFhV03TLaPhYeU6NX16v5DxydRNe7OhIGfvX3Ww4CWM=; b=BHBz7WrM4T3Uw/jkVy0XqUhDX8czzRb0ncbWm6k5VkYIt0Uwk9luIbTn1ly5PxwBrT5GVt0qC c9U9FN15UAXDA/SYxH11gH+zjTSg4T2mG3w7FlqyK7lj3bhvvRBf4Ps X-Developer-Key: i=dumitru.ceclan@analog.com; a=ed25519; pk=HdqMlVyrcazwoiai7oN6ghU+Bj1pusGUFRl30jhS7Bo= X-Endpoint-Received: by B4 Relay for dumitru.ceclan@analog.com/20240313 with auth_id=140 X-Original-From: Dumitru Ceclan Reply-To: dumitru.ceclan@analog.com From: Cosmin Tanislav The MAX9296A deserializer converts single or dual serial inputs to MIPI CSI-2 outputs. The GMSL2 links operate at a fixed rate of 3Gbps or 6Gbps in the forward direction and 187.5Mbps in the reverse direction. In GMSL1 mode, each serial link can be paired with 3.12Gbps or 1.5Gbps GMSL1 serializers or operate up to 4.5Gbps with GMSL2 serializers with GMSL1 backward compatibility. The MAX9296A supports mixed GMSL2 and GMSL1 links. The serial inputs operate independently, allowing videos with different timings and resolutions to be received on each input. MAX96716A supports both tunnel and pixel mode. MAX96792A supports both tunnel and pixel mode, and has two GMSL3 links. Signed-off-by: Cosmin Tanislav Acked-by: Rob Herring (Arm) --- .../bindings/media/i2c/maxim,max9296a.yaml | 242 +++++++++++++++++= ++++ MAINTAINERS | 6 + 2 files changed, 248 insertions(+) diff --git a/Documentation/devicetree/bindings/media/i2c/maxim,max9296a.yam= l b/Documentation/devicetree/bindings/media/i2c/maxim,max9296a.yaml new file mode 100644 index 000000000000..de6bfcec5dc6 --- /dev/null +++ b/Documentation/devicetree/bindings/media/i2c/maxim,max9296a.yaml @@ -0,0 +1,242 @@ +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) +# Copyright (C) 2024 Collabora Ltd. +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/media/i2c/maxim,max9296a.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Maxim MAX9296A GMSL2 to CSI-2 Deserializer + +maintainers: + - Cosmin Tanislav + +description: > + The MAX9296A deserializer converts single or dual serial inputs to + MIPI CSI-2 outputs. The GMSL2 links operate at a fixed rate of 3Gbps + or 6Gbps in the forward direction and 187.5Mbps in the reverse + direction. In GMSL1 mode, each serial link can be paired with 3.12Gbps + or 1.5Gbps GMSL1 serializers or operate up to 4.5Gbps with GMSL2 + serializers with GMSL1 backward compatibility. The MAX9296A supports + mixed GMSL2 and GMSL1 links. The serial inputs operate independently, + allowing videos with different timings and resolutions to be received + on each input. + + MAX96716A supports both tunnel and pixel mode. + + MAX96792A supports both tunnel and pixel mode, and has two GMSL3 links. + +properties: + compatible: + enum: + - maxim,max9296a + - maxim,max96716a + - maxim,max96792a + + reg: + maxItems: 1 + + powerdown-gpios: + maxItems: 1 + description: Specifier for the GPIO connected to the PWDNB pin. + + port0-poc-supply: + description: Regulator providing Power over Coax for GMSL port 0 + + port1-poc-supply: + description: Regulator providing Power over Coax for GMSL port 1 + + i2c-alias-pool: + maxItems: 2 + + i2c-atr: + type: object + additionalProperties: false + + properties: + '#address-cells': + const: 1 + + '#size-cells': + const: 0 + + patternProperties: + '^i2c@[0-1]$': + $ref: /schemas/i2c/i2c-controller.yaml# + unevaluatedProperties: false + properties: + reg: + items: + minimum: 0 + maximum: 1 + + ports: + $ref: /schemas/graph.yaml#/properties/ports + + patternProperties: + '^port@[0-1]$': + $ref: /schemas/graph.yaml#/properties/port + description: GMSL Input ports 0-1 + + '^port@[2-3]$': + $ref: /schemas/graph.yaml#/$defs/port-base + unevaluatedProperties: false + description: CSI-2 Output ports 0-1 + properties: + endpoint: + $ref: /schemas/media/video-interfaces.yaml# + unevaluatedProperties: false + + properties: + data-lanes: + minItems: 1 + maxItems: 4 + + lane-polarities: + minItems: 2 + maxItems: 5 + + link-frequencies: + maxItems: 1 + + required: + - data-lanes + + anyOf: + - required: + - port@2 + - required: + - port@3 + +required: + - compatible + - reg + - ports + +additionalProperties: false + +allOf: + - $ref: /schemas/i2c/i2c-atr.yaml# + +dependentRequired: + i2c-atr: [i2c-alias-pool] + i2c-alias-pool: [i2c-atr] + +examples: + - | + #include + #include + + i2c { + #address-cells =3D <1>; + #size-cells =3D <0>; + + deserializer@28 { + compatible =3D "maxim,max9296a"; + reg =3D <0x28>; + powerdown-gpios =3D <&main_gpio0 37 GPIO_ACTIVE_LOW>; + + i2c-alias-pool =3D <0x40 0x41>; + + ports { + #address-cells =3D <1>; + #size-cells =3D <0>; + + port@0 { + reg =3D <0>; + des_gmsl_in_0: endpoint { + remote-endpoint =3D <&ser_0_gmsl_out>; + }; + }; + + port@1 { + reg =3D <1>; + des_gmsl_in_1: endpoint { + remote-endpoint =3D <&ser_1_gmsl_out>; + }; + }; + + port@2 { + reg =3D <2>; + des_csi_out: endpoint { + data-lanes =3D <1 2 3 4>; + link-frequencies =3D /bits/ 64 <400000000>; + remote-endpoint =3D <&csi_in>; + }; + }; + }; + + i2c-atr { + #address-cells =3D <1>; + #size-cells =3D <0>; + + i2c@0 { + #address-cells =3D <1>; + #size-cells =3D <0>; + reg =3D <0>; + + serializer@40 { + compatible =3D "maxim,max96717", "maxim,max96717f"; + reg =3D <0x40>; + gpio-controller; + #gpio-cells =3D <2>; + #clock-cells =3D <0>; + + ports { + #address-cells =3D <1>; + #size-cells =3D <0>; + + port@0 { + reg =3D <0>; + ser_0_csi_in: endpoint { + data-lanes =3D <1 2>; + remote-endpoint =3D <&sensor_0_out>; + }; + }; + + port@1 { + reg =3D <1>; + ser_0_gmsl_out: endpoint { + remote-endpoint =3D <&des_gmsl_in_0>; + }; + }; + }; + }; + }; + + i2c@1 { + #address-cells =3D <1>; + #size-cells =3D <0>; + reg =3D <1>; + + serializer@40 { + compatible =3D "maxim,max96717", "maxim,max96717f"; + reg =3D <0x40>; + gpio-controller; + #gpio-cells =3D <2>; + #clock-cells =3D <0>; + + ports { + #address-cells =3D <1>; + #size-cells =3D <0>; + + port@0 { + reg =3D <0>; + ser_1_csi_in: endpoint { + data-lanes =3D <1 2>; + remote-endpoint =3D <&sensor_1_out>; + }; + }; + + port@1 { + reg =3D <1>; + ser_1_gmsl_out: endpoint { + remote-endpoint =3D <&des_gmsl_in_1>; + }; + }; + }; + }; + }; + }; + }; + }; +... diff --git a/MAINTAINERS b/MAINTAINERS index ddecf1ef3bed..5ae68688008d 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -15252,6 +15252,12 @@ S: Maintained F: Documentation/devicetree/bindings/iio/proximity/maxbotix,mb1232.yaml F: drivers/iio/proximity/mb1232.c =20 +MAXIM GMSL2/3 SERIALIZERS AND DESERIALIZERS +M: Cosmin Tanislav +L: linux-media@vger.kernel.org +S: Maintained +F: Documentation/devicetree/bindings/media/i2c/maxim,max9296a.yaml + MAXIM MAX11205 DRIVER M: Ramona Bolboaca L: linux-iio@vger.kernel.org --=20 2.51.0 From nobody Thu Apr 9 04:05:06 2026 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (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 4441339E6C9; Mon, 6 Apr 2026 20:15:22 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1775506522; cv=none; b=iJqG9d5xzmf6/BvkUQuqD6zs+BNHRLasNhPHDJIOcRz14mdbSSI8RyzGefWyXbE+o53Ad2gevYw+XY2kHtZjtqc9fGz7B7huP57jNLVCBdCgQBFyo9mYzDbmZzgeaoF+d+vuGeJOVSZfvtynz0u9l7o63m+9uo2lL18FgXYpZFA= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1775506522; c=relaxed/simple; bh=VDql+Hfavigfh9ovTYOy1u+FLCxCrHF81DbvX/UyK60=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=ed+qSGv7x+n8zGQqhb+otdVEOpuCSypBwPf18HkXlNf1PXP7i0H22ljmI+WXhqmwLtziVhM+VDVNXIG6pcCQ4bXt/8n2PltP8b9UqbK9AK2MUCvE8ZWAAfRzbRKN5ebhk2qHeL2ZgpDQ69MPiInMj6+3geSz+zDQrB5FISv6zkc= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=oI7P+ebv; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="oI7P+ebv" Received: by smtp.kernel.org (Postfix) with ESMTPS id 297DBC19425; Mon, 6 Apr 2026 20:15:22 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1775506522; bh=VDql+Hfavigfh9ovTYOy1u+FLCxCrHF81DbvX/UyK60=; h=From:Date:Subject:References:In-Reply-To:To:Cc:Reply-To:From; b=oI7P+ebvHwheuv+n0CVgAYXRWsZZ08lYCgCfP6YKhdIaLHPY/IFOovvfJLWUvA+/H ogT1zfrO1mjRH/c2rth1IkodTAfEZuLrVJMRWPvAPMhSrPLM32tcb5uO9iNrMvkfaV JoGXKcvxwxWEdjYubupW39dOpc1fRVbe6fEysqa1Ay95+4JdrJeMh9DC3GsvJMAoAs 3quy9ixpJWamWwGx1lz/ZehxNso0Lqu/0k2RKQPnMJvZfihRT1bCn7Vy21+j85wKhh 1bY25T9zfbT/PPeyr+AYpdQbA7LtfITQ2QXSB3nKnlWQ9O5yXjDaiuqY/jSjab0KwJ fFzAj4sw7aTlQ== Received: from aws-us-west-2-korg-lkml-1.web.codeaurora.org (localhost.localdomain [127.0.0.1]) by smtp.lore.kernel.org (Postfix) with ESMTP id 20C94EF4ECE; Mon, 6 Apr 2026 20:15:22 +0000 (UTC) From: Dumitru Ceclan via B4 Relay Date: Mon, 06 Apr 2026 23:14:52 +0300 Subject: [PATCH v10 13/22] media: i2c: add Maxim GMSL2/3 serializer and deserializer framework Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260406-gmsl2-3_serdes-v10-13-645560fedca5@analog.com> References: <20260406-gmsl2-3_serdes-v10-0-645560fedca5@analog.com> In-Reply-To: <20260406-gmsl2-3_serdes-v10-0-645560fedca5@analog.com> To: Tomi Valkeinen , Mauro Carvalho Chehab , Sakari Ailus , Laurent Pinchart , Julien Massot , Rob Herring , =?utf-8?q?Niklas_S=C3=B6derlund?= , Greg Kroah-Hartman , Cosmin Tanislav Cc: mitrutzceclan@gmail.com, linux-media@vger.kernel.org, linux-kernel@vger.kernel.org, devicetree@vger.kernel.org, linux-staging@lists.linux.dev, linux-gpio@vger.kernel.org, =?utf-8?q?Niklas_S=C3=B6derlund?= , Martin Hecht , Cosmin Tanislav X-Mailer: b4 0.14.3 X-Developer-Signature: v=1; a=ed25519-sha256; t=1775506518; l=19564; i=dumitru.ceclan@analog.com; s=20240313; h=from:subject:message-id; bh=22zVA0S1E2kxUS8lsopB3O7rVP2X5lwDlJqeQf9rdVA=; b=uKWr89dUcsgNqhn3XJlQ3JrbytvD6DLVy84Ze/CoysIJ9XMmTqvSNRSsW+mQVXjMOfPg+0y+4 Q8xLPKKZFgfD+kcirIsnMMqywfwbhXma8EcGxrDLXWHQF34xEFaUW84 X-Developer-Key: i=dumitru.ceclan@analog.com; a=ed25519; pk=HdqMlVyrcazwoiai7oN6ghU+Bj1pusGUFRl30jhS7Bo= X-Endpoint-Received: by B4 Relay for dumitru.ceclan@analog.com/20240313 with auth_id=140 X-Original-From: Dumitru Ceclan Reply-To: dumitru.ceclan@analog.com From: Cosmin Tanislav These drivers are meant to be used as a common framework for Maxim GMSL2/3 serializers and deserializers. This framework enables support for the following new features across all the chips: * Full Streams API support * .get_frame_desc() * .get_mbus_config() * I2C ATR * automatic GMSL link version negotiation * automatic stream id selection * automatic VC remapping * automatic pixel mode / tunnel mode selection * automatic double mode selection / data padding * logging of internal state and chip status registers via .log_status() * PHY modes * serializer pinctrl * TPG Signed-off-by: Cosmin Tanislav --- MAINTAINERS | 1 + drivers/media/i2c/Kconfig | 2 + drivers/media/i2c/Makefile | 1 + drivers/media/i2c/maxim-serdes/Kconfig | 17 ++ drivers/media/i2c/maxim-serdes/Makefile | 3 + drivers/media/i2c/maxim-serdes/max_serdes.c | 413 ++++++++++++++++++++++++= ++++ drivers/media/i2c/maxim-serdes/max_serdes.h | 183 ++++++++++++ 7 files changed, 620 insertions(+) diff --git a/MAINTAINERS b/MAINTAINERS index 5ae68688008d..70d3eeef8bfe 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -15257,6 +15257,7 @@ M: Cosmin Tanislav L: linux-media@vger.kernel.org S: Maintained F: Documentation/devicetree/bindings/media/i2c/maxim,max9296a.yaml +F: drivers/media/i2c/maxim-serdes/ =20 MAXIM MAX11205 DRIVER M: Ramona Bolboaca diff --git a/drivers/media/i2c/Kconfig b/drivers/media/i2c/Kconfig index cdd7ba5da0d5..37f86e6de969 100644 --- a/drivers/media/i2c/Kconfig +++ b/drivers/media/i2c/Kconfig @@ -1718,6 +1718,8 @@ config VIDEO_MAX96717 To compile this driver as a module, choose M here: the module will be called max96717. =20 +source "drivers/media/i2c/maxim-serdes/Kconfig" + endmenu =20 endif # VIDEO_DEV diff --git a/drivers/media/i2c/Makefile b/drivers/media/i2c/Makefile index 57cdd8dc96f6..be3200b23819 100644 --- a/drivers/media/i2c/Makefile +++ b/drivers/media/i2c/Makefile @@ -71,6 +71,7 @@ obj-$(CONFIG_VIDEO_MAX9271_LIB) +=3D max9271.o obj-$(CONFIG_VIDEO_MAX9286) +=3D max9286.o obj-$(CONFIG_VIDEO_MAX96714) +=3D max96714.o obj-$(CONFIG_VIDEO_MAX96717) +=3D max96717.o +obj-$(CONFIG_VIDEO_MAXIM_SERDES) +=3D maxim-serdes/ obj-$(CONFIG_VIDEO_ML86V7667) +=3D ml86v7667.o obj-$(CONFIG_VIDEO_MSP3400) +=3D msp3400.o obj-$(CONFIG_VIDEO_MT9M001) +=3D mt9m001.o diff --git a/drivers/media/i2c/maxim-serdes/Kconfig b/drivers/media/i2c/max= im-serdes/Kconfig new file mode 100644 index 000000000000..f5a4ca80a263 --- /dev/null +++ b/drivers/media/i2c/maxim-serdes/Kconfig @@ -0,0 +1,17 @@ +# SPDX-License-Identifier: GPL-2.0 + +config VIDEO_MAXIM_SERDES + tristate "Maxim GMSL2/3 Serializer and Deserializer support" + depends on VIDEO_DEV + depends on I2C + select I2C_ATR + select I2C_MUX + select MEDIA_CONTROLLER + select V4L2_FWNODE + select VIDEO_V4L2_SUBDEV_API + help + This driver supports the Maxim GMSL2/3 common Serializer and + Deserializer framework. + + To compile this driver as a module, choose M here: the module + will be called max_serdes. diff --git a/drivers/media/i2c/maxim-serdes/Makefile b/drivers/media/i2c/ma= xim-serdes/Makefile new file mode 100644 index 000000000000..630fbb486bab --- /dev/null +++ b/drivers/media/i2c/maxim-serdes/Makefile @@ -0,0 +1,3 @@ +# SPDX-License-Identifier: GPL-2.0 +max-serdes-objs :=3D max_serdes.o +obj-$(CONFIG_VIDEO_MAXIM_SERDES) +=3D max-serdes.o diff --git a/drivers/media/i2c/maxim-serdes/max_serdes.c b/drivers/media/i2= c/maxim-serdes/max_serdes.c new file mode 100644 index 000000000000..bed70b8ce99a --- /dev/null +++ b/drivers/media/i2c/maxim-serdes/max_serdes.c @@ -0,0 +1,413 @@ +// SPDX-License-Identifier: GPL-2.0 +/* + * Copyright (C) 2025 Analog Devices Inc. + */ + +#include +#include +#include +#include + +#include + +#include