Bayer conversion to RGB of images in Jetson NX with custom V4L2 CSI-2 sensor

Hi,

Currently , with our NX hardware we use IMX273 sensor which can output RAW10 monochrome frames. We access this sensor via V4L2 (not libargus) to read the frames and have no problem with it.

Now we changed the IMX273 sensor which can output color in Bayer (10bit).
We still access this sensor via V4L2 to read the frames as 16 bit values.
We are trying to do Bayer to RGB conversion.

We tried using Gstreamer plugin (bayer2rgb) but it appears it can convert only 8bit and not 12/16bit.

But is there a possibility to use the inbuilt ISP of NX ? Please note, we are not using libargus.

Or is there any sample code that shows about the color conversion with CUDA ?

Thanks,

Have a check the cudaBayerDemosaic from the multimedia API sample code.

Thanks for the sample code for Bayer conversion with Cuda.

We are also trying to explore the libargus method to use ISP for debayering.

Currently we tried with our custom driver which is working with direct V4L2/v4l2-ctl and we can get the raw frames.

Also we tried accessing the sensor via gstreamer with nvarguscamerasrc, with nvarguscamerasrc we cannot get the frames.

gst-launch-1.0 nvarguscamerasrc sensor-id=2 ! videoconvert ! autovideosink
Setting pipeline to PAUSED …
Pipeline is live and does not need PREROLL …
Setting pipeline to PLAYING …
New clock: GstSystemClock
GST_ARGUS: Creating output stream
CONSUMER: Waiting until producer is connected…
GST_ARGUS: Available Sensor modes :
GST_ARGUS: 1472 x 1080 FR = 226.580010 fps Duration = 4413452 ; Analog Gain range min 0.000000, max 3.000000; Exposure Range min 1000, max 100000000;

GST_ARGUS: 1472 x 540 FR = 226.580010 fps Duration = 4413452 ; Analog Gain range min 0.000000, max 3.000000; Exposure Range min 1000, max 100000000;

GST_ARGUS: Running with following settings:
Camera index = 2
Camera mode = 0
Output Stream W = 1472 H = 1080
seconds to Run = 0
Frame Rate = 226.580010
GST_ARGUS: Setup Complete, Starting captures for 0 seconds
GST_ARGUS: Starting repeat capture requests.
CONSUMER: Producer has connected; continuing.

dmesg output
[ 232.287982] tegra194-vi5 15c10000.vi: vi_capture_status : no reply from camera processor
[ 232.288219] tegra194-vi5 15c10000.vi: vi capture get status failed
[ 232.288592] fence timeout on [ffffffc1ec2eaa80] after 1500ms

please note that the IMX273 sensor is not controlled via I2c, Jetson Xavier NX will receive only MIPI frames.
Control of sensor is handled by another MCU on our hardware.
Can libargus handle such a camera architecture where the control is not via i2c ?

Yes, should be able to support it. Have add set_mode_delay_ms to try. Also have a check the trace log for the argus.

Hi ShaneCCC,
Thanks for the set_mode_delay_ms.

But even after we set it in dtsi, still we cannot get frames via nvarguscamerasrc.

Please find the kernel output during the gstreamer execution,.
gst-launch-1.0 nvarguscamerasrc sensor-id=2 ! videoconvert ! autovideosink

[ 277.798370] tegra194-vi5 15c10000.vi: vi_capture_status : no reply from camera processor
[ 277.798584] tegra194-vi5 15c10000.vi: vi capture get status failed
[ 279.299790] tegra194-vi5 15c10000.vi: vi_capture_status : no reply from camera processor
[ 279.300030] tegra194-vi5 15c10000.vi: vi capture get status failed

Please also find attached the dmesg output dmesg_nvarguscamerasrc.txt (42.9 KB)

We do not get the “The CDMA sync queue is empty.” print when we use v4l2 and can get the frames. We get this only with nvarguscamerasrc.
Would you like to have more logs ? How can we get the trace log of argus ?
We also tried VI tracing, but cannot get any useful info.

The trace log enable is the same as v4l2-ctl.
Maybe try to configure the sensor output as continuous/discontinuous clocks to try.

Hi ShaneCCC,

We tried with discontinuous clock and the result is we cannot get frames in both v4l2 and nvarguscamerasrc.

So we changed to our default settings of continuous clock.

We also tried ./argus_oneshot -d 2 -m 0, still we get
[ 2088.039468] tegra194-vi5 15c10000.vi: vi_capture_status : no reply from camera processor
[ 2088.039659] tegra194-vi5 15c10000.vi: vi capture get status failed

In our hardware test setup, the sensor will start transmitting frames before the user-space application can start.
(ie) before nvarguscamerasrc, v4l2, argus_oneshot

V4l2 application can receive the frames but argus is not able to recieve.

Is there any dependency in libargus that the sensor must start transmitting only after argus application starts ?

Thanks,

Do you change the sensor output too or just only modify the dts?

Hi ShaneCCC,

The modification is mainly done in dts files to configure the sensor.
In the sensor driver, only modification we do is to force i2c register callbacks to return true (for eg) (.read_reg/.write_reg,…) as we do not control the sensor via i2c.

