How to enable tc358743 on 36.3?

I see the UEFI FDT error when I try to flash from the command line (command and console output posted above) - but right now I want to focus on why SDKM isn’t able to flash the Orin.

Here are the logs from an attempt to flash from SDKM with no changes or extra configuration -
SDKM_logs_2024-07-16_23-26-42.zip (132.8 KB)

and I see :

23:27:25.860 - info: Event: NV_L4T_FLASH_JETSON_LINUX_COMP@JETSON_ORIN_NANO_TARGETS - error is: [   0.4762 ] ERROR: might 
23:27:25.861 - info: NV_L4T_FLASH_JETSON_LINUX_COMP@JETSON_ORIN_NANO_TARGETS: be timeout in USB write.

Why isn’t USB on the Orin available? Why isn’t it starting up in the time the flash script is attempting to write to the USB drive? This set up has worked in the past.

Thank you.

I have told you here…
It about the flashing cable being powered off due to USB auto suspend, and it has nothing to do with the USB disk on your Jetson device.

Thank you @DaveYYY - that got things closer.

Orin powered off.
Force Recovery Mode pins connected
Power on Orin
Launch SDKManager - it does not find a device.
Plug USB-C to USB adapter in to Orin, connect USB->USB hub on host running SDKManager
SDKManager discovers correct Orin hardware.
Click ‘Ok’ to flash -takes a while, but it finished successfully. The orin boots up and I can ssh in to it.

The takeaway being that launching SDKManager while the USB cable from host to Orin (aka ‘flashing cable’) is already plugged in will probably fail.

My next step will be to attempt to flash the Orin from the command line, using my modified tegra234-p3768-0000+p3767-0000-dynamic.dts which should allow me to apply my tc358743.dtbo b/c the imx219 won’t already be loaded.

Getting closer to enabling the tc358743 on 36.3!

Reverted that to the imx219 line instead of mine. Attempted to re-flash from the command line and failed in the same was posted above, however - there is a little more information at the end :

PrintBootOrder: Current BootOrder:
PrintBootOrder: BootOrder[0] = 0x0006 = UEFI NVIDIA Rcm Kernel Boot
PrintBootOrder: BootOrder[1] = 0x0004 = UEFI HTTPv4 (MAC:48B02DEBC247)
PrintBootOrder: BootOrder[2] = 0x0003 = UEFI PXEv6 (MAC:48B02DEBC247)
PrintBootOrder: BootOrder[3] = 0x0002 = UEFI PXEv4 (MAC:48B02DEBC247)
PrintBootOrder: BootOrder[4] = 0x0001 = UEFI USB Device
PrintBootOrder: BootOrder[5] = 0x0000 = Enter Setup
PrintBootOrder: BootOrder[6] = 0x0005 = UEFI HTTPv6 (MAC:48B02DEBC247)
PrintBootOrder: BootOrder[7] = 0x0007 = BootManagerMenuApp
PrintBootOrder: BootOrder[8] = 0x0008 = UEFI Shell
Jetson System firmware version 202406.0-a9a61c80 date 2024-07-13T20:15:22+00:00
ESC   to enter Setup.
F11   to enter Boot Manager Menu.
Enter to continue boot.
Failed to find memory test protocol
......!!! enter DisableFRB2Handler()!!!
DetectSmbiosChange: Failed to get UEFI Variable SmbiosHash Not Found
UpdatePcieControllersWithGpuDevice: failed to enumerate GPU device handles: Not Found
EsrtFmpDxe: Can't install ESRT table because it is NULL.
[Bds]Booting UEFI NVIDIA Rcm Kernel Boot
Loading driver at 0x00229B50000 EntryPoint=0x0022B83B1B4
Loading driver at 0x00229B50000 EntryPoint=0x0022B83B1B4
EFI stub: Booting Linux Kernel...
EFI stub: Using DTB from configuration table
EFI stub: Loaded initrd from LINUX_EFI_INITRD_MEDIA_GUID device path
EFI stub: Exiting boot services...
Link didn't transition to L2 state
Link didn't go to detect state as well
PROGRESS CODE: V03101019 I0 D6A2CB7F-6A18-4E2F-B43B-9920A733700A
��ERROR:   **************************************
ERROR:   RAS Uncorrectable Error in CCPMU, base=0xe001000:
ERROR:          Status = 0xe4000504
ERROR:   SERR = Assertion failure: 0x4
ERROR:          IERR = uCode Error: 0x5
ERROR:          MISC0 = 0x0
ERROR:          MISC1 = 0x0
ERROR:          MISC2 = 0x0
ERROR:          MISC3 = 0x0
ERROR:          ADDR = 0x60a5a5a5a5a5a5a5
ERROR:   **************************************
ERROR:   sdei_dispatch_event returned -1
ERROR:   Powering off core
ERROR:   ARI request timed out: req 34
ASSERT: plat/nvidia/tegra/soc/t234/drivers/mce/ari.c:154

Does that help point to the issue as to why it can not be flashed from the command line ?

Thank you.

