Skip to content

max96712 dual_camera per deserializer support for JP6.x - #399

Merged
ejgoldik merged 3 commits into
devfrom
max96712_dual_camera
Mar 19, 2026
Merged

max96712 dual_camera per deserializer support for JP6.x#399
ejgoldik merged 3 commits into
devfrom
max96712_dual_camera

Conversation

@ejgoldik

Copy link
Copy Markdown
Contributor

Added dual camera per dserializer support
changed multi camera device tree naming convention to "cams__..."

@ejgoldik ejgoldik changed the title max96712 dual_camera per deserializer support max96712 dual_camera per deserializer support for JP6.x Mar 19, 2026
Signed-off-by: ejgoldik <ehud.joseph.goldik@realsenseai.com>

@sareluzi sareluzi left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Review: max96712 dual-camera per-deserializer support

Overall the approach looks sound — extending MAX96712 to 8 pipes with extended VC mapping, adding two new dual-camera DT overlays, and the corresponding max9295 address-reassignment patch. Several issues to address below, ranging from bugs to DT consistency and missing JetPack 6.2.1 coverage.

Comment thread nvidia-oot/6.0/0005-Adding-max96712-support-for-D4xx.patch
Comment thread nvidia-oot/6.0/0005-Adding-max96712-support-for-D4xx.patch
Comment thread nvidia-oot/6.0/0005-Adding-max96712-support-for-D4xx.patch
Comment thread nvidia-oot/6.0/0005-Adding-max96712-support-for-D4xx.patch Outdated
Comment thread nvidia-oot/6.0/0005-Adding-max96712-support-for-D4xx.patch Outdated
Comment thread hardware/realsense/tegra234-camera-d4xx-overlay-max96712-EVB-cams-0-1.dts Outdated
Comment thread hardware/realsense/tegra234-camera-d4xx-overlay-max96712-EVB-cams-0-1.dts Outdated
Comment thread kernel/realsense/d4xx.c Outdated
@sareluzi

Copy link
Copy Markdown
Collaborator

Missing
vidia-oot/6.2.1/ updates.
The PR renames 00040005 and adds a new 0006-Allow-external-address-assignment-on-max9295.patch in 6.0/, 6.1/, and 6.2/, but not in 6.2.1/. The 6.2.1/ directory still has the old 0005-Adding-max96712-support-for-D4xx.patch (which appears to be a standalone copy, not a symlink to 6.0/). JetPack 6.2.1 builds will get the old max96712 code without dual-camera support and will be missing the max9295 address reassignment patch.

@ejgoldik
ejgoldik force-pushed the max96712_dual_camera branch from 924b7cc to 5f3e806 Compare March 19, 2026 12:06
Signed-off-by: ejgoldik <ehud.joseph.goldik@realsenseai.com>
Signed-off-by: ejgoldik <ehud.joseph.goldik@realsenseai.com>
@ejgoldik

Copy link
Copy Markdown
Contributor Author

Missing vidia-oot/6.2.1/ updates. The PR renames 00040005 and adds a new 0006-Allow-external-address-assignment-on-max9295.patch in 6.0/, 6.1/, and 6.2/, but not in 6.2.1/. The 6.2.1/ directory still has the old 0005-Adding-max96712-support-for-D4xx.patch (which appears to be a standalone copy, not a symlink to 6.0/). JetPack 6.2.1 builds will get the old max96712 code without dual-camera support and will be missing the max9295 address reassignment patch.

Added link for 0006-Allow-external-address-assignment-on-max9295.patch, but 0005-Adding-max96712-support-for-D4xx.patch looks ok

@sareluzi

Copy link
Copy Markdown
Collaborator

All inline review comments have been verified and resolved. One issue remains:

Still missing: nvidia-oot/6.2.1/0006-Allow-external-address-assignment-on-max9295.patch

The new 0006 patch (max9295 address reassignment) has symlinks in 6.1/ and 6.2/ but not 6.2.1/. Since 6.2.1/0005 is already a symlink to 6.0/0005, the updated max96712 patch will be picked up correctly. But without a 6.2.1/0006 symlink, JetPack 6.2.1 builds will be missing the max9295 external address assignment patch, which is needed for the dual-camera setup.

@sareluzi

Copy link
Copy Markdown
Collaborator

6.2.1 symlink added — all review items are now resolved. LGTM.

@ejgoldik
ejgoldik merged commit 97b6e7e into dev Mar 19, 2026
8 of 10 checks passed
@ejgoldik
ejgoldik deleted the max96712_dual_camera branch March 25, 2026 06:36
EmanueleGiacomini added a commit to EmanueleGiacomini/realsense_mipi_platform_driver that referenced this pull request Apr 28, 2026
…uild helper

Tested 2026-04-28 with the post-realsenseai#11 driver: setting force_clk0; on
the dser node makes 0x08A0 = 0x24 (FORCE_CLK0_HS bit 5 set) which
wedges MAX96712 forward I2C the moment v4l2-ctl --stream-mmap fires;
the chip becomes unreachable on its primary I2C bus until a DC power
cycle. Same failure class as the previously documented "FORCE_CLK
0x81 harmful" finding from the pre-PR#404 era; the offending bit is
5 (FORCE_CLK0_HS), not just specific full-byte values.

Replace the experimental force_clk0; line with a multi-line comment
that warns future readers off the property. The avermedia overlay in
this tree sets force_clk0; — that pattern does NOT carry over to
LI-JAG-ADP-GMSL2-8CH.

Also adds scripts/lijag_rebuild_dtbo.sh so iterating on this DT
overlay no longer requires running build_stage1_oot.sh (which
rebuilds max9296.ko it doesn't need): preprocess + dtc + cp into
/boot/, then reboot.

A research pass on realsenseai PRs (realsenseai#356, realsenseai#399, realsenseai#404, realsenseai#405, realsenseai#426)
confirmed our 6.2 patch series already incorporates all upstream
MAX96712-touching fixes. The "NVCSI sees zero frames" symptom we
still have is therefore not addressed by any merged upstream PR.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants