media: ti: Add CSI2RX support for J721E
TI's J721E uses the Cadence CSI2RX and DPHY peripherals to facilitate capture over a CSI-2 bus. The Cadence CSI2RX IP acts as a bridge between the TI specific parts and the CSI-2 protocol parts. TI then has a wrapper on top of this bridge called the SHIM layer. It takes in data from stream 0, repacks it, and sends it to memory over PSI-L DMA. This driver acts as the "front end" to V4L2 client applications. It implements the required ioctls and buffer operations, passes the necessary calls on to the bridge, programs the SHIM layer, and performs DMA via the dmaengine API to finally return the data to a buffer supplied by the application. Co-developed-by: Pratyush Yadav <p.yadav@ti.com> Signed-off-by: Pratyush Yadav <p.yadav@ti.com> Co-developed-by: Vaishnav Achath <vaishnav.a@ti.com> Signed-off-by: Vaishnav Achath <vaishnav.a@ti.com> Tested-by: Vaishnav Achath <vaishnav.a@ti.com> Tested-by: Julien Massot <julien.massot@collabora.com> Reviewed-by: Tomi Valkeinen <tomi.valkeinen@ideasonboard.com> Signed-off-by: Jai Luthra <j-luthra@ti.com> Signed-off-by: Sakari Ailus <sakari.ailus@linux.intel.com> Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
This commit is contained in:
parent
ca5b901c18
commit
b4a3d877dc
@ -21594,6 +21594,13 @@ F: Documentation/devicetree/bindings/media/i2c/ti,ds90*
|
||||
F: drivers/media/i2c/ds90*
|
||||
F: include/media/i2c/ds90*
|
||||
|
||||
TI J721E CSI2RX DRIVER
|
||||
M: Jai Luthra <j-luthra@ti.com>
|
||||
L: linux-media@vger.kernel.org
|
||||
S: Maintained
|
||||
F: Documentation/devicetree/bindings/media/ti,j721e-csi2rx.yaml
|
||||
F: drivers/media/platform/ti/j721e-csi2rx/
|
||||
|
||||
TI KEYSTONE MULTICORE NAVIGATOR DRIVERS
|
||||
M: Nishanth Menon <nm@ti.com>
|
||||
M: Santosh Shilimkar <ssantosh@kernel.org>
|
||||
|
@ -63,6 +63,18 @@ config VIDEO_TI_VPE_DEBUG
|
||||
help
|
||||
Enable debug messages on VPE driver.
|
||||
|
||||
config VIDEO_TI_J721E_CSI2RX
|
||||
tristate "TI J721E CSI2RX wrapper layer driver"
|
||||
depends on VIDEO_DEV && VIDEO_V4L2_SUBDEV_API
|
||||
depends on MEDIA_SUPPORT && MEDIA_CONTROLLER
|
||||
depends on (PHY_CADENCE_DPHY_RX && VIDEO_CADENCE_CSI2RX) || COMPILE_TEST
|
||||
depends on ARCH_K3 || COMPILE_TEST
|
||||
select VIDEOBUF2_DMA_CONTIG
|
||||
select V4L2_FWNODE
|
||||
help
|
||||
Support for TI CSI2RX wrapper layer. This just enables the wrapper driver.
|
||||
The Cadence CSI2RX bridge driver needs to be enabled separately.
|
||||
|
||||
source "drivers/media/platform/ti/am437x/Kconfig"
|
||||
source "drivers/media/platform/ti/davinci/Kconfig"
|
||||
source "drivers/media/platform/ti/omap/Kconfig"
|
||||
|
@ -3,5 +3,6 @@ obj-y += am437x/
|
||||
obj-y += cal/
|
||||
obj-y += vpe/
|
||||
obj-y += davinci/
|
||||
obj-y += j721e-csi2rx/
|
||||
obj-y += omap/
|
||||
obj-y += omap3isp/
|
||||
|
2
drivers/media/platform/ti/j721e-csi2rx/Makefile
Normal file
2
drivers/media/platform/ti/j721e-csi2rx/Makefile
Normal file
@ -0,0 +1,2 @@
|
||||
# SPDX-License-Identifier: GPL-2.0
|
||||
obj-$(CONFIG_VIDEO_TI_J721E_CSI2RX) += j721e-csi2rx.o
|
1159
drivers/media/platform/ti/j721e-csi2rx/j721e-csi2rx.c
Normal file
1159
drivers/media/platform/ti/j721e-csi2rx/j721e-csi2rx.c
Normal file
File diff suppressed because it is too large
Load Diff
Loading…
Reference in New Issue
Block a user