However the IMX273 sensor setup with NX board is similar to the post below,

Thanks,

OK, I just want to confirm the sensor is output as discontinuous or continuous clock?

Hi ShaneCCC,
Ok, yes we changed only dts and did not change the sensor output to discontinuous clock.
Currently we checked via scope, the sensor output is in continuous clock mode.

Does libargus require the clock to be discontinuous ?

Thanks,

Please configure the sensor as discontinuous clocks to try.

Hi ShaneCCC,

We configured our sensor to discontinuous mode which we confirmed via scope.
We changed the dts to have discontinuous_clk=“yes” and also made the tegracam_ctrl_ops callback functions of the sensor driver to be dummy (ie) return 0.

But with this settings, the v4l2 capture returns frame discard error.

v4l2-ctl -d /dev/video2 --set-fmt-video=width=1472,height=1080,pixelformat=RG10 --set-ctrl bypass_mode=0 --stream-mmap --stream-count=1 --stream-to=test_image.bayer

Blockquote
dmesg
[ 126.376885] tegra194-vi5 15c10000.vi: corr_err: discarding frame : 1 & Sequence : 0 from stream : 4, flags: 0, err_data: 131072 status: 14 sof_time : 136810883232 eof_time : 4378083860480
[ 126.381453] tegra194-vi5 15c10000.vi: corr_err: discarding frame : 2 & Sequence : 1 from stream : 4, flags: 0, err_data: 131072 status: 14 sof_time : 136815513248 eof_time : 4378232022016
[ 126.386096] tegra194-vi5 15c10000.vi: corr_err: discarding frame : 1 & Sequence : 2 from stream : 4, flags: 0, err_data: 131072 status: 14 sof_time : 136820143232 eof_time : 4378380180480
[ 126.390029] [RCE] vi5_hwinit: firmware CL2018101701 protocol version 2.2
[ 126.390808] tegra194-vi5 15c10000.vi: corr_err: discarding frame : 2 & Sequence : 3 from stream : 4, flags: 0, err_data: 131072 status: 14 sof_time : 136824773216 eof_time : 4378528339968
[ 126.395342] tegra194-vi5 15c10000.vi: corr_err: discarding frame : 1 & Sequence : 4 from stream : 4, flags: 0, err_data: 131072 status: 14 sof_time : 136829403232 eof_time : 4378676500480
[ 126.399987] tegra194-vi5 15c10000.vi: corr_err: discarding frame : 2 & Sequence : 5 from stream : 4, flags: 0, err_data: 131072 status: 14 sof_time : 136834033216 eof_time : 4378824659968
[ 126.404662] tegra194-vi5 15c10000.vi: corr_err: discarding frame : 1 & Sequence : 6 from stream : 4, flags: 0, err_data: 131072 status: 14 sof_time : 136838663232 eof_time : 4378972819456
[ 126.409244] tegra194-vi5 15c10000.vi: corr_err: discarding frame : 2 & Sequence : 7 from stream : 4, flags: 0, err_data: 131072 status: 14 sof_time : 136843293184 eof_time : 4379120978944
[ 126.420918] tegra194-vi5 15c10000.vi: corr_err: discarding frame : 1 & Sequence : 8 from stream : 4, flags: 0, err_data: 131072 status: 14 sof_time : 136847923200 eof_time : 4379269139456
[ 126.437464] tegra194-vi5 15c10000.vi: corr_err: discarding frame : 2 & Sequence : 9 from stream : 4, flags: 0, err_data: 131072 status: 14 sof_time : 136852553184 eof_time : 4379417297920
[ 126.454620] tegra194-vi5 15c10000.vi: corr_err: discarding frame : 1 & Sequence : 10 from stream : 4, flags: 0, err_data: 131072 status: 14 sof_time : 136857183200 eof_time : 4379565459456
[ 126.471539] tegra194-vi5 15c10000.vi: corr_err: discarding frame : 2 & Sequence : 11 from stream : 4, flags: 0, err_data: 131072 status: 14 sof_time : 136861813184 eof_time : 4379713619968
[ 126.488441] tegra194-vi5 15c10000.vi: corr_err: discarding frame : 2 & Sequence : 12 from stream : 4, flags: 0, err_data: 131072 status: 14 sof_time : 136880333152 eof_time : 4380306257920
[ 126.505023] tegra194-vi5 15c10000.vi: corr_err: discarding frame : 1 & Sequence : 13 from stream : 4, flags: 0, err_data: 131072 status: 14 sof_time : 136894223136 eof_time : 4380750738432
[ 126.521913] tegra194-vi5 15c10000.vi: corr_err: discarding frame : 1 & Sequence : 14 from stream : 4, flags: 0, err_data: 131072 status: 14 sof_time : 136912743104 eof_time : 4381343376384

The libargus has the same error as before, (no reply from camera processor)

