尊敬的技术支持团队:
我们目前正在研究如何使用 i.MX8MP FRDM 板集成两个摄像头。
摄像机配置如下:
* CSI2:0 连接到 OV5640 摄像机。
* CSI2:1 连接到定制的摄像头模块。
对于这两台相机,我们配置了设备树,使图像管道不使用 ISP 功能。计划的管道是:
“传感器 → MIPI CSI-2 → ISI → 捕获”
设备树文件已附上,供您参考:“imx8mp-frdm-ov5640-cusdom.dts”
问题在于,自定义相机驱动程序成功完成了 I2C3 上的 I2C 探测过程,但在调用“v4l2_async_register_subdev_sensor()”时发生内核崩溃。
总而言之,内核崩溃的原因是,在注册自定义相机时,“mxc_isi.1”尚未创建或注册。
相关的内核崩溃日志已附上:“panic-log.txt”
我们还附上了自定义相机驱动程序的探测函数实现:“custom_driver_probe.c”
我们参考 i.MX8MP FRDM 板的默认设备树配置创建了“imx8mp-frdm-ov5640-cusdom.dts”。
OV5640摄像头工作正常。然而,自定义摄像头无法与 ISI 管道建立连接,最终导致内核崩溃。
在检查了设备树配置和自定义相机驱动程序之后,我们仍然无法确定问题的根本原因。
附件中的“imx8-media-dev.c”文件仅包含我们添加的额外调试信息,用于确定内核崩溃发生的位置。
我们的目标是通过 i.MX8MP 平台上的 MIPI CSI-2 接口同时操作两台不同的摄像机。
请您查看附件中的设备树和驱动程序代码,并指出哪些配置或实现部分可能不正确或缺失?
您的支持和指导将不胜感激。
谢谢!
此致,
西奥比