Hello,
I have two sensors on my board with two different errors.
Sensors are working on a Jetson Nano.
SENSOR 1
I have an error when I try to test my sensor with command:
v4l2-ctl --set-fmt-video=width=2472,height=2064,pixelformat=RG10 --stream-mmap --stream-count=1 -d /dev/video0 --stream-to=test.raw
dmesg:
[ 180.503259] imx264 spi0.2: imx264_open:
[ 180.503292] imx264 spi0.3: imx264_open:
[ 180.514341] spi name: imx250_or_imx530
[ 180.514351] dev: 000000007078c649
[ 180.514354] dev name: (null)
[ 180.514357] num modes 1
[ 180.526095] imx264 spi0.2: imx264_power_on: power on
[ 180.526105] imx264 spi0.2: imx264_power_on : set_value(reset_gpio, 0)
[ 180.526264] imx264 spi0.2: imx264_power_on : set_value(af_gpio, 1)
[ 180.859295] imx264 spi0.2: imx264_power_on : set_value(reset_gpio, 1)
[ 180.863798] bwmgr API not supported
[ 180.872756] imx264 spi0.2: imx264_s_stream++(enable=1)
[ 180.872877] imx264 spi0.2: imx264_s_stream mode[2064]
[ 180.872879] common_data->fmt_width, fmt_height = 2472, 2064
[ 180.872881] imx264 spi0.2: write table 2064
[ 180.876361] imx264 spi0.2: imx264_set_frame_rate : framerate_fps = 67
[ 180.876364] err = 0, current_hmax = 502
[ 180.876365] val = 281857228, framerate_fps = 67, new_vmax = 2201
[ 180.876367] min_vmax = 195
[ 180.876674] imx264 spi0.2: imx264_set_frame_rate: write 2201 into vmax
[ 180.876765] current_vmax = 2201, min_shs = 34
[ 180.876767] current_hmax = 502, min = 20, max = 14664
[ 180.877133] imx264 spi0.2: exposure _us = 9998, _ns = 9984270, _lines = 1477, current_vmax = 2201, computed_shs = 724, new_shs = 724
[ 180.877486] imx264 spi0.2: imx264_set_nvidia_exposure: val: 41933
[ 180.877851] imx264 spi0.2: exposure _us = 9997, _ns = 9983270, _lines = 1477, current_vmax = 2201, computed_shs = 724, new_shs = 724
[ 180.877853] current SHS is 724; not changing it to 724
[ 180.877855] imx264 spi0.2: imx264_set_nvidia_exposure: val: 41933
[ 180.878218] imx264 spi0.2: exposure _us = 9997, _ns = 9983270, _lines = 1477, current_vmax = 2201, computed_shs = 724, new_shs = 724
[ 180.878220] current SHS is 724; not changing it to 724
[ 180.878877] 0x0202 val = 0x0
[ 180.878927] STBLVDS val = 0x2
[ 180.878982] ADBIT val = 0x0
[ 180.879299] HMODE/WINMODE val = 0x0
[ 180.879354] VMAX val = 0x899 (2201)
[ 180.879407] HMAX val = 0x1f6 (502)
[ 180.879457] ODBIT val = 0x50
[ 180.879513] CKSEL val = 0x2
[ 180.879847] FREQ val = 0x1d
[ 180.879904] OPORTSEL val = 0x0
[ 180.880209] INCKSEL0 val = 0x0
[ 180.880265] INCKSEL1 val = 0x0
[ 180.880574] INCKSEL2 val = 0x0
[ 180.880629] INCKSEL3 val = 0x0
[ 180.880940] SHS val = 0x2d4 (724)
[ 180.880995] GTWAIT val = 0x0
[ 180.881301] GSDLY val = 0x0
[ 180.881356] 0x120d val = 0xf
[ 180.881666] 0x129e val = 0xff
[ 180.881668] imx264 spi0.2: configure "normal" orientation
[ 180.881960] mode 0 disables test pattern generation
[ 180.882781] imx264 spi0.2: imx264_s_stream: write table start
[ 183.515413] tegra-camrtc-capture-vi tegra-capture-vi: uncorr_err: request timed out after 2500 ms
[ 183.515712] tegra-camrtc-capture-vi tegra-capture-vi: err_rec: attempting to reset the capture channel
[ 183.516215] (NULL device *): vi_capture_control_message: NULL VI channel received
[ 183.516443] t194-nvcsi 13e40000.host1x:nvcsi@15a00000: csi5_stream_close: Error in closing stream_id=0, csi_port=0
[ 183.516730] (NULL device *): vi_capture_control_message: NULL VI channel received
[ 183.516936] t194-nvcsi 13e40000.host1x:nvcsi@15a00000: csi5_stream_open: VI channel not found for stream- 0 vc- 0
[ 183.517503] tegra-camrtc-capture-vi tegra-capture-vi: err_rec: successfully reset the capture channel
[ 186.043207] tegra-camrtc-capture-vi tegra-capture-vi: uncorr_err: request timed out after 2500 ms
[ 186.043499] tegra-camrtc-capture-vi tegra-capture-vi: err_rec: attempting to reset the capture channel
[ 186.044091] (NULL device *): vi_capture_control_message: NULL VI channel received
[ 186.044316] t194-nvcsi 13e40000.host1x:nvcsi@15a00000: csi5_stream_close: Error in closing stream_id=0, csi_port=0
[ 186.044597] (NULL device *): vi_capture_control_message: NULL VI channel received
[ 186.044801] t194-nvcsi 13e40000.host1x:nvcsi@15a00000: csi5_stream_open: VI channel not found for stream- 0 vc- 0
[ 186.045546] tegra-camrtc-capture-vi tegra-capture-vi: err_rec: successfully reset the capture channel
[ 186.045919] imx264 spi0.2: imx264_s_stream++(enable=0)
[ 186.063486] bwmgr API not supported
[ 186.073111] imx264 spi0.2: imx264_power_off: power off
[ 186.073390] imx264 spi0.2: imx264_power_off : set_value(reset_gpio, 1).
[ 186.073511] af 0
Trace:
root@ubuntu:/home/nvidia/test_scripts# cat /sys/kernel/debug/tracing/trace
# tracer: nop
#
# entries-in-buffer/entries-written: 292311/292311 #P:4
#
# _-----=> irqs-off
# / _----=> need-resched
# | / _---=> hardirq/softirq
# || / _--=> preempt-depth
# ||| / delay
# TASK-PID CPU# |||| TIMESTAMP FUNCTION
# | | | |||| | |
v4l2-ctl-2062 [003] .... 180.499315: tegra_channel_open: vi-output, imx264 spi0.2
v4l2-ctl-2062 [003] .... 180.500621: tegra_channel_close: vi-output, imx264 spi0.2
v4l2-ctl-2063 [003] .... 180.503183: tegra_channel_open: vi-output, imx264 spi0.2
v4l2-ctl-2063 [003] .... 180.503199: tegra_channel_close: vi-output, imx264 spi0.2
v4l2-ctl-2063 [003] .... 180.503217: tegra_channel_open: vi-output, imx264 spi0.3
v4l2-ctl-2063 [003] .... 180.503223: tegra_channel_close: vi-output, imx264 spi0.3
v4l2-ctl-2063 [003] .... 180.503979: tegra_channel_open: vi-output, imx264 spi0.2
v4l2-ctl-2063 [003] .... 180.504149: tegra_channel_close: vi-output, imx264 spi0.2
v4l2-ctl-2064 [000] .... 180.507239: tegra_channel_open: vi-output, imx264 spi0.2
kworker/3:3-101 [003] .... 180.507295: rtcpu_string: tstamp:6009090912 id:0x04010000 str:"VM0 activating."
kworker/3:3-101 [003] .... 180.507299: rtcpu_dbg_set_loglevel: tstamp:6009211611 old:2 new:2
v4l2-ctl-2064 [000] .... 180.507787: tegra_channel_close: vi-output, imx264 spi0.2
v4l2-ctl-2065 [003] .... 180.510182: tegra_channel_open: vi-output, imx264 spi0.3
v4l2-ctl-2065 [003] .... 180.510606: tegra_channel_close: vi-output, imx264 spi0.3
v4l2-ctl-2066 [003] .... 180.514027: tegra_channel_open: vi-output, imx264 spi0.2
v4l2-ctl-2066 [003] .... 180.526071: tegra_channel_set_power: imx264 spi0.2 : 0x1
v4l2-ctl-2066 [003] .... 180.526086: camera_common_s_power: status : 0x1
v4l2-ctl-2066 [003] .... 180.860990: tegra_channel_set_power: 13e40000.host1x:nvcsi@15a00000- : 0x1
v4l2-ctl-2066 [003] .... 180.860994: csi_s_power: enable : 0x1
v4l2-ctl-2066 [003] .... 180.861823: tegra_channel_capture_setup: vnc_id 0 W 2472 H 2064 fmt c4
v4l2-ctl-2066 [000] .... 180.862559: tegra_channel_set_stream: enable : 0x1
v4l2-ctl-2066 [000] .... 180.872453: tegra_channel_set_stream: 13e40000.host1x:nvcsi@15a00000- : 0x1
v4l2-ctl-2066 [000] .... 180.872456: csi_s_stream: enable : 0x1
v4l2-ctl-2066 [000] .... 180.872750: tegra_channel_set_stream: imx264 spi0.2 : 0x1
kworker/3:3-101 [003] .... 180.899268: rtcpu_vinotify_event: tstamp:6022234461 cch:0 vi:0 tag:VIFALC_TDSTATE channel:0x23 frame:0 vi_tstamp:192701170048 data:0x719d580010000000
kworker/3:3-101 [003] .... 180.899269: rtcpu_vinotify_event: tstamp:6022234597 cch:0 vi:0 tag:VIFALC_TDSTATE channel:0x23 frame:0 vi_tstamp:192701176480 data:0x0000000031000001
kworker/3:3-101 [003] .... 180.899269: rtcpu_vinotify_event: tstamp:6022234750 cch:0 vi:0 tag:VIFALC_TDSTATE channel:0x23 frame:0 vi_tstamp:192701226848 data:0x719d550010000000
kworker/3:3-101 [003] .... 180.899270: rtcpu_vinotify_event: tstamp:6022234889 cch:0 vi:0 tag:VIFALC_TDSTATE channel:0x23 frame:0 vi_tstamp:192701233408 data:0x0000000031000002
kworker/3:3-101 [003] .... 180.899272: rtcpu_nvcsi_intr: tstamp:6022587875 class:GLOBAL type:PHY_INTR0 phy:0 cil:0 st:0 vc:0 status:0x00000001
kworker/3:3-101 [003] .... 180.899272: rtcpu_nvcsi_intr: tstamp:6022740404 class:GLOBAL type:PHY_INTR0 phy:0 cil:0 st:0 vc:0 status:0x00000080
kworker/3:3-101 [003] .... 180.899272: rtcpu_nvcsi_intr: tstamp:6022740750 class:GLOBAL type:PHY_INTR0 phy:0 cil:0 st:0 vc:0 status:0x00000080
kworker/3:3-101 [003] .... 180.899273: rtcpu_nvcsi_intr: tstamp:6022741460 class:GLOBAL type:PHY_INTR0 phy:0 cil:0 st:0 vc:0 status:0x00000080
kworker/3:3-101 [003] .... 180.899273: rtcpu_nvcsi_intr: tstamp:6022742935 class:GLOBAL type:PHY_INTR0 phy:0 cil:0 st:0 vc:0 status:0x00000080
kworker/3:3-101 [003] .... 180.899273: rtcpu_nvcsi_intr: tstamp:6022743267 class:GLOBAL type:PHY_INTR0 phy:0 cil:0 st:0 vc:0 status:0x00000080
kworker/3:3-101 [003] .... 180.899273: rtcpu_nvcsi_intr: tstamp:6022743780 class:GLOBAL type:PHY_INTR0 phy:0 cil:0 st:0 vc:0 status:0x00000080
kworker/3:3-101 [003] .... 180.899273: rtcpu_nvcsi_intr: tstamp:6022744204 class:GLOBAL type:PHY_INTR0 phy:0 cil:0 st:0 vc:0 status:0x00000080
kworker/3:3-101 [003] .... 180.899273: rtcpu_nvcsi_intr: tstamp:6022744543 class:GLOBAL type:PHY_INTR0 phy:0 cil:0 st:0 vc:0 status:0x00000080
...
SENSOR 2
I have an error when I try to test my sensor with command:
v4l2-ctl --set-fmt-video=width=2472,height=2064,pixelformat=RG10 --stream-mmap --stream-count=1 -d /dev/video1 --stream-to=test.raw
dmesg:
[ 51.144225] imx264 spi0.2: imx264_open:
[ 51.144242] imx264 spi0.3: imx264_open:
[ 51.153068] spi name: imx250_or_imx530
[ 51.153072] dev: 000000004b6098de
[ 51.153074] dev name: (null)
[ 51.153076] num modes 1
[ 51.164618] imx264 spi0.3: imx264_power_on: power on
[ 51.164627] imx264 spi0.3: imx264_power_on : set_value(reset_gpio, 0)
[ 51.164790] imx264 spi0.3: imx264_power_on : set_value(af_gpio, 1)
[ 51.486407] imx264 spi0.3: imx264_power_on : set_value(reset_gpio, 1)
[ 51.493959] bwmgr API not supported
[ 51.502293] imx264 spi0.3: imx264_s_stream++(enable=1)
[ 51.502413] imx264 spi0.3: imx264_s_stream mode[2064]
[ 51.502415] common_data->fmt_width, fmt_height = 2472, 2064
[ 51.502418] imx264 spi0.3: write table 2064
[ 51.508773] imx264 spi0.3: imx264_set_frame_rate : framerate_fps = 67
[ 51.508776] err = 0, current_hmax = 502
[ 51.508778] val = 281857228, framerate_fps = 67, new_vmax = 2201
[ 51.508779] min_vmax = 195
[ 51.509486] imx264 spi0.3: imx264_set_frame_rate: write 2201 into vmax
[ 51.509856] current_vmax = 2201, min_shs = 34
[ 51.509858] current_hmax = 502, min = 20, max = 14664
[ 51.509862] imx264 spi0.3: imx264_set_nvidia_exposure: val: 41933
[ 51.510275] imx264 spi0.3: exposure _us = 9997, _ns = 9983270, _lines = 1477, current_vmax = 2201, computed_shs = 724, new_shs = 724
[ 51.511124] 0x0202 val = 0x0
[ 51.511177] STBLVDS val = 0x2
[ 51.511232] ADBIT val = 0x0
[ 51.511578] HMODE/WINMODE val = 0x0
[ 51.511637] VMAX val = 0x899 (2201)
[ 51.511964] HMAX val = 0x1f6 (502)
[ 51.512020] ODBIT val = 0x50
[ 51.512329] CKSEL val = 0x2
[ 51.512384] FREQ val = 0x1d
[ 51.512696] OPORTSEL val = 0x0
[ 51.512752] INCKSEL0 val = 0x0
[ 51.513456] INCKSEL1 val = 0x0
[ 51.513513] INCKSEL2 val = 0x0
[ 51.513837] INCKSEL3 val = 0x0
[ 51.513900] SHS val = 0x2d4 (724)
[ 51.514231] GTWAIT val = 0x0
[ 51.514285] GSDLY val = 0x0
[ 51.514338] 0x120d val = 0xf
[ 51.514390] 0x129e val = 0xff
[ 51.514392] imx264 spi0.3: configure "normal" orientation
[ 51.514431] mode 0 disables test pattern generation
[ 51.515055] imx264 spi0.3: imx264_s_stream: write table start
[ 53.440661] tegra-camrtc-capture-vi tegra-capture-vi: corr_err: discarding frame 0, flags: 0, err_data 131072
[ 53.505139] tegra-camrtc-capture-vi tegra-capture-vi: corr_err: discarding frame 0, flags: 0, err_data 131072
[ 53.549769] tegra-camrtc-capture-vi tegra-capture-vi: corr_err: discarding frame 0, flags: 0, err_data 131072
[ 53.564497] tegra-camrtc-capture-vi tegra-capture-vi: corr_err: discarding frame 0, flags: 0, err_data 131072
[ 54.306522] imx264 spi0.3: imx264_s_stream++(enable=0)
[ 54.324324] bwmgr API not supported
[ 54.333343] imx264 spi0.3: imx264_power_off: power off
[ 54.333860] imx264 spi0.3: imx264_power_off : set_value(reset_gpio, 1).
[ 54.333993] af 0
Trace
root@ubuntu:/home/nvidia/test_scripts# cat /sys/kernel/debug/tracing/trace
# tracer: nop
#
# entries-in-buffer/entries-written: 308108/308108 #P:4
#
# _-----=> irqs-off
# / _----=> need-resched
# | / _---=> hardirq/softirq
# || / _--=> preempt-depth
# ||| / delay
# TASK-PID CPU# |||| TIMESTAMP FUNCTION
# | | | |||| | |
v4l2-ctl-2075 [001] .... 51.140273: tegra_channel_open: vi-output, imx264 spi0.2
v4l2-ctl-2075 [001] .... 51.141530: tegra_channel_close: vi-output, imx264 spi0.2
v4l2-ctl-2076 [001] .... 51.144146: tegra_channel_open: vi-output, imx264 spi0.2
v4l2-ctl-2076 [001] .... 51.144160: tegra_channel_close: vi-output, imx264 spi0.2
v4l2-ctl-2076 [001] .... 51.144178: tegra_channel_open: vi-output, imx264 spi0.3
v4l2-ctl-2076 [001] .... 51.144185: tegra_channel_close: vi-output, imx264 spi0.3
v4l2-ctl-2076 [001] .... 51.144913: tegra_channel_open: vi-output, imx264 spi0.2
v4l2-ctl-2076 [001] .... 51.145073: tegra_channel_close: vi-output, imx264 spi0.2
v4l2-ctl-2077 [002] .... 51.147497: tegra_channel_open: vi-output, imx264 spi0.2
v4l2-ctl-2077 [002] .... 51.147886: tegra_channel_close: vi-output, imx264 spi0.2
v4l2-ctl-2078 [000] .... 51.150230: tegra_channel_open: vi-output, imx264 spi0.3
v4l2-ctl-2078 [000] .... 51.150657: tegra_channel_close: vi-output, imx264 spi0.3
v4l2-ctl-2079 [002] .... 51.152876: tegra_channel_open: vi-output, imx264 spi0.3
v4l2-ctl-2079 [002] .... 51.164593: tegra_channel_set_power: imx264 spi0.3 : 0x1
v4l2-ctl-2079 [002] .... 51.164607: camera_common_s_power: status : 0x1
v4l2-ctl-2079 [002] .... 51.488174: tegra_channel_set_power: 13e40000.host1x:nvcsi@15a00000- : 0x1
v4l2-ctl-2079 [002] .... 51.488178: csi_s_power: enable : 0x1
v4l2-ctl-2079 [002] .... 51.488558: tegra_channel_capture_setup: vnc_id 0 W 2472 H 2064 fmt c4
v4l2-ctl-2079 [002] .... 51.490087: tegra_channel_set_stream: enable : 0x1
v4l2-ctl-2079 [002] .... 51.501985: tegra_channel_set_stream: 13e40000.host1x:nvcsi@15a00000- : 0x1
v4l2-ctl-2079 [002] .... 51.501989: csi_s_stream: enable : 0x1
v4l2-ctl-2079 [002] .... 51.502285: tegra_channel_set_stream: imx264 spi0.3 : 0x1
kworker/0:3-136 [000] .... 51.506071: rtcpu_vinotify_event: tstamp:1949713219 cch:0 vi:1 tag:VIFALC_TDSTATE channel:0x23 frame:0 vi_tstamp:62381291232 data:0x719e300010000000
kworker/0:3-136 [000] .... 51.506073: rtcpu_vinotify_event: tstamp:1949713394 cch:0 vi:1 tag:VIFALC_TDSTATE channel:0x23 frame:0 vi_tstamp:62381297664 data:0x0000000031000001
kworker/0:3-136 [000] .... 51.506073: rtcpu_vinotify_event: tstamp:1949713593 cch:0 vi:1 tag:VIFALC_TDSTATE channel:0x23 frame:0 vi_tstamp:62381343392 data:0x719e2d0010000000
kworker/0:3-136 [000] .... 51.506073: rtcpu_vinotify_event: tstamp:1949713764 cch:0 vi:1 tag:VIFALC_TDSTATE channel:0x23 frame:0 vi_tstamp:62381349920 data:0x0000000031000002
kworker/0:3-136 [000] .... 51.562101: rtcpu_nvcsi_intr: tstamp:1950383832 class:GLOBAL type:STREAM_VC phy:0 cil:0 st:2 vc:12 status:0x0000000a
kworker/0:3-136 [000] .... 51.562102: rtcpu_nvcsi_intr: tstamp:1950383832 class:CORRECTABLE_ERR type:STREAM_NOVC phy:0 cil:0 st:2 vc:0 status:0x00000001
kworker/0:3-136 [000] .... 51.562102: rtcpu_nvcsi_intr: tstamp:1950383832 class:CORRECTABLE_ERR type:STREAM_VC phy:0 cil:0 st:2 vc:12 status:0x0000000a
kworker/0:3-136 [000] .... 51.562103: rtcpu_nvcsi_intr: tstamp:1950384579 class:GLOBAL type:STREAM_NOVC phy:0 cil:0 st:2 vc:0 status:0x00000001
kworker/0:3-136 [000] .... 51.562103: rtcpu_nvcsi_intr: tstamp:1950384579 class:GLOBAL type:STREAM_VC phy:0 cil:0 st:2 vc:0 status:0x0000000a
kworker/0:3-136 [000] .... 51.562104: rtcpu_nvcsi_intr: tstamp:1950384579 class:CORRECTABLE_ERR type:STREAM_NOVC phy:0 cil:0 st:2 vc:0 status:0x00000001
kworker/0:3-136 [000] .... 51.562104: rtcpu_nvcsi_intr: tstamp:1950384579 class:CORRECTABLE_ERR type:STREAM_VC phy:0 cil:0 st:2 vc:0 status:0x0000000a
kworker/0:3-136 [000] .... 51.562105: rtcpu_nvcsi_intr: tstamp:1950385449 class:GLOBAL type:STREAM_NOVC phy:0 cil:0 st:2 vc:0 status:0x00000001
kworker/0:3-136 [000] .... 51.562105: rtcpu_nvcsi_intr: tstamp:1950385449 class:GLOBAL type:STREAM_VC phy:0 cil:0 st:2 vc:0 status:0x00000008
kworker/0:3-136 [000] .... 51.562106: rtcpu_nvcsi_intr: tstamp:1950385449 class:GLOBAL type:STREAM_VC phy:0 cil:0 st:2 vc:8 status:0x0000000a
kworker/0:3-136 [000] .... 51.562106: rtcpu_nvcsi_intr: tstamp:1950385449 class:CORRECTABLE_ERR type:STREAM_NOVC phy:0 cil:0 st:2 vc:0 status:0x00000001
kworker/0:3-136 [000] .... 51.562107: rtcpu_nvcsi_intr: tstamp:1950385449 class:CORRECTABLE_ERR type:STREAM_VC phy:0 cil:0 st:2 vc:8 status:0x0000000a
kworker/0:3-136 [000] .... 51.562107: rtcpu_nvcsi_intr: tstamp:1950386515 class:GLOBAL type:STREAM_NOVC phy:0 cil:0 st:2 vc:0 status:0x00000001
kworker/0:3-136 [000] .... 51.562108: rtcpu_nvcsi_intr: tstamp:1950386515 class:GLOBAL type:STREAM_VC phy:0 cil:0 st:2 vc:8 status:0x0000000a
kworker/0:3-136 [000] .... 51.562109: rtcpu_nvcsi_intr: tstamp:1950386515 class:GLOBAL type:STREAM_VC phy:0 cil:0 st:2 vc:13 status:0x0000000a
kworker/0:3-136 [000] .... 51.562109: rtcpu_nvcsi_intr: tstamp:1950386515 class:CORRECTABLE_ERR type:STREAM_NOVC phy:0 cil:0 st:2 vc:0 status:0x00000001
Device tree
I’m not sure about my device tree:
spi0: spi@3210000 {
status = "okay";
/* CS signals are ACTIVE_LOW on qcam5 */
num-cs = <4>;
cs-gpios =
<&tegra_main_gpio TEGRA234_MAIN_GPIO(I, 1) GPIO_ACTIVE_LOW>, /* FPGA 1 */
<&tegra_main_gpio TEGRA234_MAIN_GPIO(P, 0) GPIO_ACTIVE_LOW>, /* FPGA 2 */
<&tegra_main_gpio TEGRA234_MAIN_GPIO(H, 6) GPIO_ACTIVE_LOW>, /* Sensor 1 */
<&tegra_main_gpio TEGRA234_MAIN_GPIO(Q, 5) GPIO_ACTIVE_LOW>; /* Sensor 2 */
spi-max-frequency = <12000000>;
/delete-node/ prod-settings;
me2210_1: me2210@0 {
compatible = "tegra,me2210", "tegra-spidev";
#gpio-cells = <2>;
reg = <0>;
status = "okay";
spi-cpol;
spi-cpha;
spi-max-frequency = <10000000>;
vdd-supply = <&vdd_1v8>;
};
me2210_2: me2210@1 {
compatible = "tegra,me2210", "tegra-spidev";
#gpio-cells = <2>;
reg = <1>;
status = "okay";
spi-cpol;
spi-cpha;
spi-max-frequency = <10000000>;
vdd-supply = <&vdd_1v8>;
};
imx264_1: imx264@2 {
compatible = "sony,imx250_or_imx530";
reg = <2>;
status = "okay";
devnode = "video0";
spi-max-frequency = <12000000>;
pgood-gpios = <&gpio_exp 4 GPIO_ACTIVE_HIGH>;
/* from tegra186-quill-camera-imx185-a00.dtsi */
/* Define any required hw resources needed by driver */
/* ie. clocks, io pins, power sources */
/*
* clocks = <&tegra_car TEGRA210_CLK_CLK_OUT_3>;
* clock-names = "clk_out_3";
* clock-frequency = <24000000>;
* mclk = "clk_out_3";
*/
// !!!!!!!!!!!!!!!!!make modification in tegra210-camera-imx185-a00.dtsi
clocks = <&bpmp_clks TEGRA234_CLK_EXTPERIPH1>;
clock-names = "extperiph1", "pllp_grtba";
clock-frequency = <24000000>;
mclk = "extperiph1";
reset-gpios = <&gpio_exp 3 GPIO_ACTIVE_LOW>;
vdd-supply = <&cam0_supply>;
lens = <&cam0_lens>;
pan-motor = <&cam0_pan>;
tilt-motor = <&cam0_tilt>;
mode0 {
mclk_khz = "37125";
num_lanes = "4";
tegra_sinterface = "serial_a";
phy_mode = "DPHY";
discontinuous_clk = "no";
dpcm_enable = "false";
cil_settletime = "0";
dynamic_pixel_bit_depth = "12";
csi_pixel_bit_depth = "12";
pixel_phase = "bggr";
pixel_t = "bayer_bggr12";
mode_type = "bayer";
readout_orientation = "0";
inherent_gain = "1";
mclk_multiplier = "40";
line_length = "2656";
pix_clk_hz = "342868377"; /* 2472 * 2128 * 67.2 */
active_w = "2472";
active_h = "2064";
min_gain_val = "0";
max_gain_val = "48";
gain_step_pitch = "0.1";
min_hdr_ratio = "1";
max_hdr_ratio = "64";
min_framerate = "1462526";
max_framerate = "67200000";
default_framerate = "30000000"; /* 30.0 fps */
min_exp_time = "16.165";
max_exp_time = "165770";
embedded_metadata_height = "0"; /* only used by tx2 */
};
controller-data {
nvidia,tx-clk-tap-delay = <16>;
nvidia,rx-clk-tap-delay = <0>;
nvidia,cs-setup-clk-count = <16>;
nvidia,cs-hold-clk-count = <0>;
};
ports {
#address-cells = <1>;
#size-cells = <0>;
port@0 {
reg = <0>;
macq_qcam5_out0: endpoint {
/* !!! index of the csi input port */
port-index = <0>;
bus-width = <2>;
remote-endpoint = <&macq_qcam5_csi_in0>;
};
};
};
};
imx264_2: imx264@3 {
compatible = "sony,imx250_or_imx530";
reg = <3>;
status = "okay";
devnode = "video1";
spi-max-frequency = <12000000>;
pgood-gpios = <&gpio_exp 7 GPIO_ACTIVE_HIGH>; /
/* from tegra186-quill-camera-imx185-a00.dtsi */
/* Define any required hw resources needed by driver */
/* ie. clocks, io pins, power sources */
/*
* clocks = <&tegra_car TEGRA210_CLK_CLK_OUT_3>;
* clock-names = "clk_out_3";
* clock-frequency = <24000000>;
* mclk = "clk_out_3";
*/
// !!!!!!!!!!!!!!!!!make modification in tegra210-camera-imx185-a00.dtsi
clocks = <&bpmp_clks TEGRA234_CLK_EXTPERIPH1>;
clock-names = "extperiph1", "pllp_grtba";
clock-frequency = <24000000>;
mclk = "extperiph1";
reset-gpios = <&gpio_exp 6 GPIO_ACTIVE_LOW>;
vdd-supply = <&cam1_supply>;
lens = <&cam1_lens>;
pan-motor = <&cam0_pan>;
tilt-motor = <&cam0_tilt>;
mode0 {
mclk_khz = "37125";
num_lanes = "4";
tegra_sinterface = "serial_c";
phy_mode = "DPHY";
discontinuous_clk = "no";
dpcm_enable = "false";
cil_settletime = "0";
dynamic_pixel_bit_depth = "12";
csi_pixel_bit_depth = "12";
pixel_phase = "bggr";
pixel_t = "bayer_bggr12";
mode_type = "bayer";
readout_orientation = "0";
inherent_gain = "1";
mclk_multiplier = "40";
line_length = "2656";
pix_clk_hz = "342868377"; /* 2472 * 2128 * 67.2 */
active_w = "2472";
active_h = "2064";
min_gain_val = "0";
max_gain_val = "48";
gain_step_pitch = "0.1";
min_hdr_ratio = "1";
max_hdr_ratio = "64";
min_framerate = "1462526";
max_framerate = "67200000";
default_framerate = "30000000"; /* 30.0 fps */
min_exp_time = "16.165";
max_exp_time = "165770";
embedded_metadata_height = "0"; /* only used by tx2 */
};
controller-data {
nvidia,tx-clk-tap-delay = <16>;
nvidia,rx-clk-tap-delay = <0>;
nvidia,cs-setup-clk-count = <16>;
nvidia,cs-hold-clk-count = <0>;
};
ports {
#address-cells = <1>;
#size-cells = <0>;
port@0 {
reg = <0>;
macq_qcam5_out1: endpoint {
/* !!! index of the csi input port */
port-index = <2>;
bus-width = <2>;
remote-endpoint = <&macq_qcam5_csi_in1>;
};
};
};
};
};
tegra-capture-vi {
num-channels = <2>;
ports {
#address-cells = <1>;
#size-cells = <0>;
port@0 {
reg = <0>;
macq_qcam5_vi_in0: endpoint {
port-index = <0>;
bus-width = <2>;
remote-endpoint = <&macq_qcam5_csi_out0>;
};
};
port@1 {
reg = <1>;
macq_qcam5_vi_in1: endpoint {
port-index = <2>;
bus-width = <2>;
remote-endpoint = <&macq_qcam5_csi_out1>;
};
};
};
};
host1x@13e00000 {
nvcsi@15a00000 {
num-channels = <2>;
#address-cells = <1>;
#size-cells = <0>;
status = "okay";
channel@0 {
reg = <0>;
ports {
#address-cells = <1>;
#size-cells = <0>;
port@0 {
reg = <0>;
macq_qcam5_csi_in0: endpoint@0 {
port-index = <0>;
bus-width = <2>;
remote-endpoint = <&macq_qcam5_out0>;
};
};
port@1 {
reg = <1>;
macq_qcam5_csi_out0: endpoint@1 {
remote-endpoint = <&macq_qcam5_vi_in0>;
};
};
};
};
channel@1 {
reg = <1>;
ports {
#address-cells = <1>;
#size-cells = <0>;
port@0 {
reg = <0>;
macq_qcam5_csi_in1: endpoint@2 {
port-index = <2>;
bus-width = <2>;
remote-endpoint = <&macq_qcam5_out1>;
};
};
port@1 {
reg = <1>;
macq_qcam5_csi_out1: endpoint@3 {
remote-endpoint = <&macq_qcam5_vi_in1>;
};
};
};
};
};
};
tegra-camera-platform {
compatible = "nvidia, tegra-camera-platform";
num_csi_lanes = <8>;
max_lane_speed = <1500000>;
min_bits_per_pixel = <12>;
vi_peak_byte_per_pixel = <2>;
vi_bw_margin_pct = <25>;
max_pixel_rate = <7500000>;
isp_peak_byte_per_pixel = <5>;
isp_bw_margin_pct = <25>;
modules {
module0 {
badge = "left_sensor";
position = "left";
orientation = "1";
drivernode0 {
pcl_id = "v4l2_sensor";
devname = "imx264 left";
proc-device-tree = "/proc/device-tree/spi@3210000/imx254@2";
};
};
module1 {
badge = "right_sensor";
position = "right";
orientation = "1";
drivernode0 {
pcl_id = "v4l2_sensor";
devname = "imx264 right";
proc-device-tree = "/proc/device-tree/spi@3210000/imx254@3";
};
};
};
};