So now it does not work even with the default BSP?
What branch do you use for compiling the UEFI binary? Does using the default one shipped within the BSP make any change?

It wasn’t but I think it is back to a ‘good’ state.

I had removed 6.0DP and installed 6.0 around a month ago(?) in to nvidia_sdk/
That’s where all my code was being written and compiled against, until I couldn’t flash from the command line.
I downloaded the most recent SDKManager into nividia_sdk2/ and was able to re-flash the Orin.
What I posted above was going back to the original nvidia_sdk/ directory and trying to flash all my changes and it failed.
I have now moved to the most recent code (in nvidia_sdk2/) and went through my build steps (posted earlier in this thread) and was able to flash and later log on to the Orin.

I am now in the process of compiling my dts files and generating a dtbo to copy over to /boot on the Orin.

1 Like

Accidentally hit the ‘solution’ button - we are not quite there yet. Can that be ‘undone’ ?

Hi Anomad

I am about to hit the same wall :), Got a new project with Orin NX and a new board coming with plans to use JP6.0 Can you share the dsti you created for the TC358743?

Quick side issue w/this forum - is there a way to force the quotes in forum posts to be Vertical quotes instead of Curly? I barely notice the difference on my terminal app and wasted another hour figuring out why that command wasn’t working. I think I brought this up in another thread as well. Minor nit-pick.

You should do

""

instead of

“”

Correct. I was asking if this forum could do " instead of the curly quotes. It would make cut/paste a lot easier.

Overlay created and ran config-by-hardware.py :

root@sthd-7:~# /opt/nvidia/jetson-io/config-by-hardware.py -n 2="ET tc358743 Dual"
Modified /boot/extlinux/extlinux.conf to add following DTBO entries:
/boot/tegra234-p3767-camera-p3768-tc358743.dtbo
Reboot system to reconfigure.

Rebooted the system and it failed w/a kernel panic. Last line was [ 10.030577] sysfs: cannot create duplicate filename '/class/misc/tegra_camera_ctrl'

So I rebooted to the L4T boot option that did not use the overlay. I saw somewhere else they had issues w/the default .dtb that gets put in /boot/dtb/kernel_tegra234-p3768-0000+p3767-0005-nv.dtb so I grabbed the currently running dtb :
dtc -I fs -O dtb /sys/firmware/devicetree/base > clean_devicetree.dtb and then removed the tegra-camera-platform, cam_i2cmux, and all imx219 entries so their wouldn’t be an overlap w/my .dtbo then updated the extlinux.conf line w/my new .dtb :
FDT /boot/dtb/clean_devicetree.dtb

Rebooted and it didn’t kernel panic and I now see this in the console :

[   12.756373] tc358743: module verification failed: signature and/or required key missing - tainting kernel
[   12.771052] tc358743 9-000f: failed to get refclk: -2
[   12.771066] tc358743: probe of 9-000f failed with error -2
[   12.771097] tc358743 10-000f: failed to get refclk: -2
[   12.771100] tc358743: probe of 10-000f failed with error -2

Q1 - does the module need to be signed?

I previously resolved the refclk issue by making some edits to csi5_fops.c however, it does not appear that JetPack 6.0 uses that file any more. I replaced the only csi5_fops.c file I found under source/ with my updated version (worked in JP 5.1.2) and I do not believe it was recompiled or referenced when I remade kernel (to get a new Image file). I then added an error to the csi5_fops.c file and it was not flagged anywhere.

Q2 - what replaced csi5_fops.c for JP 6.0? Is there a link somewhere that discusses this change ?

Thank you.

I did some more digging and found this (and the other out of tree) programs were compiled when running make modules ( I could have sworn that in JP 5.1.2 these were compiled make Image - but I may be wrong )

So I merged my updates into the provided csi5_fops.c file and successfully recompiled everything and will copy over tegra-camera.ko to test my changes.

Thank you.

Solution didn’t work for me, not sure why someone tagged it as the solution.

In the provided tc358743.c file, this:

  /* i2c access */
