The capture channel reset and trace CHANSEL_NOMATCH

Hi nvidia team:
I am using imx390->max9295a->max96781->orin to get GMSL camera video for ADAS.
but met a problem and don’t know how to fix it.
most time the video is ok,but when my hand close to camera,the orin reset the channel.
hear is the scene:

the console outpu below log:
[ 2728.941249] tegra-camrtc-capture-vi tegra-capture-vi: uncorr_err: flags 2, err_data 0
[ 2731.666625] tegra-camrtc-capture-vi tegra-capture-vi: uncorr_err: request timed out after 2500 ms
[ 2731.675792] tegra-camrtc-capture-vi tegra-capture-vi: err_rec: attempting to reset the capture channel
[ 2731.686198] (NULL device *): vi_capture_control_message: NULL VI channel received2
[ 2731.694034] t194-nvcsi 13e40000.host1x:nvcsi@15a00000: csi5_stream_close: Error in closing stream_id=4, csi_port=4
[ 2731.704756] (NULL device *): vi_capture_control_message: NULL VI channel received2
[ 2731.712595] t194-nvcsi 13e40000.host1x:nvcsi@15a00000: csi5_stream_open: VI channel not found1 for stream- 4 vc- 1
[ 2731.723484] tegra-camrtc-capture-vi tegra-capture-vi: err_rec: successfully reset the capture channel
[ 2756.326820] tegra-camrtc-capture-vi tegra-capture-vi: corr_err1: discarding frame 0, flags: 0, err_data 131072
[ 2756.360209] tegra-camrtc-capture-vi tegra-capture-vi: uncorr_err: flags 2, err_data 0
[ 2759.044400] tegra-camrtc-capture-vi tegra-capture-vi: uncorr_err: request timed out after 2500 ms
[ 2759.053697] tegra-camrtc-capture-vi tegra-capture-vi: err_rec: attempting to reset the capture channel
[ 2759.064206] (NULL device *): vi_capture_control_message: NULL VI channel received2
[ 2759.072066] t194-nvcsi 13e40000.host1x:nvcsi@15a00000: csi5_stream_close: Error in closing stream_id=4, csi_port=4
[ 2759.082753] (NULL device *): vi_capture_control_message: NULL VI channel received2
[ 2759.090573] t194-nvcsi 13e40000.host1x:nvcsi@15a00000: csi5_stream_open: VI channel not found1 for stream- 4 vc- 1
[ 2759.101415] tegra-camrtc-capture-vi tegra-capture-vi: err_rec: successfully reset the capture channel
[ 2760.248382] tegra-camrtc-capture-vi tegra-capture-vi: corr_err1: discarding frame 0, flags: 0, err_data 131072
[ 2760.282210] tegra-camrtc-capture-vi tegra-capture-vi: uncorr_err: flags 2, err_data 0
[ 2762.882750] tegra-camrtc-capture-vi tegra-capture-vi: uncorr_err: request timed out after 2500 ms
[ 2762.891976] tegra-camrtc-capture-vi tegra-capture-vi: err_rec: attempting to reset the capture channel
[ 2762.902196] (NULL device *): vi_capture_control_message: NULL VI channel received2
[ 2762.910026] t194-nvcsi 13e40000.host1x:nvcsi@15a00000: csi5_stream_close: Error in closing stream_id=4, csi_port=4
[ 2762.920720] (NULL device *): vi_capture_control_message: NULL VI channel received2
[ 2762.928549] t194-nvcsi 13e40000.host1x:nvcsi@15a00000: csi5_stream_open: VI channel not found1 for stream- 4 vc- 1
[ 2762.939407] tegra-camrtc-capture-vi tegra-capture-vi: err_rec: successfully reset the capture channel

and below is the trace log:
trace.log (7.6 KB)

Looking forward to your reply.

If the first nonembedded data packet after an NVCSI FS packet from an input stream does not match any channels at all, a “no-match” notification is emitted from CHANSEL.

what is difference between ccannel_id and tag_channel?

It’s YUV422 output sensor?
There’s NOMATCH for NvCsiDataType_YUV422_8 of Line Start

CHANSEL_NOMATCH channel:0x50 frame:0 vi_tstamp:3288112464032 data:0x00000000000003c9

Hi ShaneCCC:
It’s raw sensor through ISP output YUV422 .

Could you modify the CID function in sensor driver like exposure/Frame Rate to dummy function to try.

Hi ShaneCCC:
The camera is default config and we can not config it.
by the way, where is th CID function ? which file?

Should be at …/kernel/nvidia/drivers/i2c/nv_imx390.c

Reference to below link for customized kernel.

https://docs.nvidia.com/jetson/archives/r35.1/DeveloperGuide/text/SD/Kernel/KernelCustomization.html?highlight=real#

Hi ShaneCCC:
if we cannot modify CID function,do you have any other suggest to debug?
and sensor output YUV422_8 , why not nomatch NvCsiDataType_YUV422_8 of Line Start ,in general,how is it caused?

Looks like the max96781 configure the incorrect virtual channel ID in the payload.

CHANSEL_NOMATCH channel:0x50
bit 6-7 tell the VC