Support for multi-stream in j721e-csi2rx.c driver was merged last cycle[0].
This series adds the corresponding device tree support.
Patch 1 is a cleanup fixing indentation in the existing CSI2RX nodes.
The next few patches i.e. (Patch 2 to Patch 6) add the additional DMA
channels required for CSI2RX multi-stream capture.
Multi-stream capture uses a SERDES pair based on the FPD-Link or
V3Link protocol. The serializer takes the input from a camera sensor
and converts it to the FPD-Link standard, while the deserializer
aggregates streams from multiple serializers and sends them over the
CSI-2 RX interface. Each CSI2RX instance therefore indirectly receives
input from multiple sensors.
The remaining patches add overlays for various deserializer boards,
and for the UB953 serializer with the IMX219 sensor. Also enabling
DS90UB960 deserializer and DS90UB953 serializer drivers in the
arm64 defconfig.
Changelog:
Changes in v2:
- Add missing bus-type property in csi2_phy endpoints in overlays (sashiko)
- Add missing build targets in Makefile for some overlays (sashiko)
- Fix minor DTS styling and whitespace inconsistencies in port definitions in overlays (sashiko)
- Remove unused gpio.h header in overlays (sashiko)
- Don't replacing generic V3Link fusion board DTB targets instead append new build
targets for v3link + IMX219 (sashiko) (Patch 17)
- Add status = "okay" property in port 0 of deserializer ports (sashiko) (patch 17)
- Add port-specific suffixes to avoid naming collisions (sashiko) (patch 17)
- Add reason in the commit message on why we want the DS90UB960 deserializer and DS90UB953
serializer drivers to be enabled in defconfig (Krzysztof) (Patch 18)
- Rebase on top of linux-next (20260709)
Link to v1: https://lore.kernel.org/all/20260702093123.1048575-1-y-abhilashchandra@ti.com/
Testlogs:
J721E + Fusion application daughter board: https://gist.github.com/Yemike-Abhilash-Chandra/18b5b81157fa67ab71f711f5b2cdc0a5
J721S2 + Fusion application daughter board: https://gist.github.com/Yemike-Abhilash-Chandra/0b8f3617ce7620961d533edfd7c51be0
J784S4 + Fusion application daughter board: https://gist.github.com/Yemike-Abhilash-Chandra/7791f3b224f6df34824ae418b9bd9963
AM68 + Fusion application daughter board: https://gist.github.com/Yemike-Abhilash-Chandra/29c1c9793939633926b1db3fe058a629
J721E + DS90UB954-Q1EVM: http://gist.github.com/Yemike-Abhilash-Chandra/6d2e1f3f0cafd0eec7eb65061ebe221a
J721S2 + DS90UB954-Q1EVM: https://gist.github.com/Yemike-Abhilash-Chandra/a145ae81e7946cdc1c600cb377d3ad44
J784S4 + J7EXPA01EVM Fusion2: https://gist.github.com/Yemike-Abhilash-Chandra/8d7f06881d5435bfa5d9bdbfb209bc38
AM68 + Arducam V3link: https://gist.github.com/Yemike-Abhilash-Chandra/2c607145ba80e3554320042b29af9985
J722S + Arducam V3link: https://gist.github.com/Yemike-Abhilash-Chandra/b1fc2e2e8f15372f1379afe5c23668f5
(grep for "ds90ub960" for the deserializer logs and "ds90ub953" for the serializer.
grep for "running tests" to see the actual test pattern genertaion capture logs from
the sensor over the SERDES)
dtbs_check: make CONFIG_OF_ALL_DTBS=y dtstree=arch/arm64/boot/dts/ti dtbs_check gives no errors
Branch: https://github.com/Yemike-Abhilash-Chandra/linux/tree/CSI_MT_DT_V4
[0]: https://lore.kernel.org/all/20260520120022.539913-1-r-donadkar@ti.com/
Jianzhong Xu (1):
arm64: dts: ti: k3-v3link: Add overlay for IMX219+UB953 serializer
Vaishnav Achath (13):
arm64: dts: ti: k3-{j721e/j721s2}-main: Fix indentation in CSI2RX node
arm64: dts: ti: k3-j721e-main: Add multiple channels for CSI2RX DMA
arm64: dts: ti: k3-j721s2-main: Add multiple channels for CSI2RX DMA
arm64: dts: ti: k3-j784s4-j742s2-main-common: Add multiple channels
for CSI2RX DMA
arm64: dts: ti: k3-am62p-j722s: Add multiple channels for CSI2RX DMA
arm64: dts: ti: k3-j722s-main: Add multiple channels for CSI2RX DMA
arm64: dts: ti: k3-j721e: Add overlay for fusion application daughter
board
arm64: dts: ti: k3-j721s2: Add overlay for fusion application daughter
board
arm64: dts: ti: k3-j721e-sk: Add overlay for fusion application
daughter board
arm64: dts: ti: k3-j722s-evm: Add overlay for fusion application
daughter board
arm64: dts: ti: k3-am68-sk: Add overlay for dual Arducam V3link fusion
arm64: dts: ti: k3-j722s-evm: Add overlay for dual Arducam V3link
fusion
arm64: dts: ti: k3-j784s4-evm: Add overlay for J7EXPA01EVM Fusion2
Yemike Abhilash Chandra (4):
arm64: dts: ti: k3-j722s-evm: Add overlay for J7EXPA01EVM Fusion2
arm64: dts: ti: k3-j721s2: Add overlay for DS90UB954-Q1EVM
arm64: dts: ti: k3-j721e: Add overlay for DS90UB954-Q1EVM
arm64: defconfig: Enable DS90UB960 deserializer and DS90UB953
serializer
arch/arm64/boot/dts/ti/Makefile | 83 +++++
.../dts/ti/k3-am62p-j722s-common-main.dtsi | 6 +-
.../boot/dts/ti/k3-am68-sk-v3link-fusion.dtso | 200 ++++++++++++
.../boot/dts/ti/k3-j721e-evm-fusion.dtso | 190 +++++++++++
.../arm64/boot/dts/ti/k3-j721e-evm-ub954.dtso | 92 ++++++
arch/arm64/boot/dts/ti/k3-j721e-main.dtsi | 24 +-
.../dts/ti/k3-j721e-sk-fpdlink-fusion.dtso | 190 +++++++++++
.../boot/dts/ti/k3-j721s2-evm-fusion.dtso | 190 +++++++++++
.../boot/dts/ti/k3-j721s2-evm-ub954.dtso | 92 ++++++
arch/arm64/boot/dts/ti/k3-j721s2-main.dtsi | 22 +-
.../dts/ti/k3-j722s-evm-fpdlink-fusion.dtso | 196 ++++++++++++
.../ti/k3-j722s-evm-fpdlink-iv-fusion.dtso | 299 ++++++++++++++++++
.../dts/ti/k3-j722s-evm-v3link-fusion.dtso | 213 +++++++++++++
arch/arm64/boot/dts/ti/k3-j722s-main.dtsi | 15 +-
.../ti/k3-j784s4-evm-fpdlink-iv-fusion.dtso | 282 +++++++++++++++++
.../dts/ti/k3-j784s4-j742s2-main-common.dtsi | 21 +-
.../boot/dts/ti/k3-v3link-imx219-0-0.dtso | 128 ++++++++
arch/arm64/configs/defconfig | 2 +
18 files changed, 2217 insertions(+), 28 deletions(-)
create mode 100644 arch/arm64/boot/dts/ti/k3-am68-sk-v3link-fusion.dtso
create mode 100644 arch/arm64/boot/dts/ti/k3-j721e-evm-fusion.dtso
create mode 100644 arch/arm64/boot/dts/ti/k3-j721e-evm-ub954.dtso
create mode 100644 arch/arm64/boot/dts/ti/k3-j721e-sk-fpdlink-fusion.dtso
create mode 100644 arch/arm64/boot/dts/ti/k3-j721s2-evm-fusion.dtso
create mode 100644 arch/arm64/boot/dts/ti/k3-j721s2-evm-ub954.dtso
create mode 100644 arch/arm64/boot/dts/ti/k3-j722s-evm-fpdlink-fusion.dtso
create mode 100644 arch/arm64/boot/dts/ti/k3-j722s-evm-fpdlink-iv-fusion.dtso
create mode 100644 arch/arm64/boot/dts/ti/k3-j722s-evm-v3link-fusion.dtso
create mode 100644 arch/arm64/boot/dts/ti/k3-j784s4-evm-fpdlink-iv-fusion.dtso
create mode 100644 arch/arm64/boot/dts/ti/k3-v3link-imx219-0-0.dtso
--
2.34.1