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