Hello all,
I’m trying to get the Sony IMX264 and IMX267 to work. I’ve got a feeling I’m almost there because I can capture frames through V4l2-CTL, but I can only capture them in the wrong resolution.
I’ve configured both sensors in cropping mode, I will go through the IMX267 example here. The setup consists of a IMX267 → Lattice Crosslink with Sony Sub-LVDS to MIPI CSI-2 Sensor Bridge IP → Jetson TX2. The resolution I configured in the sensor is 4096x2160 (ROIH1ON = 0x3, ROIPH1 = 0x8, ROIPV1 = 0x8, ROIWH1 = 0x1000, ROIWV1 = 0x870) and VMAX set to 20 FPS. Device tree:
imx26x_e@1a { /* Falco: The IMX26x sensor also listens to I2C address 0x1A (same as example imx185) */
compatible = "nvidia,imx26x";
reg = <0x1a>;
devnode = "video2";
/* Physical dimensions of sensor */
physical_w = "12.0";
physical_h = "9.3";
sensor_model ="imx26x";
post_crop_frame_drop = "0";
use_decibel_gain = "true";
delayed_gain = "true";
use_sensor_mode_id = "true";
mode0 {/*mode IMX264_MODE_2448X2048_35FPS*/
mclk_khz = "74250";
num_lanes = "4"; //Falco: was 2
tegra_sinterface = "serial_e";
phy_mode = "DPHY";
discontinuous_clk = "no";
dpcm_enable = "false";
cil_settletime = "0";
dynamic_pixel_bit_depth = "12";
csi_pixel_bit_depth = "12";
mode_type = "bayer";
pixel_phase = "rggb";
active_w = "2464";
active_h = "2065";
/* pixel_t = "bayer_rggb12"; */ /* Shouldn't be neccesary, trying now */
readout_orientation = "0";
line_length = "2656";
inherent_gain = "1";
mclk_multiplier = "8";
pix_clk_hz = "198000000";
gain_factor = "10";
min_gain_val = "0"; /* 0 dB */
max_gain_val = "480";
step_gain_val = "1"; /* 0.1 */
default_gain = "100";
min_hdr_ratio = "1";
max_hdr_ratio = "1";
framerate_factor = "1000000";
min_framerate = "1500000"; /* 1.5 */
max_framerate = "35700000";
step_framerate = "1";
default_framerate = "35700000";
exposure_factor = "1000000";
min_exp_time = "30"; /* us */
max_exp_time = "660000"; /* us */
step_exp_time = "1";
default_exp_time = "33334";/* us */
embedded_metadata_height = "1";
};
mode1 {/*mode IMX265_MODE_2048X1536_55FPS*/
mclk_khz = "74250";
num_lanes = "4";
tegra_sinterface = "serial_e";
phy_mode = "DPHY";
discontinuous_clk = "no";
dpcm_enable = "false";
cil_settletime = "0";
dynamic_pixel_bit_depth = "12";
csi_pixel_bit_depth = "12";
mode_type = "bayer";
pixel_phase = "rggb";
active_w = "2048";
active_h = "1536";
/* pixel_t = "bayer_rggb12"; */ /* Shouldn't be neccesary, trying now */
readout_orientation = "0";
line_length = "2256";
inherent_gain = "1";
mclk_multiplier = "8";
pix_clk_hz = "198000000";
gain_factor = "10";
min_gain_val = "0"; /* 0 dB */
max_gain_val = "480";
step_gain_val = "1"; /* 0.1 */
default_gain = "100";
min_hdr_ratio = "1";
max_hdr_ratio = "1";
framerate_factor = "1000000";
min_framerate = "1500000"; /* 1.5 */
max_framerate = "55600000";
step_framerate = "1";
default_framerate = "55600000";
exposure_factor = "1000000";
min_exp_time = "30"; /* us */
max_exp_time = "660000"; /* us */
step_exp_time = "1";
default_exp_time = "33334";/* us */
embedded_metadata_height = "1";
};
mode2 {/*mode IMX267_MODE_4096X2160_20FPS*/
mclk_khz = "74250";
num_lanes = "4";
tegra_sinterface = "serial_e";
phy_mode = "DPHY";
discontinuous_clk = "no";
dpcm_enable = "false";
cil_settletime = "0";
dynamic_pixel_bit_depth = "12";
csi_pixel_bit_depth = "12";
mode_type = "bayer";
pixel_phase = "rggb";
active_w = "4096";
active_h = "2160";
/* pixel_t = "bayer_rggb12"; */ /* Shouldn't be neccesary, trying now */
readout_orientation = "0";
line_length = "4304";
inherent_gain = "1";
mclk_multiplier = "8";
pix_clk_hz = "198000000";
gain_factor = "10";
min_gain_val = "0"; /* 0 dB */
max_gain_val = "480";
step_gain_val = "1"; /* 0.1 */
default_gain = "200";
min_hdr_ratio = "1";
max_hdr_ratio = "1";
framerate_factor = "1000000";
min_framerate = "1500000"; /* 1.5 */
max_framerate = "20800000";
step_framerate = "1";
default_framerate = "20001616";
exposure_factor = "1000000";
min_exp_time = "30"; /* us */
max_exp_time = "660000"; /* us */
step_exp_time = "1";
default_exp_time = "33334";/* us */
embedded_metadata_height = "1";
};
ports {
#address-cells = <1>;
#size-cells = <0>;
port@0 {
reg = <0>;
liimx26x_imx26x_out2: endpoint {
port-index = <4>;
bus-width = <4>;
remote-endpoint = <&liimx26x_csi_in2>;
};
};
};
};
};
};
};
};
tegra-camera-platform {
compatible = "nvidia, tegra-camera-platform";
/**
* Physical settings to calculate max ISO BW
*
* num_csi_lanes = <>;
* Total number of CSI lanes when all cameras are active
*
* max_lane_speed = <>;
* Max lane speed in Kbit/s
*
* min_bits_per_pixel = <>;
* Min bits per pixel
*
* vi_peak_byte_per_pixel = <>;
* Max byte per pixel for the VI ISO case
*
* vi_bw_margin_pct = <>;
* Vi bandwidth margin in percentage
*
* max_pixel_rate = <>;
* Max pixel rate in Kpixel/s for the ISP ISO case
*
* isp_peak_byte_per_pixel = <>;
* Max byte per pixel for the ISP ISO case
*
* isp_bw_margin_pct = <>;
* Isp bandwidth margin in percentage
*/
num_csi_lanes = <12>;
max_lane_speed = <1500000>;
min_bits_per_pixel = <10>;
vi_peak_byte_per_pixel = <2>;
vi_bw_margin_pct = <25>;
max_pixel_rate = <750000>;
isp_peak_byte_per_pixel = <5>;
isp_bw_margin_pct = <25>;
/**
* The general guideline for naming badge_info contains 3 parts, and is as follows,
* The first part is the camera_board_id for the module; if the module is in a FFD
* platform, then use the platform name for this part.
* The second part contains the position of the module, ex. "rear" or "front".
* The third part contains the last 6 characters of a part number which is found
* in the module's specsheet from the vender.
*/
modules {
module0 {
badge = "imx26x_bottomleft_liimx26x";
position = "bottomleft";
orientation = "1";
status = "okay";
drivernode0 {
/* Declare PCL support driver (classically known as guid) */
pcl_id = "v4l2_sensor";
/* Driver v4l2 device name */
devname = "imx26x 30-001a";
/* Declare the device-tree hierarchy to driver instance */
proc-device-tree = "/proc/device-tree/i2c@3180000/tca9548@71/i2c@0/imx26x_a@1a";
};
};
module1 {
badge = "imx26x_centerright_liimx26x";
position = "centerright";
orientation = "1";
status = "okay";
drivernode0 {
/* Declare PCL support driver (classically known as guid) */
pcl_id = "v4l2_sensor";
/* Driver v4l2 device name */
devname = "imx26x 32-001a";
/* Declare the device-tree hierarchy to driver instance */
proc-device-tree = "/proc/device-tree/i2c@3180000/tca9548@71/i2c@2/imx26x_c@1a";
};
};
module2 {
badge = "imx26x_bottomright_liimx26x";
position = "bottomright";
orientation = "1";
status = "okay";
drivernode0 {
/* Declare PCL support driver (classically known as guid) */
pcl_id = "v4l2_sensor";
/* Driver v4l2 device name */
devname = "imx26x 34-001a";
/* Declare the device-tree hierarchy to driver instance */
proc-device-tree = "/proc/device-tree/i2c@3180000/tca9548@71/i2c@4/imx26x_e@1a";
};
};
};
};
};
As you can see I combined 3 sensors into 1 device tree, since they are part of the same family/footprint. After some work I found out the V4L command how to select the proper mode:
v4l2-ctl -w --verbose --set-ctrl=sensor_mode=2 --set-fmt-video=width=4096,height=2169,pixelformat=RG12 --stream-mmap --stream-count=3 -d /dev/video0 --stream-to=test.raw
Please note that to capture frames I have to use 2169 lines, otherwise V4L will not output. I get the following output from the debugging stream:
root@Falco-TX2:/home/nvidia# 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 998400000 > /sys/kernel/debug/bpmp/debug/clk/vi/rate;echo 1088000000 > /sys/kernel/debug/bpmp/debug/clk/isp/rate;echo 225000000 > /sys/kernel/debug/bpmp/debug/clk/nvcsi/rate;
root@Falco-TX2:/home/nvidia# echo 1 > /sys/kernel/debug/tracing/tracing_on;echo 30720 > /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;echo > /sys/kernel/debug/tracing/trace;cat /sys/kernel/debug/tracing/trace;
nvidia@Falco-TX2:~$ v4l2-ctl -w --verbose --set-ctrl=sensor_mode=2 --set-fmt-video=width=4096,height=2169,pixelformat=RG12 --stream-mmap --stream-count=3 -d /dev/video0 --stream-to=test.raw
Opening in BLOCKING MODE
VIDIOC_QUERYCAP: ok
VIDIOC_S_EXT_CTRLS: ok
VIDIOC_G_FMT: ok
VIDIOC_S_FMT: ok
Format Video Capture:
Width/Height : 4096/2169
Pixel Format : 'RG12'
Field : None
Bytes per Line : 8192
Size Image : 17768448
Colorspace : sRGB
Transfer Function : Default (maps to sRGB)
YCbCr/HSV Encoding: Default (maps to ITU-R 601)
Quantization : Default (maps to Full Range)
Flags :
VIDIOC_REQBUFS: ok
VIDIOC_QUERYBUF: ok
VIDIOC_QBUF: ok
VIDIOC_QUERYBUF: ok
VIDIOC_QBUF: ok
VIDIOC_QUERYBUF: ok
VIDIOC_QBUF: ok
VIDIOC_QUERYBUF: ok
VIDIOC_QBUF: ok
VIDIOC_STREAMON: ok
Index : 0
Type : Video Capture
Flags : mapped
Field : None
Sequence : 0
Length : 17768448
Bytesused: 17768448
Timestamp: 0.000000s (Monotonic, End-of-Frame)
Index : 1
Type : Video Capture
Flags : mapped
Field : None
Sequence : 1
Length : 17768448
Bytesused: 17768448
Timestamp: 0.000000s (Monotonic, End-of-Frame)
Index : 2
Type : Video Capture
Flags : mapped
Field : None
Sequence : 2
Length : 17768448
Bytesused: 17768448
Timestamp: 0.000000s (Monotonic, End-of-Frame)
VIDIOC_STREAMOFF: ok
nvidia@Falco-TX2:~$ sudo cat /sys/kernel/debug/tracing/trace
# tracer: nop
#
# entries-in-buffer/entries-written: 132/132 #P:4
#
# _-----=> irqs-off
# / _----=> need-resched
# | / _---=> hardirq/softirq
# || / _--=> preempt-depth
# ||| / delay
# TASK-PID CPU# |||| TIMESTAMP FUNCTION
# | | | |||| | |
v4l2-ctl-10808 [003] .... 1783.659874: tegra_channel_open: vi-output, imx26x 34-001a
v4l2-ctl-10808 [000] .... 1783.667249: tegra_channel_set_power: imx26x 34-001a : 0x1
v4l2-ctl-10808 [000] .... 1783.667289: camera_common_s_power: status : 0x1
v4l2-ctl-10808 [000] .... 1783.709331: tegra_channel_set_power: 150c0000.nvcsi--1 : 0x1
v4l2-ctl-10808 [000] .... 1783.709344: csi_s_power: enable : 0x1
v4l2-ctl-10808 [005] .... 1783.812749: tegra_channel_capture_setup: vnc_id 0 W 4096 H 2169 fmt 20
vi-output, imx2-10809 [000] .... 1783.813143: tegra_channel_set_stream: enable : 0x1
vi-output, imx2-10809 [000] .... 1783.814319: tegra_channel_set_stream: 150c0000.nvcsi--1 : 0x1
vi-output, imx2-10809 [000] .... 1783.814322: csi_s_stream: enable : 0x1
vi-output, imx2-10809 [000] .... 1783.814357: tegra_channel_set_stream: imx26x 34-001a : 0x1
kworker/3:2-10725 [003] .... 1783.837498: rtos_queue_peek_from_isr_failed: tstamp:56104192428 queue:0x0b4b4500
kworker/3:2-10725 [003] .... 1783.837502: rtcpu_start: tstamp:56104193303
kworker/3:2-10725 [003] .... 1783.837504: rtos_queue_send_from_isr_failed: tstamp:56104201406 queue:0x0b4a7258
kworker/3:2-10725 [003] .... 1783.837505: rtos_queue_send_from_isr_failed: tstamp:56104201513 queue:0x0b4aad68
kworker/3:2-10725 [003] .... 1783.837506: rtos_queue_send_from_isr_failed: tstamp:56104201620 queue:0x0b4ac998
kworker/3:2-10725 [003] .... 1783.837506: rtos_queue_send_from_isr_failed: tstamp:56104201726 queue:0x0b4ae518
kworker/3:2-10725 [003] .... 1783.837507: rtos_queue_send_from_isr_failed: tstamp:56104201831 queue:0x0b4af2d8
kworker/3:2-10725 [003] .... 1783.837507: rtos_queue_send_from_isr_failed: tstamp:56104201936 queue:0x0b4b0098
kworker/3:2-10725 [003] .... 1783.837508: rtos_queue_send_from_isr_failed: tstamp:56104202040 queue:0x0b4b0e58
kworker/3:2-10725 [003] .... 1783.837509: rtos_queue_send_from_isr_failed: tstamp:56104202144 queue:0x0b4b1c18
kworker/3:2-10725 [003] .... 1783.837510: rtos_queue_send_failed: tstamp:56104202600 queue:0x0b4a7258
kworker/3:2-10725 [003] .... 1783.837511: rtos_queue_send_from_isr_failed: tstamp:56104204392 queue:0x0b4a7258
kworker/3:2-10725 [003] .... 1783.837511: rtos_queue_send_from_isr_failed: tstamp:56104204508 queue:0x0b4aad68
kworker/3:2-10725 [003] .... 1783.837512: rtos_queue_send_from_isr_failed: tstamp:56104204613 queue:0x0b4ac998
kworker/3:2-10725 [003] .... 1783.837512: rtos_queue_send_from_isr_failed: tstamp:56104204729 queue:0x0b4ae518
kworker/3:2-10725 [003] .... 1783.837513: rtos_queue_send_from_isr_failed: tstamp:56104204836 queue:0x0b4af2d8
kworker/3:2-10725 [003] .... 1783.837514: rtos_queue_send_from_isr_failed: tstamp:56104204939 queue:0x0b4b0098
kworker/3:2-10725 [003] .... 1783.837514: rtos_queue_send_from_isr_failed: tstamp:56104205046 queue:0x0b4b0e58
kworker/3:2-10725 [003] .... 1783.837515: rtos_queue_send_from_isr_failed: tstamp:56104205152 queue:0x0b4b1c18
kworker/3:2-10725 [003] .... 1783.837515: rtos_queue_send_failed: tstamp:56104206099 queue:0x0b4a7258
kworker/3:2-10725 [003] .... 1784.005274: rtos_queue_peek_from_isr_failed: tstamp:56109192810 queue:0x0b4b4500
kworker/3:2-10725 [003] .... 1784.173310: rtos_queue_peek_from_isr_failed: tstamp:56114192804 queue:0x0b4b4500
kworker/3:2-10725 [003] .... 1784.341336: rtos_queue_peek_from_isr_failed: tstamp:56119192810 queue:0x0b4b4500
vi-output, imx2-10809 [000] .... 1784.348677: tegra_channel_capture_frame: sof:1784.499334458
kworker/3:2-10725 [003] .... 1784.397301: rtcpu_vinotify_event: tstamp:56120951349 tag:CHANSEL_PXL_SOF channel:0x00 frame:1 vi_tstamp:56120950833 data:0x00000001
kworker/3:2-10725 [003] .... 1784.397307: rtcpu_vinotify_event: tstamp:56120951572 tag:ATOMP_FS channel:0x00 frame:1 vi_tstamp:56120950836 data:0x00000000
kworker/3:2-10725 [003] .... 1784.397309: rtcpu_vinotify_event: tstamp:56120956537 tag:CHANSEL_LOAD_FRAMED channel:0x10 frame:1 vi_tstamp:56120956163 data:0x08000000
kworker/3:2-10725 [003] .... 1784.397312: rtcpu_vinotify_event: tstamp:56122424848 tag:CHANSEL_PXL_EOF channel:0x00 frame:1 vi_tstamp:56122424179 data:0x08780002
kworker/3:2-10725 [003] .... 1784.397314: rtcpu_vinotify_event: tstamp:56122425001 tag:ATOMP_FE channel:0x00 frame:1 vi_tstamp:56122424210 data:0x00000000
vi-output, imx2-10809 [000] .... 1784.398647: tegra_channel_capture_frame: sof:1784.549330234
vi-output, imx2-10809 [000] .... 1784.448674: tegra_channel_capture_frame: sof:1784.599326042
kworker/3:2-10725 [003] .... 1784.453317: rtcpu_vinotify_event: tstamp:56122513712 tag:CHANSEL_PXL_SOF channel:0x00 frame:2 vi_tstamp:56122513201 data:0x00000001
kworker/3:2-10725 [003] .... 1784.453321: rtcpu_vinotify_event: tstamp:56122513919 tag:ATOMP_FS channel:0x00 frame:2 vi_tstamp:56122513205 data:0x00000000
kworker/3:2-10725 [003] .... 1784.453323: rtcpu_vinotify_event: tstamp:56122518000 tag:CHANSEL_LOAD_FRAMED channel:0x10 frame:2 vi_tstamp:56122517628 data:0x08000000
kworker/3:2-10725 [003] .... 1784.453325: rtcpu_vinotify_event: tstamp:56123987215 tag:CHANSEL_PXL_EOF channel:0x00 frame:2 vi_tstamp:56123986547 data:0x08780002
kworker/3:2-10725 [003] .... 1784.453326: rtcpu_vinotify_event: tstamp:56123987367 tag:ATOMP_FE channel:0x00 frame:2 vi_tstamp:56123986579 data:0x00000000
kworker/3:2-10725 [003] .... 1784.453328: rtcpu_vinotify_event: tstamp:56124076079 tag:CHANSEL_PXL_SOF channel:0x00 frame:1 vi_tstamp:56124075570 data:0x00000001
kworker/3:2-10725 [003] .... 1784.453330: rtcpu_vinotify_event: tstamp:56124076285 tag:ATOMP_FS channel:0x00 frame:1 vi_tstamp:56124075574 data:0x00000000
kworker/3:2-10725 [003] .... 1784.453331: rtcpu_vinotify_event: tstamp:56124081355 tag:CHANSEL_LOAD_FRAMED channel:0x10 frame:1 vi_tstamp:56124080983 data:0x08000000
kworker/3:2-10725 [003] .... 1784.453335: rtos_queue_peek_from_isr_failed: tstamp:56124192816 queue:0x0b4b4500
vi-output, imx2-10809 [000] .... 1784.498585: tegra_channel_capture_frame: sof:1784.649321882
kworker/3:2-10725 [003] .... 1784.509237: rtcpu_vinotify_event: tstamp:56125549563 tag:CHANSEL_PXL_EOF channel:0x00 frame:1 vi_tstamp:56125548916 data:0x08780002
kworker/3:2-10725 [003] .... 1784.509238: rtcpu_vinotify_event: tstamp:56125549679 tag:ATOMP_FE channel:0x00 frame:1 vi_tstamp:56125548949 data:0x00000000
kworker/3:2-10725 [003] .... 1784.509239: rtcpu_vinotify_event: tstamp:56125638425 tag:CHANSEL_PXL_SOF channel:0x00 frame:2 vi_tstamp:56125637940 data:0x00000001
kworker/3:2-10725 [003] .... 1784.509239: rtcpu_vinotify_event: tstamp:56125638587 tag:ATOMP_FS channel:0x00 frame:2 vi_tstamp:56125637943 data:0x00000000
vi-output, imx2-10809 [000] .... 1784.548576: tegra_channel_capture_frame: sof:1784.699317658
kworker/3:2-10725 [003] .... 1784.565233: rtcpu_vinotify_event: tstamp:56126159670 tag:CHANSEL_LOAD_FRAMED channel:0x10 frame:2 vi_tstamp:56126159306 data:0x08000000
kworker/3:2-10725 [003] .... 1784.565236: rtcpu_vinotify_event: tstamp:56127111935 tag:CHANSEL_PXL_EOF channel:0x00 frame:2 vi_tstamp:56127111285 data:0x08780002
kworker/3:2-10725 [003] .... 1784.565236: rtcpu_vinotify_event: tstamp:56127112054 tag:ATOMP_FE channel:0x00 frame:2 vi_tstamp:56127111317 data:0x00000000
kworker/3:2-10725 [003] .... 1784.565237: rtcpu_vinotify_event: tstamp:56127200793 tag:CHANSEL_PXL_SOF channel:0x00 frame:1 vi_tstamp:56127200308 data:0x00000001
kworker/3:2-10725 [003] .... 1784.565237: rtcpu_vinotify_event: tstamp:56127200954 tag:ATOMP_FS channel:0x00 frame:1 vi_tstamp:56127200311 data:0x00000000
vi-output, imx2-10809 [000] .... 1784.598577: tegra_channel_capture_frame: sof:1784.749313434
kworker/3:2-10725 [003] .... 1784.621246: rtcpu_vinotify_event: tstamp:56127936319 tag:CHANSEL_LOAD_FRAMED channel:0x10 frame:1 vi_tstamp:56127935954 data:0x08000000
kworker/3:2-10725 [003] .... 1784.621249: rtcpu_vinotify_event: tstamp:56128674299 tag:CHANSEL_PXL_EOF channel:0x00 frame:1 vi_tstamp:56128673653 data:0x08780002
kworker/3:2-10725 [003] .... 1784.621250: rtcpu_vinotify_event: tstamp:56128674419 tag:ATOMP_FE channel:0x00 frame:1 vi_tstamp:56128673686 data:0x00000000
kworker/3:2-10725 [003] .... 1784.621250: rtcpu_vinotify_event: tstamp:56128763165 tag:CHANSEL_PXL_SOF channel:0x00 frame:2 vi_tstamp:56128762676 data:0x00000001
kworker/3:2-10725 [003] .... 1784.621251: rtcpu_vinotify_event: tstamp:56128763326 tag:ATOMP_FS channel:0x00 frame:2 vi_tstamp:56128762680 data:0x00000000
kworker/3:2-10725 [003] .... 1784.621253: rtos_queue_peek_from_isr_failed: tstamp:56129192801 queue:0x0b4b4500
vi-output, imx2-10809 [000] .... 1784.648582: tegra_channel_capture_frame: sof:1784.799309242
v4l2-ctl-10808 [003] .... 1784.648907: tegra_channel_set_stream: enable : 0x0
v4l2-ctl-10808 [003] .... 1784.648909: tegra_channel_set_stream: imx26x 34-001a : 0x0
kworker/3:2-10725 [003] .... 1784.677300: rtcpu_vinotify_event: tstamp:56129692765 tag:CHANSEL_LOAD_FRAMED channel:0x10 frame:2 vi_tstamp:56129692400 data:0x08000000
kworker/3:2-10725 [003] .... 1784.677308: rtcpu_vinotify_event: tstamp:56130236698 tag:CHANSEL_PXL_EOF channel:0x00 frame:2 vi_tstamp:56130236022 data:0x08780002
kworker/3:2-10725 [003] .... 1784.677311: rtcpu_vinotify_event: tstamp:56130236863 tag:ATOMP_FE channel:0x00 frame:2 vi_tstamp:56130236054 data:0x00000000
kworker/3:2-10725 [003] .... 1784.677313: rtcpu_vinotify_event: tstamp:56130325552 tag:CHANSEL_PXL_SOF channel:0x00 frame:1 vi_tstamp:56130325045 data:0x00000001
kworker/3:2-10725 [003] .... 1784.677316: rtcpu_vinotify_event: tstamp:56130325758 tag:ATOMP_FS channel:0x00 frame:1 vi_tstamp:56130325049 data:0x00000000
kworker/3:2-10725 [003] .... 1784.677323: rtos_queue_send_from_isr_failed: tstamp:56130329254 queue:0x0b4a7258
kworker/3:2-10725 [003] .... 1784.677326: rtos_queue_send_from_isr_failed: tstamp:56130329400 queue:0x0b4aad68
kworker/3:2-10725 [003] .... 1784.677329: rtos_queue_send_from_isr_failed: tstamp:56130329544 queue:0x0b4ac998
kworker/3:2-10725 [003] .... 1784.677331: rtos_queue_send_from_isr_failed: tstamp:56130329687 queue:0x0b4ae518
kworker/3:2-10725 [003] .... 1784.677334: rtos_queue_send_from_isr_failed: tstamp:56130329827 queue:0x0b4af2d8
kworker/3:2-10725 [003] .... 1784.677336: rtos_queue_send_from_isr_failed: tstamp:56130329967 queue:0x0b4b0098
kworker/3:2-10725 [003] .... 1784.677339: rtos_queue_send_from_isr_failed: tstamp:56130330111 queue:0x0b4b0e58
kworker/3:2-10725 [003] .... 1784.677342: rtos_queue_send_from_isr_failed: tstamp:56130330251 queue:0x0b4b1c18
kworker/3:2-10725 [003] .... 1784.677344: rtcpu_vinotify_event: tstamp:56130330419 tag:CHANSEL_LOAD_FRAMED channel:0x10 frame:1 vi_tstamp:56130328541 data:0x08000000
kworker/3:2-10725 [003] .... 1784.677346: rtcpu_vinotify_event: tstamp:56130330561 tag:CHANSEL_FAULT_FE channel:0x10 frame:1 vi_tstamp:56130328541 data:0x00000001
kworker/3:2-10725 [003] .... 1784.677349: rtcpu_vinotify_event: tstamp:56130330801 tag:ATOMP_FE channel:0x00 frame:1 vi_tstamp:56130328541 data:0x00000000
kworker/3:2-10725 [003] .... 1784.677354: rtos_queue_send_failed: tstamp:56130331629 queue:0x0b4a7258
kworker/3:2-10725 [003] .... 1784.677356: rtos_queue_send_from_isr_failed: tstamp:56130333382 queue:0x0b4a7258
kworker/3:2-10725 [003] .... 1784.677359: rtos_queue_send_from_isr_failed: tstamp:56130333523 queue:0x0b4aad68
kworker/3:2-10725 [003] .... 1784.677361: rtos_queue_send_from_isr_failed: tstamp:56130333661 queue:0x0b4ac998
kworker/3:2-10725 [003] .... 1784.677363: rtos_queue_send_from_isr_failed: tstamp:56130333801 queue:0x0b4ae518
kworker/3:2-10725 [003] .... 1784.677366: rtos_queue_send_from_isr_failed: tstamp:56130333940 queue:0x0b4af2d8
kworker/3:2-10725 [003] .... 1784.677368: rtos_queue_send_from_isr_failed: tstamp:56130334076 queue:0x0b4b0098
kworker/3:2-10725 [003] .... 1784.677370: rtos_queue_send_from_isr_failed: tstamp:56130334214 queue:0x0b4b0e58
kworker/3:2-10725 [003] .... 1784.677373: rtos_queue_send_from_isr_failed: tstamp:56130334351 queue:0x0b4b1c18
kworker/3:2-10725 [003] .... 1784.677375: rtos_queue_send_failed: tstamp:56130334903 queue:0x0b4a7258
kworker/3:2-10725 [003] .... 1784.789306: rtos_queue_peek_from_isr_failed: tstamp:56134192832 queue:0x0b4b4500
kworker/3:2-10725 [003] .... 1784.957304: rtos_queue_peek_from_isr_failed: tstamp:56139192839 queue:0x0b4b4500
kworker/3:2-10725 [003] .... 1785.125303: rtos_queue_peek_from_isr_failed: tstamp:56144192843 queue:0x0b4b4500
v4l2-ctl-10808 [000] .... 1785.150743: tegra_channel_set_stream: 150c0000.nvcsi--1 : 0x0
v4l2-ctl-10808 [000] .... 1785.150753: csi_s_stream: enable : 0x0
v4l2-ctl-10808 [000] .... 1785.186493: tegra_channel_close: vi-output, imx26x 34-001a
v4l2-ctl-10808 [000] .... 1785.191728: tegra_channel_set_power: imx26x 34-001a : 0x0
v4l2-ctl-10808 [000] .... 1785.191740: camera_common_s_power: status : 0x0
v4l2-ctl-10808 [000] .... 1785.192125: tegra_channel_set_power: 150c0000.nvcsi--1 : 0x0
v4l2-ctl-10808 [000] .... 1785.192128: csi_s_power: enable : 0x0
kworker/3:2-10725 [003] .... 1785.293205: rtos_queue_peek_from_isr_failed: tstamp:56149192851 queue:0x0b4b4500
kworker/3:0-10283 [003] .... 1785.461253: rtos_queue_peek_from_isr_failed: tstamp:56154192840 queue:0x0b4b4500
kworker/3:2-10725 [003] .... 1785.573238: rtos_queue_peek_from_isr_failed: tstamp:56159192898 queue:0x0b4b4500
kworker/3:2-10725 [003] .... 1785.741311: rtos_queue_peek_from_isr_failed: tstamp:56164192878 queue:0x0b4b4500
kworker/3:2-10725 [003] .... 1785.909291: rtos_queue_peek_from_isr_failed: tstamp:56169192879 queue:0x0b4b4500
kworker/3:2-10725 [003] .... 1786.077263: rtos_queue_peek_from_isr_failed: tstamp:56174192885 queue:0x0b4b4500
kworker/3:2-10725 [003] .... 1786.245287: rtos_queue_peek_from_isr_failed: tstamp:56179192890 queue:0x0b4b4500
kworker/3:2-10725 [003] .... 1786.413281: rtos_queue_peek_from_isr_failed: tstamp:56184192898 queue:0x0b4b4500
kworker/3:2-10725 [003] .... 1786.581286: rtos_queue_peek_from_isr_failed: tstamp:56189192903 queue:0x0b4b4500
kworker/3:2-10725 [003] .... 1786.693307: rtos_queue_peek_from_isr_failed: tstamp:56194192924 queue:0x0b4b4500
kworker/3:2-10725 [003] .... 1786.861367: rtos_queue_peek_from_isr_failed: tstamp:56199192919 queue:0x0b4b4500
kworker/3:2-10725 [003] .... 1787.029323: rtos_queue_peek_from_isr_failed: tstamp:56204192925 queue:0x0b4b4500
kworker/3:2-10725 [003] .... 1787.197304: rtos_queue_peek_from_isr_failed: tstamp:56209192931 queue:0x0b4b4500
kworker/3:2-10725 [003] .... 1787.365294: rtos_queue_peek_from_isr_failed: tstamp:56214192974 queue:0x0b4b4500
kworker/3:2-10725 [003] .... 1787.533286: rtos_queue_peek_from_isr_failed: tstamp:56219192957 queue:0x0b4b4500
kworker/3:2-10725 [003] .... 1787.701302: rtos_queue_peek_from_isr_failed: tstamp:56224192967 queue:0x0b4b4500
kworker/3:2-10725 [003] .... 1787.813279: rtos_queue_peek_from_isr_failed: tstamp:56229192960 queue:0x0b4b4500
kworker/3:2-10725 [003] .... 1787.981262: rtos_queue_peek_from_isr_failed: tstamp:56234192966 queue:0x0b4b4500
kworker/3:2-10725 [003] .... 1788.149190: rtos_queue_peek_from_isr_failed: tstamp:56239192974 queue:0x0b4b4500
kworker/3:2-10725 [003] .... 1788.317284: rtos_queue_peek_from_isr_failed: tstamp:56244192993 queue:0x0b4b4500
kworker/3:2-10725 [003] .... 1788.485292: rtos_queue_peek_from_isr_failed: tstamp:56249192985 queue:0x0b4b4500
kworker/3:2-10725 [003] .... 1788.653282: rtos_queue_peek_from_isr_failed: tstamp:56254192995 queue:0x0b4b4500
kworker/3:2-10725 [003] .... 1788.821271: rtos_queue_peek_from_isr_failed: tstamp:56259193001 queue:0x0b4b4500
kworker/3:2-10725 [003] .... 1788.933246: rtos_queue_peek_from_isr_failed: tstamp:56264193007 queue:0x0b4b4500
kworker/3:2-10725 [003] .... 1789.101279: rtos_queue_peek_from_isr_failed: tstamp:56269193013 queue:0x0b4b4500
nvidia@Falco-TX2:~$
See the resulting image in the attachment to this post. Because it will only capture in 2169 lines (uneven), the frames will vary in color because the debayering gets messed up. Also, you can see the spare 9 lines as black bars between the images. If I change the sensor output number of lines, it will just shift with it, also I can only put multiples of 4 as number of output lines.
Has anyone experienced this before and can help me? I’m really doubting whether this is a sensor ‘fault’ (note that I’ve tried multiple sensors, including IMX264’s), a FPGA Crosslink fault (this is a black box IP, I suppose it should be working correctly) or a TX2 capturing fault?
We have managed to get a IMX327 working before, but there was no FPGA involved for that sensor.
Many thanks in advance,
Falco