Skip to content

Commit 2d860ad

Browse files
authored
Fangzhu fg12-16ch support for JP5.0.2 + JP6.0 (#332)
Signed-off-by: ejgoldik <ehud.joseph.goldik@realsenseai.com>
1 parent 0bfa678 commit 2d860ad

19 files changed

Lines changed: 6363 additions & 47 deletions

README_JP5.md

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -95,6 +95,19 @@ The developers can set up the source code with NVIDIA's Jetson git repositories
9595
9696
./build_all.sh 5.1.2
9797
```
98+
For Fangzhu FG12-16CH support (Currently only supported on 5.0.2):
99+
```
100+
./setup_workspace.sh 5.0.2
101+
102+
- Single camera connected to cam0:
103+
./apply_patches.sh --fg12-16ch 5.0.2
104+
105+
- Dual camera connected to cam0 and cam4:
106+
./apply_patches.sh --fg12-16ch-dual 5.0.2
107+
108+
./build_all.sh 5.1.2
109+
```
110+
98111
Note: dev_dbg() log support will not be enabled by default. If needed, run the `./build_all.sh` script with `--dev-dbg` option like below.
99112
```
100113
./build_all.sh --dev-dbg 5.1.2
@@ -111,6 +124,7 @@ The necessary files are:
111124
- kernel image `images/5.1.2/arch/arm64/boot/Image`
112125
- dtb `images/5.1.2/arch/arm64/boot/dts/nvidia/tegra194-p2888-0001-p2822-0000.dtb`
113126
- D457 driver `images/5.1.2/drivers/media/i2c/d4xx.ko`
127+
- MAX96712 driver `images/5.1.2/drivers/media/i2c/max96712.ko`
114128
- UVC Video driver `images/5.1.2/drivers/media/usb/uvc/uvcvideo.ko`
115129
- V4L2 Core Video driver `images/5.1.2/drivers/media/v4l2-core/videobuf-core.ko`
116130
- V4L2 VMalloc Video driver `images/5.1.2/drivers/media/v4l2-core/videobuf-vmalloc.ko`
@@ -120,6 +134,7 @@ Copy build results from Host to Jetson target `10.0.0.116` user `nvidia`
120134
scp ./images/5.1.2/arch/arm64/boot/Image nvidia@10.0.0.116:~/
121135
scp ./images/5.1.2/arch/arm64/boot/dts/nvidia/tegra194-p2888-0001-p2822-0000.dtb nvidia@10.0.0.116:~/
122136
scp ./images/5.1.2/drivers/media/i2c/d4xx.ko nvidia@10.0.0.116:~/
137+
scp ./images/5.1.2/drivers/media/i2c/max96712.ko nvidia@10.0.0.116:~/
123138
scp ./images/5.1.2/drivers/media/usb/uvc/uvcvideo.ko nvidia@10.0.0.116:~/
124139
scp ./images/5.1.2/drivers/media/v4l2-core/videobuf-core.ko nvidia@10.0.0.116:~/
125140
scp ./images/5.1.2/drivers/media/v4l2-core/videobuf-vmalloc.ko nvidia@10.0.0.116:~/
@@ -132,6 +147,7 @@ sudo mkdir /lib/modules/$(uname -r)/updates
132147
sudo cp Image /boot/d457/
133148
sudo cp tegra194-p2888-0001-p2822-0000.dtb /boot/d457/
134149
sudo cp d4xx.ko /lib/modules/$(uname -r)/updates/
150+
sudo cp max96712.ko /lib/modules/$(uname -r)/updates/
135151
sudo cp uvcvideo.ko /lib/modules/$(uname -r)/updates/
136152
sudo cp videobuf-core.ko /lib/modules/$(uname -r)/updates/
137153
sudo cp videobuf-vmalloc.ko /lib/modules/$(uname -r)/updates/

README_JP6.2.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -104,6 +104,8 @@ Assuming 6.2 (or 6.1) build the kernel version is 5.15.148-tegra. For 6.0 the ke
104104
- dtb: `images/6.2/rootfs/boot/dtb/tegra234-p3737-0000+p3701-0000-nv.dtb`
105105
- dtb overlay: `images/6.2/rootfs/boot/tegra234-camera-d4xx-overlay.dtbo`
106106
- dtb dual camera overlay: `images/6.2/rootfs/boot/tegra234-camera-d4xx-overlay-dual.dtbo`
107+
- dtb fg12-16ch camera overlay: `images/6.0/rootfs/boot/tegra234-camera-d4xx-overlay-fg12-16ch.dtbo`
108+
- dtb fg12-16ch dual camera overlay: `images/6.0/rootfs/boot/tegra234-camera-d4xx-overlay-fg12-16ch-dual.dtbo`
107109
- kernel modules: `images/6.2/rootfs/lib/modules/5.15.148-tegra`
108110

109111
## Backup JetPack 6.2 boot configuration and drivers (optional)
@@ -176,6 +178,9 @@ LABEL dev
176178
```
177179
sudo reboot
178180
```
181+
182+
For fg12-16ch/dual/quad, use `tegra234-camera-d4xx-overlay-fg12-16ch</dual/quad>.dtbo`
183+
179184
On Jetson target (user home folder) assuming backup step was followed:
180185

181186
### Verify driver loaded - on Jetson:

apply_patches.sh

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,15 @@ if [[ "$1" == "--one-cam" ]]; then
1818
elif [[ "$1" == "--dual-cam" ]]; then
1919
JP5_D4XX_DTSI="tegra194-camera-d4xx-dual.dtsi"
2020
shift
21+
elif [[ "$1" == "--max96712-EVB" ]]; then
22+
JP5_D4XX_DTSI="tegra194-camera-d4xx-max96712-EVB.dtsi"
23+
shift
24+
elif [[ "$1" == "--fg12-16ch" ]]; then
25+
JP5_D4XX_DTSI="tegra194-camera-d4xx-fg12-16ch.dtsi"
26+
shift
27+
elif [[ "$1" == "--fg12-16ch-dual" ]]; then
28+
JP5_D4XX_DTSI="tegra194-camera-d4xx-fg12-16ch-dual.dtsi"
29+
shift
2130
fi
2231

2332
. scripts/setup-common "$1"
@@ -109,8 +118,13 @@ if [[ "$ACTION" = "apply" ]]; then
109118
if [[ "$JETPACK_VERSION" == "6.x" ]]; then
110119
# jp6 overlay
111120
cp hardware/realsense/tegra234-camera-d4xx-overlay*.dts "sources_$SOURCES_VERSION/hardware/nvidia/t23x/nv-public/overlay/"
121+
# max96712 header
122+
cp nvidia-oot/max96712.h "sources_$SOURCES_VERSION/nvidia-oot/include/media/"
112123
else
124+
# device tree
113125
cp "hardware/realsense/${JP5_D4XX_DTSI}" "sources_$SOURCES_VERSION/hardware/nvidia/platform/t19x/galen/kernel-dts/common/tegra194-camera-d4xx.dtsi"
126+
# max96712 header
127+
cp kernel/nvidia/max96712.h "sources_$SOURCES_VERSION/kernel/nvidia/include/media/"
114128
fi
115129

116130
# Stage all modified files after patching
Lines changed: 14 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,26 +1,31 @@
1-
From 00f96bc253e0e35235b221af28bddf25d185d84d Mon Sep 17 00:00:00 2001
2-
From: Dmitry Perchanov <dmitry.perchanov@intel.com>
3-
Date: Mon, 20 May 2024 18:16:07 +0300
1+
From d28ebc27d32166b754b7483f76252f8ca14b2fb0 Mon Sep 17 00:00:00 2001
2+
From: ejgoldik <ehud.joseph.goldik@realsenseai.com>
3+
Date: Wed, 21 Jan 2026 15:55:54 +0200
44
Subject: [PATCH] overlay: enable d4xx camera for Orin jp6
55

6-
Signed-off-by: Dmitry Perchanov <dmitry.perchanov@intel.com>
6+
Signed-off-by: ejgoldik <ehud.joseph.goldik@realsenseai.com>
77
---
8-
overlay/Makefile | 2 ++
9-
1 file changed, 2 insertion(+)
8+
overlay/Makefile | 7 +++++++
9+
1 file changed, 7 insertions(+)
1010

1111
diff --git a/overlay/Makefile b/overlay/Makefile
12-
index c88bbe2..3f6354e 100644
12+
index c88bbe2..28e505a 100644
1313
--- a/overlay/Makefile
1414
+++ b/overlay/Makefile
15-
@@ -60,6 +60,8 @@ dtbo-y += tegra234-p3767-camera-p3768-imx219-A.dtbo
15+
@@ -60,6 +60,13 @@ dtbo-y += tegra234-p3767-camera-p3768-imx219-A.dtbo
1616
dtbo-y += tegra234-p3767-camera-p3768-imx219-imx477.dtbo
1717
dtbo-y += tegra234-p3767-camera-p3768-imx477-C.dtbo
1818
dtbo-y += tegra234-p3767-camera-p3768-imx477-A.dtbo
1919
+dtbo-y += tegra234-camera-d4xx-overlay.dtbo
2020
+dtbo-y += tegra234-camera-d4xx-overlay-dual.dtbo
21+
+dtbo-y += tegra234-camera-d4xx-overlay-max96712-EVB.dtbo
22+
+dtbo-y += tegra234-camera-d4xx-overlay-fg12-16ch.dtbo
23+
+dtbo-y += tegra234-camera-d4xx-overlay-fg12-16ch-dual.dtbo
24+
+dtbo-y += tegra234-camera-d4xx-overlay-fg12-16ch-quad.dtbo
25+
+
2126

2227
ifneq ($(dtb-y),)
2328
dtb-y := $(addprefix $(makefile-path)/,$(dtb-y))
2429
--
25-
2.34.1
30+
2.43.0
2631

0 commit comments

Comments
 (0)