Hi Jerry,
I use demsg
to get some log…
I’m not sure this log is what you want…?
dmesg.txt (82.5 KB)
hello syan,
[ 7.598816] tegra194-vi5 13e40000.host1x:vi0@15c00000: initialized
[ 7.599582] (NULL device *): fops function table already registered
it looks NULL devices.
may I know what’s the camera board you’re using, could you please take a snapshot and share the camera board naming.
hello syan,
yes, it’s the ov5693 sensor module, but this is the camera board named e3326. this is not supported currently.
Hi Jerry,
I have checked the different of e3326 on Xavier and e3333 on Orin.
And I found e3326 just have 1 node and e3333 have 6 node.
i2c@0{
.....
};
i2c@1{
.....
};
....
If I delete other 5 node, does e3326 can work?
Because I just have e3326 this camera board…
Or you have the other way let orin support it?
hello syan,
they’re different, there’s i2cmux with e3333 to expand the i2c-bus for six camera nodes; but e3326 don’t.
we don’t enable e3326 since it cannot connect to Orin platform directly, however, you’ve a flex cable to extend the camera connection.
Hi Jerry,
So In Orin e3326 is defual disable.
But we still can modfy some files in manually to enable it?
if yes, how should we do next?
hello syan,
there also some issues for enabling e3333 on Orin series with JP-5.0 DP.
I’ll suggest you waits for next JetPack public release, (which should release around Q3/2022), this release will include the fixes to enable ov5693.
after that, you may try revise the device tree and bringup e3326 camera board.
Hi Jerry,
I want to double check my flow is correct to change orin’s default camera(imx274 daul → ov5693 e3333)
As Orin can not access /dev/video0 - #12 by syan I said.
1.) Does it succesiful change, or I miss some step you can point that.
2.) If orin changed , how we can validated it?
3.) If I change my camera to imx185 does orin can support it or it still has camera borad limit?
hello syan,
note, this JetPack 5.0.1 is a development preview release.
your previous comment looks correct steps, please have a try to see-also Release Notes (r34.1) for session [4.1.5 Important Note] to enable IMX185.
thanks
Hi Jerry,
Ok. We’re looking forward to next JetPack version!!
And I trying to change default camera to imx185 which according to session 4.1.5
Then I reference this post Xavier - using raw CSI without i2c to remove i2c .
It should generate/dev/video0
automatically, does it?
Here’s my dmesg log.
dmesg.txt (82.5 KB)
hello syan,
I doubt the device tree did not update correctly, according to the logs, it’s still using the native Orin AGX dtb file.
[ 0.003020] DTS File Name: /dvs/git/dirty/git-master_linux/kernel/kernel-5.10/arch/arm64/boot/dts/../../../../../../hardware/nvidia/platform/t23x/concord/kernel-dts/tegra234-p3701-0000-p3737-0000.dts
[ 0.003027] DTB Build time: May 16 2022 21:09:35
may I know what’s your steps to update device tree?
please also check /boot/extlinux/extlinux.conf
, if there’s FDT
entry, it’ll prior to load device tree via file system.
thanks
Hi Jerry,
My steps as below,
hardware/nvidia/platform/t23x/concord-dts/ tegra234-p3701-0000-p3737-0000.dts
Add 1 row
#include "cvb/tegra234-p3737-0000-camera-imx185-a00.dtsi"
move to Linux_for_Tegra/source/public/kernel/kernel-5.10/
to compile kernel
Change dtb folder and Image after compile finish
flash Orin at Linux_for_Tegra
sudo ./flash.sh -k A_kernel-dtb jetson-agx-orin-devkit mmcblk0p1
Above all are step before removing i2c…
And When step.4 , I can’t run sudo ./flash.sh -r -k A_kernel-dtb jetson-agx-orin-devkit mmcblk0p1
.
It will shows file does not exist.
Then check dmesg
on Orin,
It also shows
[ 0.003020] DTS File Name: /dvs/git/dirty/git-master_linux/kernel/kernel-5.10/arch/arm64/boot/dts/../../../../../../hardware/nvidia/platform/t23x/concord/kernel-dts/tegra234-p3701-0000-p3737-0000.dts
[ 0.003027] DTB Build time: May 16 2022 21:09:35
It seem can not flash successfully…
Also, I check /boot/extlinux/extlinux.conf
, there’s FDT
entry.
hello syan,
since there’s FDT
entry, it’ll prior to load device tree via file system.
why don’t you scp
the compiled device tree, tegra234-p3701-0000-p3737-0000.dtb
to the target, and revise the extlinux.conf
file to point FDT
as your new dtb file.
Hi Jerry,
Yes. I copy my compiled device tree to FDT
read path.
It can read my compiled kernel file, but it seen nothing changed?
imx185-dmesg.txt (78.6 KB)
hello syan,
could you please also modify the device tree file, for example, /kernel-dts/cvb/tegra234-p3737-camera-modules.dtsi
please exclude all other include files and leave only imx185 enabled for confirmation, thanks
Hi Jerry,
I had changed /kernel-dts/cvb/tegra234-p3737-camera-modules.dtsi
Also I let imx185_a@1a
status is okay
imx185_cam0: imx185_a@1a { status = "okay"; };
Attachments are my modified files.
BTW, I wanna know that which camera Orin can succeessfully support on JetPack 5.0.1?
tegra234-p3737-camera-modules.dtsi (7.8 KB)
tegra234-p3701-0000-p3737-0000.dts (4.0 KB)
dmesg_0727_01.txt (81.2 KB)
hello syan,
this should be the failure, it’s i2c mux probing failed.
[ 6.411705] pca954x 2-0070: device detect skipped.
[ 6.416696] pca954x 2-0070: probe failed
[ 6.420377] pca954x: probe of 2-0070 failed with error -121
it’s IMX274.
Hi Jerry,
I had tried remove i2c, modify 2 files.
1.tegra234-p3737-0000-camera-imx185-a00.dtsi
let i2c status set “okay”
/usr/src/kernel/nvidia/drivers/media/i2c/nv_imx185_v1.c
comment read_reg
function and write_reg
write_table
two function are return 0
Both of all are reference this post [Xavier - using raw CSI without i2c]
Attachment are my modify file, when I run dmesg
.
it still shows
[ 6.411705] pca954x 2-0070: device detect skipped.
[ 6.416696] pca954x 2-0070: probe failed
[ 6.420377] pca954x: probe of 2-0070 failed with error -121
It seems remove i2c fail, Do I have something wrong on above step or I modify wrong file?
tegra234-p3737-0000-camera-imx185-a00.dtsi (2.0 KB)
nv_imx185_v1.c (29.1 KB)
dmesg_0727_RMi2c.txt (78.6 KB)
Hi @JerryChang ,
My target is let Orin generate /dev/video0
through remove i2c
Updated my status:
I’m back to use e3333
(I’m unfamiler to use imx185
) and modify some files which followed as Xavier’s:
a.) tegra234-p3701-0000-p3737-0000.dts
Add 1 line #include "cvb/tegra234-p3737-0000-camera-e3333-a00.dtsi"
b.) tegra234-p3737-camera-modules.dtsi
Only included e3333
.
And only one camera which same as e3326
set status is okay
i2c@3180000 {
e3326_cam0: ov5693_c@36 {
status = "disabled";
};
...
tca9548@77 {
status = "disabled";
i2c@0 {
e3333_cam0: ov5693_a@36 {
status = "disabled";
};
};
i2c@1 {
e3333_cam1: ov5693_b@36 {
status = "disabled";
};
};
i2c@2 {
e3333_cam2: ov5693_c@36 {
status = "okay";
};
};
c.)tegra234-p3737-0000-camera-e3333-a00.dtsi
tca9548_77: tca9548@77 {
...
skip_mux_detect = "yes";
...
i2c@2 {
reg = <2>;
i2c-mux,deselect-on-exit;
#address-cells = <1>;
#size-cells = <0>;
ov5693_c@36 {
...
vana-supply = <&p3737_avdd_cam_2v8>;
vif-supply = <&p3737_vdd_1v8_sys>;
status = "okay";
modify nv_ov5693.c
a.) remove read_reg
b.) write_red
and write_table
let it return 0
And now, Orin can not generate /dev/video0
, dmesg
still shows
(NULL device).....
I wanna know that:
Do you suggest me use e3333
to continue removing i2c
?
If so, which step I got wrong?
If not, which file you suggest to?
dmesg_0729_01.txt (78.6 KB)