From nobody Mon Jun 8 08:36:18 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 DEEC5481670; Thu, 4 Jun 2026 14:14:03 +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=1780582444; cv=none; b=cQg3wZc7Q2jgboRMCnKAUTb3OqfiSW/7LJrFumyUE2EdXefOohU/dSq4l6VMqyzAPhELPmRJvuo8nt0avN7iFWl2lGLntkHunQNat0s6QLjkI3MWsi8ZRWhXKUAoW8Ru7xB78Fe0mY8LCUl2xXk957fF0XZyYMlyC+uPuVtodms= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1780582444; c=relaxed/simple; bh=cpDukcPxVJzXko/L0eFDwxYderoS/dpMlVO2IjtjjHE=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=blXkRFYnB8WVD4aGyhi5RGYTB4KYoKCeTd0oykwyDraE/Sl2rfQX4qmSkp1WspYgV5varP7zzWcjsm++HGwAS79fqdp/dm86fRlf6IpiAlqLKLwKkv52TOikuRhGptSZQIV/UWdA1CvcZSHEtt+7xWx7xrMOAj3+1C/vVd+fEWQ= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=PcA0FNTS; 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="PcA0FNTS" Received: by smtp.kernel.org (Postfix) with ESMTPS id 75C63C2BCC9; Thu, 4 Jun 2026 14:14:03 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1780582443; bh=cpDukcPxVJzXko/L0eFDwxYderoS/dpMlVO2IjtjjHE=; h=From:Date:Subject:References:In-Reply-To:To:Cc:Reply-To:From; b=PcA0FNTS55gW/GvdS0EBZKGGtu+e3TcmNnI+d+hDlAqEeGHhyD7vuOsZbvjNZJ9RK WQ/WkYRfiA+xB+QEqUdDxcseVcT4WF0BbIKWmUg8ar8WuuHinahCtilwSMm1XyXADf 3t7vxUxd+WjnOIMu+e8ULoB3lLq3W9BhKlVkLgRn+9EBSJa+I9XmKx0pTpZPPDmGi3 IkxGsUCgDu5Lw5DeuVpst9ETO9sRGKBZwd+/1JB+L/hcZrPvJp3YQ8SXvCuq12/Ha0 zteTEf5XEqMDbvj7VD2L51+9O3ao30YUhqzxBDN6OWNIS5Eq9TcHtiqgiZe48L/lCi bIClLDvThP3ng== 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 62850CD6E4A; Thu, 4 Jun 2026 14:14:03 +0000 (UTC) From: Dumitru Ceclan via B4 Relay Date: Thu, 04 Jun 2026 17:13:48 +0300 Subject: [PATCH v13 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: <20260604-gmsl2-3_serdes-v13-1-9d8a4919983b@analog.com> References: <20260604-gmsl2-3_serdes-v13-0-9d8a4919983b@analog.com> In-Reply-To: <20260604-gmsl2-3_serdes-v13-0-9d8a4919983b@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=1780582440; l=4211; i=dumitru.ceclan@analog.com; s=20240313; h=from:subject:message-id; bh=j75z8BDeqCgnWrq6GF1INTACeRkTAkS70gXnWGmC/2E=; b=0H5gnxjMk+pL86WmvkDK+iQkEcyObv91msCSUtMusyTDYQFatVHOLqWYi3VA/doxN0aTH7Yc5 nMEH+D3VVDsCFRoKe3uAO2TUfj9wYNr4uGYsoptkNgwHw72BGDcrx+N 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 Mon Jun 8 08:36:18 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 DD3BD48166B; Thu, 4 Jun 2026 14:14:03 +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=1780582444; cv=none; b=etZM0p3i3h4ZB3CV6HNCkJ0zPCnNh5R7pK0qNeRcMJYbJisDl/lrEMVL5GrG9lOAXSSgdzpwL9865yCmVdSthlYXGHfVEk9sWVf4WN8enEF+yTT7iOvpJxKcdxHLWLSTORoJcAj6xrFKmUzsPzU/BVdzc3WXtWn+xeL4oKCj8PE= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1780582444; 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=QmKyB2ECV6CF1mcwtF4k2cSn63JC4ocptEIGAi1fx4CJ8vJJXTwkei22/OWqfOi1K7A4sIi0OGZYjV5Pz53NJLHgcejs4QbtVvoc3toMXZR4cFLf/4QdiSOf1E0oI+dk5oM+h5PY5NhPAOyIcR3WPbeH3lYQCQOLsdLQBAMd6yA= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=uA+1b37N; 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="uA+1b37N" Received: by smtp.kernel.org (Postfix) with ESMTPS id 81BC9C2BCF5; Thu, 4 Jun 2026 14:14:03 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1780582443; bh=m/Lw3D9Sn7b/iEdL6eTGT3K2tR/KZoA6l9gCS1mqNBI=; h=From:Date:Subject:References:In-Reply-To:To:Cc:Reply-To:From; b=uA+1b37NQSmArtACLB2NbG399sY551NDvZPqU+G5d24GwYMzoT1TZvYjGKmYjTBar A5nwm0CveDwTbK5FO6cERlkJpprDwPyoflWJj2rWgLX0Wbzoo2PtR+xMgn5y83uPnW zfB6t/AjBoIs9019bOkIdqAQFjcfOfMaDO3yMQt4ziCr+aWwpcalgEpBI752KKa+xd hlH+NjeD0YNqTWcUw+Jp8ql86kitCp3qA8Dp2iAJU3+fe0Z0yJjNMk78gXR6jSGCkk /lTHrUSa9h7FNmjda0Br2t+AN808zjBqWFLOjgfxnAl/TzjRpNWzTaALx8Q7XdRtj+ Amyqv6wzQ7J5g== 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 7700FCD6E6D; Thu, 4 Jun 2026 14:14:03 +0000 (UTC) From: Dumitru Ceclan via B4 Relay Date: Thu, 04 Jun 2026 17:13:49 +0300 Subject: [PATCH v13 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: <20260604-gmsl2-3_serdes-v13-2-9d8a4919983b@analog.com> References: <20260604-gmsl2-3_serdes-v13-0-9d8a4919983b@analog.com> In-Reply-To: <20260604-gmsl2-3_serdes-v13-0-9d8a4919983b@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=1780582440; l=1814; i=dumitru.ceclan@analog.com; s=20240313; h=from:subject:message-id; bh=OiYJqgg6XnogVXqu3cCeY60g1Qzx0eB+PgiVHCOJen4=; b=b/8iO1IKwIbm4AvBCUVd+sxz3X81kSbSKscEm+RoTqDmaAd00gbZcstxyREnV89JWUyBuW1/W Lw4A/5IUgT9AwSeq9T4i7Gu7nIfyRF40ITR3Ze6xoT9qZzl0GTAbaog 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 Mon Jun 8 08:36:18 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 DFA0D481672; Thu, 4 Jun 2026 14:14:03 +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=1780582444; cv=none; b=amWxxHt2NYIhPRhRzEQS/MZ0DvgtT7SjvXhUXBnYxxOszgCirnAjPqxbi52crkDun6yvp49cCferX6DT+9a2ehjTGGEnW20F5WCCzpq3a2TpgBeg/MQfop45t/2s47pxQCqg3CtbNW8dxAUUSEtmbxjoc8J/jhCYU90j2Joe3YI= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1780582444; c=relaxed/simple; bh=+zzdgbeUTZ1N1DTgq5TxUwR+zP+wJLNITthqc1e88Zc=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=kk8ZmKkpwpCtDU/J4PbScSnHbP5c3MbB8Vior6R0+sxs3llQOTDW9EP9L2EjhfFUPAiPY8ZSG4Fsxgt6ICacsD0ekUFJIM1NNbUslPoTfTi/GgRyUq99AMcQUSQxSdLh/5DO1zHYkD7vQaVJz2ckOhn+YydOx3a/f5LUHR/VLi4= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=KbIl890Z; 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="KbIl890Z" Received: by smtp.kernel.org (Postfix) with ESMTPS id 9514EC2BCB8; Thu, 4 Jun 2026 14:14:03 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1780582443; bh=+zzdgbeUTZ1N1DTgq5TxUwR+zP+wJLNITthqc1e88Zc=; h=From:Date:Subject:References:In-Reply-To:To:Cc:Reply-To:From; b=KbIl890ZX5nm6H+nte1dcbi6YHXmLx8lj+hL7nU835nIJFO5bnE9wbs7gLKMCqep3 TiUygCayN+zG94PnCmf0rLI/nZcTv4Sl6SoLMzKxHhhKy9ah1gsUIC+H9JVTo1tDAa IzbuQZUfmkp5nWqvQwHvW+l/dNRx3dHncxOOBZL2fL7Pepn2/xU3/90CdSWXhQQoDv qJMp5yxUSEm3vLOWOc5asw74Ad2V7ZgVSqSZ4SuAIn81r95+H/PFOgsfgo4dpDlmMq kkywRr0doFSpGXOdiPkwfsb1+mCRBz06e4eWmYySkhaKMQ+6vHY8/TUY2P4hinDwPC 5FqnnjeYsUhYw== 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 83E5ECD6E60; Thu, 4 Jun 2026 14:14:03 +0000 (UTC) From: Dumitru Ceclan via B4 Relay Date: Thu, 04 Jun 2026 17:13:50 +0300 Subject: [PATCH v13 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: <20260604-gmsl2-3_serdes-v13-3-9d8a4919983b@analog.com> References: <20260604-gmsl2-3_serdes-v13-0-9d8a4919983b@analog.com> In-Reply-To: <20260604-gmsl2-3_serdes-v13-0-9d8a4919983b@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=1780582440; l=4016; i=dumitru.ceclan@analog.com; s=20240313; h=from:subject:message-id; bh=SrxXRhbQ3GCquuhQkKB0cKcz5eSmglqqWPozYcuiRVM=; b=OtpWpbdECLH4wxPtwd+Hox4TemFpjAMXSsoHhkxQdQkuzbtv854oFats7weGFTDBf4T1ag+SX cUlvptFlWWWBdcTJuDB3u7LYe9vZP8LSz9K0ysc2TGhz27YIWTtZhbm 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 Mon Jun 8 08:36:18 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 DFFFD481675; Thu, 4 Jun 2026 14:14:03 +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=1780582444; cv=none; b=pFPDr8hE/TGEu6Xu3CnrxGe+8dpHHT79gVp5oqzh5Knr2TiXIXQPdd+wFa7TUnioNXmJ2crAX9Edj78eSpsTkLP5YKcq3BLqKuZ9HsRSu+jAbpoab3UBaQgLsInsEplTQIIgacyAfwRqwdBEk2AQ9BVh3mOp6aNPzKDp0aeqc7g= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1780582444; c=relaxed/simple; bh=0LRurGs30izWp59o8FPmIaT+p/OC5LyJScZ6dv8wqHc=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=GxutAPsYl/kn17Msw68Q6bsLsA9R4roJsNMThQgk3JvX6HmQ6Bm6fcRLrFTeMUUrgD7UsiLioFdeMTUaVTo5qdZrOOF5KHts9Q6oAm6BykPKsVuHCSi2a51E2VfXKQXF7+hko9ud1jLu9jzWx8sociQ8TmLASFKXhFDL/n9++eI= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=YAAIe/gP; 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="YAAIe/gP" Received: by smtp.kernel.org (Postfix) with ESMTPS id 9C11BC4AF0C; Thu, 4 Jun 2026 14:14:03 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1780582443; bh=0LRurGs30izWp59o8FPmIaT+p/OC5LyJScZ6dv8wqHc=; h=From:Date:Subject:References:In-Reply-To:To:Cc:Reply-To:From; b=YAAIe/gPz6TtMvL0y/2A/oReHlHqLBMi29WJfrTEx1cPg84lpfPS+yuP+Toi6Q59f R6vUkvfy5OaAyEWUoNJkKEDDK42RF9nPSc3qOEAl+zj7plQgTzDtRDmCnRpeiCowvR 4YlYzkHFj9ShJLqUAesJdCvvxvH6LSqM0fbimY8xizK2QDyY/mQO2dkU21MEV8w+Cx BsN+wW6Zq9YOlbSSs2l5w/wSgg3juMz+Is3hJvDhX4mDtPJy1/EtIsOon5iMTlLna1 m09pKD3s7MIxIy7PnA+jEMCxs0ha+C+Ba5TkvGtiNurHvK2RadkiDSO8/wkkR+lBAR no2Us9CwGUdZA== 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 91497CD6E76; Thu, 4 Jun 2026 14:14:03 +0000 (UTC) From: Dumitru Ceclan via B4 Relay Date: Thu, 04 Jun 2026 17:13:51 +0300 Subject: [PATCH v13 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: <20260604-gmsl2-3_serdes-v13-4-9d8a4919983b@analog.com> References: <20260604-gmsl2-3_serdes-v13-0-9d8a4919983b@analog.com> In-Reply-To: <20260604-gmsl2-3_serdes-v13-0-9d8a4919983b@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=1780582440; l=1215; i=dumitru.ceclan@analog.com; s=20240313; h=from:subject:message-id; bh=vJv87PlKhZ/JJOLIT/BDLODjizDSGOosxrrf6SXpE7Q=; b=J3JHuBrdRKrgaMCxrwcCGJKFw0AUILiD+53InJ7izsZ/Bb7dX//PDlzVluevcP9fVjgvd5VBh XHIMqPV3812DsqD2RRzBTuTFAclAJkbHo6VeQOL0As2H14TvnCAj3pE 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 Mon Jun 8 08:36:18 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 5E054481A8F; Thu, 4 Jun 2026 14:14:04 +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=1780582444; cv=none; b=iW+2seQv+UNa/UVPjZvkDerWgVH/YKaN9MTu4G9Hz6nNLrKMitxEDAwf88EoZmyQWpRZW5s8OrkauWeQGSpSVb3dX8B0TrNqnf8YeXgHX83MCPVYeMAGPtXMoXgafMd1qediBCO6d05U7jkuEAa27ULpUzzAYr7WHsGa8KjoXuc= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1780582444; c=relaxed/simple; bh=BKRnyLSX59IE0zfiNOQX8tE/TWnmktZCFFeLRCV2Ecw=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=bFJMA1JhisGEZVwcigY/UiONZaCpkOTmx8ZV6bTOh1wA3ABOtNdJdRNWocbu25qHcjXY9Wki5gjpUMNf2TF5nFoUqb+Oin7wImWQwu4iKcxzjROkhXEkyPIKjmVVJEIq0N1WTLd1Fn76hX+0AxXYaoOgDiA+MGcCFDUeZaHMwAA= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=B4jalLWw; 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="B4jalLWw" Received: by smtp.kernel.org (Postfix) with ESMTPS id AA35EC2BCFC; Thu, 4 Jun 2026 14:14:03 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1780582443; bh=BKRnyLSX59IE0zfiNOQX8tE/TWnmktZCFFeLRCV2Ecw=; h=From:Date:Subject:References:In-Reply-To:To:Cc:Reply-To:From; b=B4jalLWwLtLEMkegfPEP0Fu8bzNEx/mno9brfvcssxvdc67+UtVdJlyjfkhH5KvqM CXiosnHCGBjUBTUezFzu4XJ1dvAc5cdrRU0KXF5OU1WBiSXBhLhMXSn+FZOAoqhhja mr921qrEJrTFl7DJcncryW/l0wn0/obRopmzyBta2++ViwfiCabZFHiZneeeNZvetj GTnHjwXMqmwYgPIJBzKPrLJiZyacaIeEGwWzSqwV5YZYCbEGe/2j/SYn1bo6jTX8WP LS5vclZBEDv24yF5LsNXejfgbiKrFq7A9ogI3S43jAnZYN2M/ctoXvmaiV2y0fPveW ZpaD+GcuWS1hw== 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 A0003CD6E75; Thu, 4 Jun 2026 14:14:03 +0000 (UTC) From: Dumitru Ceclan via B4 Relay Date: Thu, 04 Jun 2026 17:13:52 +0300 Subject: [PATCH v13 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: <20260604-gmsl2-3_serdes-v13-5-9d8a4919983b@analog.com> References: <20260604-gmsl2-3_serdes-v13-0-9d8a4919983b@analog.com> In-Reply-To: <20260604-gmsl2-3_serdes-v13-0-9d8a4919983b@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=1780582440; l=1028; i=dumitru.ceclan@analog.com; s=20240313; h=from:subject:message-id; bh=kdE8G2f/TkU4Jd90/mcz/ibtYHam2bXzp5xv8fAXHto=; b=38jzdoeNBr+zpmMS/wr5EXyGWxbswW7++Mi3e7GT+faLXMmvnpO42fmMsTSDbVL+ojm31wF1D rE6H7b6pY6kAwZ+CykWPvSyJ27KFDN8JkWAlz8swj92OltOOvQMFSgn 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 Mon Jun 8 08:36:18 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 4E8B7481A88; Thu, 4 Jun 2026 14:14:04 +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=1780582444; cv=none; b=UVvo8/sTFKb/o8pvhyRFV8ysxrCdRO2F2jw6jwLldvhlcyJsQXp94FI3+NY/j3nFqVd3qBTX9JC46sE2N7ed1UpENWp/94lszEyo8RoLFDyHwHWLfbf9zJefaTdDgkOoHFWZIFPmksxb4Th0ZP0eJ6FKf5Xh6PBmrp+DppsDM3E= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1780582444; c=relaxed/simple; bh=8TupqbovUH4f8Ft7S3k5VMJFfXq22X6CyPw4uwxsut8=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=WuwwLzbOP7aAXoZE4Vsn+NdjFJy7CZzK0aop5ke5zRqCls8650dCaDm+UBDzmXvE9Ueec1PmifcD3giymEX5gTfApXtLxKdNxw1vSuVuE4nznJsGbmGRsfLzDeRJTM+6hdwkRkgkK8VgDfEhwCNXyis69iw/a1E26lITyYs1360= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=pyFTvzKE; 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="pyFTvzKE" Received: by smtp.kernel.org (Postfix) with ESMTPS id B9FF1C2BCFB; Thu, 4 Jun 2026 14:14:03 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1780582443; bh=8TupqbovUH4f8Ft7S3k5VMJFfXq22X6CyPw4uwxsut8=; h=From:Date:Subject:References:In-Reply-To:To:Cc:Reply-To:From; b=pyFTvzKERNEvdJ1RqxQ6VyQs/N+eA6XnydRC17F62dcPjTh9iDjtRlUnW5ke9iZed otaThiq5R2UFQYOr2C255K5Md2NMFLJQzaFd5tOVWcDJf0xwHD1rkFare9NODbpTBr +KjhzSfNQBW3upgOT+vY9DfjWFmbaFsyEe0YDdixeTb1PkPxenEgfrVrOXhMFfxCLn 3Q+l7peTAyNdKInnKJk1cEQ7HE0HKgE4QwQAX3inC+U8/it/TCiUpERgUTkKR3eJSN x9oeP9NrFnU0paTBp/VqaYzeMBy63qec4GNvasa2/3oHmAfsArslRSqE+1jQBfIy2C oWQupOh2orThw== 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 B2E62CD6E4A; Thu, 4 Jun 2026 14:14:03 +0000 (UTC) From: Dumitru Ceclan via B4 Relay Date: Thu, 04 Jun 2026 17:13:53 +0300 Subject: [PATCH v13 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: <20260604-gmsl2-3_serdes-v13-6-9d8a4919983b@analog.com> References: <20260604-gmsl2-3_serdes-v13-0-9d8a4919983b@analog.com> In-Reply-To: <20260604-gmsl2-3_serdes-v13-0-9d8a4919983b@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=1780582440; l=2057; i=dumitru.ceclan@analog.com; s=20240313; h=from:subject:message-id; bh=I52ZK89SDidgv9Kh0KUq2eBXwlYMLSWhPo+aSFUbLXE=; b=J2DtQqDAiTf0BrlnoFsTCMMVjvdJhZazCU1ZI+udvtwIAVFkmx11avu53ueQDU+hFMLjJS+J9 2BK3XB7PUoUCXE3NLEAgp4bwjkcqBWB66wwtrdM9lLah1Z/Ue3U2iwB 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 Mon Jun 8 08:36:18 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 62F35481221; Thu, 4 Jun 2026 14:14:04 +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=1780582444; cv=none; b=jyeuP1j1d+CzWcKZCD2y3AgrpCaSeVWD9kaLhPgP8ldPcBohNLKol59S1MxeaalnCtYNgqmMGAxi7yf+S36RinOT5ZMpYYXK9zCYfIYvQGP0cnCUPnrDZUFZTXkfkMEgEqpq1i6sZgongQ1vJlJZPrT8qD7B6M8wVTjYMoyI+Qs= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1780582444; c=relaxed/simple; bh=oRQbdno+uMhuHFTbdmanYF8cim3BHh4wpJplXog8vQk=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=Xr7OX3rNvy2VL6Cn3rYQ/AMFrap1FR5afsu6rODs1evpeo5zEUkJdaKxFMQ6oDOcb1Hi/GXZCfYOARNXGfsbJjHNzeknX4/HOyZyICOX4sGVQV8l4+T3CInody2QPK4WV92hgHjQN0CDA5r5sVTV+bHSKEP2pGXg4aaXxJWhf5I= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=GzSs/Adb; 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="GzSs/Adb" Received: by smtp.kernel.org (Postfix) with ESMTPS id CAFC6C2BCF6; Thu, 4 Jun 2026 14:14:03 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1780582443; bh=oRQbdno+uMhuHFTbdmanYF8cim3BHh4wpJplXog8vQk=; h=From:Date:Subject:References:In-Reply-To:To:Cc:Reply-To:From; b=GzSs/AdbEX7W0tL012Wf98cs1/dO/+D/ADtvfqNsmHP5ly48CeDQdTeAxbNn4NRY9 ukmcFzbMD7fBcw81rkSLj1o2fkxv1SCOIWVHpD+EsmWM/Vpo8Ztv/DfWS6++XgzzUb CmWyYOhh1+knI04Xd3X5OI+UwVLevchxoo895o2E7uCdzncS076ovubSa3p9kjaEY8 829vgntBn/yQWH9ALwSP+eC0wjls28y4UEJBfJ1B51OOc/NG3S/LI5Cl8jIdpmtjEu cfENLj7PAEhD/6x7JO2fLsfEP3wWK+YBVt7/L1ySa7I8WPw62mm0dY3h61fsyRpJqh LLZrZxD5BCYHA== 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 C43D6CD6E6D; Thu, 4 Jun 2026 14:14:03 +0000 (UTC) From: Dumitru Ceclan via B4 Relay Date: Thu, 04 Jun 2026 17:13:54 +0300 Subject: [PATCH v13 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: <20260604-gmsl2-3_serdes-v13-7-9d8a4919983b@analog.com> References: <20260604-gmsl2-3_serdes-v13-0-9d8a4919983b@analog.com> In-Reply-To: <20260604-gmsl2-3_serdes-v13-0-9d8a4919983b@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=1780582440; l=1871; i=dumitru.ceclan@analog.com; s=20240313; h=from:subject:message-id; bh=Wtq87WP6HuN2ExCP/a1ucfnQWkLmzlzMjUynofXhUVc=; b=7D1lIA/b6cuXbRaSP6zlww9P0Y/yQrtfWU0DZtREZSSJrEUiRK40bIWGT6j9a4ET9RTpGWl5R s9jKS4qfF2ZA1B0KSrE3dPT9vkg8R7/Tj0s0feZmikQKZyLuXoy0nIv 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 Mon Jun 8 08:36:18 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 64CB8481A96; Thu, 4 Jun 2026 14:14:04 +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=1780582444; cv=none; b=HY0DCdIVN9A8rI1x+LZo8abJwK/dFoOheTSwTi6lh+neqap+zDGhwVflarEWDKKJi++VWPczWbVcsM08IbsMcu0eePMh8llKsTWTxZrWRGJBe6O+pTNVwnl2K+MYGL9/n2ocjw8w8sGcS5Go/ftc69H/GfBnEm5tGl/C/PTCfQI= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1780582444; c=relaxed/simple; bh=uqnWPcYuomOdK+CZnQbIn/W5p1Thhpmu4YbDCuYmLeQ=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=iNfgOyVfvc7s1sqvshzZ2+DVaBM1jEcRC4UlPiQbKMtGHUJAn5hdy+SxcH3Nwn8CLZ7lqlu1JV6ABZHrcbPlCOPYsB+jT059l5/vwHO0+YW50UfUX/A9oA+pEflj1dRI3xFGn6lTGYHXoJlCSmrzFwGI0lxGP4hqbZhmDNP9CJU= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=tweW4p1y; 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="tweW4p1y" Received: by smtp.kernel.org (Postfix) with ESMTPS id DACBEC2BCFF; Thu, 4 Jun 2026 14:14:03 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1780582443; bh=uqnWPcYuomOdK+CZnQbIn/W5p1Thhpmu4YbDCuYmLeQ=; h=From:Date:Subject:References:In-Reply-To:To:Cc:Reply-To:From; b=tweW4p1yrZ0gRVEyTtW9HGBe0tFdFoGCYTB247f2ub7tHdXcciuDZX0Eih6hglZ2b yCaP3zJ781es/gtYzW3nMIUq0vbT//X4beiyZ0HCgAOHGd+KiG64KPtAX/tUf0IrpX a3X5FDwidfwNP4KQHuhbm55K8cbRUW3kneuoan+ZFKi+TgV9WlgG3Cr8aQBrHOcv9C H1Dk+s8RKziHyUnDtDQCITApIz4907luXpBkbBabdQsFRLy1a41ZtURCy71z/yUHLB TPeRrd3Zg8YBcm7T7Y4KltitDE8RQ/nvImcZUiohxSiiaLugA+/0i0LpCHX/RzM6yk e5N2mp/4WJXIQ== 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 D3E50CD6E4A; Thu, 4 Jun 2026 14:14:03 +0000 (UTC) From: Dumitru Ceclan via B4 Relay Date: Thu, 04 Jun 2026 17:13:55 +0300 Subject: [PATCH v13 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: <20260604-gmsl2-3_serdes-v13-8-9d8a4919983b@analog.com> References: <20260604-gmsl2-3_serdes-v13-0-9d8a4919983b@analog.com> In-Reply-To: <20260604-gmsl2-3_serdes-v13-0-9d8a4919983b@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=1780582440; l=998; i=dumitru.ceclan@analog.com; s=20240313; h=from:subject:message-id; bh=4ZvMQ1EkeJ2w8dRWwF+03VM9oahvM+Q5lLU48mndSLo=; b=DQdpc2xvtfbqDM90Tr1iTV9vBbwdnhE0Re1os6EPDvq5HfjMgS6AHltjHJXuR+tA+zHbgFnJV Rd405O7NCrKCBvDKQTORwTTaPWS3JmHD3JouVPGLwKMVn21PYj7V0pv 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 Mon Jun 8 08:36:18 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 4F86D48125F; Thu, 4 Jun 2026 14:14:04 +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=1780582444; cv=none; b=B8Cyem6wWVGFcjRUFJxYbpIgeYbjVJXiK9TlECKCfiClgHzI9UiscpXw5+y3IjPefAgk8W2mnrZ/aDSql6PKHctuCEWX+gBcA28Dw1DlJ6zlNa1uFHBbGw2ob3tHnIkHCp3g3q9kcL3Hq7DUUh7kUztSC91GbdYDa5pY/bddkJ4= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1780582444; c=relaxed/simple; bh=IVMjQPi6cuXsnNOAOBqZV5+FmGTZcU/k97taVGCOIoE=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=NBfEv4l0a6CjyuirhbbgptX0AbOMmsqEEIYtBw9fd7kiekpjdSeQ40ACWFHi1+SBxH0aHhRLN+wuWjxsRUIPhEgX+3o/GxK+yn+BbRHv7NSLFL12RsQY78Jn6qYzn3ZrvywwINUHH0Cl1+7zT94CwqZMYvsPa89XTztdSW9Ya5A= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=CNx4zx59; 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="CNx4zx59" Received: by smtp.kernel.org (Postfix) with ESMTPS id E65E4C2BCF4; Thu, 4 Jun 2026 14:14:03 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1780582444; bh=IVMjQPi6cuXsnNOAOBqZV5+FmGTZcU/k97taVGCOIoE=; h=From:Date:Subject:References:In-Reply-To:To:Cc:Reply-To:From; b=CNx4zx59FUXsnC2yPN7SVwMk12nYD+30fxFW2ZjEVhEcv8gE+i/0mP+9kRZ1wdmI0 0ipcQQbAw008XoAUhGDEVpGeX0EHIWxQjlmzFGxbQdXZV6anfpQtOEa3mfnmNgRUJ1 Vm3AGXPw0/bBX0HshVdLbBcOaSgjt70P/K4S0A4GHfDrqTBfQI6VNFBHYU6Gt4tw6E ZcvJ6sppHll2t3gg8m4Jy0Axa2Yzlp3cQsjWvMP3JE4gG/Pep2Ug0yh0rESYVBKqfK aJCRcDD3eiD4rKNujRwAG8mHs6u5tXJDF/M26ncjrgACjU++gmGRXlnXsdWQCXsBNL v4n6st6oVDitg== 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 E12D7CD6E75; Thu, 4 Jun 2026 14:14:03 +0000 (UTC) From: Dumitru Ceclan via B4 Relay Date: Thu, 04 Jun 2026 17:13:56 +0300 Subject: [PATCH v13 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: <20260604-gmsl2-3_serdes-v13-9-9d8a4919983b@analog.com> References: <20260604-gmsl2-3_serdes-v13-0-9d8a4919983b@analog.com> In-Reply-To: <20260604-gmsl2-3_serdes-v13-0-9d8a4919983b@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=1780582440; l=1289; i=dumitru.ceclan@analog.com; s=20240313; h=from:subject:message-id; bh=ZSTakNbBz4Qus1NiPPbe76vFnVEQ3NLtF7fl+Vgxvf8=; b=O4bJ0upT6OS+Y+B76GAjepaPSnDWnCJxgcrQBDyL/A2b/+pFRflWgAZQpA7cGe+cWMFsgg2ZE I3jGjEEXSHLAfCr5/9Lq4lZeg3ASL3vqMqlHmdDLBUvJ9gbBn3e4RtN 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 Mon Jun 8 08:36:18 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 5DF3E481A8E; Thu, 4 Jun 2026 14:14:04 +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=1780582444; cv=none; b=Tfg+qpvR2QW/WimfiDllI9pvkCS8cc3o0mPMUSIKPXNxQXp5ADVW03VD0GUgGuhgPzImG8H7f4WuMFmxMPuV/ewFXqlAVCLsWGm3vRoXT+lJqLASHMJnseYxXe5b705XASHt1H9aqt+sbpnDlMD6vYoNiN5v1Y6LJmHIEX4z0rU= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1780582444; c=relaxed/simple; bh=tWwbEs8FGaSWXCHu7fkyMkarjjIYlQ6rEDB4ChST04E=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=DJMOMkmzSPRKuYRqR5byQYyLM8JGwsUZ83vF6DG0ZbjIEWpvkuKvniUTfcOOD1Wcq3VOvtjU6bji8infTZHacUjeZkKrKVzysIVbO+9LlsNC3AJQSpQL9SImv4OhoeJbf+cuMi7s/0KmtNuWvVyrF49ktVDj/Y0Q3MKmCIeHIHg= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=dUvTpz51; 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="dUvTpz51" Received: by smtp.kernel.org (Postfix) with ESMTPS id 00AA6C4AF0B; Thu, 4 Jun 2026 14:14:04 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1780582444; bh=tWwbEs8FGaSWXCHu7fkyMkarjjIYlQ6rEDB4ChST04E=; h=From:Date:Subject:References:In-Reply-To:To:Cc:Reply-To:From; b=dUvTpz514Bmg07LmdHc/lPR18sbkC39IMHYNqvxbnoqT/HOpLnBDHnaCvxz6k/eaI WtTzhywoDi4KxIjv1AmPxQsOEZhbie1lvp7fcGSoeTq+SA+712by9DJFC9qJeEwwFu h2mgjuiA9l1Z2JCa0BBgHqgry26/i7m/NAw6szOlKyC5p4RUhAH07URS21GlZt5T0i R+qYDCW8IcsH8gnnp41Lcqu3WdFWD9v2eGy2x2ArqaV3rbcxUOWTNgSGAnfpF89P31 rvYLcyNzU4GHP4XUW3rct6pwNxhoW5q0RaR0FbwlcH7MVWNnSErvSCLDaSGQA2wx7h e5ha+Zww0TYag== 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 EE1B9CD6E76; Thu, 4 Jun 2026 14:14:03 +0000 (UTC) From: Dumitru Ceclan via B4 Relay Date: Thu, 04 Jun 2026 17:13:57 +0300 Subject: [PATCH v13 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: <20260604-gmsl2-3_serdes-v13-10-9d8a4919983b@analog.com> References: <20260604-gmsl2-3_serdes-v13-0-9d8a4919983b@analog.com> In-Reply-To: <20260604-gmsl2-3_serdes-v13-0-9d8a4919983b@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=1780582440; l=1192; i=dumitru.ceclan@analog.com; s=20240313; h=from:subject:message-id; bh=WKlYD0eiVlHNx0Fb7+p6Th7PFjpFBfxW7UWVkEB+CEM=; b=PH74URc8vjK0bjnUYD1jz3n7W2OvNb60jYWRpDpqkp5z6OMduyjPbES9pJDt4YN778U6HxUDJ gu+Vy4Z2iBrAzpXeQO8wnYpWvD2jgaWDuxtVgBgW3AMsuP7oeziR+TS 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 | 8 ++++++= ++ 1 file changed, 8 insertions(+) diff --git a/Documentation/devicetree/bindings/media/i2c/maxim,max96712.yam= l b/Documentation/devicetree/bindings/media/i2c/maxim,max96712.yaml index 161d40acdd28..538b639d4f54 100644 --- a/Documentation/devicetree/bindings/media/i2c/maxim,max96712.yaml +++ b/Documentation/devicetree/bindings/media/i2c/maxim,max96712.yaml @@ -41,6 +41,14 @@ properties: =20 enable-gpios: true =20 + maxim,control-channel-port: + description: + Selects which deserializer control-channel port is connected to the + upstream I2C segment when the device resets. 0 selects port 0, 1 sel= ects + port 1. Defaults to 0 when omitted. + $ref: /schemas/types.yaml#/definitions/uint32 + enum: [0, 1] + i2c-alias-pool: maxItems: 4 =20 --=20 2.53.0 From nobody Mon Jun 8 08:36:18 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 79ED0472772; Thu, 4 Jun 2026 14:14:04 +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=1780582444; cv=none; b=I9B+ii50Iujg6mSu0hlRr3bP3EC0yF4je2hw7qQ4NGVlwOqXPivotRX5Fsxw/iPYal6VRRG2sVJ1s0Y2fvkVi3zZb7M8uXC/NphWe8D9pLzLnFRYYoiBUYHE+rGVC1+6VRrb8c1PUCj2Wt91W7a9XseIeJqyzm5wlWRb1Gk9ous= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1780582444; c=relaxed/simple; bh=P5T0QdiUtUUc3yfg+4YRcekBidFP3FtN9qvlxhJwdCA=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=uc7Z3NeWwlOXxm0gVwHJGp4Aa/XLubDtN44IETCVJzsA2E8fxva2vcR4231YlYCCYJdvbWP7NIyVDFyfLOHVmv9pPxZF86SHoa6a8xSeoszXlAp97U+c8tezGzYCshu3EamY9GBXdSTKkyF0PRfhmoqVKfsvmcv+9g+C2Tyz2xQ= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=bcKKaZv1; 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="bcKKaZv1" Received: by smtp.kernel.org (Postfix) with ESMTPS id 0EDA0C2BD04; Thu, 4 Jun 2026 14:14:04 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1780582444; bh=P5T0QdiUtUUc3yfg+4YRcekBidFP3FtN9qvlxhJwdCA=; h=From:Date:Subject:References:In-Reply-To:To:Cc:Reply-To:From; b=bcKKaZv1KObzqHyCEeK0riyBqkxQbI1VSxONgYeXsh+/JAAizmFQ3SaM93w+LVFFt 3+gv8N9Y6vZ1Y1yFWyjiss6JTVBQeIs7zP3oebdiqWFMeSyHVDKNc5Rz5Np1Nt9saY WzwCnBLGI2g1DsZJzBijbGoB3q+R8JfAeD46mwq1OBWXd91nUwqbc3Xb/Cu/khQvoP saV7LhRoFB4Zm+Bh4PYtZYZvr1B/rf8diIDYCI8gbjcvdDIv3y2WpciCJEKUHUroFG m4ate2utGn4M2RX/cSAjPs65ijarnlNZ2nrNubRg2KERvdRVXt0HWr26DeODweD57B dLAu/R1W1Xifw== 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 08363CD6E6D; Thu, 4 Jun 2026 14:14:04 +0000 (UTC) From: Dumitru Ceclan via B4 Relay Date: Thu, 04 Jun 2026 17:13:58 +0300 Subject: [PATCH v13 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: <20260604-gmsl2-3_serdes-v13-11-9d8a4919983b@analog.com> References: <20260604-gmsl2-3_serdes-v13-0-9d8a4919983b@analog.com> In-Reply-To: <20260604-gmsl2-3_serdes-v13-0-9d8a4919983b@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=1780582440; l=1267; i=dumitru.ceclan@analog.com; s=20240313; h=from:subject:message-id; bh=zOCbIvONkBm9sImxMI6AYdByC42n/O8SZsebFGXPD4g=; b=16sCY6sHQnRhXadi3AcXe+iNK6yhB7Z4nyqNiRQLTVLu9CpfLf8gGcfvGDEBUHmtKeuEufOhB CSCvLV+RjdJAKT+98AF2/D/6W8HKs/eM7zJOscf5jAdaVn0eVBzN2Uj 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 Mon Jun 8 08:36:18 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 AC6BB481AAD; Thu, 4 Jun 2026 14:14:04 +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=1780582444; cv=none; b=DR10BGIXokys6PLYWO6RG9t63OWhdaCdN9mcW6yMmh8SJ+1gFyMdCKhziuoSmt83fOeb9ZgND5EoI0tl1Vc3UG1jK9DhjHJhJRFQ1dhHzU28qWNk3tn9/9sUTQNETLEphu5v4InQjtoTNLUjQJJ6NZttVJnBrsGFRGr/6o6zf1g= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1780582444; c=relaxed/simple; bh=oOaEEW6GmpDwPz3O9FJ6PpObO13kLIxHFXrYwg6p9IM=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=lANKaE+nOtRdv/Nm6IkK6v7QSUMal1azanjXlhxS4YXxfL/YdEqJ0tekFltw9vZoIo8SsjmZ1HNrZJRUVFxfwp7GjKV3RQiBa98qaHqiLGi539VZSKabBldDFaQrQ4dLvCQym3nECNQhUXCtPRGtXZXCsUZU2ytP8SybFf9bGGE= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=e3JsPpdI; 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="e3JsPpdI" Received: by smtp.kernel.org (Postfix) with ESMTPS id 1CF2CC2BCF7; Thu, 4 Jun 2026 14:14:04 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1780582444; bh=oOaEEW6GmpDwPz3O9FJ6PpObO13kLIxHFXrYwg6p9IM=; h=From:Date:Subject:References:In-Reply-To:To:Cc:Reply-To:From; b=e3JsPpdIgov1q0HoigE+m8Dptc6EAigQ8tvMsbIlfe/UKcZmt8cBXCT2dqaNAdLzq 4WfWpDuxK1udVRa7pnxlr2yzTqsnIuZ/xL6a08i76yxgaJI6xTeDiNDmArTIg0Le+V prFz/JdldHs8/ECKbPj20+3WV8ktgq8TXIwdED9TI9SBYKEw2IPaWOSlPeGKKL8LLb 9dJufMEXoHxA5wryVShVfRxlxwFomUGgaSNgRhLGZQywDByTIEojFGnEeyy78U4hdk 5b2Vvt5AuySyOJCZo3wxXBTowvvCUkIFREi+D+WqZh8RR9PGmMErcymlzFu2iFwwti JfNPSEZN+N9FA== 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 16161CD6E4A; Thu, 4 Jun 2026 14:14:04 +0000 (UTC) From: Dumitru Ceclan via B4 Relay Date: Thu, 04 Jun 2026 17:13:59 +0300 Subject: [PATCH v13 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: <20260604-gmsl2-3_serdes-v13-12-9d8a4919983b@analog.com> References: <20260604-gmsl2-3_serdes-v13-0-9d8a4919983b@analog.com> In-Reply-To: <20260604-gmsl2-3_serdes-v13-0-9d8a4919983b@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=1780582440; l=9145; i=dumitru.ceclan@analog.com; s=20240313; h=from:subject:message-id; bh=+zifY+GuC6DAa+vAj4VdfkWOEI0cWkU/ZE/iw49ySYc=; b=uA7pjuEKAb8VeCXqGMAjjVdk7ekHgHJipgNPiimq4Uo9yG/+oA4T8TuENWKwCEZzCX35Z8s0T hvutXOb+jbjBDlD1KhlrbDfKCx0cB1kxMTzXfOMu4olCA3pdTNl5l13 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 Mon Jun 8 08:36:18 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 A7605481AAC; Thu, 4 Jun 2026 14:14:04 +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=1780582444; cv=none; b=WSXn80tD0I4cL/vaZBpIfZmDyDxVCIL2pyrLhIAQ27fEzbLROuN3whbY3kVZZkzhnYPwzXawt5k/HXPQUb8XYU9U6nk/aBGesPNudy5d0AxPjr3Q2Z6sXnzFSMN2iHBPZwo7xR77rUrUCEZo+ZiP1rWzg/DZhLQkLxQ16VZyJ90= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1780582444; c=relaxed/simple; bh=s1sZd1dIIrM5HoajtUSY0KcNd5ByblXcEtq8kFA9fxE=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=Isknl4C6yqpJdCdNWwOCML15cpVLy9/g5N+wXTAAMM4HEKmaBhg8szENZTclzqwVMrMwfZ5GnZJHFhYn7uOB1iMfq7AnpWwaS2fBAg7hOS5ybpNs8kMq+zsVKCc8F6QdKlFesZdoiDtvSc+c3Qljre4mBFKn+cUmjMgo3cCby0I= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=CcXHRKF1; 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="CcXHRKF1" Received: by smtp.kernel.org (Postfix) with ESMTPS id 2EDC9C2BCC9; Thu, 4 Jun 2026 14:14:04 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1780582444; bh=s1sZd1dIIrM5HoajtUSY0KcNd5ByblXcEtq8kFA9fxE=; h=From:Date:Subject:References:In-Reply-To:To:Cc:Reply-To:From; b=CcXHRKF1YeiCGGR03/UMOk2C0UNPLelNyHOKbVYpY1Z19HkBOKErKVug8jAxeTlRR sa59YGvZCBrjxjqwlQipM1NvuLfJhdBkb+yAi1KmXRUi/C02qFjGDjloE5dRXsthMu rNXdP6wlRFrpG8+X4cqePXXlBgS4KhWMNTRnAYVEcH2zD8CzrONx3MTKXxYKW7oDVE 4jJkzrTa6cVwaJQKrqWBkyi0UZqrUI+QzkvujI+Kia/8JYyN7ObSUmHMceOsRrqSAb 7p1Ycfg8XLitGyMfnVzdilWoirp5rVkHkNAQ0ICDB6khSkae/Km0Sg/QEYzrygpXFf nYOmzry2XT64Q== 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 280B3CD6E6D; Thu, 4 Jun 2026 14:14:04 +0000 (UTC) From: Dumitru Ceclan via B4 Relay Date: Thu, 04 Jun 2026 17:14:00 +0300 Subject: [PATCH v13 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: <20260604-gmsl2-3_serdes-v13-13-9d8a4919983b@analog.com> References: <20260604-gmsl2-3_serdes-v13-0-9d8a4919983b@analog.com> In-Reply-To: <20260604-gmsl2-3_serdes-v13-0-9d8a4919983b@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=1780582440; l=19468; i=dumitru.ceclan@analog.com; s=20240313; h=from:subject:message-id; bh=9A02g23uV4zcBC/B9sHJKVD3uYfVGzwvLpvZQAzXb8g=; b=8J+nQGoVZY5cseZCo1lQXASxeBeWZeh7qeDsherzZ19fWl7yHa37fsk4shMoka0hePg8j0fTF WwA5YANvhdaCcPIKDurUKJ6VGO0IV+di4BnNbM2esPN3VyJJrRuPZN/ 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