7.23. Starfive 摄像头子系统驱动程序¶
7.23.1. 介绍¶
本文档介绍 Starfive JH7110 SoC 上的 Starfive 摄像头子系统的驱动程序。该驱动程序位于 drivers/staging/media/starfive/ camss 下。
该驱动程序实现了 V4L2、媒体控制器和 v4l2_subdev 接口。支持内核中使用 V4L2 subdev 接口的摄像头传感器。
该驱动程序已成功在带有 v4l2src 插件的 Gstreamer 1.18.5 上使用。
7.23.2. Starfive 摄像头子系统硬件¶
Starfive 摄像头子系统硬件包括
|\ +---------------+ +-----------+
+----------+ | \ | | | |
| | | | | | | |
| MIPI |----->| |----->| ISP |----->| |
| | | | | | | |
+----------+ | | | | | Memory |
|MUX| +---------------+ | Interface |
+----------+ | | | |
| | | |---------------------------->| |
| Parallel |----->| | | |
| | | | | |
+----------+ | / | |
|/ +-----------+
MIPI:MIPI 接口,接收来自 MIPI CSI-2 摄像头传感器的数据。
并行:并行接口,接收来自并行传感器的数据。
ISP:ISP,处理来自图像传感器的原始拜耳数据并生成 YUV 帧。
7.23.3. 拓扑¶
媒体控制器流水线图如下
该驱动程序有 2 个视频设备
capture_raw:捕获设备,直接从传感器捕获图像数据。
capture_yuv:捕获设备,捕获由 ISP 模块处理的 YUV 帧数据
该驱动程序有 3 个子设备
stf_isp:负责所有 isp 操作,输出 YUV 帧。
cdns_csi2rx:CSI-2 桥,支持最多 4 个 CSI 通道输入和 4 个不同的像素流输出。
imx219:图像传感器,图像数据通过 MIPI CSI-2 发送。