Hi,
i am try to implenment a HDMI2CSI caputre card on the orin nx bord. the capture card seems work fine, cause i can see the log-status fine. But the CSI cannot recieve any data, and result in a timeout error. the kernel logout look like below. i do some log on the kernel vi and csi code side.
[ 270.155848] tc358743 10-000f: -----Chip status-----
[ 270.156044] tc358743 10-000f: Chip ID: 0x00
[ 270.156239] tc358743 10-000f: Chip revision: 0x00
[ 270.156242] tc358743 10-000f: Reset: IR: 1, CEC: 1, CSI TX: 0, HDMI: 0
[ 270.156244] tc358743 10-000f: Sleep mode: off
[ 270.156245] tc358743 10-000f: Cable detected (+5V power): no
[ 270.156417] tc358743 10-000f: DDC lines enabled: yes
[ 270.156587] tc358743 10-000f: Hotplug enabled: no
[ 270.156782] tc358743 10-000f: CEC enabled: no
[ 270.156783] tc358743 10-000f: -----Signal status-----
[ 270.156784] tc358743 10-000f: TMDS signal detected: yes
[ 270.156786] tc358743 10-000f: Stable sync signal: no
[ 270.156787] tc358743 10-000f: PHY PLL locked: yes
[ 270.156788] tc358743 10-000f: PHY DE detected: yes
[ 270.157131] tc358743 10-000f: tc358743_get_detected_timings: no sync on signal
[ 270.157132] tc358743 10-000f: No video detected
[ 270.157135] tc358743 10-000f: Configured format: 1920x1080p30.00 (2200x1125)
[ 270.157137] tc358743 10-000f: horizontal: fp = 88, +sync = 44, bp = 148
[ 270.157139] tc358743 10-000f: vertical: fp = 4, +sync = 5, bp = 36
[ 270.157140] tc358743 10-000f: pixelclock: 74250000
[ 270.157143] tc358743 10-000f: flags (0x92): CAN_REDUCE_FPS CE_VIDEO HAS_CEA861_VIC
[ 270.157145] tc358743 10-000f: standards (0x1): CEA
[ 270.157146] tc358743 10-000f: CEA-861 VIC: 34
[ 270.157147] tc358743 10-000f: -----CSI-TX status-----
[ 270.157149] tc358743 bps_pr_lane :=594000000!
[ 270.157150] tc358743 pdata->refclk_hz :=27000000!
[ 270.157151] tc358743 10-000f: Lanes needed: 2
[ 270.157152] tc358743 10-000f: Lanes in use: 2
[ 270.157351] tc358743 10-000f: Waiting for particular sync signal: no
[ 270.157579] tc358743 10-000f: Transmit mode: no
[ 270.157791] tc358743 10-000f: Receive mode: no
[ 270.157994] tc358743 10-000f: Stopped: no
[ 270.157996] tc358743 10-000f: Color space: YCbCr 422 16-bit
[ 270.158170] tc358743 10-000f: -----DVI-D status-----
[ 270.158172] tc358743 10-000f: HDCP encrypted content: no
[ 270.158173] tc358743 10-000f: Input color space: RGB full range
[ 271.170433] tc358743 10-000f: tc358743_hdmi_sys_int_handler: Tx 5V power present: yes
[ 271.170441] tc358743 10-000f: tc358743_enable_edid:
[ 271.170446] tc358743 10-000f: tc358743_enable_interrupts: cable connected = 1
[ 271.171579] tc358743 10-000f: tc358743_isr: Unhandled IntStatus interrupts: 0x200
[ 271.273245] tc358743 10-000f: tc358743_delayed_work_enable_hotplug:
[ 272.192710] tc358743 10-000f: enable_stream: disable
[ 272.193750] tc358743 10-000f: tc358743_hdmi_clk_int_handler: DE size or position has changed
[ 272.196228] tc358743 10-000f: enable_stream: disable
[ 272.197175] tc358743 10-000f: tc358743_hdmi_sys_int_handler: HDMI->DVI change detected
[ 272.197514] tc358743 10-000f: tc358743_hdmi_sys_int_handler: DVI->HDMI change detected
[ 273.214111] tc358743 10-000f: tc358743_hdmi_cbit_int_handler: Audio present changed
[ 278.333763] tc358743 10-000f: tc358743_hdmi_cbit_int_handler: Audio present changed
[ 279.750394] tc358743 10-000f: tc358743_g_input_status: status = 0x0
[ 279.752654] tc358743 10-000f: tc358743_query_dv_timings: 1920x1080p30.00 (2200x1125)
[ 279.752666] tc358743 10-000f: tc358743_s_dv_timings: 1920x1080p30.00 (2200x1125)
[ 279.752669] tc358743 10-000f: enable_stream: disable
[ 279.753587] tc358743 10-000f: tc358743_set_pll:
[ 279.753591] tc358743 bps_pr_lane :=594000000!
[ 279.753593] tc358743 pdata->refclk_hz :=27000000!
[ 279.753595] tc358743 10-000f: tc358743_set_csi:
[ 279.763672] vb2_start_streaming
[ 279.763682] vi csi == NULL
[ 279.764216] tegra-camrtc-capture-vi tegra-capture-vi: sucess to power on vi channel2
[ 279.772239] tegra-camrtc-capture-vi tegra-capture-vi: related csi ptr is NULL
[ 279.779603] vi power on,0
[ 279.779605] vi_start_streaming,4
[ 279.779611] video4linux video0: vi5_channel_start_streaming4
[ 279.779612] video4linux video0: vi5_channel_start_streaming,no bypass
[ 279.779734] video4linux video0: vi5_channel_open0
[ 279.786208] tegra-camrtc-capture-vi tegra-capture-vi: vi valid pors num is :1,total ports is :1
[ 279.789218] bwmgr API not supported
[ 279.795260] tegra-camrtc-capture-vi tegra-capture-vi: test vi port 0
[ 279.813585] t194-nvcsi 13e40000.host1x:nvcsi@15a00000: csi5_start_streaming: csi_pt=2, st_id=2, vc_id=0, pg_mode=0x0,port_idx0,num_lanes2
[ 279.813590] t194-nvcsi 13e40000.host1x:nvcsi@15a00000: csi5_stream_set_config: stream_id=2, csi_port=2,chan->of_node->full_namechannel@1
[ 279.813592] t194-nvcsi 13e40000.host1x:nvcsi@15a00000: cil_settletime is pulled from device of_node
[ 279.813595] t194-nvcsi 13e40000.host1x:nvcsi@15a00000: cil_settletime pulled from device of_node is 10
[ 279.813599] t194-nvcsi 13e40000.host1x:nvcsi@15a00000: csi cil_settletime is10,lane_polarity is 0,phy_mode is0
[ 279.813651] verify_capture_control_response!
[ 279.813652] verify_capture_control_response result is0!
[ 279.813654] csi clk_freq is102000000!
[ 279.813655] csi5_send_control_message stream_id2!,vi_port0
[ 279.813926] verify_capture_control_response!
[ 279.813928] verify_capture_control_response result is0!
[ 279.813931] tc358743 10-000f: enable_stream: enable
[ 282.296451] tegra-camrtc-capture-vi tegra-capture-vi: uncorr_err: request timed out after 2500 ms
[ 282.305616] tegra-camrtc-capture-vi tegra-capture-vi: err_rec: attempting to reset the capture channel
[ 282.316085] tegra-camrtc-capture-vi tegra-capture-vi: vi valid pors num is :1,total ports is :1
[ 282.325142] tegra-camrtc-capture-vi tegra-capture-vi: test vi port 0
[ 282.331793] tegra-camrtc-capture-vi tegra-capture-vi: vi valid pors num is :1,total ports is :1
[ 282.340845] tegra-camrtc-capture-vi tegra-capture-vi: test vi port 0
[ 282.347490] tegra-camrtc-capture-vi tegra-capture-vi: vi valid pors num is :1,total ports is :1
[ 282.356527] tegra-camrtc-capture-vi tegra-capture-vi: test vi port 0
[ 282.363169] tegra_vi_chan is NULL!
[ 282.363172] (NULL device *): vi_capture_control_message: NULL VI channel received
[ 282.370873] t194-nvcsi 13e40000.host1x:nvcsi@15a00000: csi5_stream_close: Error in closing stream_id=2, csi_port=2
[ 282.381529] t194-nvcsi 13e40000.host1x:nvcsi@15a00000: csi5_start_streaming: csi_pt=2, st_id=2, vc_id=0, pg_mode=0x0,port_idx0,num_lanes2
[ 282.381536] t194-nvcsi 13e40000.host1x:nvcsi@15a00000: csi5_stream_set_config: stream_id=2, csi_port=2,chan->of_node->full_namechannel@1
[ 282.381538] t194-nvcsi 13e40000.host1x:nvcsi@15a00000: cil_settletime is pulled from device of_node
[ 282.381544] t194-nvcsi 13e40000.host1x:nvcsi@15a00000: cil_settletime pulled from device of_node is 10
[ 282.381547] t194-nvcsi 13e40000.host1x:nvcsi@15a00000: csi cil_settletime is10,lane_polarity is 0,phy_mode is0
[ 282.381549] tegra_vi_chan is NULL!
[ 282.381550] (NULL device *): vi_capture_control_message: NULL VI channel received
[ 282.389248] csi clk_freq is102000000!
[ 282.389251] t194-nvcsi 13e40000.host1x:nvcsi@15a00000: csi5_stream_open: VI channel not found for stream- 2 csi_port-2 vc- 0
[ 282.401017] tegra-camrtc-capture-vi tegra-capture-vi: err_rec: successfully reset the capture channel
[ 282.410564] tc358743 10-000f: enable_stream: disable
[ 282.411124] tc358743 bps_pr_lane :=594000000!
[ 282.411128] tc358743 pdata->refclk_hz :=27000000!
[ 282.411130] tc358743 10-000f: tc358743_set_csi:
[ 282.415640] verify_capture_control_response!
[ 282.415644] verify_capture_control_response result is0!
i dig into the tegra camera platform source code, find out there is a “struct camera_common_pdata” which contan a lot of camera propertis , but the tc358743’s dirver does not have one ,many properties like tegra_sinterface or sedes_clk_freq can’t even pass to the tegra vi channel. how can i make this work, if notice there is a pass throw the camera init process with (sdata==NULL), which the tc358743 dirver goes, but it does not work. BTW, the HDMI2CSI works fine on a raspi well.
Can any body help me, Thanks a lot!