We have a Basler MIPI-CSI camera running under Kirkstone which I am working to bring up in Scarthgap for the i.MX8M Plus. I have altered the device tree as necessary using a patch and a device tree overlay in the same manner as we used with Kirkstone. The camera seems to be recognized and the correct nodes and subnodes are being created under /dev. When I run the camera I get the following:
gst-launch-1.0 -v v4l2src device=/dev/video2 ! waylandsink
[ 49.571834] enter isp_mi_stop
[ 49.747503] enter isp_mi_stop
[ 50.183122] Unable to handle kernel paging request at virtual address 0000007f8bc6c6aa
[ 50.191061] Mem abort info:
[ 50.193855] ESR = 0x0000000096000046
[ 50.197604] EC = 0x25: DABT (current EL), IL = 32 bits
[ 50.202918] SET = 0, FnV = 0
[ 50.205973] EA = 0, S1PTW = 0
[ 50.209115] FSC = 0x06: level 2 translation fault
[ 50.213993] Data abort info:
[ 50.216873] ISV = 0, ISS = 0x00000046, ISS2 = 0x00000000
[ 50.222360] CM = 0, WnR = 1, TnD = 0, TagAccess = 0
[ 50.227412] GCS = 0, Overlay = 0, DirtyBit = 0, Xs = 0
[ 50.232725] user pgtable: 4k pages, 39-bit VAs, pgdp=00000001092a8000
[ 50.239168] [0000007f8bc6c6aa] pgd=0800000107fd0003, p4d=0800000107fd0003, pud=0800000107fd0003, pmd=0000000000000000
[ 50.249793] Internal error: Oops: 0000000096000046 [#1] PREEMPT SMP
[ 50.256063] Modules linked in: 8021q garp stp mrp llc input_leds led_class sd_mod uas vvcam_video(O) vvcam_isp(O) vvcam_dwe(O) imx8_media_dev(C) onboard_usb_hub basler_camera_driver_vvcam(O) usb_conn_gpio bluetooth ecdh_generic ecc caam_jr caamkeyblob_desc snd_soc_hdmi_codec caamhash_desc cfg80211 caamalg_desc aes_ce_cipher nls_iso8859_1 dwc3 ghash_ce crypto_engine roles authenc gf128mul libaes sha2_ce sha256_arm64 sha1_ce libdes snd_soc_simple_card rfkill nls_cp437 dw_hdmi_gp_audio dw_hdmi_cec spidev crypto_null evdev fsl_imx8_ddr_perf sha1_generic snd_soc_simple_card_utils snd_soc_imx_hdmi phy_fsl_samsung_hdmi phy_fsl_imx8m_pcie phy_fsl_imx8mq_usb sec_mipi_dsim_imx imx_bus imx8_mipi_csi2_sam(C) gpio_pca953x sec_dsim dwc3_imx8mp ti_ads1015 lontium_lt8912b industrialio_triggered_buffer snd_soc_fsl_sai snd_soc_fsl_utils imx_pcm_dma snd_soc_fsl_aud2htx snd_soc_nau8822 kfifo_buf ina2xx lm75 imx_sdma spi_nxp_fspi caam error nvmem_snvs_lpgpr flexcan can_dev snvs_pwrkey spi_imx pwm_imx27 imx8mm_thermal gpio_keys
[ 50.256336] display_connector galcore(O) fuse ipv6 autofs4 [last unloaded: basler_camera_driver_vvcam(O)]
[ 50.355089] CPU: 0 PID: 0 Comm: swapper/0 Tainted: G C O 6.6.54-7.1.0-devel-gc49461ff6614 #1
[ 50.364746] Hardware name: Toradex Verdin iMX8M Plus on Verdin Development Board (DT)
[ 50.372577] pstate: 800000c5 (Nzcv daIF -PAN -UAO -TCO -DIT -SSBS BTYPE=–)
[ 50.379543] pc : i2c_imx_isr+0x3b8/0x714
[ 50.383477] lr : i2c_imx_isr+0xd0/0x714
[ 50.387317] sp : ffffffc080003f00
[ 50.390632] x29: ffffffc080003f00 x28: ffffffc0811b1080 x27: 0000000000000000
[ 50.397777] x26: 00000000ffb2b940 x25: 0000000baf2087e8 x24: 0000000000000001
[ 50.404922] x23: ffffff80c0138200 x22: 00000000000000a2 x21: 00000000000000c0
[ 50.412066] x20: ffffff80c0b655d4 x19: ffffff80c0b65080 x18: 0000000000000000
[ 50.419211] x17: ffffffc07e77c000 x16: ffffffc080000000 x15: 0000000000000000
[ 50.426356] x14: ffffffc0811b1080 x13: ffffffc07e77c000 x12: 0000000034d4d91d
[ 50.433505] x11: 0000000000000040 x10: ffffff80c00280a8 x9 : ffffff80c00280a0
[ 50.440652] x8 : ffffff80c0400700 x7 : 0000000000000000 x6 : 0000000000000000
[ 50.447796] x5 : 0000000000000007 x4 : 0000000000000002 x3 : 0000007f8bc6c6aa
[ 50.454941] x2 : 0000000000000000 x1 : 0000000000000000 x0 : 0000000000000000
[ 50.462086] Call trace:
[ 50.464534] i2c_imx_isr+0x3b8/0x714
[ 50.468116] __handle_irq_event_percpu+0x48/0x13c
[ 50.472828] handle_irq_event+0x4c/0xac
[ 50.476668] handle_fasteoi_irq+0xa4/0x230
[ 50.480776] generic_handle_domain_irq+0x2c/0x44
[ 50.485398] gic_handle_irq+0x50/0x12c
[ 50.489151] call_on_irq_stack+0x24/0x4c
[ 50.493080] do_interrupt_handler+0x80/0x8c
[ 50.497275] el1_interrupt+0x34/0x68
[ 50.500857] el1h_64_irq_handler+0x18/0x24
[ 50.504960] el1h_64_irq+0x64/0x68
[ 50.508365] cpuidle_enter_state+0x138/0x2e0
[ 50.512644] cpuidle_enter+0x38/0x50
[ 50.516227] do_idle+0x1f4/0x264
[ 50.519460] cpu_startup_entry+0x38/0x3c
[ 50.523386] kernel_init+0x0/0x1dc
[ 50.526795] arch_post_acpi_subsys_init+0x0/0x8
[ 50.531334] start_kernel+0x4f0/0x5f8
[ 50.535005] __primary_switched+0xbc/0xc4
[ 50.539025] Code: 92401c02 d5033dbf ca020042 b5000002 (38214860)
[ 50.545121] —[ end trace 0000000000000000 ]—
[ 50.549741] Kernel panic - not syncing: Oops: Fatal exception in interrupt
[ 50.556615] SMP: stopping secondary CPUs
[ 50.560542] Kernel Offset: disabled
[ 50.564031] CPU features: 0x0,00000000,00020000,1000420b
[ 50.569345] Memory Limit: none
[ 50.572403] —[ end Kernel panic - not syncing: Oops: Fatal exception in interrupt ]—
Any suggestions on how to proceed will be appreciated.