From nobody Thu Apr 9 04:04:36 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 681AA3A3E9F; Wed, 11 Mar 2026 07:17:37 +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=1773213457; cv=none; b=TjG4IL789jYVMF7zGupv5cHmJCtKuqwVcuYT4RBRCLM0cBAqCLsnAPB+J7A5sL3X/2aMNmHvx/KNHx+0cO3irQoKH97izAxLTnlbUX4UVk+Sj7BkGNDZWNIgmfie0nZHWLnaF9Lgsjnm9hIhnFKD+HLA5nzcdaw3Ng+8Kv3xo7Q= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1773213457; c=relaxed/simple; bh=slk4MNgaSC+kx7c2W231pz1R1uk/0PZTCyNeXo53Hek=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=ijznllMzv92hw/06iEsHpnPC2jTDqeuce9gxR8b0ivKDSyGe3UZiyq+k644Dp3l/ALivAnXY4OiU1zdqsi8a7vum04Ing60RhVxaaWMi3ro+SOhVFA905cUBhJ9/PxOudotStJzUO7F9TiZwqeshBfAjj1hG6toFSj4o89oQSGo= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=sliDP2+H; 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="sliDP2+H" Received: by smtp.kernel.org (Postfix) with ESMTPS id CD543C4CEF7; Wed, 11 Mar 2026 07:17:36 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1773213456; bh=slk4MNgaSC+kx7c2W231pz1R1uk/0PZTCyNeXo53Hek=; h=From:Date:Subject:References:In-Reply-To:To:Cc:Reply-To:From; b=sliDP2+Hl61BInbN+V/wxLMMxCIHBkRQPwwgpkhbCNtNeUtZCxTmNmz2WlcaKoFVe 033K8RuhxJQvdtm2Ga0UPT7jFPjRzF4itptcAy5tH0fF++lqnsf8+Gn7cmPZjAQMej br6hBjz56CuGsogLDmY9m8rtH/hp1ZrKMr0rVFtZv1R2L5E9Ue/M1ZXv95lgFkfdzo oDeEJ6QLoT67cq7KPmeaFha3exxxM9xlQGQuJr21y6N6UJgPxQBAaCPPdId+R47I8w AeNOAhZ0NfBypYtCuzax2gKaR62VEpY2ytRtPIagzW+AuqdyEr8j4XzZaVuUPZyR6+ RiYjOPlJrzeyw== 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 BD292FD063C; Wed, 11 Mar 2026 07:17:36 +0000 (UTC) From: Dumitru Ceclan via B4 Relay Date: Wed, 11 Mar 2026 09:17:13 +0200 Subject: [PATCH v9 01/21] 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: <20260311-gmsl2-3_serdes-v9-1-41499f09004f@analog.com> References: <20260311-gmsl2-3_serdes-v9-0-41499f09004f@analog.com> In-Reply-To: <20260311-gmsl2-3_serdes-v9-0-41499f09004f@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=1773213453; l=4211; i=dumitru.ceclan@analog.com; s=20240313; h=from:subject:message-id; bh=AreK0kDB/CS0mvU6CVYiJXYgsOXsG4rDStXAaRX8fng=; b=IhzybTwrA0s2ocr8e2MuOQzjp2UV2vgx+4S7YWH2iB7c6mqbEygKrCm8zsytDqrnDSc38BK0b VU8At7qNUNwCLNGcgmS/kSTtKFvSeW9yHftG4N2XzJhkvxgK6W4azdj 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:04:36 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 7137D3A7586; Wed, 11 Mar 2026 07:17:37 +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=1773213457; cv=none; b=DUvlkg1M4GYCgJCJUmm69N/H8DKkKSKvhPREik/BoGUDqoyTLakOMoAXD7i3qUMUsAwfdpNIfJ+ZvGiPr5iHt92aKS6d0cYwZkNzfxLSr1RBFGqOn51bfHd0Wqce5xRoJCpTz8zkdnE8aZsBNlSc6dVqTwNcH5u1M/t6X/zBCW8= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1773213457; 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=N8qh2Whfe1Et6zlmRblByyes6Kw7ENCV9ZBZ/F9cCt9Q6/eE3x/I/jQ8LEQI3Nb8/rXQ4bFy2r6vl7QdMFfQxCrobarX9dqIBPs6f9sE/wMrP9KDfUFDK7UzTjZtszHcgHAEf1SgtOtjZ2ZISoLzxt01YKvmca7iumM25aVDlXA= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=sHTlNsnh; 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="sHTlNsnh" Received: by smtp.kernel.org (Postfix) with ESMTPS id DCB84C2BCB0; Wed, 11 Mar 2026 07:17:36 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1773213456; bh=Xn5/p8wZ+o0On/psUllQui3rTHU86ibt8plFhXgBEtw=; h=From:Date:Subject:References:In-Reply-To:To:Cc:Reply-To:From; b=sHTlNsnhVYhAQgsf83WoBRc6N8RftC1IM5BFodxenDaCqE6dShINlOHyy5+mEIrxJ Gpl1JsX5PpDC+ZnZ2MHKKqkNLaGTYaO9jLfXXpMqgAv/a+KTiGFgmyK68uwiEPpko7 6z+VK/kfrJPrxVXZIPz+KC8ESM+gTIvre69z2kpjN9ywyOkoN+dxJ6b3T4wr//Un5U ZK73vVZmUSc8fpdqrAo25i9qhseJGQszPcgOFt8dT58XH42ubJ5TX47G/L7AVB4S/0 Xs4K3SS9XEDDvlciVCF7GzF0LTMpprgPxSEPvRuC+Mv6GVOW8ZIvY1OGvPfxwvcOV8 hKdUEiU9xik5g== 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 CE484FD0640; Wed, 11 Mar 2026 07:17:36 +0000 (UTC) From: Dumitru Ceclan via B4 Relay Date: Wed, 11 Mar 2026 09:17:14 +0200 Subject: [PATCH v9 02/21] 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: <20260311-gmsl2-3_serdes-v9-2-41499f09004f@analog.com> References: <20260311-gmsl2-3_serdes-v9-0-41499f09004f@analog.com> In-Reply-To: <20260311-gmsl2-3_serdes-v9-0-41499f09004f@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=1773213453; l=1814; i=dumitru.ceclan@analog.com; s=20240313; h=from:subject:message-id; bh=qfde6m/Zuq9hlZ5MNFTWYc4DyblJJG2tEqlBoZZrCn8=; b=Jls7fNKHiLFZRWlfRF2Jkk7lFGJw+Rm7NVwEZsb8BZf60INekriVf9yVDeNG2/99I/hgfYuNF bvU07pd/aSOCcopNTHFqxW1fmr7+hepgpYGMtY0s6ELzoY4ZnH6nbL5 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:04:36 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 64E8C3A6F1F; Wed, 11 Mar 2026 07:17:37 +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=1773213457; cv=none; b=Yqgh48HWqyTAvkvRtLtP1q+mTRWQj6GbhLXSrHOcYW7f8BtlYHqYt8x14EKSQPXHcgZnwcO+7uBG7x/667sEy0zkQnJq1jzqhr8vABKyp5ERcE9ZJeBD2y2uknoj9bBtBOI7meMmqoTDJgizS0YphWwOFiaIL6zanBontbl3fpc= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1773213457; c=relaxed/simple; bh=TN5gW6iNB2jW1IrzWJimE/kYjWyumxoU2kSZpdU/BtA=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=KRqkTjp8qZ9m79nVw8NF+msOs+NUVZvnndBxM3Ndth6T7YW7zvtoOdCxCajN5ePScWY9xK816wwVF9w9DmTmhhwTeuhcBFUw8rjxdSyXFGGJXz8BXfp+wya8fy2Tki9y4BHDwR/yoYgWDCR3pb3OIVDhHIOa91PfHHN5ywni2+o= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=hFEEC2pN; 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="hFEEC2pN" Received: by smtp.kernel.org (Postfix) with ESMTPS id EDEFBC2BCB3; Wed, 11 Mar 2026 07:17:36 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1773213457; bh=TN5gW6iNB2jW1IrzWJimE/kYjWyumxoU2kSZpdU/BtA=; h=From:Date:Subject:References:In-Reply-To:To:Cc:Reply-To:From; b=hFEEC2pNF7dxfomikgbGPu/yjmuLIAdp6W/hSfoLfGtjP8YI1jfKi1fhtjoKx+dJl ghFc0jJrTqmVZl/RecJUOKkv9VbNSfENua28Q2N4KAa6s+9Ann/fk62DDKyeUXL/Oe lsWOEtWTz5etViVoOhl5AYnFJeBzbj4tKN+f0++tcTfJRCb5MiGDh++RiKf4qdAj2B zk2LW5Z8p2dtq3YLugW9j2dOnb62NdpPtEKXvO/s/gFpdkMHFbLUTFaUWGgs+yj3cO 0qjZCKJlVKUbcGOIUUUcWXgWvDVUx2FXA7VoDwcncd/lbGm5Oc2yxCeXq/5KFbUSUG WPGSyF3mvi40w== 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 DED90FD0643; Wed, 11 Mar 2026 07:17:36 +0000 (UTC) From: Dumitru Ceclan via B4 Relay Date: Wed, 11 Mar 2026 09:17:15 +0200 Subject: [PATCH v9 03/21] 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: <20260311-gmsl2-3_serdes-v9-3-41499f09004f@analog.com> References: <20260311-gmsl2-3_serdes-v9-0-41499f09004f@analog.com> In-Reply-To: <20260311-gmsl2-3_serdes-v9-0-41499f09004f@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=1773213453; l=4016; i=dumitru.ceclan@analog.com; s=20240313; h=from:subject:message-id; bh=sExaJUhOeiAGEBZqr9l/7UndPhdjAg2W2En5kv5tuKE=; b=j8sAxqmc/EEhv/M/2Ve93fOAeUwTZKuj0TGu948tWuFTEFBO4ewUBipujeHgLn4EEC5uu7fQn ma5TxPu1TgRDwo7YrzS1BQwKr2zuWoYuMuHldvEpiHQvz8nunobJd5m 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:04:36 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 7C9CF3A7587; Wed, 11 Mar 2026 07:17:37 +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=1773213457; cv=none; b=QoZ1ySUouR1WA2srg5Q2XQOa9ttitfJrvHrADUHW6idrmNSdw357O0zeI8GfbPnlu6SChj5nWw6UcHyDzLpLzOLL7PD42jKP8YxYexrizSOah36TMhAe7Y1fwTfvOw9uckGb3/Epw3ceFrujW1pdm78Xp6yO4XUDXqkmkNPzaME= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1773213457; c=relaxed/simple; bh=Sry+uDii319VRYofHQb5iOaUnnf0yvES4yy/guIbB1I=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=CbZp01ZPgrmS6Y8vWd8ZX2y6rI1/4b1NM21sXnTa6tTRnT9/X+Qfrk9dEs078Vb5P+F9bxFCXqgvGrN1GYFH8oZYBk0Uwz8kPPcsrxAGaK2bX8IIavRXzbuQ5MxnPacEaVDm2kWSU/Q4w1xrqTULWd2d6Pu1RsffPjs2y/RQxsQ= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=SpaOHvc7; 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="SpaOHvc7" Received: by smtp.kernel.org (Postfix) with ESMTPS id 0A986C2BCB6; Wed, 11 Mar 2026 07:17:37 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1773213457; bh=Sry+uDii319VRYofHQb5iOaUnnf0yvES4yy/guIbB1I=; h=From:Date:Subject:References:In-Reply-To:To:Cc:Reply-To:From; b=SpaOHvc7Kalaor7FZDuZQkA5Ib16MwbNQizzPVdTOQ7yYZEv6+P2x1PIE6QdtatU/ R1o/AQf5EjksSDXbsZ0HLKNIJxekP1THRhkizi6WlkMJBhrdxNPhtUiEj12SZCWgmM pyW0tK+oVCL9ksckx0mcCl9Rks23VpgNFpnZCikqpYDh9np0TY7ViUKZhZhxoksXXn FEQi5R7bcI/dTk1HE+RHlc9bN56YkK11HvEwnTeco/o9bS9eZGgYovMTL7W0g6m067 IUbUPMLQRhZykZfwfCCMdlRxfs9WNZxECjblYiYmAzzEW+3eUr70oXkKWIhRpNOxTJ XBHFYGM/WuMiw== 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 F10D4FD0636; Wed, 11 Mar 2026 07:17:36 +0000 (UTC) From: Dumitru Ceclan via B4 Relay Date: Wed, 11 Mar 2026 09:17:16 +0200 Subject: [PATCH v9 04/21] 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: <20260311-gmsl2-3_serdes-v9-4-41499f09004f@analog.com> References: <20260311-gmsl2-3_serdes-v9-0-41499f09004f@analog.com> In-Reply-To: <20260311-gmsl2-3_serdes-v9-0-41499f09004f@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=1773213453; l=1215; i=dumitru.ceclan@analog.com; s=20240313; h=from:subject:message-id; bh=8jacOUwQxTYOOAqlRYCuRO4h/l1w0TlJWVRJXtwaMxI=; b=Aw6XEavuIVPPAspKcwLh/zb61rtrSejIpmHrSqNA+cqfQ68Av1KFNggBDmiUx3HAzBnan3FAF hIcX7JSlxYNCOrTGpBXHGB9zlZcDxYxdP9eM2g0HJd/G4YeeyxQIdIh 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:04:36 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 C74913A758A; Wed, 11 Mar 2026 07:17:37 +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=1773213457; cv=none; b=hyuhzL86Umxmn98kuY2nzfmXaTSZ17rCi2fgICaA65o2Uny2y/aVddyNFrW3s3my9uJjWi7KezlizJQlO+XvXE+aJTtGqhH9EQc9dT3VKkJazxZslaQ7qbQlRgJla0zYisZZ4fbeTQjNIxIEZJTDCkQ+hkmAMVGrKJ85N3RBZGk= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1773213457; c=relaxed/simple; bh=xMIlwRdst1SeOe2HLSassKpp6FloKB+OdNNB6+GEXuc=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=WBpoM9u3+/5eD70hm0Tef0iwJq6caki5U7dm0GCzQr0r3QNwJrZ1wJvjOAidCRi79Fw1sRkpvWdBoSlJTMfAjphCj/FrMjtL92yz/++tRqoE6b1ZzOb63ghsQXI8BduAmiAvXLXR/Ad43k5gm94CVkS7IxN4NCzvimxV+ZcR99s= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=mjWPOjNh; 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="mjWPOjNh" Received: by smtp.kernel.org (Postfix) with ESMTPS id 42136C2BC86; Wed, 11 Mar 2026 07:17:37 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1773213457; bh=xMIlwRdst1SeOe2HLSassKpp6FloKB+OdNNB6+GEXuc=; h=From:Date:Subject:References:In-Reply-To:To:Cc:Reply-To:From; b=mjWPOjNhDLioZwCkXG4z/bYh3wU5kDDwaH1QzVmk/wHQtAlm5ppdNrAOwPDB+lNbd JVjEmzNWPbBYIzwuIfoW+XbwNZHu12+I8oxvBAnAhHk6yA05FdiPkESBkvHufskCwh aWH1hez4oFPc6CJTpFErAwciExNn4nfTfQDgoaU15H2WFIWDZ4iXS4eYu3mZog9vpP XZTKOwFMjd5vJ/cK6f0OPV4iLQOF9QN2QjpTDDr64i7M4KdHSeoCS/+FsClRuaPpWy 1qU6Dcwjm0AHkjF2CWK3KDkr8cNlpsrPFbEw00e3NAurwDDCfUDf3X+6zKuUYjnuaK 9S0HanKQgXm3w== 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 3AF7FFD063C; Wed, 11 Mar 2026 07:17:37 +0000 (UTC) From: Dumitru Ceclan via B4 Relay Date: Wed, 11 Mar 2026 09:17:17 +0200 Subject: [PATCH v9 05/21] 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: <20260311-gmsl2-3_serdes-v9-5-41499f09004f@analog.com> References: <20260311-gmsl2-3_serdes-v9-0-41499f09004f@analog.com> In-Reply-To: <20260311-gmsl2-3_serdes-v9-0-41499f09004f@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=1773213453; l=1028; i=dumitru.ceclan@analog.com; s=20240313; h=from:subject:message-id; bh=41yLSzOEvoj0Jv3WU/O/DMBlpijKUM4gvomwlNGqTSk=; b=mWhMa9YmtzXOlOnIH0DUsoTZT9J0bYw7wl+Vh8NiuBpTcex4/cpNiuL4KvRPUbZ1nNBVa/mRx 9wYSbF/OuZcCW0Em8Nz3fcUNEBftR8C2IP3yA59GQLlN++zkta7XpeR 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:04:36 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 C67C53A7595; Wed, 11 Mar 2026 07:17:37 +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=1773213457; cv=none; b=hpxG4kmNE6qBMc+iP8zXbyIKAearfe+xFTgIMkYVFQWwQyQJoG/FT0KXiZ+05jkoywGc2FsJiz526vc9icvGcUweMIkvQH2WykjQLrB++UB49ZhRLYfJ3u4LXsMY/9L3CfXq0vUCwQvyh6gO8zb8EuCPJTVE0C0Q0/EgP/ttB8s= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1773213457; c=relaxed/simple; bh=IQBwMweUNw6Rt0TiIjy8p83MEuUtBZbfZ7258tl1oDQ=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=YhG+rOJrXNgTn8p7YmiX+bOT9Vi8DN8zKoIJaqOQ8kulzmIuTBOg8vshBQyeiHD2fGVeX1N+ASPxIXf3ruslx+ynK/PiXo74cpk7aBi52U+2BN4I2x65aoYzMBTSuT7B82nX+sczjmp34Z4imQr3lHJs7JPeY0CFwdVzcMZTX1o= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=e/34d9fw; 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="e/34d9fw" Received: by smtp.kernel.org (Postfix) with ESMTPS id 557C8C2BCB1; Wed, 11 Mar 2026 07:17:37 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1773213457; bh=IQBwMweUNw6Rt0TiIjy8p83MEuUtBZbfZ7258tl1oDQ=; h=From:Date:Subject:References:In-Reply-To:To:Cc:Reply-To:From; b=e/34d9fwMPa5fjE2BgL5PhN43O3HIizQ/914BzILruuBnfFoHr6/Tr3b7uG4Ga1Ad phrQG28z9aiMdg7B9ZL3ybh+GPUUQ02rNMSznnOoprUJ77bVQb/K/fl053ZTmpIY1U qaRZGHnxUjm+nkMq9ELn8aaNepc/65RFpqs/+T65QHbdTap/M9t/N8hXEfUvJIsKxi u2y88roYvvGoJfbToeNIyIlqve+BQN65QB3t9a2LBpCywjY0b1T7E79qsXZSqpS8ge xVD3XIFBfmTxaIbF4PedalvIz34YBatAd9Ek2Kp9Dwj4c91tZrUeoaRhp01r6+fqSL TTVKDfbzVxUmg== 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 4BC69FD0640; Wed, 11 Mar 2026 07:17:37 +0000 (UTC) From: Dumitru Ceclan via B4 Relay Date: Wed, 11 Mar 2026 09:17:18 +0200 Subject: [PATCH v9 06/21] 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: <20260311-gmsl2-3_serdes-v9-6-41499f09004f@analog.com> References: <20260311-gmsl2-3_serdes-v9-0-41499f09004f@analog.com> In-Reply-To: <20260311-gmsl2-3_serdes-v9-0-41499f09004f@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=1773213453; l=2057; i=dumitru.ceclan@analog.com; s=20240313; h=from:subject:message-id; bh=jS3B9xKEhVOSCEaka8S3gGwbqQ79uBc4o5geNrA6dpY=; b=wbCzCp+tOueXukmMAfH+UppWjJVXgkkWuX4OSXdJv6lS5R3S+6gWeJNsmVF4qUrT9M9Yjh/m9 7w1EE1maVQvDpKaEnu99nFa/Q/+KvjJoOlrMpSQe53tsJ9OePYB7n9B 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:04:36 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 C75D53A7596; Wed, 11 Mar 2026 07:17:37 +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=1773213457; cv=none; b=KC4gr/H3+/1EZOPSTH9iyQc2wAWDbnG1ZQ2tvb2UmwT+/TgacE3+ntwdH1FhiaNwjzkToefCH6lu34E/ViirA0X9SGrBjT4C/Moxonccwi+8ucrBRvJJ7Mo8Pdi0h+ekLMHIrLFb7kKJT9ldNcVxIXGMwSSJZlIPazazY/P6u8g= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1773213457; c=relaxed/simple; bh=GGsSB1d2PoY/kuEuTnxLtG47ZzK+g95451GAUdj53K0=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=ouFFzDpQLajX+i3eGf4G7jSs+E4oFg85rDS0xiSH5LZ5fOp6CmrupIQgwsMP8WSrNcKIEbg2ct5ffnAB5xJrmIviPoM40we5XGYnUWokqkLL0AXKQ8h4lztChJT+yBQ37oQ5H2PHc60c9fPjAxOYacUTfOpEu10kVxkeGzY0nSM= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=d8L+d880; 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="d8L+d880" Received: by smtp.kernel.org (Postfix) with ESMTPS id 63517C2BCB4; Wed, 11 Mar 2026 07:17:37 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1773213457; bh=GGsSB1d2PoY/kuEuTnxLtG47ZzK+g95451GAUdj53K0=; h=From:Date:Subject:References:In-Reply-To:To:Cc:Reply-To:From; b=d8L+d880MJqwLTpd63V7IxNFCV9QHeLwjUedf+oLurs3o7NQT6iYBnP2ZcIhh9/UC 8Vnr9NgKC+pgIENgnqbiTkNQaLwb1ZFMks1AN1Flaf+mlaR2Ojl/g782hZY4jiH1Tp bKqo3U4q5KKT6zl3fOMskX4H/5W1EGRCHGWfitGRmcssDjVRmU9fBjvY+/PR3ofUYS yvSsLtVUP5eVpabI5SfrKAEaFvKATIWGHiAzCP6S0pEEtqFb72bDeSuRWUfmxwIvmb NbrTHSaRO3ffmRKRdt+H4BjUwoVazu8mLuB+QzoOkccmLeYoqaKQnQ1KZLzP+WxOD+ QPGxFGgxxk0FA== 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 5C856FD0643; Wed, 11 Mar 2026 07:17:37 +0000 (UTC) From: Dumitru Ceclan via B4 Relay Date: Wed, 11 Mar 2026 09:17:19 +0200 Subject: [PATCH v9 07/21] 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: <20260311-gmsl2-3_serdes-v9-7-41499f09004f@analog.com> References: <20260311-gmsl2-3_serdes-v9-0-41499f09004f@analog.com> In-Reply-To: <20260311-gmsl2-3_serdes-v9-0-41499f09004f@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=1773213453; l=1871; i=dumitru.ceclan@analog.com; s=20240313; h=from:subject:message-id; bh=RSvh87m8UTUuPKmdiJPBrCURSGQkmSAhRt3cRzeUwAs=; b=hfyf6lxDzKT5PPWtV0JbA0XetjWM85gWVvumdqw7rcqiDa5z0KzCDNPCQJaDxFryygq2kV0nU zjpq1LWIZZzAANBF2UvpCO38sG2sBB5lWpMk8nvgg1sL9JpclZ+C+7+ 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:04:36 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 C90E83A7597; Wed, 11 Mar 2026 07:17:37 +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=1773213457; cv=none; b=tUDFH0ABxWqN62+5psbJZdgYA8bx3GzxDLQzl71zmZbKZjXGhBT+4QRmdk3GquOhQJI+poy5knH1MhrujvO4diQPRie9Y0nFLrFDArRVH0hznYmdt1byBIFvoqTK5YWVxAQJfFiLl9sqdmemGUprtf0MYfItgKqw2ClH+EKUlbs= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1773213457; c=relaxed/simple; bh=jdUh6DHiZcC8xmAK/C829JnMcr3ixwqGWi9aHZissgg=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=rsu1Z1GAS+Y6BOkd9Qgdq+z4nERT56P/w0BrAjvHOarzgG852pPBW42szeJMwfSzU/eiJuNUAFM9GJCH/laHAdsifpd7jG9Ii8PfbupIBHFHDt9p/XdfBthDaGiepq041hiCTvo1QsOpCvefBQ1O/n2doPSAm9D48bBqmM7oVrM= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=Ck4X5IoC; 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="Ck4X5IoC" Received: by smtp.kernel.org (Postfix) with ESMTPS id 73DA7C2BCB7; Wed, 11 Mar 2026 07:17:37 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1773213457; bh=jdUh6DHiZcC8xmAK/C829JnMcr3ixwqGWi9aHZissgg=; h=From:Date:Subject:References:In-Reply-To:To:Cc:Reply-To:From; b=Ck4X5IoCpTEV3vXoxrPy4t2duaZXqgJFNCQit0pz6cn4WOq8iMrjthxo9nGQrgbNy 6ClV0ugjF3H5sf/wcX7C7xLPz5eNA4pgjOzYa6QHtvWtFsy75s0cwu68BCVyWhslAa zszHLS86tBOd3JQ7iQuzKl4O1nBkX4lK0e8OGb3AWlTCDgPW9jagDAjw0MIkcxH0af chn0hTvg1KPOih4Jnw/cJktvMwF3jhCR+9lwDBu/2XjWDCzV0sunTlIbBhldRwk9/v wfbOsBpIrG21+7B4OYAApJej2S4ui3ETBkgtO2NQsinLXnyMLAgkvWdiIecusFLKX7 gbxT6B0SL+ASQ== 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 6BCBFFD063C; Wed, 11 Mar 2026 07:17:37 +0000 (UTC) From: Dumitru Ceclan via B4 Relay Date: Wed, 11 Mar 2026 09:17:20 +0200 Subject: [PATCH v9 08/21] 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: <20260311-gmsl2-3_serdes-v9-8-41499f09004f@analog.com> References: <20260311-gmsl2-3_serdes-v9-0-41499f09004f@analog.com> In-Reply-To: <20260311-gmsl2-3_serdes-v9-0-41499f09004f@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=1773213453; l=998; i=dumitru.ceclan@analog.com; s=20240313; h=from:subject:message-id; bh=qHuwnHnH5Gp9JKhOtp7Ej/Lg9rykd9GgxcARp32ip7E=; b=QLWZekCZT+kHt/BQARnKWqd5alXuUERovT+LlHnVIwz+axIY7Kps2ol0IOCRHDucO/KeHm2HH w+XeceoomdFA7GaSXUUD1tXRfRzrmh2LGErqdSG0t7sCYcla+q+PEi/ 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:04:36 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 D49A43A759A; Wed, 11 Mar 2026 07:17:37 +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=1773213458; cv=none; b=BYSnjesetGX9PPqUlzSqVw22ejvh8dV37oLrp6nKCfM2mfPkGW6QOwaj5VO5a8tTKwm1H3Gb40xpJhw3Y8xJVlzTv22+WIND/PrsxQY8vJIAo8E6wAp1rDV2igU4ZfiiDveIRJbjuaVpekr5hIzESyRIOBIvkox3nZq99/+GD8M= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1773213458; c=relaxed/simple; bh=Naw/eq3duVjNCge473NEbRgpjB3MiSzNqdh3TZ55RKM=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=F6zgdtGmPFADK3w8JT85DsaN1/G9mWhwOHlFNHQY+v1KzNSNMObhGFua2Xw3k9N8ccGfd/STvHw4d4mfjv89HFQAsfUd1cnWwQ7Ghq7mdTc0/VY8l39356dgVAUwFnaUMCL8JkbEdc1zk7kyqrhyx9IvBK+8uh1UzBB+9v1vuJs= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=tUH5Td2K; 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="tUH5Td2K" Received: by smtp.kernel.org (Postfix) with ESMTPS id 86C21C2BCB2; Wed, 11 Mar 2026 07:17:37 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1773213457; bh=Naw/eq3duVjNCge473NEbRgpjB3MiSzNqdh3TZ55RKM=; h=From:Date:Subject:References:In-Reply-To:To:Cc:Reply-To:From; b=tUH5Td2KkTOuAU5lJJAemN+jjZyG22WBjRr9nii3cU2iQHr3y9BEcXlDLHWHwsQIi /I15Wu5pPxvrZn/qGvSodxh9T9gyKxMSXzDcgyg4f3+7mbqoRN0BXLIeSxhYKe0eFr AdN2A639OpJLMEB/QJDGSpv0f6fB/qznv75h4aI0hdaR3HsuimHGdTtEu5SeM3nnEY VBSEizSob4OU2n21N6x7cqPmbJkjOL6Y3EGy4hRa963s+dtNgJeQGwtdmVYjBmfjGS 4UefsScm+JV2uyk0QMGiBufvzggoU89HNikyQU+RFpHuSROJou7P48AMUS5Etw26Qe wi+PO9KR+laJw== 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 7D47EFD0643; Wed, 11 Mar 2026 07:17:37 +0000 (UTC) From: Dumitru Ceclan via B4 Relay Date: Wed, 11 Mar 2026 09:17:21 +0200 Subject: [PATCH v9 09/21] 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: <20260311-gmsl2-3_serdes-v9-9-41499f09004f@analog.com> References: <20260311-gmsl2-3_serdes-v9-0-41499f09004f@analog.com> In-Reply-To: <20260311-gmsl2-3_serdes-v9-0-41499f09004f@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=1773213453; l=1289; i=dumitru.ceclan@analog.com; s=20240313; h=from:subject:message-id; bh=X7Z5jo9cVDCZvZQWGTLLa9EvhT59pgE3U0xPNb18WHI=; b=Np0q4MtFZ7p+PQs3UNqzwHggxIOi6gWvy/P2trznBdaLfCeKJXVuJXfZYYHgjqGByGG1lG9mB xdV9V+kepxZAjhHY4H4UPb3cGSB7uI1/sc/AlTk+oE6M4DDN3C5g29G 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:04:36 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 EDC033A75A1; Wed, 11 Mar 2026 07:17:37 +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=1773213458; cv=none; b=RSv0qjbY2CyI1+JMSs5N1B52P4rOlvu+iJ63+94ZUIgSKzXXrcmTRvAiLFTjVT7bwVmn/AI1RE1QK0SebvkSuGhYNgu4qjQIoatjDVZVhNl54J3rRVurgDX8YMSoPXoaN8YQWtfio6VNc9Y+EDgo16GzgpayRIduiBY8XWtqVOg= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1773213458; c=relaxed/simple; bh=YsjXeUcn9qhbYLaqF5kqQeAp3Xr+WGO7JYIzMmEbR2o=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=iieTsE/9jHGdF5fTbzMl6Sx1mSBv9AtNH6WRPKRzt/n1nrO0RaVBecY5untdD0csoxtGwF5fGIGgvPkD8LnkJoB3sn+UFC7oTNDWRUpnoGlYULTP6ypP8jhxYsMKp8n17376MVSMHVOPxv80haP55/ylyyIDnosDQV3fapqqVDM= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=AjBnVYIj; 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="AjBnVYIj" Received: by smtp.kernel.org (Postfix) with ESMTPS id 92A44C2BCB8; Wed, 11 Mar 2026 07:17:37 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1773213457; bh=YsjXeUcn9qhbYLaqF5kqQeAp3Xr+WGO7JYIzMmEbR2o=; h=From:Date:Subject:References:In-Reply-To:To:Cc:Reply-To:From; b=AjBnVYIj1n7ydU7S0hzGZ5ralgkhuuoZRzCJ38JgwSXRiFmGaiuvRzIKqZ2dmeK2N seD+CklrX4/AiEn7L/Qv83d6CkJrd9ovHmJEQkKVYMBecntOC1FoFv3a/Y6alK9XuM KNQ8SlNV3AAMWGvbVxq7VUq8vuuSyh/mR/Doq0rXS+D1C+F70KEIyKBV4YRfAQ7Zbk eizmtvUgCtoQcIAmhmHBhf2B4XcJqnM9zswteTryIJvkMe/6l3mYqrL1kPdT10bwAT HUcU5TkazKc+mDptWtCOvb/GmSN97WurmqOISkVDXh4rUHH3fzDlB1FQGXb3WiiHif +tnAOgKPHCFqA== 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 8BB98FD063C; Wed, 11 Mar 2026 07:17:37 +0000 (UTC) From: Dumitru Ceclan via B4 Relay Date: Wed, 11 Mar 2026 09:17:22 +0200 Subject: [PATCH v9 10/21] 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: <20260311-gmsl2-3_serdes-v9-10-41499f09004f@analog.com> References: <20260311-gmsl2-3_serdes-v9-0-41499f09004f@analog.com> In-Reply-To: <20260311-gmsl2-3_serdes-v9-0-41499f09004f@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=1773213453; l=1267; i=dumitru.ceclan@analog.com; s=20240313; h=from:subject:message-id; bh=7ctH/2Vx+KX20AODScSmND3oP+TtSyOrnfglXDuMGh0=; b=tctN5hl3SQUhn6kKcIiBWpQrH5DL2NB+5JcVNjS1LPXzd9M3kt/9phe9MCyoLGGLa/Vb058BM fgydEM+kpuiAe1CjLefZHpFDATDE24D27Dx+JoWL4/AzkYovG2ZQmnm 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:04:36 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 3EC313A75BC; Wed, 11 Mar 2026 07:17:38 +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=1773213458; cv=none; b=M2VLNO78WtZ2B6ztD6/UafD2/kdBE076rJL4RGoeWRw7eVzSN1IYRu4HH1BfwL2wqYK/ind4euJzq6IhrIBx0Ak+JWRKU0sODFhy7b857oaHA9nw9ZEK1z5GqKX1wyHcyYllT8MnTXu90spiw+YoiuyEz4ppBUbvLt9mZ0AHXPA= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1773213458; c=relaxed/simple; bh=9bUvO9jmr4n76eZcAAb+VBJtZRbGcpHo0LOtElQF2Ag=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=o0PKvqn6OtQUehVtz0Cr3LlDq/I4GI0QqmJPqjVWIOppkvQL2DjkgGcw7/SvAzsfoqQ10kmFHmkrnTX5VBmsVgOxVoNG9Q/ApaXFZmQ3YUreOASuwlQPIPvtfhDTigYGGmGXTzLsVEk3B8hLQbfLUDpcLOPkGh6xZ9X85/WuAkw= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=EfoHpbyL; 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="EfoHpbyL" Received: by smtp.kernel.org (Postfix) with ESMTPS id A1F99C2BCB3; Wed, 11 Mar 2026 07:17:37 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1773213457; bh=9bUvO9jmr4n76eZcAAb+VBJtZRbGcpHo0LOtElQF2Ag=; h=From:Date:Subject:References:In-Reply-To:To:Cc:Reply-To:From; b=EfoHpbyLiSV0OtQbK1ujhw3+6UWIFAOV3YVa7+knocbfJXviXGQNJoQk9xq3Al/p1 7cUybertKcuUiqa+x/OXLR38P7F1rGabBrBNF6qOeu+pjY45s2gaL/w2p+mLohPRh7 il0f9Sr1RRZ62vs0BpiTNo5zc1Pnt8a889eV/ymSGCB5faSg4JxOt9kiTlywaglpYz pJskz6uftu5ggn6ODqOiMBEn4CuLqapqfRhiQ+OsJGYQZXHj1u0rQ44Cau1FujHL+P 3OeZ5G8+wYr+IL+/N38pd7aKJMuqd/yVztFQNAD3dYzM+9z77RsQiqNoefRxNsRxAV uMzIzKtEgLH2g== 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 9AE1FFD0644; Wed, 11 Mar 2026 07:17:37 +0000 (UTC) From: Dumitru Ceclan via B4 Relay Date: Wed, 11 Mar 2026 09:17:23 +0200 Subject: [PATCH v9 11/21] 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: <20260311-gmsl2-3_serdes-v9-11-41499f09004f@analog.com> References: <20260311-gmsl2-3_serdes-v9-0-41499f09004f@analog.com> In-Reply-To: <20260311-gmsl2-3_serdes-v9-0-41499f09004f@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=1773213453; l=9145; i=dumitru.ceclan@analog.com; s=20240313; h=from:subject:message-id; bh=GFhV03TLaPhYeU6NX16v5DxydRNe7OhIGfvX3Ww4CWM=; b=XgPZz0AigHvgjMQDNjo9v7+0EM5/0gvaX+TSGO1R1ldeNmO2L7bDjqzjQ6WnYDrVZaG8HJuiu rHdoJycPK4YDO/t4HxneayGFm+0QsK9kpRPkqb1MRrPiVWNsDe1ReoB 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:04:36 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 66B973A7F4E; Wed, 11 Mar 2026 07:17:38 +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=1773213458; cv=none; b=NKk8WMeoqavPRzRs0KM7zfYiguDB8CuC7+5SOBDwb8tCWkjTbFolR7fnG/YGxwyheCRufa02xVuWvqEr/f/MCsRk1uzYF7LW94UKO+UO0vgjOHJfNQmxTwFhy7/zcqVhgA5XYitLXzNbIP8mFKf+pWeMbxpxAIeWLBRezOnP34o= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1773213458; 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=UitDzQTAk73loZiY6ct6DzmuaLLCOlFyeYnqgQCRtovCWGqGMqHO9MKso8vIJAgLNNBLBL4Eq0XDKO3ZmRxUr7ZaQ8qb3xNEbG9G7Rq5iu9SBJYP2130B7GZ9e/QO+3bQmVod0Z3tQ+eT7M2Wr4vtHP/tRQK6gPAdPoZ26zgrbo= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=tsVVv3YG; 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="tsVVv3YG" Received: by smtp.kernel.org (Postfix) with ESMTPS id B14BDC2BCB0; Wed, 11 Mar 2026 07:17:37 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1773213457; bh=VDql+Hfavigfh9ovTYOy1u+FLCxCrHF81DbvX/UyK60=; h=From:Date:Subject:References:In-Reply-To:To:Cc:Reply-To:From; b=tsVVv3YG+VIYnsguUTxnzr4twDL5oEuch7hHUHqfg/UAbVnMKHvSSAJ+Kz4eCUxj2 w3zpqolTHkgnYXtwSxeCJLqRMqrGgr8XBgHG2h1oLZOMe5LUpqBp9yCfogjGa56AIF PWCqVE7QDubfL34ak9SV3hqiXldFzc5O3XbBBunTV1CZ++mnkgWZkjlvJNvoeZ2jN/ RE4nvWchaofOPUi22yzJSZJ43C6pKf0k2NexNYRv8UQSFz2ohJQkJIU+eEo+fSihhn 4wIMVvTBR0zZR5cvaWLMKNtOrGaTxcCjrO1jkVnndcumK9toq8I4M/NFPwT2rlPvCX 8iYtDwK8Z/bfA== 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 A9E56FD0647; Wed, 11 Mar 2026 07:17:37 +0000 (UTC) From: Dumitru Ceclan via B4 Relay Date: Wed, 11 Mar 2026 09:17:24 +0200 Subject: [PATCH v9 12/21] 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: <20260311-gmsl2-3_serdes-v9-12-41499f09004f@analog.com> References: <20260311-gmsl2-3_serdes-v9-0-41499f09004f@analog.com> In-Reply-To: <20260311-gmsl2-3_serdes-v9-0-41499f09004f@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=1773213453; l=19564; i=dumitru.ceclan@analog.com; s=20240313; h=from:subject:message-id; bh=22zVA0S1E2kxUS8lsopB3O7rVP2X5lwDlJqeQf9rdVA=; b=QLyNqyAqpHUlJ64uBH9SN+GKCPTDKyhGAPrLp/r/B4B/vgGFX8OeTaBQ4dj8S8Xt8Q/MaMhH/ dErDGA6gdMICOp9uwwq/GzwXR9PqrjEkWI/F3bbooyhySQfDBFfDAsJ 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