mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-12-29 17:25:38 +00:00
f72f80550d
Add starfive_camss.rst file that documents the Starfive Camera Subsystem driver which is used for handing image sensor data. Signed-off-by: Jack Zhu <jack.zhu@starfivetech.com> Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
73 lines
2.5 KiB
ReStructuredText
73 lines
2.5 KiB
ReStructuredText
.. SPDX-License-Identifier: GPL-2.0
|
|
|
|
.. include:: <isonum.txt>
|
|
|
|
================================
|
|
Starfive Camera Subsystem driver
|
|
================================
|
|
|
|
Introduction
|
|
------------
|
|
|
|
This file documents the driver for the Starfive Camera Subsystem found on
|
|
Starfive JH7110 SoC. The driver is located under drivers/staging/media/starfive/
|
|
camss.
|
|
|
|
The driver implements V4L2, Media controller and v4l2_subdev interfaces. Camera
|
|
sensor using V4L2 subdev interface in the kernel is supported.
|
|
|
|
The driver has been successfully used on the Gstreamer 1.18.5 with v4l2src
|
|
plugin.
|
|
|
|
|
|
Starfive Camera Subsystem hardware
|
|
----------------------------------
|
|
|
|
The Starfive Camera Subsystem hardware consists of::
|
|
|
|
|\ +---------------+ +-----------+
|
|
+----------+ | \ | | | |
|
|
| | | | | | | |
|
|
| MIPI |----->| |----->| ISP |----->| |
|
|
| | | | | | | |
|
|
+----------+ | | | | | Memory |
|
|
|MUX| +---------------+ | Interface |
|
|
+----------+ | | | |
|
|
| | | |---------------------------->| |
|
|
| Parallel |----->| | | |
|
|
| | | | | |
|
|
+----------+ | / | |
|
|
|/ +-----------+
|
|
|
|
- MIPI: The MIPI interface, receiving data from a MIPI CSI-2 camera sensor.
|
|
|
|
- Parallel: The parallel interface, receiving data from a parallel sensor.
|
|
|
|
- ISP: The ISP, processing raw Bayer data from an image sensor and producing
|
|
YUV frames.
|
|
|
|
|
|
Topology
|
|
--------
|
|
|
|
The media controller pipeline graph is as follows:
|
|
|
|
.. _starfive_camss_graph:
|
|
|
|
.. kernel-figure:: starfive_camss_graph.dot
|
|
:alt: starfive_camss_graph.dot
|
|
:align: center
|
|
|
|
The driver has 2 video devices:
|
|
|
|
- capture_raw: The capture device, capturing image data directly from a sensor.
|
|
- capture_yuv: The capture device, capturing YUV frame data processed by the
|
|
ISP module
|
|
|
|
The driver has 3 subdevices:
|
|
|
|
- stf_isp: is responsible for all the isp operations, outputs YUV frames.
|
|
- cdns_csi2rx: a CSI-2 bridge supporting up to 4 CSI lanes in input, and 4
|
|
different pixel streams in output.
|
|
- imx219: an image sensor, image data is sent through MIPI CSI-2.
|