J722SXH01EVM: The csi2rx kernel module fails at probe spontaneously

Part Number: J722SXH01EVM

Tool/software:

Hi,

I'd like to report a strange problem observed on the SDK10 on the J722SXH01EVM board: when booting the J722SXH01EVM board with multiple CSI cameras (say, Raspberry Pi IMX219) connected, SOMETIMES one of the csi2rx modules fails to be loaded:

[    9.455849] cdns-csi2rx 30101000.csi-bridge: Probed CSI2RX with 4/4 lanes, 4 streams, external D-PHY
[    9.473758] am65-cpsw-nuss 8000000.ethernet eth0: configuring for phy/rgmii-rxid link mode
[    9.545922] cdns-csi2rx 30121000.csi-bridge: Probed CSI2RX with 4/4 lanes, 4 streams, external D-PHY
[    9.590700] cdns-csi2rx 30141000.csi-bridge: Probed CSI2RX with 4/4 lanes, 4 streams, external D-PHY
[    9.619966] m_can_platform 4e18000.can mcu_mcan1: renamed from can0
[    9.628589] ti-udma 4e230000.dma-controller: get channel fail in udma_of_xlate.
[    9.658587] Internal error: synchronous external abort: 0000000096000010 [#1] PREEMPT SMP
[    9.666790] Modules linked in: overlay cdns3(+) cdns_usb_common cdns_csi2rx(+) rpmsg_ctrl v4l2_fwnode rpmsg_char cfg80211 snd_soc_simple_card crct10dif_ce snd_soc_simple_card_utils e5010_jpeg_enc pvrsrvkm(O) display_connector v4l2_jpeg phy_can_transceiver bluetooth ecdh_generic ecc rfkill pci_endpoint_test cdns3_ti k3_j72xx_bandgap rti_wdt rtc_ti_k3 wave5 ti_k3_r5_remoteproc tidss j721e_csi2rx sii902x snd_soc_davinci_mcasp drm_dma_helper ti_k3_dsp_remoteproc drm_kms_helper snd_soc_ti_udma videobuf2_dma_contig v4l2_mem2mem sa2ul mcrc64 snd_soc_tlv320aic3x_i2c videobuf2_memops snd_soc_ti_edma videobuf2_v4l2 snd_soc_tlv320aic3x m_can_platform videobuf2_common snd_soc_ti_sdma m_can cdns_dphy_rx can_dev mvbluemira_i2c(O) v4l2_async videodev mc cryptodev(O) fuse drm drm_panel_orientation_quirks backlight ipv6
[    9.719251] m_can_platform 20701000.can main_mcan0: renamed from can1
[    9.737990] CPU: 2 PID: 191 Comm: (udev-worker) Tainted: G           O       6.6.32-ti-gdb8871293143-dirty #1
[    9.738014] Hardware name: Texas Instruments J722S EVM (DT)
[    9.738018] pstate: 60000005 (nZCv daif -PAN -UAO -TCO -DIT -SSBS BTYPE=--)
[    9.738027] pc : csi2rx_probe+0x178/0x654 [cdns_csi2rx]
[    9.738053] lr : csi2rx_probe+0x16c/0x654 [cdns_csi2rx]
[    9.777328] sp : ffff8000821b37c0
[    9.777338] x29: ffff8000821b3830 x28: 0000000000000000 x27: 0000000000000000
[    9.787788] x26: ffff8000813c7b10 x25: ffff0008270d35a8 x24: ffff8000797fc540
[    9.794950] x23: ffff0008220c6400 x22: ffff000824e0ea20 x21: ffff0008220c6410
[    9.802113] x20: ffff000829bee000 x19: ffff800082c0f000 x18: 0000000000000000
[    9.814785] x17: 0000000000000000 x16: 0000000000000000 x15: 052f25a29cecf806
[    9.823887] x14: 000075e727cc4fc8 x13: 000000000000000e x12: 000000000000000e
[    9.831178] x11: 0000000000000000 x10: 00000000000009b0 x9 : ffff8000821b3550
[    9.838318] x8 : ffff0008216a4510 x7 : 0000000000000010 x6 : ffff0008216a4510
[    9.838332] x5 : 0000000000000002 x4 : 0000000000000000 x3 : 0000000000000000
[    9.838342] x2 : ffff8000813fbeb0 x1 : ffff00082616b900 x0 : 0000000000000000
[    9.838353] Call trace:
[    9.862128]  csi2rx_probe+0x178/0x654 [cdns_csi2rx]
[    9.867014]  platform_probe+0x68/0xc4
[    9.870672]  really_probe+0x148/0x2b0
[    9.874330]  __driver_probe_device+0x78/0x12c
[    9.878678]  driver_probe_device+0xd8/0x15c
[    9.882852]  __driver_attach+0x90/0x19c
[    9.886679]  bus_for_each_dev+0x7c/0xdc
[    9.890506]  driver_attach+0x24/0x30
[    9.894073]  bus_add_driver+0xe8/0x1f8
[    9.897814]  driver_register+0x5c/0x124
[    9.901641]  __platform_driver_register+0x28/0x34
[    9.906338]  csi2rx_driver_init+0x20/0x1000 [cdns_csi2rx]
[    9.911732]  do_one_initcall+0x80/0x1c8
[    9.915560]  do_init_module+0x58/0x1e0
[    9.919305]  load_module+0x1c8c/0x1d18
[    9.923046]  init_module_from_file+0x88/0xcc
[    9.927308]  __arm64_sys_finit_module+0x1dc/0x2e4
[    9.932003]  invoke_syscall+0x48/0x114
[    9.935745]  el0_svc_common.constprop.0+0xc0/0xe0
[    9.940439]  do_el0_svc+0x1c/0x28
[    9.943745]  el0_svc+0x2c/0x84
[    9.946793]  el0t_64_sync_handler+0x120/0x12c
[    9.951141]  el0t_64_sync+0x190/0x194
[    9.954799] Code: 95b837ce 2a0003f3 350018c0 f9401a93 (b9400273)
[    9.960878] ---[ end trace 0000000000000000 ]---

We've tested two J722SXH01EVM boards with SDK10, the spontaneous error happens on both boards. This problem is not to be seen on SDK9.

Please confirm the issue and fix it. Thanks!

Best regards,

Danxuan