if ((i2c_rd16(sd, CHIPID) & MASK_CHIPID) != 0) {
  v4l2_info(sd, "not a TC358743 on address 0x%x\n",

is incorrect because it can also return 99 as not found. Should use

u16 chip_id_val = i2c_rd16(sd, CHIPID);
if ((chip_id_val & MASK_CHIPID) != 0 || chip_id_val == 99) {

Has anyone at nVidia actually tried using a tc358743 interface with JetPack 6.0? The above code made it seem like there were two tc35’s hooked up instead of just one.

I almost back to the point where I was with JetPack 5.1.2 and was told to switch to JetPack 6.0

Thank you.

Hello,

When I try and capture a frame of video, I get the following error:

# v4l2-ctl -d /dev/video0 --stream-count=1 --stream-mmap --stream-to=frame-1080p60.raw --verbose --set-fmt-video=width=1920,height=1080,pixelformat=1
VIDIOC_QUERYCAP: ok
VIDIOC_G_FMT: ok
VIDIOC_S_FMT: ok
Format Video Capture:
	Width/Height      : 1920/1080
	Pixel Format      : 'UYVY' (UYVY 4:2:2)
	Field             : None
	Bytes per Line    : 3840
	Size Image        : 4147200
	Colorspace        : SMPTE 170M
	Transfer Function : Default (maps to Rec. 709)
	YCbCr/HSV Encoding: Default (maps to ITU-R 601)
	Quantization      : Default (maps to Limited Range)
	Flags             :
New timings found
		VIDIOC_REQBUFS returned 0 (Success)
		VIDIOC_QUERYBUF returned 0 (Success)
		VIDIOC_QUERYBUF returned 0 (Success)
		VIDIOC_QUERYBUF returned 0 (Success)
		VIDIOC_QUERYBUF returned 0 (Success)
		VIDIOC_QBUF returned 0 (Success)
		VIDIOC_QBUF returned 0 (Success)
		VIDIOC_QBUF returned 0 (Success)
		VIDIOC_QBUF returned 0 (Success)
		VIDIOC_STREAMON returned 0 (Success)
cap dqbuf: 0 seq:      0 bytesused: 4147200 ts: 0.000000 (error, ts-monotonic, ts-src-eof)
cap dqbuf: 0 seq:      0 bytesused: 4147200 ts: 0.000000 (error, ts-monotonic, ts-src-eof)
cap dqbuf: 1 seq:      1 bytesused: 4147200 ts: 0.000000 (error, ts-monotonic, ts-src-eof)
cap dqbuf: 2 seq:      2 bytesused: 4147200 ts: 0.000000 (error, ts-monotonic, ts-src-eof)
cap dqbuf: 3 seq:      3 bytesused: 4147200 ts: 0.000000 (error, ts-monotonic, ts-src-eof)
cap dqbuf: 0 seq:      0 bytesused: 4147200 ts: 0.000000 (error, ts-monotonic, ts-src-eof)
cap dqbuf: 0 seq:      0 bytesused: 4147200 ts: 0.000000 (error, ts-monotonic, ts-src-eof)
cap dqbuf: 1 seq:      1 bytesused: 4147200 ts: 0.000000 (error, ts-monotonic, ts-src-eof)
cap dqbuf: 2 seq:      2 bytesused: 4147200 ts: 0.000000 (error, ts-monotonic, ts-src-eof)
cap dqbuf: 3 seq:      3 bytesused: 4147200 ts: 0.000000 (error, ts-monotonic, ts-src-eof)
^C

From my previous notes, I try and boost the clocks and enable debugging :

echo 1 > /sys/kernel/debug/bpmp/debug/clk/vi/mrq_rate_locked
echo 1 > /sys/kernel/debug/bpmp/debug/clk/isp/mrq_rate_locked
echo 1 > /sys/kernel/debug/bpmp/debug/clk/nvcsi/mrq_rate_locked
echo 1 > /sys/kernel/debug/bpmp/debug/clk/emc/mrq_rate_locked
cat /sys/kernel/debug/bpmp/debug/clk/vi/max_rate |tee /sys/kernel/debug/bpmp/debug/clk/vi/rate
cat /sys/kernel/debug/bpmp/debug/clk/isp/max_rate | tee /sys/kernel/debug/bpmp/debug/clk/isp/rate
cat /sys/kernel/debug/bpmp/debug/clk/nvcsi/max_rate | tee /sys/kernel/debug/bpmp/debug/clk/nvcsi/rate
cat /sys/kernel/debug/bpmp/debug/clk/emc/max_rate | tee /sys/kernel/debug/bpmp/debug/clk/emc/rate

echo 1 > /sys/kernel/debug/tracing/tracing_on
echo 60720 > /sys/kernel/debug/tracing/buffer_size_kb
echo 1 > /sys/kernel/debug/tracing/events/tegra_rtcpu/enable
echo 1 > /sys/kernel/debug/tracing/events/freertos/enable
echo 2 > /sys/kernel/debug/camrtc/log-level
echo 1 > /sys/kernel/debug/tracing/events/camera_common/enable

The trace looks like this :

cat /sys/kernel/debug/tracing/trace
# tracer: nop
#
# entries-in-buffer/entries-written: 27/27   #P:6
#
#                                _-------=> irqs-off
#                               / _------=> need-resched
#                              | / _-----=> need-resched-lazy
#                              || / _----=> hardirq/softirq
#                              ||| / _---=> preempt-depth
#                              |||| / _--=> preempt-lazy-depth
#                              ||||| / _-=> migrate-disable
#                              |||||| /     delay
#           TASK-PID     CPU#  |||||||  TIMESTAMP  FUNCTION
#              | |         |   |||||||      |         |
        v4l2-ctl-4173    [000] .......  9786.562120: tegra_channel_open: vi-output, tc358743 10-000f
        v4l2-ctl-4173    [002] .......  9786.588696: tegra_channel_set_power: tc358743 10-000f : 0x1
        v4l2-ctl-4173    [002] .......  9786.588712: tegra_channel_set_power: 13e00000.host1x:nvcsi@15a00000- : 0x1
        v4l2-ctl-4173    [002] .......  9786.588716: csi_s_power: enable : 0x1
        v4l2-ctl-4173    [002] .......  9786.589277: tegra_channel_capture_setup: vnc_id 0 W 1920 H 1080 fmt 13
 vi-output, tc35-4174    [004] .......  9786.597481: vi_task_submit: class_id:48 ch:0 syncpt_id:25 syncpt_thresh:6 pid:4174 tid:4174
 vi-output, tc35-4174    [004] .......  9786.597490: vi_task_submit: class_id:48 ch:0 syncpt_id:25 syncpt_thresh:6 pid:4174 tid:4174
 vi-output, tc35-4174    [004] .......  9786.597492: vi_task_submit: class_id:48 ch:0 syncpt_id:25 syncpt_thresh:6 pid:4174 tid:4174
 vi-output, tc35-4174    [004] .......  9786.597493: vi_task_submit: class_id:48 ch:0 syncpt_id:25 syncpt_thresh:6 pid:4174 tid:4174
        v4l2-ctl-4173    [001] .......  9786.597501: tegra_channel_set_stream: enable : 0x1
        v4l2-ctl-4173    [001] .......  9786.598706: tegra_channel_set_stream: 13e00000.host1x:nvcsi@15a00000- : 0x1
        v4l2-ctl-4173    [001] .......  9786.598711: csi_s_stream: enable : 0x1
        v4l2-ctl-4173    [001] .......  9786.599166: tegra_channel_set_stream: tc358743 10-000f : 0x1
 vi-output, tc35-4175    [000] .......  9789.138299: tegra_channel_capture_setup: vnc_id 0 W 1920 H 1080 fmt 13
 vi-output, tc35-4174    [002] .......  9789.138918: vi_task_submit: class_id:48 ch:0 syncpt_id:25 syncpt_thresh:6 pid:4174 tid:4174
 vi-output, tc35-4174    [002] .......  9789.138927: vi_task_submit: class_id:48 ch:0 syncpt_id:25 syncpt_thresh:6 pid:4174 tid:4174
 vi-output, tc35-4174    [002] .......  9789.138929: vi_task_submit: class_id:48 ch:0 syncpt_id:25 syncpt_thresh:6 pid:4174 tid:4174
 vi-output, tc35-4174    [002] .......  9789.138930: vi_task_submit: class_id:48 ch:0 syncpt_id:25 syncpt_thresh:6 pid:4174 tid:4174
 vi-output, tc35-4175    [004] .......  9791.698244: tegra_channel_capture_setup: vnc_id 0 W 1920 H 1080 fmt 13
 vi-output, tc35-4174    [000] .......  9791.698641: vi_task_submit: class_id:48 ch:0 syncpt_id:25 syncpt_thresh:6 pid:4174 tid:4174
 vi-output, tc35-4174    [000] .......  9791.698649: vi_task_submit: class_id:48 ch:0 syncpt_id:25 syncpt_thresh:6 pid:4174 tid:4174
 vi-output, tc35-4174    [000] .......  9791.698650: vi_task_submit: class_id:48 ch:0 syncpt_id:25 syncpt_thresh:6 pid:4174 tid:4174
 vi-output, tc35-4174    [000] .......  9791.698651: vi_task_submit: class_id:48 ch:0 syncpt_id:25 syncpt_thresh:6 pid:4174 tid:4174
 vi-output, tc35-4175    [004] .......  9794.258049: tegra_channel_capture_setup: vnc_id 0 W 1920 H 1080 fmt 13
 vi-output, tc35-4174    [000] .......  9794.258318: vi_task_submit: class_id:48 ch:0 syncpt_id:25 syncpt_thresh:6 pid:4174 tid:4174
 vi-output, tc35-4174    [000] .......  9794.258328: vi_task_submit: class_id:48 ch:0 syncpt_id:25 syncpt_thresh:6 pid:4174 tid:4174
 vi-output, tc35-4174    [000] .......  9794.258329: vi_task_submit: class_id:48 ch:0 syncpt_id:25 syncpt_thresh:6 pid:4174 tid:4174
 vi-output, tc35-4174    [000] .......  9794.258329: vi_task_submit: class_id:48 ch:0 syncpt_id:25 syncpt_thresh:6 pid:4174 tid:4174
        v4l2-ctl-4173    [003] .......  9794.959240: tegra_channel_close: vi-output, tc358743 10-000f
 vi-output, tc35-4175    [002] .......  9796.786024: tegra_channel_capture_setup: vnc_id 0 W 1920 H 1080 fmt 13
        v4l2-ctl-4173    [005] .......  9796.786286: tegra_channel_set_stream: enable : 0x0
        v4l2-ctl-4173    [005] .......  9796.786289: tegra_channel_set_stream: tc358743 10-000f : 0x0
        v4l2-ctl-4173    [005] .......  9796.787278: tegra_channel_set_stream: 13e00000.host1x:nvcsi@15a00000- : 0x0
        v4l2-ctl-4173    [005] .......  9796.787281: csi_s_stream: enable : 0x0
        v4l2-ctl-4173    [005] .......  9796.788969: tegra_channel_set_power: tc358743 10-000f : 0x0
        v4l2-ctl-4173    [005] .......  9796.788973: tegra_channel_set_power: 13e00000.host1x:nvcsi@15a00000- : 0x0
        v4l2-ctl-4173    [005] .......  9796.788975: csi_s_power: enable : 0x0

But I can not figure out why the request is timing out. Can you provide any insight or area to further investigate ?

Thank you.

Any ideas?

Here’s what happens in dmesg (with all my extra comments in the code)

[   73.182613] tc358743 10-000f: Calling tc358743_get_fmt
[   73.182626] tc358743 10-000f:  in function no_signal
[   73.182845] tc358743 10-000f:  in function no_sync
[   73.183060] tc358743 10-000f:   jc-  made it past no_signal and no_sync
[   73.185334] tc358743 10-000f: line 585 : tc358743_get_detected_timings: width 1920 heigh 1080 interlaced 0
[   73.185342] tc358743 10-000f: format width 1920
[   73.185344] tc358743 10-000f: format height 1080
[   73.185345] tc358743 10-000f: fmt_code: 4106
[   73.185346] tc358743 10-000f: RGB888 code: 4106
[   73.185347] tc358743 10-000f: UYVY8 code: 8207
[   73.185348] tc358743 10-000f: get fmt complete
[   73.185539] tc358743 10-000f: Calling tc358743_get_fmt
[   73.185541] tc358743 10-000f:  in function no_signal
[   73.185729] tc358743 10-000f:  in function no_sync
[   73.185926] tc358743 10-000f:   jc-  made it past no_signal and no_sync
[   73.188034] tc358743 10-000f: line 585 : tc358743_get_detected_timings: width 1920 heigh 1080 interlaced 0
[   73.188037] tc358743 10-000f: format width 1920
[   73.188038] tc358743 10-000f: format height 1080
[   73.188039] tc358743 10-000f: fmt_code: 4106
[   73.188040] tc358743 10-000f: RGB888 code: 4106
[   73.188041] tc358743 10-000f: UYVY8 code: 8207
[   73.188041] tc358743 10-000f: get fmt complete
[   73.188551] tc358743 10-000f: after mutex_unlock - 888:enable_stream: end
[   73.188977] tc358743 10-000f: tc358743_set_pll:
[   73.188979] tc358743 10-000f: tc358743_set_pll: pllctl0 : 12375
[   73.188981] tc358743 10-000f: tc358743_set_pll: pllctl1 : 531
[   73.188982] tc358743 10-000f: tc358743_set_pll: pllctl0_new  : 12375
[   73.188984] tc358743 10-000f: tc358743_set_pll: hsck : 594000000
[   73.188985] tc358743 10-000f: tc358743_set_pll: pdata->refclk_hz : 27000000
[   73.188987] tc358743 10-000f: function tc358743_num_csi_lanes_needed : fps(bt)  60   bits_pr_pixel 16
[   73.188988] tc358743 10-000f: function tc358743_num_csi_lanes_needed : bps 2376000000   bps_pr_lane 594000000
[   73.188990] tc358743 10-000f: function tc358743_num_csi_lanes_needed : ET.width 2200   ET.height 1125
[   73.188992] tc358743 10-000f: tc358743_set_csi: lanes is using in_use
[   73.188993] tc358743 10-000f: function tc358743_num_csi_lanes_needed : fps(bt)  60   bits_pr_pixel 16
[   73.188995] tc358743 10-000f: function tc358743_num_csi_lanes_needed : bps 2376000000   bps_pr_lane 594000000
[   73.188996] tc358743 10-000f: function tc358743_num_csi_lanes_needed : ET.width 2200   ET.height 1125
[   73.188997] tc358743 10-000f:   jc- set_csi : Lanes needed: 4
[   73.188998] tc358743 10-000f: function tc358743_num_csi_lanes_in_use
[   73.189262] tc358743 10-000f:   jc- set_csi : Lanes in use: 1
[   73.189263] tc358743 10-000f: tc358743_set_csi:  jc- lanes : 4
[   73.189476] tc358743 10-000f: function tc358743_reset
[   73.189798] tc358743 10-000f: tc358743_set_csi:  jc- post reset lanes= 4
[   73.194762] tc358743 10-000f:   jc- D0W : 0
[   73.194766] tc358743 10-000f:   jc- D1W : 0
[   73.194767] tc358743 10-000f:   jc- D2W : 0
[   73.194769] tc358743 10-000f:   jc- D3W : 0
[   73.194770] tc358743 10-000f:   jc- HSTXVREGEN : 31
[   73.194773] tc358743 10-000f: function tc358743_set_csi_color_space
[   73.194774] tc358743 10-000f: tc358743_set_csi_color_space: YCbCr 422 16-bit
[   73.195864] tc358743 10-000f: Called tc358743_set_fmt, completed successfully
[   73.196092] tc358743 10-000f: Calling tc358743_g_input_status
[   73.196096] tc358743 10-000f:  in function no_signal
[   73.196315] tc358743 10-000f:  in function no_sync
[   73.196514] tc358743 10-000f: tc358743_g_input_status: status =0x0
[   73.196517] tc358743 10-000f: Now getting and setting dv timings
[   73.196518] tc358743 10-000f: Calling tc358743_query_dv_timings
[   73.196519] tc358743 10-000f:  in function no_signal
[   73.196725] tc358743 10-000f:  in function no_sync
[   73.196918] tc358743 10-000f:   jc-  made it past no_signal and no_sync
[   73.199021] tc358743 10-000f: line 585 : tc358743_get_detected_timings: width 1920 heigh 1080 interlaced 0
[   73.199027] tc358743 10-000f: tc358743_query_dv_timings: 1920x1080p60.00 (2200x1125)
[   73.199034] tc358743 10-000f: start of -  tc358743_s_dv_timings
[   73.199036] tc358743 10-000f: tc358743_s_dv_timings: no change
[   73.199046] tc358743 10-000f: Calling tc358743_query_dv_timings
[   73.199048] tc358743 10-000f:  in function no_signal
[   73.199282] tc358743 10-000f:  in function no_sync
[   73.199488] tc358743 10-000f:   jc-  made it past no_signal and no_sync
[   73.201576] tc358743 10-000f: line 585 : tc358743_get_detected_timings: width 1920 heigh 1080 interlaced 0
[   73.201578] tc358743 10-000f: tc358743_query_dv_timings: 1920x1080p60.00 (2200x1125)
[   73.201587] tc358743 10-000f:   jc- Calling tc358743_g_dv_timings
[   73.201588] tc358743 10-000f:   jc- state passed
[   73.201589] tc358743 10-000f:   jc- timings passed
[   73.207912] tc358743 10-000f: function tc358743_s_power
[   73.207925]   jc- csi5 csi5_power_on
[   73.217525]   jc- in vi_capture_status
[   73.217528]   jc- in vi_capture_status : capture initialized
[   73.217529]   jc- in vi_capture_status : valid channel ID found
[   73.217530]   jc- in vi_capture_status : after wait timeout...
[   73.219532]   jc- csi5  csi5_start_streaming:  csi_pt=0, st_id=0, vc_id=0, pg_mode=0x0
[   73.219538]   jc- csi5  csi5_stream_set_config: stream_id=0, csi_port=0
[   73.219541]   jc- csi5 cil_settletime is pulled from device of_node
[   73.219544]   jc- csi5 cil_setttime is 0
[   73.219548] t194-nvcsi 13e00000.host1x:nvcsi@15a00000:    X-- brick_config.phy_mode : 0
[   73.219553] t194-nvcsi 13e00000.host1x:nvcsi@15a00000:    X-- brick_config.lane_polarity[index] : 0
[   73.219555] t194-nvcsi 13e00000.host1x:nvcsi@15a00000:    X-- csi5_stream_set_config : before s_data
[   73.219558] t194-nvcsi 13e00000.host1x:nvcsi@15a00000:    X-- using hardcode 5940
[   73.219559] t194-nvcsi 13e00000.host1x:nvcsi@15a00000:    X-- mipi_clock_rate is : 297000
[   73.219562] t194-nvcsi 13e00000.host1x:nvcsi@15a00000:    X-- sizeof(msg) is : 280
[   73.219564] t194-nvcsi 13e00000.host1x:nvcsi@15a00000:    X-- valid ports is : 1
[   73.219565] t194-nvcsi 13e00000.host1x:nvcsi@15a00000:    X-- vi port is : 0
[   73.219975] tc358743 10-000f: Calling tc358743_s_stream - start of attempt
[   73.220947] tc358743 10-000f: after mutex_unlock - 888:enable_stream: end
[   75.747068] tegra-camrtc-capture-vi tegra-capture-vi:  jc- uncorr_err: request timed out after 2500 ms
[   75.747104] tegra-camrtc-capture-vi tegra-capture-vi: err_rec: attempting to reset the capture channel
[   75.748026] tegra-camrtc-capture-vi tegra-capture-vi: err_rec: successfully reset the capture channel
[   75.748036]   jc- in vi_capture_status
[   75.748037]   jc- in vi_capture_status : capture initialized
[   75.748038]   jc- in vi_capture_status : valid channel ID found
[   75.748038]   jc- in vi_capture_status : after wait timeout...
[   78.307175] tegra-camrtc-capture-vi tegra-capture-vi:  jc- uncorr_err: request timed out after 2500 ms
[   78.307208] tegra-camrtc-capture-vi tegra-capture-vi: err_rec: attempting to reset the capture channel
[   78.308040] tegra-camrtc-capture-vi tegra-capture-vi: err_rec: successfully reset the capture channel
[   78.308052]   jc- in vi_capture_status
[   78.308053]   jc- in vi_capture_status : capture initialized
[   78.308054]   jc- in vi_capture_status : valid channel ID found
[   78.308055]   jc- in vi_capture_status : after wait timeout...
[   80.834869] tegra-camrtc-capture-vi tegra-capture-vi:  jc- uncorr_err: request timed out after 2500 ms
[   80.834892] tegra-camrtc-capture-vi tegra-capture-vi: err_rec: attempting to reset the capture channel
[   80.835992] tegra-camrtc-capture-vi tegra-capture-vi: err_rec: successfully reset the capture channel
[   80.836016] tc358743 10-000f: Calling tc358743_s_stream - start of attempt
[   80.836988] tc358743 10-000f: after mutex_unlock - 888:enable_stream: end
[   80.836995]   jc- csi5_stop_streaming: csi5 csi_pt=0, st_id=0, vc_id=0, pg_mode=0x0
[   80.840764] tc358743 10-000f: function tc358743_s_power
[   80.840772]   jc- csi5 csi5_power_off

@DaveYYY - any suggestions on my next steps ?

Thank you

Please get the trace log if more clue.

Thanks

Hello ShaneCC,

root@sthd-7:~# v4l2-ctl -d /dev/video0 --stream-count=1 --stream-mmap --stream-to=frame-1080p60.raw --verbose --set-fmt-video=width=1920,height=1080,pixelformat=1
VIDIOC_QUERYCAP: ok
VIDIOC_G_FMT: ok
VIDIOC_S_FMT: ok
Format Video Capture:
	Width/Height      : 1920/1080
	Pixel Format      : 'UYVY' (UYVY 4:2:2)
	Field             : None
	Bytes per Line    : 3840
	Size Image        : 4147200
	Colorspace        : SMPTE 170M
	Transfer Function : Default (maps to Rec. 709)
	YCbCr/HSV Encoding: Default (maps to ITU-R 601)
	Quantization      : Default (maps to Limited Range)
	Flags             :
New timings found
		VIDIOC_REQBUFS returned 0 (Success)
		VIDIOC_QUERYBUF returned 0 (Success)
		VIDIOC_QUERYBUF returned 0 (Success)
		VIDIOC_QUERYBUF returned 0 (Success)
		VIDIOC_QUERYBUF returned 0 (Success)
		VIDIOC_QBUF returned 0 (Success)
		VIDIOC_QBUF returned 0 (Success)
		VIDIOC_QBUF returned 0 (Success)
		VIDIOC_QBUF returned 0 (Success)
		VIDIOC_STREAMON returned 0 (Success)
cap dqbuf: 0 seq:      0 bytesused: 4147200 ts: 0.000000 (error, ts-monotonic, ts-src-eof)
cap dqbuf: 1 seq:      1 bytesused: 4147200 ts: 0.000000 (error, ts-monotonic, ts-src-eof)
cap dqbuf: 2 seq:      2 bytesused: 4147200 ts: 0.000000 (error, ts-monotonic, ts-src-eof)
cap dqbuf: 3 seq:      3 bytesused: 4147200 ts: 0.000000 (error, ts-monotonic, ts-src-eof)
cap dqbuf: 0 seq:      0 bytesused: 4147200 ts: 0.000000 (error, ts-monotonic, ts-src-eof)
cap dqbuf: 0 seq:      0 bytesused: 4147200 ts: 0.000000 (error, ts-monotonic, ts-src-eof)
cap dqbuf: 1 seq:      1 bytesused: 4147200 ts: 0.000000 (error, ts-monotonic, ts-src-eof)
cap dqbuf: 2 seq:      2 bytesused: 4147200 ts: 0.000000 (error, ts-monotonic, ts-src-eof)
cap dqbuf: 3 seq:      3 bytesused: 4147200 ts: 0.000000 (error, ts-monotonic, ts-src-eof)
^C
root@sthd-7:~# cat /sys/kernel/debug/tracing/trace
# tracer: nop
#
# entries-in-buffer/entries-written: 34/34   #P:6
#
#                                _-------=> irqs-off
#                               / _------=> need-resched
#                              | / _-----=> need-resched-lazy
#                              || / _----=> hardirq/softirq
#                              ||| / _---=> preempt-depth
#                              |||| / _--=> preempt-lazy-depth
#                              ||||| / _-=> migrate-disable
#                              |||||| /     delay
#           TASK-PID     CPU#  |||||||  TIMESTAMP  FUNCTION
#              | |         |   |||||||      |         |
        v4l2-ctl-5047    [001] ....... 31425.802490: tegra_channel_open: vi-output, tc358743 10-000f
        v4l2-ctl-5047    [001] ....... 31429.710316: tegra_channel_close: vi-output, tc358743 10-000f
        v4l2-ctl-5049    [002] ....... 31468.185319: tegra_channel_open: vi-output, tc358743 10-000f
        v4l2-ctl-5049    [002] ....... 31468.210730: tegra_channel_set_power: tc358743 10-000f : 0x1
        v4l2-ctl-5049    [002] ....... 31468.210746: tegra_channel_set_power: 13e00000.host1x:nvcsi@15a00000- : 0x1
        v4l2-ctl-5049    [002] ....... 31468.210750: csi_s_power: enable : 0x1
        v4l2-ctl-5049    [002] ....... 31468.211313: tegra_channel_capture_setup: vnc_id 0 W 1920 H 1080 fmt 13
 vi-output, tc35-5050    [001] ....... 31468.220588: vi_task_submit: class_id:48 ch:0 syncpt_id:25 syncpt_thresh:0 pid:5050 tid:5050
 vi-output, tc35-5050    [001] ....... 31468.220603: vi_task_submit: class_id:48 ch:0 syncpt_id:25 syncpt_thresh:0 pid:5050 tid:5050
 vi-output, tc35-5050    [001] ....... 31468.220605: vi_task_submit: class_id:48 ch:0 syncpt_id:25 syncpt_thresh:0 pid:5050 tid:5050
 vi-output, tc35-5050    [001] ....... 31468.220607: vi_task_submit: class_id:48 ch:0 syncpt_id:25 syncpt_thresh:0 pid:5050 tid:5050
        v4l2-ctl-5049    [002] ....... 31468.221211: tegra_channel_set_stream: enable : 0x1
        v4l2-ctl-5049    [002] ....... 31468.223068: tegra_channel_set_stream: 13e00000.host1x:nvcsi@15a00000- : 0x1
        v4l2-ctl-5049    [002] ....... 31468.223072: csi_s_stream: enable : 0x1
        v4l2-ctl-5049    [002] ....... 31468.223523: tegra_channel_set_stream: tc358743 10-000f : 0x1
 vi-output, tc35-5051    [004] ....... 31470.968943: tegra_channel_capture_setup: vnc_id 0 W 1920 H 1080 fmt 13
 vi-output, tc35-5050    [001] ....... 31470.969330: vi_task_submit: class_id:48 ch:0 syncpt_id:25 syncpt_thresh:0 pid:5050 tid:5050
 vi-output, tc35-5050    [001] ....... 31470.969344: vi_task_submit: class_id:48 ch:0 syncpt_id:25 syncpt_thresh:0 pid:5050 tid:5050
 vi-output, tc35-5050    [001] ....... 31470.969346: vi_task_submit: class_id:48 ch:0 syncpt_id:25 syncpt_thresh:0 pid:5050 tid:5050
 vi-output, tc35-5050    [001] ....... 31470.969348: vi_task_submit: class_id:48 ch:0 syncpt_id:25 syncpt_thresh:0 pid:5050 tid:5050
 vi-output, tc35-5051    [004] ....... 31473.529895: tegra_channel_capture_setup: vnc_id 0 W 1920 H 1080 fmt 13
 vi-output, tc35-5050    [004] ....... 31473.530197: vi_task_submit: class_id:48 ch:0 syncpt_id:25 syncpt_thresh:0 pid:5050 tid:5050
 vi-output, tc35-5050    [004] ....... 31473.530215: vi_task_submit: class_id:48 ch:0 syncpt_id:25 syncpt_thresh:0 pid:5050 tid:5050
 vi-output, tc35-5050    [004] ....... 31473.530229: vi_task_submit: class_id:48 ch:0 syncpt_id:25 syncpt_thresh:0 pid:5050 tid:5050
 vi-output, tc35-5050    [004] ....... 31473.530245: vi_task_submit: class_id:48 ch:0 syncpt_id:25 syncpt_thresh:0 pid:5050 tid:5050
        v4l2-ctl-5049    [002] ....... 31474.238553: tegra_channel_close: vi-output, tc358743 10-000f
 vi-output, tc35-5051    [000] ....... 31476.056864: tegra_channel_capture_setup: vnc_id 0 W 1920 H 1080 fmt 13
        v4l2-ctl-5049    [001] ....... 31476.057236: tegra_channel_set_stream: enable : 0x0
        v4l2-ctl-5049    [001] ....... 31476.057238: tegra_channel_set_stream: tc358743 10-000f : 0x0
        v4l2-ctl-5049    [001] ....... 31476.059135: tegra_channel_set_stream: 13e00000.host1x:nvcsi@15a00000- : 0x0
        v4l2-ctl-5049    [001] ....... 31476.059139: csi_s_stream: enable : 0x0
        v4l2-ctl-5049    [001] ....... 31476.060810: tegra_channel_set_power: tc358743 10-000f : 0x0
        v4l2-ctl-5049    [001] ....... 31476.060814: tegra_channel_set_power: 13e00000.host1x:nvcsi@15a00000- : 0x0
        v4l2-ctl-5049    [001] ....... 31476.060816: csi_s_power: enable : 0x0

This is JetPack 6.0, L4T 36.3. This is based on the same code that worked on JP 4.6.4 and JP5.1.2

Has anyone at nVidia actually captured video from a tc358743 using JP6.0/L4T 36.3 ? A lot changed between 5.1.2 and 6.0

Thank you.

The tc358743 is not default support device and we don’t have it to verify it.

From the trace log looks like didn’t receive any validate data from the sensor.
Maybe probe the signal to confirm it.