From nobody Fri Oct 2 06:59:58 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 7F87D43A807; Tue, 4 Aug 2026 08:50:33 +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=1785833433; cv=none; b=AsxnoJTRf8zfZp3T8QpTafaV7XfihLr/yWvC7UsZQuSpY+ceHq82WTIDnCSvCF2dh17mUHuqtzpDurnKl7tifckqKfDgR87l1/gJIIvlH9XZf8nBgnF1YpUBW6JIIJ31xSKo0KcA4ArS4i1t1l7Hr9P0HuW9DrEJraklXSP49rk= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1785833433; c=relaxed/simple; bh=cpDukcPxVJzXko/L0eFDwxYderoS/dpMlVO2IjtjjHE=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=JWIvm7c+/OlIpWBAZsvd2omoc1vc+jyLd+9rjnQn9ixItlt3d2B5jfanmf2nvfWTlTw8Vd8qgeP7Gdw1wzSp+1IMAwiMMnQGTX68PEil4qYKy6imPL7AxaSXNfoqMPrJ5YNxKQ530f2gMT4TF7803s3m2wv2/WODBzF7ckiqtVQ= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=b4aM+D8d; 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="b4aM+D8d" Received: by smtp.kernel.org (Postfix) with ESMTPS id 2F33EC2BCF5; Tue, 4 Aug 2026 08:50:33 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1785833433; bh=cpDukcPxVJzXko/L0eFDwxYderoS/dpMlVO2IjtjjHE=; h=From:Date:Subject:References:In-Reply-To:To:Cc:Reply-To:From; b=b4aM+D8d4F2NvB7++pr2uH7JTghvPXKycUMKkDZvmg1Sx4Zgnt4c3GizjVpLql22h 6oLZijkFuZVYZyhRtFFtsPwjGHlG5LE7peooZlE77aGbe1k0/C9BpZJk9UVx1Qmswb iyV4ullX4ynue+dC9vFoEWs9/z5h0G37qF2NX5usX6ylNUxyY9BsRXu9mHeAMSUYIk Y2hRy8q8dtXc8Fd2m8j0qu2T2bKWlv1ljYG4c+RRpza08O2FKVd67cZMmtZmsk6Q6Y 8pXS13e+vV/CqbFFnv+HYfdIGBPnFvE5TOirBtEItLbrbr+5V2lo110c9yyxjWtyde 29KB+E1nEi1sg== 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 0DF1FC55ABA; Tue, 4 Aug 2026 08:50:33 +0000 (UTC) From: Dumitru Ceclan via B4 Relay Date: Tue, 04 Aug 2026 11:49:44 +0300 Subject: [PATCH v14 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: <20260804-gmsl2-3_serdes-v14-1-763710c884c0@analog.com> References: <20260804-gmsl2-3_serdes-v14-0-763710c884c0@analog.com> In-Reply-To: <20260804-gmsl2-3_serdes-v14-0-763710c884c0@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 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=1785833430; l=4211; i=dumitru.ceclan@analog.com; s=20240313; h=from:subject:message-id; bh=j75z8BDeqCgnWrq6GF1INTACeRkTAkS70gXnWGmC/2E=; b=rtcmSF5i6RiFhSGJsN+ArGTkhbHiL/EvJgJHudNThX9X7DKpekwyjJbPfM3TEAgq3IZEdMG1H uZN6HgYzrJqD6e/rbLRcmIAr8pl+x+aPEMMc5EohUSxbGm5XASlMyzk 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 3fa0bc687851..7938f785e2e3 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.53.0 From nobody Fri Oct 2 06:59:58 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 7F7DF439F8F; Tue, 4 Aug 2026 08:50:33 +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=1785833433; cv=none; b=lYMMz6iXT9V4s8inRxKFFbWYvkdxkBTtBcUFkW80D/fewJoYq5nyJaPtZQfF/xyfRPbPbuhMQjCocsKQMQlQr3qKrO8vcyAH0SgBf1kdGj36pC2306SBZl/sjaeZEs5LSK/A/j8C8yexFz4SXPI9LyLvTBg4r+jGnMOxa4yNslI= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1785833433; c=relaxed/simple; bh=m/Lw3D9Sn7b/iEdL6eTGT3K2tR/KZoA6l9gCS1mqNBI=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=MPZ0ouahmmUo3f2z/XUIUNzuADmNi5oaSSkiX1LDZtMiOsfAYPHl+T4RSZIMPDSpm+YLSc69pNjwTuk0SyAE8xl3cwoxlhidC+qQEkUWDlS+5WElNMBZOwcO6X3pTBp9QUgWFcs0EvFIudVUjuk3gZ3Z0i81pop8tlQIUuZzydg= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=INIBlRfl; 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="INIBlRfl" Received: by smtp.kernel.org (Postfix) with ESMTPS id 3C611C2BCFB; Tue, 4 Aug 2026 08:50:33 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1785833433; bh=m/Lw3D9Sn7b/iEdL6eTGT3K2tR/KZoA6l9gCS1mqNBI=; h=From:Date:Subject:References:In-Reply-To:To:Cc:Reply-To:From; b=INIBlRfl7NKkJCesHKf8h83dwD7w7DiyEGANcwuT/VNxxnBAhmrgXpvr4EZJcbxxQ qKp2ICmcOiEoKvpf2P0EMT+7hAEGev/Y/BWWxsBGSylBNLmyd0rKDZiIgGWDPt+hZF wpi7zq6Bo2/E82YgY0XozBZLt5vakx/vXzdhq2NCr5hMJ7t8jihvbn4yM4uCRTgJWb F7+APVIxKxXQmIcRPxY45qAoaxSBicQWUK1Ac4mKQLhOc/7dmFsvDzdp47ESZmONnE vsnO6g39X6p1w8+bbsNQIyE+WNIPuU1FNR1GqpJ1X0I5TzGdouGuAIU1bWB8aV45bL pnJwP0KlZOvCQ== 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 230D4C55ABC; Tue, 4 Aug 2026 08:50:33 +0000 (UTC) From: Dumitru Ceclan via B4 Relay Date: Tue, 04 Aug 2026 11:49:45 +0300 Subject: [PATCH v14 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: <20260804-gmsl2-3_serdes-v14-2-763710c884c0@analog.com> References: <20260804-gmsl2-3_serdes-v14-0-763710c884c0@analog.com> In-Reply-To: <20260804-gmsl2-3_serdes-v14-0-763710c884c0@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 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=1785833430; l=1814; i=dumitru.ceclan@analog.com; s=20240313; h=from:subject:message-id; bh=OiYJqgg6XnogVXqu3cCeY60g1Qzx0eB+PgiVHCOJen4=; b=JQreMDp0sMurC0HiRvCUwsypH1MCqfvmfpncYmggoHl1j0JdWJDb1bKHRxjkRA+vNqDRKrkia 50IqJbwFMy5Crdscy0JuDotNNHUA4XZTRaKjovh0NVlxmWIrHLqaYyH 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.53.0 From nobody Fri Oct 2 06:59:58 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 8E2EE43B4A4; Tue, 4 Aug 2026 08:50:33 +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=1785833433; cv=none; b=N6qwlEOg9ENE9u4mcVfYDC5GLjiwes49m5Y6fl+gitAdTv5qX4ihlkyLyToWD/RcFn4vn9LN6NqPfkSoDHXC1ACjlex4xD6dSpQTaay3WurAVVLVTXqtvLI/PxDsqnrjjBM9RYNo8XrzhW5sLrmW84zEqZtMmgkNu3bCSSvTSWA= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1785833433; c=relaxed/simple; bh=+zzdgbeUTZ1N1DTgq5TxUwR+zP+wJLNITthqc1e88Zc=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=Lv63G/fISAJXh/ZG+NlRv70p3qRhGCE9Ga8I7IZZsvPFM6p9x60ACt1RFBA/e6Z2M9awMsknwwhMUSt2gFxsIq9ACx4ffzkiFD1QV4hpK7bIkLx0UBjfhZAPyctC8ufbknpzCmNK6syPKpQL4VNSQZk9sMvn8Zb4edoiR7uaofQ= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=BB2yrG8c; 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="BB2yrG8c" Received: by smtp.kernel.org (Postfix) with ESMTPS id 4D618C2BCFD; Tue, 4 Aug 2026 08:50:33 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1785833433; bh=+zzdgbeUTZ1N1DTgq5TxUwR+zP+wJLNITthqc1e88Zc=; h=From:Date:Subject:References:In-Reply-To:To:Cc:Reply-To:From; b=BB2yrG8ckFP+8ut8Ibj8INcH/DGEHHFJm2IJ43BcegMf5ZMVVvJiDzNdWj5bReSJ1 /BHobg1ars8Zq8n5cEeEe6DMN7IeSrniE57jg2zYqEw5CWQTmQS8rv9b2gcIEjDvrQ RAlmjL367mom9Y+GL/jxWGIgiwn1YaOxpF6KEcN4leSYa4QiB4o7I9Q+zitxHuQJQl 0xEoA+TTmAsJiYyG0MyDiyc/044t6PMVfiJsWfSXsNMFG2z9lZHEtPPRwjqeabgPBK R1aAg8jCrxe4rOXTqHwm/dfa+xGxaPOz9PYGLY6lXkaoKFumz1baOOp6nl3YAqWCfU N1xsVl9eojN4w== 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 37618C5518F; Tue, 4 Aug 2026 08:50:33 +0000 (UTC) From: Dumitru Ceclan via B4 Relay Date: Tue, 04 Aug 2026 11:49:46 +0300 Subject: [PATCH v14 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: <20260804-gmsl2-3_serdes-v14-3-763710c884c0@analog.com> References: <20260804-gmsl2-3_serdes-v14-0-763710c884c0@analog.com> In-Reply-To: <20260804-gmsl2-3_serdes-v14-0-763710c884c0@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 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=1785833430; l=4016; i=dumitru.ceclan@analog.com; s=20240313; h=from:subject:message-id; bh=SrxXRhbQ3GCquuhQkKB0cKcz5eSmglqqWPozYcuiRVM=; b=o+fxzBhcldfJL9SIuu+1Zlxd/qKnxvwAc1jEY1P3iFQ2Gz1kb++2YBNedeNDJnCdlfX+2cboP X/uEqPgAiC9CPch8PRkOJhBud7MjO4GUoOjRtL0NqAnE9H3JDoefshz 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.53.0 From nobody Fri Oct 2 06:59:58 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 9082843B6E8; Tue, 4 Aug 2026 08:50:33 +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=1785833433; cv=none; b=BvdSFvH2/auhr9dugZE/ZGPzAD3PI8b2lIvM2Am94K9YmyVM8kmgaMFJ0mi8z02+2pFfbvTOR+u99sX+PV1iRT5qZWnDySfBN9JEeDJ2xayaMHpY0ghblA+Z5ouhQGEAobGvERD723E+06JwC6LCDBEgKSpmEyLJzqGVNrKLp/A= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1785833433; c=relaxed/simple; bh=0LRurGs30izWp59o8FPmIaT+p/OC5LyJScZ6dv8wqHc=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=RDd8TblQ7Qfvx2un80U1Iu5e71gZT/SskvYyO7Uny7onB4MciDbKK0pTVSxT6u13Bhjb0knexbhA2S2xJ8t9sQwzH7Bu8j4mv7baUJdpL6Oo4+w7AKH8ES4QdFlLwmgOVxrnGYMJfSQMkCZQVQiRqKsXzT9tB/EQMNHOSqvnPzM= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=gGWJH5Bc; 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="gGWJH5Bc" Received: by smtp.kernel.org (Postfix) with ESMTPS id 5D753C2BD00; Tue, 4 Aug 2026 08:50:33 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1785833433; bh=0LRurGs30izWp59o8FPmIaT+p/OC5LyJScZ6dv8wqHc=; h=From:Date:Subject:References:In-Reply-To:To:Cc:Reply-To:From; b=gGWJH5BcI3vBG6JnMANA4hDjeB3+0CydEtPEmWVOQWHgfR6A85VKkoZhkCuMK8byU YedkWSdFrWrlI15M+YJLZeNqdymyAg+UzsQ5Iah1nqSu2rzNnp/8f0cctGGaeuWZ6W qeXUSaFjYz/z4AZGo/Y+UEH7cpqvLwhw/3xBG0eyxDpwqEWjW3w3ykilkoYmZNbH48 drOPKUtcb3n3GSiosnpiFxwd0ri6vDxprZ8TWBGN4HyCjqYMKmlUhYa6Psk6Mcwuj1 N8BB5oVGJmr6mZI6RQwusR9SOqwVW7FtDjZPDgZRITjzYOIsuhWmYU97Rz/f3rYqGH SKIjaaNlaRBcw== 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 4B029C55184; Tue, 4 Aug 2026 08:50:33 +0000 (UTC) From: Dumitru Ceclan via B4 Relay Date: Tue, 04 Aug 2026 11:49:47 +0300 Subject: [PATCH v14 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: <20260804-gmsl2-3_serdes-v14-4-763710c884c0@analog.com> References: <20260804-gmsl2-3_serdes-v14-0-763710c884c0@analog.com> In-Reply-To: <20260804-gmsl2-3_serdes-v14-0-763710c884c0@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 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=1785833430; l=1215; i=dumitru.ceclan@analog.com; s=20240313; h=from:subject:message-id; bh=vJv87PlKhZ/JJOLIT/BDLODjizDSGOosxrrf6SXpE7Q=; b=i4CNBAYdnJ6+n1pwpgpkGpgKodQlL6OZhtkCFFNeD0QBL3GpHRTv71Q24Ku4KPd8rQf6GA89H bHr9norxQ2yB/ttnTdyK0DGtPf61yKI+bg5l2bJkUtLu/9M0mrc1UaF 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.53.0 From nobody Fri Oct 2 06:59:58 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 B296E43BDC5; Tue, 4 Aug 2026 08:50:33 +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=1785833433; cv=none; b=M39E9xFL3jyWVHcE7huy9iym3tD/4x3nR2FXqSpQrsx6t4OpEl+Jq+9mxG0+HunU8jv0+s7Mm/KwJDD6wSDVlcVh5NlsHoF5WVVYeRHXHMLKMkTN6Uf1RJV0dU/EX/ClXaDa0d6ngmy5OHRMqE14YkrmnbwTvTiDkmNuttAQqNU= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1785833433; c=relaxed/simple; bh=BKRnyLSX59IE0zfiNOQX8tE/TWnmktZCFFeLRCV2Ecw=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=lmPx0U1SpBJmU+Mj8srnC2sJHGI3Wukw5i1peMz0t8x+6278LYL5AeqcX5z+Q7uO+mJV04XYct4Gwp6uUd2JNJre57rfERp8GCX787FgifTxYZneICaLPomK35zFlINAhbmP6lJENM5fyIYufaW8AC2fRO1xEeeEBd0p97Mdmms= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=YyPqPjI1; 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="YyPqPjI1" Received: by smtp.kernel.org (Postfix) with ESMTPS id 6FDAFC2BD01; Tue, 4 Aug 2026 08:50:33 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1785833433; bh=BKRnyLSX59IE0zfiNOQX8tE/TWnmktZCFFeLRCV2Ecw=; h=From:Date:Subject:References:In-Reply-To:To:Cc:Reply-To:From; b=YyPqPjI17XcD6K0uPuCM7mjyVrLwjj61CP6UfubsY0lCwqe4oeU+kZDZEyGTFGpEN SC3LSasFnR4eMhIr40NGDkaT7iLvPnpRCMceSGevMoWWew7wEvQb6927ZNLPZKCX8h XS9aQIPrFlooQWmbF9ZpvEYg1/rU5ERMOqs72NxWISdUXOgKrT5chn173aNuVq18aM AR1fTsOOfNq9MFTDjKiuxrPXfw7L5i7cqsRP6CFrhVpCRiPXo3jNuWmUBhFXVKONbs xsOizhB0XPX6GyW+QGn/0ZqWGZ0tvh/1HlCCbzw0JgwbvX6oO5bs1/cONmdMz5n19v 5ZkA4FiTDMitw== 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 5F140C55ABE; Tue, 4 Aug 2026 08:50:33 +0000 (UTC) From: Dumitru Ceclan via B4 Relay Date: Tue, 04 Aug 2026 11:49:48 +0300 Subject: [PATCH v14 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: <20260804-gmsl2-3_serdes-v14-5-763710c884c0@analog.com> References: <20260804-gmsl2-3_serdes-v14-0-763710c884c0@analog.com> In-Reply-To: <20260804-gmsl2-3_serdes-v14-0-763710c884c0@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 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=1785833430; l=1028; i=dumitru.ceclan@analog.com; s=20240313; h=from:subject:message-id; bh=kdE8G2f/TkU4Jd90/mcz/ibtYHam2bXzp5xv8fAXHto=; b=QODX+TSAhXtZKgg6fhAfj/iwHZp8nMw6AIhPrEf7Sjk/CEWEIzzXlzKncqSJ8g2oU+1swJK5r 2a4y3mZ3gV0DwO042Esz0q6YrjveoNth1RtGpk6dWLDzganuC/H4rZI 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.53.0 From nobody Fri Oct 2 06:59:58 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 C0C5043C069; Tue, 4 Aug 2026 08:50:33 +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=1785833433; cv=none; b=FPAgZs215OyKqouz6pBHr75Tgi+BZTSeLwK1kqt6GxDCMuaOK86sq5yuKwe4IaUmhTi4Ek7w4sFdIYHEMtqTIenLJAeFwHR7aWY/eDquBd3obzu8MlxBm28tAaylnFQ1M94X0oC4MXGilq3BTAf5O4Cn7rboFp94bPpQ4UFRMa4= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1785833433; c=relaxed/simple; bh=8TupqbovUH4f8Ft7S3k5VMJFfXq22X6CyPw4uwxsut8=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=gR9IPOfSlzXTxlpULv3HMl/rEdak7NugBfP1kBLMF96TNvM9NjWlL1e5Fq1nF+2PhN6jvNazWg6L732upCdxcU6LrdMH5pJWwTnhKvwlHr5rFjBeFLlMy/5A3Xc9IwLiPImp4dWE8YJXrPZCveLOvbkw1/3a0PC3b1Eq9LOQQhM= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=Z3aL0/JY; 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="Z3aL0/JY" Received: by smtp.kernel.org (Postfix) with ESMTPS id 88D57C4AF09; Tue, 4 Aug 2026 08:50:33 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1785833433; bh=8TupqbovUH4f8Ft7S3k5VMJFfXq22X6CyPw4uwxsut8=; h=From:Date:Subject:References:In-Reply-To:To:Cc:Reply-To:From; b=Z3aL0/JYX+acIOs5xoQ6qd66WIBppHhhu/5IlNSq5kUtGOpgf7sUvbQiFsEV7ygf7 vVMHwAzBQjmRwNPUWKNFMHiGmLVxfQhGTWsUjutLjeSIkBu0HIlWWV3/MeYU79XJKZ R22xkZPaiHnfzHdGcALNxGlX3xFn6zxRngtdCCO7StDyib81L8o1rxBrsrEikbNm2r xwTHTxU4k/OTwOVPbwR46xhnEl75lG6agRfRXfTlPA4Vq6c/scS571C+6EsIzvf7mg hliPrLw1BVd+Xy0QXFgfzhM0EPB40Q/7Xr6C9kWE+pCV4eDfgSmKLkG0SmtTUw+LJ8 vcayRnEyFRNiQ== 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 75D32C55184; Tue, 4 Aug 2026 08:50:33 +0000 (UTC) From: Dumitru Ceclan via B4 Relay Date: Tue, 04 Aug 2026 11:49:49 +0300 Subject: [PATCH v14 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: <20260804-gmsl2-3_serdes-v14-6-763710c884c0@analog.com> References: <20260804-gmsl2-3_serdes-v14-0-763710c884c0@analog.com> In-Reply-To: <20260804-gmsl2-3_serdes-v14-0-763710c884c0@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 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=1785833430; l=2057; i=dumitru.ceclan@analog.com; s=20240313; h=from:subject:message-id; bh=I52ZK89SDidgv9Kh0KUq2eBXwlYMLSWhPo+aSFUbLXE=; b=ofcqOzuNeyn/TmLezFEuAFRLGAUrvfOsadh5Nv8Ln6WuDS/C80Jx7jdsiyZ49Hbh2E4bfsqpU 7el0Wt6qj90AN6J/cGsTDBxWv0dadPVHkcA6dtYDgqQy8bRjh7yGthW 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.53.0 From nobody Fri Oct 2 06:59:58 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 E928E43CE57; Tue, 4 Aug 2026 08:50:33 +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=1785833434; cv=none; b=kcjMHYt5XM/n6wJ4lfM61Z/OPPiUXjSemoUMzdf+NdaiWpCjHMz9ISL5ptS7j5c7mFMfT7hpN/eVkeG/1HuniKGQCXImfLStxvAmIaLGtlDfMzlPv7lcNVZmLwn58nn9/SLqcDGoLLoqXeWG8nrA2FJvbHcrAPhnlz00iv01vkc= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1785833434; c=relaxed/simple; bh=oRQbdno+uMhuHFTbdmanYF8cim3BHh4wpJplXog8vQk=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=HRSapfrtHDLiL4Ty2rdYGn4RsTAJ44K56ImGlXZhqsz+4N6rZQeSRvwbkQM93l+gu9m99LiqmGqCq1j+KiA+Pd/DalxReccr5vBmqKyf13P4UjVtsDHvSAG/F7c9v497/UXduHNoNWaWGN0wP8+eeelQjd771tTL2zGw9M0vxyQ= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=W7eado9K; 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="W7eado9K" Received: by smtp.kernel.org (Postfix) with ESMTPS id 9D006C2BCF7; Tue, 4 Aug 2026 08:50:33 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1785833433; bh=oRQbdno+uMhuHFTbdmanYF8cim3BHh4wpJplXog8vQk=; h=From:Date:Subject:References:In-Reply-To:To:Cc:Reply-To:From; b=W7eado9KAVDlvs+avWz6gcurqiCPLNTP9M6Q5XbKw/jlKZ9GqnjNfp33qsrW6XbJS Dmx6LFwqBsOLxKi45m8JHaPD69bp0muPKy8exDwodSkApvzfPvnzyrl5wJVfcwTOMM Wi9nqndhc2T+s4dSpz87L+FulChkUjOqIcmrZKLldQ1TYgEMbv5HSy5nZUIoofiOHf 9so8xIGUObYTF86Dj82BD9bmCnXpocsbhRNfbdhbxGLpDlDKWfpyYqZgkrG0KjbJmG FV4uALJ/q7kUOvPAW+srbS0KUw9fjOBoT9dl+l3Bv+7Hl74edue/fK2rcU/9kijIaV sZEB61Qx1YRFA== 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 8A796C55ABA; Tue, 4 Aug 2026 08:50:33 +0000 (UTC) From: Dumitru Ceclan via B4 Relay Date: Tue, 04 Aug 2026 11:49:50 +0300 Subject: [PATCH v14 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: <20260804-gmsl2-3_serdes-v14-7-763710c884c0@analog.com> References: <20260804-gmsl2-3_serdes-v14-0-763710c884c0@analog.com> In-Reply-To: <20260804-gmsl2-3_serdes-v14-0-763710c884c0@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 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=1785833430; l=1871; i=dumitru.ceclan@analog.com; s=20240313; h=from:subject:message-id; bh=Wtq87WP6HuN2ExCP/a1ucfnQWkLmzlzMjUynofXhUVc=; b=Z5gsXQ8Ip5/31PAfMKTBLy5p8Ykb/c3mqOS3aSkZhGPP0/V/sIx1A6xhXlQ1HjkU74Brw3H/K PsCzd6TY9AaDrg2wYknQVQxBb5cD/mts3yxjEzfp+B+SeyyGi+PBAyq 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.53.0 From nobody Fri Oct 2 06:59:58 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 3C62843D501; Tue, 4 Aug 2026 08:50:34 +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=1785833434; cv=none; b=SMgbKSOJ60SqXLihANxL503HPiHPnwNB79W7NoslB+LNgKIpgQoS6NlZUUwoF9RzWJ5RSTJzEV9iwnnWVsUPIT9PaxxxEONzCEvCZMs3TE8SBVrnOOK5vaAmejvF7NyFWkhX1x1s7BTXOVVw3tp2p2nIchdLz8zoJts0SWlQChs= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1785833434; c=relaxed/simple; bh=uqnWPcYuomOdK+CZnQbIn/W5p1Thhpmu4YbDCuYmLeQ=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=pyKL6Fl9GX6MjcsepFGZ73ZCjTk5ytgjYPnFe+6ufMf4mPRg0s6QQSCxAwrnoHyDpbiqDrQc8IqHDefFXQmMfDJXJdSTOGuIh5OPnxWhytTu/clT/ueFTBpeqaMXeJWecPZpZnxJZMESKDjTp2DYYU2GBAQ1capNCmhG5e8VQJo= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=KTMaCoIS; 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="KTMaCoIS" Received: by smtp.kernel.org (Postfix) with ESMTPS id B4936C2BCF4; Tue, 4 Aug 2026 08:50:33 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1785833433; bh=uqnWPcYuomOdK+CZnQbIn/W5p1Thhpmu4YbDCuYmLeQ=; h=From:Date:Subject:References:In-Reply-To:To:Cc:Reply-To:From; b=KTMaCoISX9Se0KZqgQUDc/9I6ZRjt214Cf5N3Sqc8AEWkT5FYxWUt9T5ofpdW/SqP 1o8xp/HAztnZ8Y8ZIbXmooBSuBP1K1BXSpDWCv5wW30nCl47j2wwATwWeRZIaXuF+5 Ahm6U+tTd2cYsIzCjxLOnJeAoiEbji9Sk780Ojrnz3NUC+hhfqcF43sjB2Vgm359zw w05IZ1nfYo+zRC1IwGHLeKKQ4W+HZE6jVJ2vbHvtjNMaV/X6EoHU4FOCYpGWtvnlg1 pduaXRex14qknpakxR20AGdhrOMLKiJYJUgGGlzaol//kl7HHbjIHXUhLgBKb0jti3 FNC1jWbUkJy9Q== 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 A19E0C55184; Tue, 4 Aug 2026 08:50:33 +0000 (UTC) From: Dumitru Ceclan via B4 Relay Date: Tue, 04 Aug 2026 11:49:51 +0300 Subject: [PATCH v14 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: <20260804-gmsl2-3_serdes-v14-8-763710c884c0@analog.com> References: <20260804-gmsl2-3_serdes-v14-0-763710c884c0@analog.com> In-Reply-To: <20260804-gmsl2-3_serdes-v14-0-763710c884c0@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 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=1785833430; l=998; i=dumitru.ceclan@analog.com; s=20240313; h=from:subject:message-id; bh=4ZvMQ1EkeJ2w8dRWwF+03VM9oahvM+Q5lLU48mndSLo=; b=ELipCTY8rTeHqTa7k3WHzHIzes4fjXfIGFn0rnz5ZtsqVNuTZ5k83HTtnLH77wGh2RiOA5RAJ HLO+FH51qCqA5fQZ/DU1+jPyTtMmsofH0wH2dB5mMVudgFgSBzdfj2Z 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.53.0 From nobody Fri Oct 2 06:59:58 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 0739043CE66; Tue, 4 Aug 2026 08:50:33 +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=1785833434; cv=none; b=MahL+wMMKeRaw7xxYwNKXR9CC7ik8dxhxTWi4m5CNUBSx7648pArBt0O343bwVc8Rv02zj/Vhf9/xkcMe1OYMzVBhRFHgiGdafSoNZrYj9GLeP8X9Fclvbrf0mFb/aDG1tpg/LNH9Rp2jo9mIt0tPyzShaZe57YsKwUsU3GFz0A= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1785833434; c=relaxed/simple; bh=IVMjQPi6cuXsnNOAOBqZV5+FmGTZcU/k97taVGCOIoE=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=Tptd4NsbnrvYU4pGdqTJjEvd98/8tYliXgCtQGZ/D5YiFV90kBdJz6psRSV+TNI6TDOauXlu/EWVzMHrDsWO0wX/8GQMxfjztbPPgPzIX9veXZ0dDRVT1N+nNkQEArk2+MkrwJH0ehoK9OOlUWg7kEMaYaD0OWbn/qYIvWdONNI= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=O5Vc+Gnz; 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="O5Vc+Gnz" Received: by smtp.kernel.org (Postfix) with ESMTPS id CF310C2BCFF; Tue, 4 Aug 2026 08:50:33 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1785833433; bh=IVMjQPi6cuXsnNOAOBqZV5+FmGTZcU/k97taVGCOIoE=; h=From:Date:Subject:References:In-Reply-To:To:Cc:Reply-To:From; b=O5Vc+GnzsxQdtOLUXnN2A7/8xjXh6FtyTVPvsfvYrqLCdEzjYYxfmVz+ekIW3KFCQ GhoFSVr9uKx+IFTCezhl6tfn14dqLOxdw6pkxSDaTRwcr0N8naiL6fD6UPnxQrX3X4 EFup+kC+TDZ10YBrqDduczl+4E5Um+MilycoO2VR8BEC0FnWl2lzi9fhcS5iz+PYYP ZrgQe9oVmCjjIcWsyW3EZOtffVM2m9BEGrGrkx86k0WXnfNt3PeP+lNTNDpank0Bvp YEAQ0ewTDJXYcT9btB7dQFRIsyg+ZdfJW49GhBxhzIgwSvrZj615EnmnaA/9Y+JgDC 1fH01QJsn5CIg== 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 B9B10C55ABC; Tue, 4 Aug 2026 08:50:33 +0000 (UTC) From: Dumitru Ceclan via B4 Relay Date: Tue, 04 Aug 2026 11:49:52 +0300 Subject: [PATCH v14 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: <20260804-gmsl2-3_serdes-v14-9-763710c884c0@analog.com> References: <20260804-gmsl2-3_serdes-v14-0-763710c884c0@analog.com> In-Reply-To: <20260804-gmsl2-3_serdes-v14-0-763710c884c0@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 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=1785833430; l=1289; i=dumitru.ceclan@analog.com; s=20240313; h=from:subject:message-id; bh=ZSTakNbBz4Qus1NiPPbe76vFnVEQ3NLtF7fl+Vgxvf8=; b=1zp+vd1f8dmxcPvdYuGLTw3WjF2wGG8yRACmaOzzU790nkLP2tfHA/TeQT5yJobcalXK+z5vi SsJnWnPx5RBAbZ9MIkaSrMdWYE1SKyc9xAcsitRp4Jh2NgepinmU3ef 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.53.0 From nobody Fri Oct 2 06:59:58 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 4A00243D516; Tue, 4 Aug 2026 08:50:34 +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=1785833434; cv=none; b=Abknb70v5n2ltdWHZDGILkOZFKYt5D8vlrfxns8uI036/H3iJSjLWw+G969a1HaT6gLu9+gURcCyC2EAv+wg1Ax7GeRqOmwJOg6BWhR/IsfJaR2nSOMBcb2KLB43VueaO5qnzxg0PrSDH4SFKjnXGlvYLSWGNGV/a0R20yTU/1g= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1785833434; c=relaxed/simple; bh=Dtu/uLQC/VBH/ebsINFo2Ugv0zQarsUez6ULS9EDjKI=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=knuwnnK/dF9Wi52SF0xEKFBwH6HieQRiqbAnAfxJvj79C0mMjMhF5R9hjANhi+qheA8sHmKScp+/J/bTylRWHxC9MlqOX7bTlsTGsIQgXOB1WbbLW2BHMB90zBgV/MPES3tFEiYWG4zeWU6aaVEdnBOPR7tBHy9K5jnVPy/dL/0= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=d9Q8aR1o; 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="d9Q8aR1o" Received: by smtp.kernel.org (Postfix) with ESMTPS id E2F5FC2BD05; Tue, 4 Aug 2026 08:50:33 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1785833433; bh=Dtu/uLQC/VBH/ebsINFo2Ugv0zQarsUez6ULS9EDjKI=; h=From:Date:Subject:References:In-Reply-To:To:Cc:Reply-To:From; b=d9Q8aR1oBiOPXVxH0qF5UpiaRCRrlaUQJ86VQcJymgkGsZdQNEx3/dv7ChKCsKutZ EsqYSrVYV3rf/31gKMZUWnjFC9cWd4bqy2E+BNQbVB+3cIAttdlT3amzO2lzV1n4Wl peyolS7NY6uhQOHubI2dpMFkpdxU28uwknI67jm0ahnbVUq1JpTSAyn9QypnqSfTQr bQZFU8pIPHp+cE4uRmq7hyXj9BrUrrGO0SfCG2PRvFv2fu4IStSMMr+aTYBCwW2beZ ShSydaTpK4FA8dZO2orMeo/AuErG7dlIjZ8a68sctE9PZ4OCJnbhIAm8rlEVVg/Shy aCuqq+JyhnE3A== 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 D092EC55184; Tue, 4 Aug 2026 08:50:33 +0000 (UTC) From: Dumitru Ceclan via B4 Relay Date: Tue, 04 Aug 2026 11:49:53 +0300 Subject: [PATCH v14 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: <20260804-gmsl2-3_serdes-v14-10-763710c884c0@analog.com> References: <20260804-gmsl2-3_serdes-v14-0-763710c884c0@analog.com> In-Reply-To: <20260804-gmsl2-3_serdes-v14-0-763710c884c0@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 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=1785833430; l=1210; i=dumitru.ceclan@analog.com; s=20240313; h=from:subject:message-id; bh=zHQWciR44LLL2n9JRuufsEezIBfNdUsq5fR2eFezGHc=; b=JVYhaLCC7VJh8CuG+Gh9lha1FWZE51cGaxuWoo3SnlfYnUHFpF79LXwA4ghCIUKg5w3C9+ulD 2DMqyv90Ze9DubBJtw11TZJ/qccq5fP/Jndp/FByD8l+PqEsIM7lRdX 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 Acked-by: Rob Herring (Arm) --- Documentation/devicetree/bindings/media/i2c/maxim,max96712.yaml | 9 ++++++= +++ 1 file changed, 9 insertions(+) diff --git a/Documentation/devicetree/bindings/media/i2c/maxim,max96712.yam= l b/Documentation/devicetree/bindings/media/i2c/maxim,max96712.yaml index 161d40acdd28..ab1dcd8ff8e7 100644 --- a/Documentation/devicetree/bindings/media/i2c/maxim,max96712.yaml +++ b/Documentation/devicetree/bindings/media/i2c/maxim,max96712.yaml @@ -41,6 +41,15 @@ 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] + default: 0 + i2c-alias-pool: maxItems: 4 =20 --=20 2.53.0 From nobody Fri Oct 2 06:59:58 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 2058E43CE71; Tue, 4 Aug 2026 08:50:34 +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=1785833434; cv=none; b=A2sJBhJRy1tpwW6ya1QXsi8TdlDOJcP1oDOQpAcAYVq1lvqyZD1axooOhRBFOT8wdNMoYrgHMHGRTtrcMZeTFTZNPz1fZtUpFYAhHZ2nqD1EPjdtCxI29Kv8CeFtWF7hrA1d+sUFkocGflWznot9u1C0+tApVAvwSfJ3HqSHWks= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1785833434; c=relaxed/simple; bh=P5T0QdiUtUUc3yfg+4YRcekBidFP3FtN9qvlxhJwdCA=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=dIKlhcPELBa4Z8lJTeC1ci16udisBSGylH2exZXYQDQpK2fEIV3/vZYgVIqvqLw6slQk2+buOrViHIqAXBuIPQvoyNCi2ex4uNDoaJzAMusmcvm7UTSyNXq56+il6agXrqswygmYdA6kHJcUDUFRJXDwqc8v6DqX613wArIbfYw= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=VZTK5Si+; 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="VZTK5Si+" Received: by smtp.kernel.org (Postfix) with ESMTPS id 03532C2BCFB; Tue, 4 Aug 2026 08:50:34 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1785833434; bh=P5T0QdiUtUUc3yfg+4YRcekBidFP3FtN9qvlxhJwdCA=; h=From:Date:Subject:References:In-Reply-To:To:Cc:Reply-To:From; b=VZTK5Si+56c9Tt1RCaMckxAsS0G5tRVz0qMF2Ow+nG3q1FRSp23+f9e6hd9mX02G6 bB17GjZRiBF4o/LHcrdFp+46di15F5qjAaCQbsugoPh9MthnizThkPDbzoZZzIj/RA s7CfaC+BIh/l4/FSTPSckCy5XKsxP73J+/yPc0dmXCjQmLck6Duc5MGJdOQxx3Ly+X 5o7zv4vFYK0SqzqpphGjEecx7YcykdKXqLfpfXZt17WD/9WRz3jsVkghpgeEWzuFTD 9j+HVb9Z//HHUdhIca8pXm42vhO8u0zmJ90p4cXzaGadyX9nK2lI6jFkQMDleP1PTs NwjTM0hWBoCFQ== 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 E545AC55ABA; Tue, 4 Aug 2026 08:50:33 +0000 (UTC) From: Dumitru Ceclan via B4 Relay Date: Tue, 04 Aug 2026 11:49:54 +0300 Subject: [PATCH v14 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: <20260804-gmsl2-3_serdes-v14-11-763710c884c0@analog.com> References: <20260804-gmsl2-3_serdes-v14-0-763710c884c0@analog.com> In-Reply-To: <20260804-gmsl2-3_serdes-v14-0-763710c884c0@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 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=1785833430; l=1267; i=dumitru.ceclan@analog.com; s=20240313; h=from:subject:message-id; bh=zOCbIvONkBm9sImxMI6AYdByC42n/O8SZsebFGXPD4g=; b=iYklAQbdqoP4TKAhj9F9azprOts6lKjuEIH/gu3AMJi1hdn5p+K1y1lvr2uL4LKHZ2REch7PC axtVWyVnBeQDVBCKs0VESAn96sFU1m3jnA/2pENtDLv7rlofi5sX7lH 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.53.0 From nobody Fri Oct 2 06:59:58 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 36D1443D4E0; Tue, 4 Aug 2026 08:50:34 +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=1785833434; cv=none; b=JqFDbS33j4fCJ7IhrJPyzXuY6mcRIcsrXMscA57TaCcyTHfhXorO4q6fTIl8OyGicP1n5IIvXg1c/C1CeiH6G2mxTZqqf0sOr5s+aeK59crR41DPFwyVPk2rTmmgjj0DDNAZnh+B9VOJ1eU2AgCuSburPoECfzs4ovRD+KD635I= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1785833434; c=relaxed/simple; bh=oOaEEW6GmpDwPz3O9FJ6PpObO13kLIxHFXrYwg6p9IM=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=o49DLV6PALu0twgqD/S3VMBLhgP1SS0eOrZZQozXxyeiEpo1QTtbZM3mFgviSsayefyQTVAMxBpkLLpQTp1hdGxVm5smCqL9LHBVWYomsp7VL3tC1zkVAb9ND5JAKpLneNRXK9OJsG/LAD0dnIT3Lk1Zmg36IOKFGAbPQGPA89s= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=IrCesVt1; 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="IrCesVt1" Received: by smtp.kernel.org (Postfix) with ESMTPS id 1894EC2BCFC; Tue, 4 Aug 2026 08:50:34 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1785833434; bh=oOaEEW6GmpDwPz3O9FJ6PpObO13kLIxHFXrYwg6p9IM=; h=From:Date:Subject:References:In-Reply-To:To:Cc:Reply-To:From; b=IrCesVt1Dc0p4vNvNW/eQvmlykBrf38vqeA5XhWpqG03WoXUA8owwmYy7TzYzpaX5 FnUrlp7QoW0CKFe+pOiwEdttTXUkvDyXxY/pfM6C9JUwIQe4zJg6YwFz8K99ek+BuS hYa6nUPKNEtZ9g73QjMSMviFYKYymEjV1e8qdzoKRhgFa+YNYOBHefSbm2bbZVtmlU tGzBHSnPiFxi08zf3ZmR2YElGWHdXd0ITi54WVSdVFayfIS5n9A7gDxE0yfJ5lmBYm +uN9IL5cL5bfzpNShIfraCPxkLM0VQCPz8py68dy6rFNgN19SkLNtpGSz7gmHJ61rL d57wPGNqS2oXg== 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 0743CC55184; Tue, 4 Aug 2026 08:50:34 +0000 (UTC) From: Dumitru Ceclan via B4 Relay Date: Tue, 04 Aug 2026 11:49:55 +0300 Subject: [PATCH v14 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: <20260804-gmsl2-3_serdes-v14-12-763710c884c0@analog.com> References: <20260804-gmsl2-3_serdes-v14-0-763710c884c0@analog.com> In-Reply-To: <20260804-gmsl2-3_serdes-v14-0-763710c884c0@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 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=1785833430; l=9145; i=dumitru.ceclan@analog.com; s=20240313; h=from:subject:message-id; bh=+zifY+GuC6DAa+vAj4VdfkWOEI0cWkU/ZE/iw49ySYc=; b=KEcyYwvlpgC2JXO5oH0P8h9GQIUuAF5AcJiqKBDZOHhRTKrH/8Vg4BTnaeJsowSqyccVqdL5c qMfVD+sV1mGD9s5DE1m3gfM/b1FTaiIXVzSCCEvJijjyCxgwv+RIUUX 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 63389fea5d15..f9bdc133b52d 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -15763,6 +15763,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.53.0 From nobody Fri Oct 2 06:59:58 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 4717143D515; Tue, 4 Aug 2026 08:50:34 +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=1785833434; cv=none; b=m5osr/VbTmlNB38qobc0zIsf0G9l6iXpfNNUo6QH1cxv28cxhLqUpnvtHX4VgB7ZkD+IwWhGm3+FVKzavW5hb1Bdebmyw3gKyqke1lNJyhzsFKY2LaTgji+wcflbnIiwUBEq8/v4wqJyBGhXt5ePH8SwmVUbpTHfy08fuHxhjmw= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1785833434; c=relaxed/simple; bh=s1sZd1dIIrM5HoajtUSY0KcNd5ByblXcEtq8kFA9fxE=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=NNA0eu8USErUmDuhM5+EvkCKEWc5sJnQX86o5ckh0dwTMqbVtL8vZsmkcwkXNMAnWJwCjXZwSVis3ORVHPPqIX9acLcLvmgn+JmZsaNFrmflv4brM3CnddxMhs3jN1j6aGHZSxJkjr9uzueAoh5Ysau3RtBrhMiZYl3anNT5n30= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=EuVheRhT; 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="EuVheRhT" Received: by smtp.kernel.org (Postfix) with ESMTPS id 2CB30C4AF09; Tue, 4 Aug 2026 08:50:34 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1785833434; bh=s1sZd1dIIrM5HoajtUSY0KcNd5ByblXcEtq8kFA9fxE=; h=From:Date:Subject:References:In-Reply-To:To:Cc:Reply-To:From; b=EuVheRhTzhTieBmtywz2igtoYqiaspiRuR94LHmh3px4QLFAaaGoipoNJaTOlZdyS qUYn8duLOE5DZPUqiZyZzOlWQyIaOufX9cok0FnETB+6vRuOp+0gwZYrRs+CrInL3M zbQDhLTdZYbkd9+Ps0PGLpFkY1GHqKget2RAU5rhXEnduPcDCHocwbnEAMNp4BN8ro fJCx90KczgXzIkkhtTRXj0tzG5o/3/DktRlvW1VmfzMXrIq9sueEx9BJ7LCW5OgRSg Z2lXn42D4ihvR+GpBdMX3K0FqxaK+cpNSsxtxiuaz5GswHPFyyX/ta+oiz86bl/pi3 RZ0vxe4dI8WXw== 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 19882C5518F; Tue, 4 Aug 2026 08:50:34 +0000 (UTC) From: Dumitru Ceclan via B4 Relay Date: Tue, 04 Aug 2026 11:49:56 +0300 Subject: [PATCH v14 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: <20260804-gmsl2-3_serdes-v14-13-763710c884c0@analog.com> References: <20260804-gmsl2-3_serdes-v14-0-763710c884c0@analog.com> In-Reply-To: <20260804-gmsl2-3_serdes-v14-0-763710c884c0@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 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=1785833430; l=19468; i=dumitru.ceclan@analog.com; s=20240313; h=from:subject:message-id; bh=9A02g23uV4zcBC/B9sHJKVD3uYfVGzwvLpvZQAzXb8g=; b=GsDxFYTxSAc5xZTx5prGc3SG11M/QqtdJrx3adeZ7hJRI9Uq+3SacFFQSSJoOKRj6SgO2quCz 0EOIrGo365NDnnFdlOiO5i67ePou8hHwCMEEkQvaN0StxVt0ksraKk9 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 | 181 ++++++++++++ 7 files changed, 618 insertions(+) diff --git a/MAINTAINERS b/MAINTAINERS index f9bdc133b52d..75ee49bc612b 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -15768,6 +15768,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 a3ab48607dcf..42cb53c5395d 100644 --- a/drivers/media/i2c/Kconfig +++ b/drivers/media/i2c/Kconfig @@ -1786,6 +1786,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 90b276a7417a..9af890f8c298 100644 --- a/drivers/media/i2c/Makefile +++ b/drivers/media/i2c/Makefile @@ -72,6 +72,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..7d013c4739d1 --- /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