From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mout02.posteo.de (mout02.posteo.de [185.67.36.66]) (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 6D47B39C011 for ; Thu, 19 Mar 2026 19:30:23 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=185.67.36.66 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1773948626; cv=none; b=H5+fnYNZp0A0ACm5Wr0mIb1jsLjVF9IwpemuUQnCwD8mryxsBXjmHHj87GMm4bFHYOkoTdIXN27UERlVknA0MBzxM8rRkFoDglHklPAkTVNuUsvVddYKJgbO+vO3bonEAUFBeiwLTQEGC4iYh41oMjqnPXqdz/HX99j1tvoL/ro= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1773948626; c=relaxed/simple; bh=hEL0PHTo7AQhG/8GAXvMixzRPJPl6koSwFDjLudJkZ8=; h=From:To:Cc:Subject:In-Reply-To:References:Date:Message-ID: MIME-Version:Content-Type; b=JCRNI8wnMMEU7R7LbqEgXCH8DWvoUfv2hlM1hcY7g0AwwDS9F+LNxWkMpd2w58ccExS3jdjqUPFpNkAyEzfMnmazfEpKF82v1+Jc5FiS2rA4JzYdcFh7NQxLAcXOOzVrdzwaDEe5CRexvOieHbc47jrFH87YQ5BrPNiuJq7v2so= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=posteo.net; spf=pass smtp.mailfrom=posteo.net; dkim=pass (2048-bit key) header.d=posteo.net header.i=@posteo.net header.b=jYnor4XH; arc=none smtp.client-ip=185.67.36.66 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=posteo.net Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=posteo.net Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=posteo.net header.i=@posteo.net header.b="jYnor4XH" Received: from submission (posteo.de [185.67.36.169]) by mout02.posteo.de (Postfix) with ESMTPS id 1AA95240104 for ; Thu, 19 Mar 2026 20:30:16 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=posteo.net; s=2017; t=1773948616; bh=q3Ty2rMUXWrI+Dw+O8BMuW+g1hkiDWZuTXFRx7/LGyc=; h=From:To:Cc:Subject:Date:Message-ID:MIME-Version:Content-Type: From; b=jYnor4XHuX4y0Ei3ESr2vYmExzddT/I8MWa6hYnwSaMnVs3+xuIXPqOyFFM8XAz3I VtfnmKTxKJbKawbVeyreA+ivMjw+mqAZI+i8YxQohGf4d3HW6zYMZ2RSOqm7oI0FS1 Eb8pwgM85IaC+QzlX6KnWzBIZWjVBBMhiwjAX36KGxmM2gzb20JL4SVuyryNTHxU/R GBirJz+So6m5hwVHn1QWiZ7ypub5+dYT7SyBKZ/3y4QoqfqFE2payE4cvMUT5YU+FA bStJ00oijwlRF2sZJsVNYWLRsIzE2AEkFNFmqsGySvZbEo1owegGqLhX1AlXuxVqgJ 6EshfQUkWkDoA== Received: from customer (localhost [127.0.0.1]) by submission (posteo.de) with ESMTPSA id 4fcG4K6pw3z6twZ; Thu, 19 Mar 2026 20:30:09 +0100 (CET) From: Charalampos Mitrodimas To: Michael Riesch via B4 Relay Cc: Mehdi Djait , Laurent Pinchart , Mauro Carvalho Chehab , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Heiko Stuebner , Kever Yang , Jagan Teki , =?utf-8?B?0JrRg9C30L3QtdGG0L7QsiDQnNC40YU=?= =?utf-8?B?0LDQuNC7?= , Sebastian Reichel , Nicolas Dufresne , Collabora Kernel Team , Sakari Ailus , michael.riesch@collabora.com, linux-media@vger.kernel.org, devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-rockchip@lists.infradead.org, linux-kernel@vger.kernel.org Subject: Re: [PATCH v2 1/9] Documentation: admin-guide: media: add rk3588 vicap In-Reply-To: <20250430-rk3588-vicap-v2-1-77de5ee9048e@collabora.com> References: <20250430-rk3588-vicap-v2-0-77de5ee9048e@collabora.com> <20250430-rk3588-vicap-v2-1-77de5ee9048e@collabora.com> Date: Thu, 19 Mar 2026 19:30:14 +0000 Message-ID: Precedence: bulk X-Mailing-List: linux-media@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain Michael Riesch via B4 Relay writes: > From: Michael Riesch > > Add a section that describes the Rockchip RK3588 VICAP. > > Signed-off-by: Michael Riesch > --- > .../admin-guide/media/rkcif-rk3588-vicap.dot | 29 ++++++++++++++++++++ > Documentation/admin-guide/media/rkcif.rst | 32 ++++++++++++++++++++++ > 2 files changed, 61 insertions(+) > > diff --git a/Documentation/admin-guide/media/rkcif-rk3588-vicap.dot b/Documentation/admin-guide/media/rkcif-rk3588-vicap.dot > new file mode 100644 > index 000000000000..f6d3404920b5 > --- /dev/null > +++ b/Documentation/admin-guide/media/rkcif-rk3588-vicap.dot > @@ -0,0 +1,29 @@ > +digraph board { > + rankdir=TB > + n00000007 [label="{{ 0} | rkcif-mipi2\n/dev/v4l-subdev0 | { 1}}", shape=Mrecord, style=filled, fillcolor=green] > + n00000007:port1 -> n0000000a > + n00000007:port1 -> n00000010 [style=dashed] > + n00000007:port1 -> n00000016 [style=dashed] > + n00000007:port1 -> n0000001c [style=dashed] > + n0000000a [label="rkcif-mipi2-id0\n/dev/video0", shape=box, style=filled, fillcolor=yellow] > + n00000010 [label="rkcif-mipi2-id1\n/dev/video1", shape=box, style=filled, fillcolor=yellow] > + n00000016 [label="rkcif-mipi2-id2\n/dev/video2", shape=box, style=filled, fillcolor=yellow] > + n0000001c [label="rkcif-mipi2-id3\n/dev/video3", shape=box, style=filled, fillcolor=yellow] > + n00000025 [label="{{ 0} | rkcif-mipi4\n/dev/v4l-subdev1 | { 1}}", shape=Mrecord, style=filled, fillcolor=green] > + n00000025:port1 -> n00000028 > + n00000025:port1 -> n0000002e [style=dashed] > + n00000025:port1 -> n00000034 [style=dashed] > + n00000025:port1 -> n0000003a [style=dashed] > + n00000028 [label="rkcif-mipi4-id0\n/dev/video4", shape=box, style=filled, fillcolor=yellow] > + n0000002e [label="rkcif-mipi4-id1\n/dev/video5", shape=box, style=filled, fillcolor=yellow] > + n00000034 [label="rkcif-mipi4-id2\n/dev/video6", shape=box, style=filled, fillcolor=yellow] > + n0000003a [label="rkcif-mipi4-id3\n/dev/video7", shape=box, style=filled, fillcolor=yellow] > + n00000043 [label="{{ 0} | dw-mipi-csi2rx fdd30000.csi\n/dev/v4l-subdev2 | { 1}}", shape=Mrecord, style=filled, fillcolor=green] > + n00000043:port1 -> n00000007:port0 > + n00000048 [label="{{ 0} | dw-mipi-csi2rx fdd50000.csi\n/dev/v4l-subdev3 | { 1}}", shape=Mrecord, style=filled, fillcolor=green] > + n00000048:port1 -> n00000025:port0 > + n0000004d [label="{{} | imx415 3-001a\n/dev/v4l-subdev4 | { 0}}", shape=Mrecord, style=filled, fillcolor=green] > + n0000004d:port0 -> n00000043:port0 > + n00000051 [label="{{} | imx415 4-001a\n/dev/v4l-subdev5 | { 0}}", shape=Mrecord, style=filled, fillcolor=green] > + n00000051:port0 -> n00000048:port0 > +} > diff --git a/Documentation/admin-guide/media/rkcif.rst b/Documentation/admin-guide/media/rkcif.rst > index 2558c121abc4..fcd7f8cfc5d3 100644 > --- a/Documentation/admin-guide/media/rkcif.rst > +++ b/Documentation/admin-guide/media/rkcif.rst > @@ -77,3 +77,35 @@ and the following video devices: > .. kernel-figure:: rkcif-rk3568-vicap.dot > :alt: Topology of the RK3568 Video Capture (VICAP) unit > :align: center > + > +Rockchip RK3588 Video Capture (VICAP) > +------------------------------------- > + > +The RK3588 Video Capture (VICAP) unit features a digital video port and six > +MIPI CSI-2 capture interfaces that can receive video data independently. > +The DVP accepts parallel video data, BT.656 and BT.1120. > +Since the BT.1120 protocol may feature more than one stream, the RK3568 VICAP Nit, should this be RK3588 instead of RK3568? > +DVP features four DMA engines that can capture different streams. > +Similarly, the RK3588 VICAP MIPI CSI-2 receivers feature four DMA engines each > +to handle different Virtual Channels (VCs). > + > +The rkcif driver represents this hardware variant by exposing the following > +V4L2 subdevices: > + > +* dw-mipi-csi2rx fdd30000.csi: MIPI CSI-2 receiver connected to MIPI DPHY0 > +* dw-mipi-csi2rx fdd50000.csi: MIPI CSI-2 receiver connected to MIPI DPHY1 > +* rkcif-mipi2: INTERFACE/CROP block for the MIPI CSI-2 receiver connected to > + MIPI DPHY0 > +* rkcif-mipi4: INTERFACE/CROP block for the MIPI CSI-2 receiver connected to > + MIPI DPHY1 > + > +and the following video devices: > + > +* rkcif-mipi2-id{0,1,2,3}: The DMA engines connected to the rkcif-mipi2 > + INTERFACE/CROP block. > +* rkcif-mipi4-id{0,1,2,3}: The DMA engines connected to the rkcif-mipi4 > + INTERFACE/CROP block. > + > +.. kernel-figure:: rkcif-rk3588-vicap.dot > + :alt: Topology of the RK3588 Video Capture (VICAP) unit > + :align: center