Blockquote
gst-launch-1.0 nvarguscamerasrc sensor-id=2 ! videoconvert ! autovideosink
Setting pipeline to PAUSED …
Pipeline is live and does not need PREROLL …
Setting pipeline to PLAYING …
New clock: GstSystemClock
GST_ARGUS: Creating output stream
CONSUMER: Waiting until producer is connected…
GST_ARGUS: Available Sensor modes :
GST_ARGUS: 1472 x 1080 FR = 226.580010 fps Duration = 4413452 ; Analog Gain range min 0.000000, max 3.000000; Exposure Range min 1000, max 100000000;
GST_ARGUS: 1472 x 540 FR = 226.580010 fps Duration = 4413452 ; Analog Gain range min 0.000000, max 3.000000; Exposure Range min 1000, max 100000000;
GST_ARGUS: Running with following settings:
Camera index = 2
Camera mode = 0
Output Stream W = 1472 H = 1080
seconds to Run = 0
Frame Rate = 226.580010
GST_ARGUS: Setup Complete, Starting captures for 0 seconds
GST_ARGUS: Starting repeat capture requests.
CONSUMER: Producer has connected; continuing.

Blockquote dmesg
dmesg
[ 188.879979] imx219 9-0010: imx219_open:
[ 188.880132] imx219 10-0010: imx219_open:
[ 188.880306] imx219 11-0010: imx219_open:
[ 189.345870] [RCE] WARNING: t194/isp5.c:901 [config_channel] “All error notifications not enabled: correctable=0x00 uncorrectable=0x00”
[ 190.297876] [RCE] vi5_hwinit: firmware CL2018101701 protocol version 2.2
[ 192.117769] tegra194-vi5 15c10000.vi: vi_capture_status : no reply from camera processor
[ 192.117965] tegra194-vi5 15c10000.vi: vi capture get status failed
[ 192.118544] fence timeout on [ffffffc1ec68fa80] after 1500ms
[ 192.118555] name=[nvhost_sync:31], current value=0 waiting value=1
[ 192.118565] ---- mlocks ----
[ 192.118616] ---- syncpts ----
[ 192.118659] id 22 (gv11b_510_user) min 27 max 0 refs 1 (previous client : )
[ 192.118681] id 34 (gv11b_506) min 3 max 3 refs 1 (previous client : )
[ 192.118688] id 35 (gv11b_505) min 4 max 4 refs 1 (previous client : )
[ 192.118695] id 36 (gv11b_504) min 3 max 3 refs 1 (previous client : )
[ 192.118702] id 37 (gv11b_503) min 3 max 3 refs 1 (previous client : )
[ 192.118738] id 38 (gv11b_502) min 3 max 3 refs 1 (previous client : )
[ 192.119593] ---- channels ----
[ 192.119628]
channel 2 - 15820000.se
[ 192.119634] NvHost basic channel registers:
[ 192.119642] CMDFIFO_STAT_0: 00002040
[ 192.119648] CMDFIFO_RDATA_0: 06041055
[ 192.119659] CMDP_OFFSET_0: 00000000
[ 192.119666] CMDP_CLASS_0: 00000000
[ 192.119673] CHANNELSTAT_0: 00000000
[ 192.119678] The CDMA sync queue is empty.
[ 192.119690]
channel 3 - 15830000.se
[ 192.119695] NvHost basic channel registers:
[ 192.119702] CMDFIFO_STAT_0: 00002040
[ 192.119708] CMDFIFO_RDATA_0: c1000010
[ 192.119717] CMDP_OFFSET_0: 00000000
[ 192.119723] CMDP_CLASS_0: 00000000
[ 192.119729] CHANNELSTAT_0: 00000000
[ 192.119734] The CDMA sync queue is empty.
[ 192.119745]
channel 4 - 15840000.se
[ 192.119750] NvHost basic channel registers:
[ 192.119756] CMDFIFO_STAT_0: 00002040
[ 192.119762] CMDFIFO_RDATA_0: 01282400
[ 192.119770] CMDP_OFFSET_0: 00000000
[ 192.119776] CMDP_CLASS_0: 00000000
[ 192.119781] CHANNELSTAT_0: 00000000
[ 192.119786] The CDMA sync queue is empty.
[ 192.119800]
---- host general irq ----
[ 192.119807] sync_intc0mask = 0x00000001
[ 192.119814] sync_intmask = 0x50000003
[ 192.119818]
---- host syncpt irq mask ----
[ 192.119823]
---- host syncpt irq status ----
[ 192.119831] syncpt_thresh_cpu0_int_status(0) = 0x00000000
[ 192.119838] syncpt_thresh_cpu0_int_status(1) = 0x00000000
[ 192.119845] syncpt_thresh_cpu0_int_status(2) = 0x00000000
[ 192.119852] syncpt_thresh_cpu0_int_status(3) = 0x00000000
[ 192.119859] syncpt_thresh_cpu0_int_status(4) = 0x00000000
[ 192.119865] syncpt_thresh_cpu0_int_status(5) = 0x00000000
[ 192.119872] syncpt_thresh_cpu0_int_status(6) = 0x00000000
[ 192.119879] syncpt_thresh_cpu0_int_status(7) = 0x00000000
[ 192.119885] syncpt_thresh_cpu0_int_status(8) = 0x00000000
[ 192.119892] syncpt_thresh_cpu0_int_status(9) = 0x00000000
[ 192.119898] syncpt_thresh_cpu0_int_status(10) = 0x00000000
[ 192.119904] syncpt_thresh_cpu0_int_status(11) = 0x00000000
[ 192.119911] syncpt_thresh_cpu0_int_status(12) = 0x00000000
[ 192.119917] syncpt_thresh_cpu0_int_status(13) = 0x00000000
[ 192.119923] syncpt_thresh_cpu0_int_status(14) = 0x00000000
[ 192.119929] syncpt_thresh_cpu0_int_status(15) = 0x00000000
[ 192.119935] syncpt_thresh_cpu0_int_status(16) = 0x00000000
[ 192.119942] syncpt_thresh_cpu0_int_status(17) = 0x00000000
[ 192.119948] syncpt_thresh_cpu0_int_status(18) = 0x00000000
[ 192.119954] syncpt_thresh_cpu0_int_status(19) = 0x00000000
[ 192.119960] syncpt_thresh_cpu0_int_status(20) = 0x00000000
[ 192.119967] syncpt_thresh_cpu0_int_status(21) = 0x00000000
[ 193.621767] fence timeout on [ffffffc1ec32f240] after 1500ms
[ 193.621774] tegra194-vi5 15c10000.vi: vi_capture_status : no reply from camera processor
[ 193.621791] tegra194-vi5 15c10000.vi: vi capture get status failed
[ 193.621987] fence timeout on [ffffffc1ec32ff00] after 1500ms
[ 193.621998] name=[nvhost_sync:31], current value=0 waiting value=10
[ 193.622006] ---- mlocks ----
[ 193.622052] ---- syncpts ----
[ 193.622095] id 22 (gv11b_510_user) min 27 max 0 refs 1 (previous client : )
[ 193.622115] id 34 (gv11b_506) min 3 max 3 refs 1 (previous client : )
[ 193.622135] name=[nvhost_sync:31], current value=0 waiting value=15
[ 193.622140] id 35 (gv11b_505) min 4 max 4 refs 1 (previous client : )
[ 193.622146] id 36 (gv11b_504) min 3 max 3 refs 1 (previous client : )
[ 193.622150] ---- mlocks ----
[ 193.622158] id 37 (gv11b_503) min 3 max 3 refs 1 (previous client : )
[ 193.622167] id 38 (gv11b_502) min 3 max 3 refs 1 (previous client : )
[ 193.622203] ---- syncpts ----
[ 193.623053] ---- channels ----
[ 193.623089] id 22 (gv11b_510_user) min 27 max 0 refs 1 (previous client : )
[ 193.623092]
channel 2 - 15820000.se
[ 193.623097] NvHost basic channel registers:
[ 193.623109] CMDFIFO_STAT_0: 00002040
[ 193.623116] CMDFIFO_RDATA_0: 06041055
[ 193.623122] id 34 (gv11b_506) min 3 max 3 refs 1 (previous client : )
[ 193.623127] CMDP_OFFSET_0: 00000000
[ 193.623140] id 35 (gv11b_505) min 4 max 4 refs 1 (previous client : )
[ 193.623142] CMDP_CLASS_0: 00000000
[ 193.623148] CHANNELSTAT_0: 00000000
[ 193.623152] id 36 (gv11b_504) min 3 max 3 refs 1 (previous client : )
[ 193.623158] id 37 (gv11b_503) min 3 max 3 refs 1 (previous client : )
[ 193.623160] The CDMA sync queue is empty.
[ 193.623172] id 38 (gv11b_502) min 3 max 3 refs 1 (previous client : )
[ 193.623175]
channel 3 - 15830000.se
[ 193.623179] NvHost basic channel registers:
[ 193.623188] CMDFIFO_STAT_0: 00002040
[ 193.623195] CMDFIFO_RDATA_0: c1000010
[ 193.623203] CMDP_OFFSET_0: 00000000
[ 193.623209] CMDP_CLASS_0: 00000000
[ 193.623215] CHANNELSTAT_0: 00000000
[ 193.623226] The CDMA sync queue is empty.
[ 193.623238]
channel 4 - 15840000.se
[ 193.623244] NvHost basic channel registers:
[ 193.623250] CMDFIFO_STAT_0: 00002040
[ 193.623256] CMDFIFO_RDATA_0: 01282400
[ 193.623264] CMDP_OFFSET_0: 00000000
[ 193.623270] CMDP_CLASS_0: 00000000
[ 193.623275] CHANNELSTAT_0: 00000000
[ 193.623280] The CDMA sync queue is empty.
[ 193.623295]
---- host general irq ----
[ 193.623301] sync_intc0mask = 0x00000001
[ 193.623308] sync_intmask = 0x50000003
[ 193.623313]
---- host syncpt irq mask ----
[ 193.623317]
---- host syncpt irq status ----
[ 193.623325] syncpt_thresh_cpu0_int_status(0) = 0x00000000
[ 193.623332] syncpt_thresh_cpu0_int_status(1) = 0x00000000
[ 193.623339] syncpt_thresh_cpu0_int_status(2) = 0x00000000
[ 193.623346] syncpt_thresh_cpu0_int_status(3) = 0x00000000
[ 193.623353] syncpt_thresh_cpu0_int_status(4) = 0x00000000
[ 193.623360] syncpt_thresh_cpu0_int_status(5) = 0x00000000
[ 193.623367] syncpt_thresh_cpu0_int_status(6) = 0x00000000
[ 193.623374] syncpt_thresh_cpu0_int_status(7) = 0x00000000
[ 193.623380] syncpt_thresh_cpu0_int_status(8) = 0x00000000
[ 193.623386] syncpt_thresh_cpu0_int_status(9) = 0x00000000
[ 193.623393] syncpt_thresh_cpu0_int_status(10) = 0x00000000
[ 193.623399] syncpt_thresh_cpu0_int_status(11) = 0x00000000
[ 193.623406] syncpt_thresh_cpu0_int_status(12) = 0x00000000
[ 193.623413] syncpt_thresh_cpu0_int_status(13) = 0x00000000
[ 193.623419] syncpt_thresh_cpu0_int_status(14) = 0x00000000
[ 193.623425] syncpt_thresh_cpu0_int_status(15) = 0x00000000
[ 193.623431] syncpt_thresh_cpu0_int_status(16) = 0x00000000
[ 193.623437] syncpt_thresh_cpu0_int_status(17) = 0x00000000
[ 193.623443] syncpt_thresh_cpu0_int_status(18) = 0x00000000
[ 193.623450] syncpt_thresh_cpu0_int_status(19) = 0x00000000
[ 193.623456] syncpt_thresh_cpu0_int_status(20) = 0x00000000
[ 193.623462] syncpt_thresh_cpu0_int_status(21) = 0x00000000
[ 193.624066] ---- channels ----
[ 193.624100]
channel 2 - 15820000.se
[ 193.624105] NvHost basic channel registers:
[ 193.624113] CMDFIFO_STAT_0: 00002040
[ 193.624120] CMDFIFO_RDATA_0: 06041055
[ 193.624130] CMDP_OFFSET_0: 00000000
[ 193.624137] CMDP_CLASS_0: 00000000
[ 193.624144] CHANNELSTAT_0: 00000000
[ 193.624149] The CDMA sync queue is empty.
[ 193.624162]
channel 3 - 15830000.se
[ 193.624167] NvHost basic channel registers:
[ 193.624174] CMDFIFO_STAT_0: 00002040
[ 193.624181] CMDFIFO_RDATA_0: c1000010
[ 193.624190] CMDP_OFFSET_0: 00000000
[ 193.624196] CMDP_CLASS_0: 00000000
[ 193.624202] CHANNELSTAT_0: 00000000
[ 193.624207] The CDMA sync queue is empty.
[ 193.624219]
channel 4 - 15840000.se
[ 193.624224] NvHost basic channel registers:
[ 193.624230] CMDFIFO_STAT_0: 00002040
[ 193.624237] CMDFIFO_RDATA_0: 01282400
[ 193.624244] CMDP_OFFSET_0: 00000000
[ 193.624250] CMDP_CLASS_0: 00000000
[ 193.624256] CHANNELSTAT_0: 00000000
[ 193.624261] The CDMA sync queue is empty.
[ 193.624276] ---- host general irq ----
[ 193.624283] sync_intc0mask = 0x00000001
[ 193.624289] sync_intmask = 0x50000003
[ 193.624294]
---- host syncpt irq mask ----
[ 193.624299]
---- host syncpt irq status ----
[ 193.624307] syncpt_thresh_cpu0_int_status(0) = 0x00000000
[ 193.624314] syncpt_thresh_cpu0_int_status(1) = 0x00000000
[ 193.624321] syncpt_thresh_cpu0_int_status(2) = 0x00000000
[ 193.624328] syncpt_thresh_cpu0_int_status(3) = 0x00000000
[ 193.624335] syncpt_thresh_cpu0_int_status(4) = 0x00000000
[ 193.624342] syncpt_thresh_cpu0_int_status(5) = 0x00000000
[ 193.624349] syncpt_thresh_cpu0_int_status(6) = 0x00000000
[ 193.624357] syncpt_thresh_cpu0_int_status(7) = 0x00000000
[ 193.624363] syncpt_thresh_cpu0_int_status(8) = 0x00000000
[ 193.624369] syncpt_thresh_cpu0_int_status(9) = 0x00000000
[ 193.624376] syncpt_thresh_cpu0_int_status(10) = 0x00000000
[ 193.624382] syncpt_thresh_cpu0_int_status(11) = 0x00000000
[ 193.624389] syncpt_thresh_cpu0_int_status(12) = 0x00000000
[ 193.624395] syncpt_thresh_cpu0_int_status(13) = 0x00000000
[ 193.624401] syncpt_thresh_cpu0_int_status(14) = 0x00000000
[ 193.624408] syncpt_thresh_cpu0_int_status(15) = 0x00000000
[ 193.624414] syncpt_thresh_cpu0_int_status(16) = 0x00000000
[ 193.624420] syncpt_thresh_cpu0_int_status(17) = 0x00000000
[ 193.624427] syncpt_thresh_cpu0_int_status(18) = 0x00000000
[ 193.624433] syncpt_thresh_cpu0_int_status(19) = 0x00000000
[ 193.624440] syncpt_thresh_cpu0_int_status(20) = 0x00000000
[ 193.624446] syncpt_thresh_cpu0_int_status(21) = 0x00000000
[ 195.157726] fence timeout on [ffffffc1ec32ff00] after 1500ms
[ 195.157742] tegra194-vi5 15c10000.vi: vi_capture_status : no reply from camera processor
[ 195.157747] name=[nvhost_sync:31], current value=0 waiting value=16
[ 195.157762] ---- mlocks ----
[ 195.157837] ---- syncpts ----
[ 195.157945] tegra194-vi5 15c10000.vi: vi capture get status failed
[ 195.157956] id 22 (gv11b_510_user) min 27 max 0 refs 1 (previous client : )
[ 195.157976] id 34 (gv11b_506) min 3 max 3 refs 1 (previous client : )
[ 195.157981] id 35 (gv11b_505) min 4 max 4 refs 1 (previous client : )
[ 195.157986] id 36 (gv11b_504) min 3 max 3 refs 1 (previous client : )
[ 195.157997] id 37 (gv11b_503) min 3 max 3 refs 1 (previous client : )
[ 195.158002] id 38 (gv11b_502) min 3 max 3 refs 1 (previous client : )
[ 195.158890] ---- channels ----
[ 195.158926]
channel 2 - 15820000.se
[ 195.158931] NvHost basic channel registers:
[ 195.158940] CMDFIFO_STAT_0: 00002040
[ 195.158946] CMDFIFO_RDATA_0: 06041055
[ 195.158956] CMDP_OFFSET_0: 00000000
[ 195.158962] CMDP_CLASS_0: 00000000
[ 195.158969] CHANNELSTAT_0: 00000000
[ 195.158974] The CDMA sync queue is empty.
[ 195.158986]
channel 3 - 15830000.se
[ 195.158991] NvHost basic channel registers:
[ 195.158998] CMDFIFO_STAT_0: 00002040
[ 195.159004] CMDFIFO_RDATA_0: c1000010
[ 195.159011] CMDP_OFFSET_0: 00000000
[ 195.159017] CMDP_CLASS_0: 00000000
[ 195.159024] CHANNELSTAT_0: 00000000
[ 195.159029] The CDMA sync queue is empty.
[ 195.159041]
channel 4 - 15840000.se
[ 195.159046] NvHost basic channel registers:
[ 195.159052] CMDFIFO_STAT_0: 00002040
[ 195.159058] CMDFIFO_RDATA_0: 01282400
[ 195.159066] CMDP_OFFSET_0: 00000000
[ 195.159071] CMDP_CLASS_0: 00000000
[ 195.159077] CHANNELSTAT_0: 00000000
[ 195.159083] The CDMA sync queue is empty.
[ 195.159097]
---- host general irq ----
[ 195.159104] sync_intc0mask = 0x00000001
[ 195.159111] sync_intmask = 0x50000003
[ 195.159115]
---- host syncpt irq mask ----
[ 195.159120]
---- host syncpt irq status ----
[ 195.159128] syncpt_thresh_cpu0_int_status(0) = 0x00000000
[ 195.159134] syncpt_thresh_cpu0_int_status(1) = 0x00000000
[ 195.159141] syncpt_thresh_cpu0_int_status(2) = 0x00000000
[ 195.159147] syncpt_thresh_cpu0_int_status(3) = 0x00000000
[ 195.159153] syncpt_thresh_cpu0_int_status(4) = 0x00000000
[ 195.159159] syncpt_thresh_cpu0_int_status(5) = 0x00000000
[ 195.159165] syncpt_thresh_cpu0_int_status(6) = 0x00000000
[ 195.159172] syncpt_thresh_cpu0_int_status(7) = 0x00000000
[ 195.159183] syncpt_thresh_cpu0_int_status(8) = 0x00000000
[ 195.159189] syncpt_thresh_cpu0_int_status(9) = 0x00000000
[ 195.159195] syncpt_thresh_cpu0_int_status(10) = 0x00000000
[ 195.159202] syncpt_thresh_cpu0_int_status(11) = 0x00000000
[ 195.159208] syncpt_thresh_cpu0_int_status(12) = 0x00000000
[ 195.159215] syncpt_thresh_cpu0_int_status(13) = 0x00000000
[ 195.159221] syncpt_thresh_cpu0_int_status(14) = 0x00000000
[ 195.159227] syncpt_thresh_cpu0_int_status(15) = 0x00000000
[ 195.159233] syncpt_thresh_cpu0_int_status(16) = 0x00000000
[ 195.159240] syncpt_thresh_cpu0_int_status(17) = 0x00000000
[ 195.159246] syncpt_thresh_cpu0_int_status(18) = 0x00000000
[ 195.159252] syncpt_thresh_cpu0_int_status(19) = 0x00000000
[ 195.159258] syncpt_thresh_cpu0_int_status(20) = 0x00000000
[ 195.159264] syncpt_thresh_cpu0_int_status(21) = 0x00000000
[ 196.661704] fence timeout on [ffffffc1ea3b0600] after 1500ms
[ 196.661715] fence timeout on [ffffffc1ea3b09c0] after 1500ms
[ 196.661722] tegra194-vi5 15c10000.vi: vi_capture_status : no reply from camera processor
[ 196.661728] name=[nvhost_sync:31], current value=0 waiting value=27
[ 196.661745] ---- mlocks ----
[ 196.661758] tegra194-vi5 15c10000.vi: vi capture get status failed
[ 196.661796] ---- syncpts ----
[ 196.661907] id 22 (gv11b_510_user) min 27 max 0 refs 1 (previous client : )
[ 196.661928] id 34 (gv11b_506) min 3 max 3 refs 1 (previous client : )
[ 196.661933] id 35 (gv11b_505) min 4 max 4 refs 1 (previous client : )
[ 196.661938] id 36 (gv11b_504) min 3 max 3 refs 1 (previous client : )
[ 196.661942] id 37 (gv11b_503) min 3 max 3 refs 1 (previous client : )
[ 196.661954] id 38 (gv11b_502) min 3 max 3 refs 1 (previous client : )
[ 196.662076] name=[nvhost_sync:31], current value=0 waiting value=22
[ 196.662086] ---- mlocks ----
[ 196.662136] ---- syncpts ----
[ 196.662874] ---- channels ----
[ 196.662913]
channel 2 - 15820000.se
[ 196.662916] id 22 (gv11b_510_user) min 27 max 0 refs 1 (previous client : )
[ 196.662923] NvHost basic channel registers:
[ 196.662934] CMDFIFO_STAT_0: 00002040
[ 196.662938] id 34 (gv11b_506) min 3 max 3 refs 1 (previous client : )
[ 196.662941] CMDFIFO_RDATA_0: 06041055
[ 196.662950] CMDP_OFFSET_0: 00000000
[ 196.662952] id 35 (gv11b_505) min 4 max 4 refs 1 (previous client : )
[ 196.662960] id 36 (gv11b_504) min 3 max 3 refs 1 (previous client : )
[ 196.662962] CMDP_CLASS_0: 00000000
[ 196.662967] CHANNELSTAT_0: 00000000
[ 196.662971] id 37 (gv11b_503) min 3 max 3 refs 1 (previous client : )
[ 196.662976] The CDMA sync queue is empty.
[ 196.662981] id 38 (gv11b_502) min 3 max 3 refs 1 (previous client : )
[ 196.662989]
channel 3 - 15830000.se
[ 196.662995] NvHost basic channel registers:
[ 196.663002] CMDFIFO_STAT_0: 00002040
[ 196.663009] CMDFIFO_RDATA_0: c1000010
[ 196.663018] CMDP_OFFSET_0: 00000000
[ 196.663024] CMDP_CLASS_0: 00000000
[ 196.663030] CHANNELSTAT_0: 00000000
[ 196.663035] The CDMA sync queue is empty.
[ 196.663047]
channel 4 - 15840000.se
[ 196.663052] NvHost basic channel registers:
[ 196.663058] CMDFIFO_STAT_0: 00002040
[ 196.663064] CMDFIFO_RDATA_0: 01282400
[ 196.663072] CMDP_OFFSET_0: 00000000
[ 196.663078] CMDP_CLASS_0: 00000000
[ 196.663084] CHANNELSTAT_0: 00000000
[ 196.663089] The CDMA sync queue is empty.
[ 196.663103]
---- host general irq ----
[ 196.663110] sync_intc0mask = 0x00000001
[ 196.663116] sync_intmask = 0x50000003
[ 196.663121]
---- host syncpt irq mask ----
[ 196.663126]
---- host syncpt irq status ----
[ 196.663134] syncpt_thresh_cpu0_int_status(0) = 0x00000000
[ 196.663141] syncpt_thresh_cpu0_int_status(1) = 0x00000000
[ 196.663147] syncpt_thresh_cpu0_int_status(2) = 0x00000000
[ 196.663154] syncpt_thresh_cpu0_int_status(3) = 0x00000000
[ 196.663161] syncpt_thresh_cpu0_int_status(4) = 0x00000000
[ 196.663168] syncpt_thresh_cpu0_int_status(5) = 0x00000000
[ 196.663175] syncpt_thresh_cpu0_int_status(6) = 0x00000000
[ 196.663182] syncpt_thresh_cpu0_int_status(7) = 0x00000000
[ 196.663188] syncpt_thresh_cpu0_int_status(8) = 0x00000000
[ 196.663195] syncpt_thresh_cpu0_int_status(9) = 0x00000000
[ 196.663201] syncpt_thresh_cpu0_int_status(10) = 0x00000000
[ 196.663207] syncpt_thresh_cpu0_int_status(11) = 0x00000000
[ 196.663214] syncpt_thresh_cpu0_int_status(12) = 0x00000000
[ 196.663220] syncpt_thresh_cpu0_int_status(13) = 0x00000000
[ 196.663226] syncpt_thresh_cpu0_int_status(14) = 0x00000000
[ 196.663232] syncpt_thresh_cpu0_int_status(15) = 0x00000000
[ 196.663239] syncpt_thresh_cpu0_int_status(16) = 0x00000000
[ 196.663245] syncpt_thresh_cpu0_int_status(17) = 0x00000000
[ 196.663251] syncpt_thresh_cpu0_int_status(18) = 0x00000000
[ 196.663257] syncpt_thresh_cpu0_int_status(19) = 0x00000000
[ 196.663263] syncpt_thresh_cpu0_int_status(20) = 0x00000000
[ 196.663270] syncpt_thresh_cpu0_int_status(21) = 0x00000000
[ 196.663856] ---- channels ----
[ 196.663888]
channel 2 - 15820000.se
[ 196.663894] NvHost basic channel registers:
[ 196.663901] CMDFIFO_STAT_0: 00002040
[ 196.663907] CMDFIFO_RDATA_0: 06041055
[ 196.663917] CMDP_OFFSET_0: 00000000
[ 196.663923] CMDP_CLASS_0: 00000000
[ 196.663930] CHANNELSTAT_0: 00000000
[ 196.663936] The CDMA sync queue is empty.
[ 196.663947]
channel 3 - 15830000.se
[ 196.663952] NvHost basic channel registers:
[ 196.663958] CMDFIFO_STAT_0: 00002040
[ 196.663965] CMDFIFO_RDATA_0: c1000010
[ 196.663972] CMDP_OFFSET_0: 00000000
[ 196.663978] CMDP_CLASS_0: 00000000
[ 196.663984] CHANNELSTAT_0: 00000000
[ 196.663990] The CDMA sync queue is empty.
[ 196.664001]
channel 4 - 15840000.se
[ 196.664006] NvHost basic channel registers:
[ 196.664012] CMDFIFO_STAT_0: 00002040
[ 196.664018] CMDFIFO_RDATA_0: 01282400
[ 196.664025] CMDP_OFFSET_0: 00000000
[ 196.664031] CMDP_CLASS_0: 00000000
[ 196.664037] CHANNELSTAT_0: 00000000
[ 196.664042] The CDMA sync queue is empty.
[ 196.664057]
---- host general irq ----
[ 196.664064] sync_intc0mask = 0x00000001
[ 196.664070] sync_intmask = 0x50000003
[ 196.664075]
---- host syncpt irq mask ----
[ 196.664080]
---- host syncpt irq status ----
[ 196.664087] syncpt_thresh_cpu0_int_status(0) = 0x00000000
[ 196.664093] syncpt_thresh_cpu0_int_status(1) = 0x00000000
[ 196.664100] syncpt_thresh_cpu0_int_status(2) = 0x00000000
[ 196.664107] syncpt_thresh_cpu0_int_status(3) = 0x00000000
[ 196.664113] syncpt_thresh_cpu0_int_status(4) = 0x00000000
[ 196.664119] syncpt_thresh_cpu0_int_status(5) = 0x00000000
[ 196.664126] syncpt_thresh_cpu0_int_status(6) = 0x00000000
[ 196.664132] syncpt_thresh_cpu0_int_status(7) = 0x00000000
[ 196.664138] syncpt_thresh_cpu0_int_status(8) = 0x00000000
[ 196.664145] syncpt_thresh_cpu0_int_status(9) = 0x00000000
[ 196.664151] syncpt_thresh_cpu0_int_status(10) = 0x00000000
[ 196.664157] syncpt_thresh_cpu0_int_status(11) = 0x00000000
[ 196.664164] syncpt_thresh_cpu0_int_status(12) = 0x00000000
[ 196.664170] syncpt_thresh_cpu0_int_status(13) = 0x00000000
[ 196.664176] syncpt_thresh_cpu0_int_status(14) = 0x00000000
[ 196.664182] syncpt_thresh_cpu0_int_status(15) = 0x00000000
[ 196.664188] syncpt_thresh_cpu0_int_status(16) = 0x00000000
[ 196.664195] syncpt_thresh_cpu0_int_status(17) = 0x00000000
[ 196.664201] syncpt_thresh_cpu0_int_status(18) = 0x00000000
[ 196.664207] syncpt_thresh_cpu0_int_status(19) = 0x00000000
[ 196.664213] syncpt_thresh_cpu0_int_status(20) = 0x00000000
[ 196.664219] syncpt_thresh_cpu0_int_status(21) = 0x00000000

Could you check the trace log for the discontinuous mode?

Hi ShaneCCC,

Please find attached the trace log for v4l2 and argus in continuous and discontinuous modes.

  1. trace_log_discontinuous_v4l2 (694.8 KB)
    In discontinuous mode , the log CHANSEL_SHORT_FRAME is printed and ATOMP_FRAME_DONE is not available.

    trace_log_continuous_v4l2 (21.0 KB)

  2. For argus, both continuous and discontinuous appear to be similar.
    trace_log_continuous_argus (44.1 KB)
    trace_log_discontinuous_argus (74.9 KB)