AGX cannot detect MIPI camera processor

Hello NVIDIA Developers,
I use AGX to recieve the 4-lane MIPI csi signal without i2c from Xilinx FPGA .I have followed some similar implementationshttps://forums.developer.nvidia.com/t/jetson-agx-xavier-mipi-csi-2-without-i2c-from-fpga/165969 ,and can detect the /dev/video0.
But now ,I have a problem that I can not detect the CSI singal, the message as following:

[   67.918986] tegra194-vi5 15c10000.vi: no reply from camera processor
[   67.919144] tegra194-vi5 15c10000.vi: uncorr_err: request timed out after 2500 ms
[   67.919299] tegra194-vi5 15c10000.vi: err_rec: attempting to reset the capture channel
[   67.922968] Unable to handle kernel NULL pointer dereference at virtual address 00000010
[   67.923153] Mem abort info:
[   67.923242]   ESR = 0x96000005
[   67.923307]   Exception class = DABT (current EL), IL = 32 bits
[   67.923413]   SET = 0, FnV = 0
[   67.923473]   EA = 0, S1PTW = 0
[   67.923560] Data abort info:
[   67.923616]   ISV = 0, ISS = 0x00000005
[   67.923684]   CM = 0, WnR = 0
[   67.923748] user pgtable: 4k pages, 39-bit VAs, pgd = ffffffc6a51ec000
[   67.923860] [0000000000000010] *pgd=0000000000000000, *pud=0000000000000000
[   67.924011] Internal error: Oops: 96000005 [#1] PREEMPT SMP
[   67.924111] Modules linked in: bnep xt_conntrack ipt_MASQUERADE nf_nat_masquerade_ipv4 nf_conntrack_netlink nfnetlink xt_addrtype iptable_filter iptable_nat nf_conntrack_ipv4 nf_defrag_ipv4 nf_nat_ipv4 nf_nat nf_conntrack fuse br_netfilter zram overlay binfmt_misc bluedroid_pm userspace_alert nvgpu ip_tables x_tables
[   67.934947] CPU: 6 PID: 8404 Comm: vi-output, ov56 Not tainted 4.9.253 #3
[   67.941333] Hardware name: Jetson-AGXi (DT)
[   67.945794] task: ffffffc6ad160000 task.stack: ffffffc68a6bc000
[   67.951753] PC is at _raw_write_lock+0x30/0x58
[   67.956035] LR is at destroy_buffer_table+0x40/0xd8
[   67.961020] pc : [<ffffff8008f6db50>] lr : [<ffffff8008b4e6e8>] pstate: 20c00045
[   67.968280] sp : ffffffc68a6bfc70
[   67.971520] x29: ffffffc68a6bfc70 x28: 0000000000000000 
[   67.977027] x27: 0000000000000000 x26: 0000000000000000 
[   67.982541] x25: 0000000000000010 x24: 0000000000000098 
[   67.988315] x23: 0000000000000018 x22: ffffff8009087830 
[   67.993139] x21: 0000000000000000 x20: ffffffc684a48000 
[   67.998303] x19: 0000000000000010 x18: 00000000000012e2 
[   68.004241] x17: 0000000000000002 x16: 0000000000000003 
[   68.010014] x15: 0000000000000297 x14: 0000000000075a53 
[   68.015541] x13: ffffff8008f897bc x12: 00000000000731fd 
[   68.021231] x11: 0000000000000000 x10: 0000000000000a10 
[   68.027163] x9 : ffffffc68a6bfa80 x8 : 0000000000000000 
[   68.032940] x7 : ffffffc65ec4a640 x6 : ffffffc6857f0bc1 
[   68.038452] x5 : ffffff800852d904 x4 : ffffffbf1a15fc10 
[   68.043542] x3 : 0000000000000000 x2 : ffffffc6857f0bc0 
[   68.048878] x1 : 0000000000000000 x0 : 0000000080000000 

[   68.055609] Process vi-output, ov56 (pid: 8404, stack limit = 0xffffffc68a6bc000)
[   68.062786] Call trace:
[   68.065152] [<ffffff8008f6db50>] _raw_write_lock+0x30/0x58
[   68.070225] [<ffffff8008b4e6e8>] destroy_buffer_table+0x40/0xd8
[   68.076087] [<ffffff8008b4098c>] vi_capture_shutdown+0xd4/0x130
[   68.081425] [<ffffff8008b40fe4>] vi_channel_close_ex+0x34/0x88
[   68.087285] [<ffffff8008b424f0>] vi5_channel_error_recover+0x48/0x1c8
[   68.093234] [<ffffff8008b375c0>] tegra_channel_error_recover+0x58/0x90
[   68.099358] [<ffffff8008b42db0>] tegra_channel_kthread_capture_dequeue+0xf8/0x1c0
[   68.106276] [<ffffff80080db09c>] kthread+0xec/0xf0
[   68.110909] [<ffffff80080838a0>] ret_from_fork+0x10/0x30
[   68.116163] ---[ end trace 1d8deaa5d5953665 ]---
[   68.134032] note: vi-output, ov56[8404] exited with preempt_count 1
[   96.296899] L1SS : srcID 2 destID 1 cmdID 9 ClassID 1 is_resp=0
[   96.297052] L1SS : cmd_resp_l1_user_rcv_FuSa_state_notification FuSa State = 2
[   97.317778] Unable to handle kernel NULL pointer dereference at virtual address 00000000
[   97.317961] Mem abort info:
[   97.318021]   ESR = 0x96000005
[   97.318120]   Exception class = DABT (current EL), IL = 32 bits
[   97.318225]   SET = 0, FnV = 0
[   97.318288]   EA = 0, S1PTW = 0
[   97.318347] Data abort info:
[   97.318415]   ISV = 0, ISS = 0x00000005
[   97.318487]   CM = 0, WnR = 0
[   97.318598] user pgtable: 4k pages, 39-bit VAs, pgd = ffffffc6b0b2b000
[   97.318730] [0000000000000000] *pgd=0000000000000000, *pud=0000000000000000
[   97.318905] Internal error: Oops: 96000005 [#2] PREEMPT SMP
[   97.319008] Modules linked in: bnep xt_conntrack ipt_MASQUERADE nf_nat_masquerade_ipv4 nf_conntrack_netlink nfnetlink xt_addrtype iptable_filter iptable_nat nf_conntrack_ipv4 nf_defrag_ipv4 nf_nat_ipv4 nf_nat nf_conntrack fuse br_netfilter zram overlay binfmt_misc bluedroid_pm userspace_alert nvgpu ip_tables x_tables
[   97.320327] CPU: 7 PID: 8402 Comm: v4l2-ctl Tainted: G      D         4.9.253 #3
[   97.320883] Hardware name: Jetson-AGXi (DT)
[   97.323525] task: ffffffc66c7ff000 task.stack: ffffffc6b15d8000
[   97.329049] PC is at exit_creds+0x2c/0x78
[   97.333502] LR is at __put_task_struct+0x4c/0x140
[   97.338244] pc : [<ffffff80080de15c>] lr : [<ffffff80080aee9c>] pstate: 60400045
[   97.345491] sp : ffffffc6b15dba00
[   97.348477] x29: ffffffc6b15dba00 x28: ffffffc66c7ff000 
[   97.353998] x27: ffffff8008f82000 x26: ffffffc668d49080 
[   97.359509] x25: ffffffc68a0a9fe8 x24: ffffffc6ce4a5598 
[   97.365531] x23: 0000000000000001 x22: ffffffc6bc58a018 
[   97.370268] x21: ffffffc6ad160030 x20: 0000000000000000 
[   97.375548] x19: ffffffc6ad160000 x18: 0000000000000000 
[   97.381206] x17: 0000007fb16c8e10 x16: ffffff8008274b68 
[   97.387046] x15: 0000000000000000 x14: 0000000000080f54 
[   97.392574] x13: 00000000000045ea x12: 071c71c71c71c71c 
[   97.398335] x11: 000000000000000b x10: 0000000000000a10 
[   97.404108] x9 : ffffffc6b15db850 x8 : ffffffc66c7ffa70 
[   97.409885] x7 : fefefeff646c606d x6 : 00000000d7065bf2 
[   97.415405] x5 : 0000000000000800 x4 : 0000000000000000 
[   97.420480] x3 : 00000000000000e1 x2 : 0000000000000000 
[   97.426066] x1 : 0000000000000000 x0 : 00000000ffffffff 

[   97.432827] Process v4l2-ctl (pid: 8402, stack limit = 0xffffffc6b15d8000)
[   97.439461] Call trace:
[   97.441832] [<ffffff80080de15c>] exit_creds+0x2c/0x78
[   97.446382] [<ffffff80080aee9c>] __put_task_struct+0x4c/0x140
[   97.451719] [<ffffff80080dbbfc>] kthread_stop+0x1e4/0x1e8
[   97.456797] [<ffffff8008b42708>] vi5_channel_stop_kthreads+0x40/0x58
[   97.463175] [<ffffff8008b427ec>] vi5_channel_stop_streaming+0xcc/0xd0
[   97.469303] [<ffffff8008b3445c>] tegra_channel_stop_streaming+0x34/0x48
[   97.475255] [<ffffff8008b2c774>] __vb2_queue_cancel+0x34/0x188
[   97.481115] [<ffffff8008b2dc9c>] vb2_core_queue_release+0x2c/0x58
[   97.486977] [<ffffff8008b3031c>] _vb2_fop_release+0x84/0xa0
[   97.492052] [<ffffff8008b35df4>] tegra_channel_close+0x64/0x140
[   97.497746] [<ffffff8008b096e8>] v4l2_release+0x48/0xa0
[   97.502820] [<ffffff800825dcb8>] __fput+0x90/0x1d0
[   97.507886] [<ffffff800825de70>] ____fput+0x20/0x30
[   97.512444] [<ffffff80080d8dac>] task_work_run+0xbc/0xd8
[   97.517955] [<ffffff80080b8408>] do_exit+0x2e0/0xa88
[   97.523111] [<ffffff80080b8c40>] do_group_exit+0x40/0xa8
[   97.528454] [<ffffff80080c64ec>] get_signal+0xbc/0x750
[   97.533360] [<ffffff800808add8>] do_signal+0x130/0x500
[   97.538864] [<ffffff800808b320>] do_notify_resume+0x90/0xb0
[   97.544464] [<ffffff800808379c>] work_pending+0x8/0x10
[   97.549542] ---[ end trace 1d8deaa5d5953666 ]---
[   97.568463] Fixing recursive fault but reboot is needed!

I am completely new to this field, and I have looked up many similar questions online, but still have no clue. I want to know if there is any problem with my driver.

Any help or feedback would be greatly apprecited.

Thanks!

Based on some methods online, I have checked the following information, but I do not quite understand the meaning they represent.

 kworker/0:4-2219  [000] ....  2155.060282: rtcpu_nvcsi_intr: tstamp:67910544649 class:CORRECTABLE_ERR type:PHY_INTR phy:0 cil:1 st:0 vc:0 status:0x00000040
     kworker/0:4-2219  [000] ....  2155.060282: rtcpu_nvcsi_intr: tstamp:67910545733 class:GLOBAL type:PHY_INTR0 phy:0 cil:1 st:0 vc:0 status:0x00000040

And I trace the message, However , Only the following information is displayed:

# tracer: nop
#
# entries-in-buffer/entries-written: 1/1   #P:8
#
#                              _-----=> irqs-off
#                             / _----=> need-resched
#                            | / _---=> hardirq/softirq
#                            || / _--=> preempt-depth
#                            ||| /     delay
#           TASK-PID   CPU#  ||||    TIMESTAMP  FUNCTION
#              | |       |   ||||       |         |
        v4l2-ctl-10483 [005] ....  2789.910919: tegra_channel_open: vi-output, ov5693 2-0036

I don’t quite understand the information displayed by these results. I would greatly appreciate your help.

The PHY_INTR0 message tell the sensor output payload data CRC error.
Please consult with sensor vendor for it.

Hi,@ShaneCCC
Thanks for your reply!
I check the csi signal transmitted to AGX, and I am sure that the signal no longer has CRC verification error. However, I still can not detect my signal, trace message is the same as before.

 kworker/0:4-2219  [000] ....  2155.060282: rtcpu_nvcsi_intr: tstamp:67910544649 class:CORRECTABLE_ERR type:PHY_INTR phy:0 cil:1 st:0 vc:0 status:0x00000040
     kworker/0:4-2219  [000] ....  2155.060282: rtcpu_nvcsi_intr: tstamp:67910545733 class:GLOBAL type:PHY_INTR0 phy:0 cil:1 st:0 vc:0 status:0x00000040

So I would like to know if there is any other possibility of a problem happening somewhere else.
What is the line rate of the AGX? Is it possible that the line rate at theAGX does not match the signal sent by the FPGA?

Sorry give the wrong information.
The “PHY_INTR phy:0 cil:1 st:0 vc:0 status:0x00000040” actually tell the SOT multiple bit error. That could be the settle time issue could be the LP11->LP01 → LP00


timing cause the problem.

Hi, @ShaneCCC
Thanks for your reply again.
I would like to know the line rate of the MIPI signal that AGX can receive, and where to modify the line rate. Is the linear rate determined by modifying the sampling clock frequency? Should the sampling clock frequency be modified in the DTB file?

Sorry I don’t know what’s the line rate.

Thanks

Hi, @ShaneCCC
Thanks again for your reply!
I have modified my signal and AGX’s DTB, but now there are some new errors as follows:

[  114.887868] tegra194-vi5 15c10000.vi: corr_err: discarding frame 0, flags: 6, err_data 512
[  114.891362] [RCE] vi5_hwinit: firmware CL2018101701 protocol version 2.2
[  114.900634] tegra194-vi5 15c10000.vi: corr_err: discarding frame 0, flags: 0, err_data 512
[  114.913410] tegra194-vi5 15c10000.vi: corr_err: discarding frame 0, flags: 0, err_data 512
[  114.926145] tegra194-vi5 15c10000.vi: corr_err: discarding frame 0, flags: 0, err_data 512

and the trace message as follow:

kworker/0:2-1195  [000] ....   396.211888: rtcpu_vinotify_event: tstamp:12949902545 tag:CHANSEL_NOMATCH channel:0x01 frame:0 vi_tstamp:12949726423 data:0x00000489
     kworker/0:2-1195  [000] ....   396.211889: rtcpu_vinotify_error: tstamp:12950127546 tag:CHANSEL_NOMATCH channel:0x01 frame:0 vi_tstamp:12950124998 data:0x00000489
     kworker/0:2-1195  [000] ....   396.211889: rtcpu_vinotify_event: tstamp:12950391050 tag:FE channel:0x00 frame:0 vi_tstamp:12950124896 data:0x00000020
     kworker/0:2-1195  [000] ....   396.211890: rtcpu_vinotify_event: tstamp:12950391183 tag:FS channel:0x00 frame:0 vi_tstamp:12950124944 data:0x00000010
     kworker/0:2-1195  [000] ....   396.211891: rtcpu_vinotify_event: tstamp:12950391339 tag:CHANSEL_NOMATCH channel:0x01 frame:0 vi_tstamp:12950124998 data:0x00000489

May I ask what may be the cause of these errors?

Thanks

What’s the pixel format? RGB888?
Also confirm the sensor output embedded data to report correct embedded_metadata_height in device tree.

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.