]> git.ipfire.org Git - thirdparty/linux.git/commit
media: ti: cal: Add streams support
authorTomi Valkeinen <tomi.valkeinen@ideasonboard.com>
Wed, 26 Mar 2025 11:34:03 +0000 (13:34 +0200)
committerHans Verkuil <hverkuil@xs4all.nl>
Fri, 25 Apr 2025 08:15:25 +0000 (10:15 +0200)
commitc57e372b7b4230d8c4fbaf08704bc4c492a67684
treee2149ec9b4d40cd79e0344ed5ffb79191fdb68f8
parenta5b18fd769b7dc2e77a9e6a390844cbf50626ae8
media: ti: cal: Add streams support

Add multiplexed streams support. CAL has 8 DMA-engines and can capture 8
separate streams at the same time. The driver filters the streams based
on CSI-2 virtual channel number and datatype. CAL may have (depending on
the SoC) two CSI-2 RX blocks, which share the 8 DMA-engines, so the
number of capturable streams does not change even if there are two CSI-2
RX blocks.

Add 8 video device nodes, each representing a single DMA-engine, and set
the number of source pads on CSI-2 RX blocks to 8. Each video node can be
connected to any of the source pads on either of the CSI-2 RX instances
using media links. CSI-2 RX block's subdevice internal routing is used
to route the incoming CSI-2 streams to one of the 8 source pads.

Only video data streams are supported at the moment.

Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ideasonboard.com>
Reviewed-by: Jacopo Mondi <jacopo.mondi@ideasonboard.com>
Reviewed-by: Kieran Bingham <kieran.bingham@ideasonboard.com>
Signed-off-by: Sakari Ailus <sakari.ailus@linux.intel.com>
Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
drivers/media/platform/ti/cal/cal-camerarx.c
drivers/media/platform/ti/cal/cal-video.c
drivers/media/platform/ti/cal/cal.c
drivers/media/platform/ti/cal/cal.h