Hi Tim, Am 22.12.23 um 02:12 schrieb Tim Harvey:
Greetings, I'm running into an issue with Linux 6.6 (6.6.8) when compiling with modules where the imx7_media_csi driver probe is deferred and I'm not clear how to troubleshoot the cause.
one important question would be "did it ever worked before?"
The board is imx8mm-venice-gw73xx-0x [1] with imx8mm-venice-gw73xx-0x-imx219.dtso [2] and I'm using arch/arm64/configs/defconfig. The kernel reports the following: # dmesg | egrep csi\|mipi\|imx219 [ 1.293264] i2c 2-0010: Fixed dependency cycle(s) with /soc@0/bus@32c00000/mipi-csi@32e30000/ports/port@0/endpoint [ 12.001419] imx219 2-0010: supply VANA not found, using dummy regulator [ 12.044885] imx219 2-0010: supply VDDL not found, using dummy regulator [ 12.164308] imx7-csi 32e20000.csi: Registered csi capture as /dev/video0 [ 12.178460] imx7-csi 32e20000.csi: error -ENOTCONN: Failed to get remote endpoint [ 12.200047] imx7-csi: probe of 32e20000.csi failed with error -107 # cat /sys/kernel/debug/devices_deferred cpufreq-dt 32e30000.mipi-csi platform: wait for supplier /soc@0/bus@32c00000/csi@32e20000/port/endpoint # zcat /proc/config.gz | egrep VIDEO_IMX219\|VIDEO_IMX_MIPI\|VIDEO_IMX7 CONFIG_VIDEO_IMX7_CSI=m CONFIG_VIDEO_IMX_MIPI_CSIS=m CONFIG_VIDEO_IMX219=m # lsmod | grep imx fsl_imx8_ddr_perf 16384 0 imx8m_ddrc 12288 0 imx7_media_csi 28672 0 videobuf2_dma_contig 16384 2 hantro_vpu,imx7_media_csi videobuf2_v4l2 32768 3 hantro_vpu,imx7_media_csi,v4l2_mem2mem videobuf2_common 57344 6 videobuf2_dma_contig,videobuf2_v4l2,hantro_vpu,imx7_media_csi,v4l2_mem2mem,videobuf2_memops imx_mipi_csis 24576 0 imx219 20480 0 v4l2_cci 12288 1 imx219 v4l2_fwnode 20480 2 imx219,imx_mipi_csis v4l2_async 20480 4 v4l2_fwnode,imx219,imx_mipi_csis,imx7_media_csi videodev 258048 8 v4l2_async,v4l2_fwnode,imx219,videobuf2_v4l2,hantro_vpu,imx_mipi_csis,imx7_media_csi,v4l2_mem2mem mc 61440 9 v4l2_async,videodev,imx219,videobuf2_v4l2,hantro_vpu,videobuf2_common,imx_mipi_csis,imx7_media_csi,v4l 2_mem2mem spi_imx 24576 0 imx_pcm_dma 12288 1 snd_soc_fsl_sai imx8mm_thermal 12288 0 imx_sdma 24576 6 imx_cpufreq_dt 12288 0 The relevant dt looks like this: csi: csi@32e20000 { compatible = "fsl,imx8mm-csi", "fsl,imx7-csi"; reg = <0x32e20000 0x1000>; interrupts = <GIC_SPI 16 IRQ_TYPE_LEVEL_HIGH>; clocks = <&clk IMX8MM_CLK_CSI1_ROOT>; clock-names = "mclk"; power-domains = <&disp_blk_ctrl IMX8MM_DISPBLK_PD_CSI_BRIDGE>;
Just a wild guess, has the power domains driver probed properly?
Strangely I have a kernel config without modules where I do not run into this issue so it has something to do with modules but I haven't been able to determine which configs make a difference. Any ideas what is wrong here or tips on troubleshooting the cause for the probe defer?
In case the complete dmesg doesn't provide further errors, you could try to add "initcall_debug" to the kernel cmdline.
Best Regards, Tim [1] https://elixir.bootlin.com/linux/latest/source/arch/arm64/boot/dts/freescale/imx8mm-venice-gw72xx-0x.dts [2] https://elixir.bootlin.com/linux/latest/source/arch/arm64/boot/dts/freescale/imx8mm-venice-gw73xx-0x-imx219.dtso _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@xxxxxxxxxxxxxxxxxxx http://lists.infradead.org/mailman/listinfo/linux-arm-kernel