printf: Remove unused 'bprintf'
[drm/drm-misc.git] / Documentation / admin-guide / media / starfive_camss.rst
blobca42e9447c47bef136e93fe6fe09dfc551e790ce
1 .. SPDX-License-Identifier: GPL-2.0
3 .. include:: <isonum.txt>
5 ================================
6 Starfive Camera Subsystem driver
7 ================================
9 Introduction
10 ------------
12 This file documents the driver for the Starfive Camera Subsystem found on
13 Starfive JH7110 SoC. The driver is located under drivers/staging/media/starfive/
14 camss.
16 The driver implements V4L2, Media controller and v4l2_subdev interfaces. Camera
17 sensor using V4L2 subdev interface in the kernel is supported.
19 The driver has been successfully used on the Gstreamer 1.18.5 with v4l2src
20 plugin.
23 Starfive Camera Subsystem hardware
24 ----------------------------------
26 The Starfive Camera Subsystem hardware consists of::
28                     |\         +---------------+      +-----------+
29   +----------+      |  \       |               |      |           |
30   |          |      |   |      |               |      |           |
31   |   MIPI   |----->|   |----->|      ISP      |----->|           |
32   |          |      |   |      |               |      |           |
33   +----------+      |   |      |               |      |  Memory   |
34                     |MUX|      +---------------+      | Interface |
35   +----------+      |   |                             |           |
36   |          |      |   |---------------------------->|           |
37   | Parallel |----->|   |                             |           |
38   |          |      |   |                             |           |
39   +----------+      |  /                              |           |
40                     |/                                +-----------+
42 - MIPI: The MIPI interface, receiving data from a MIPI CSI-2 camera sensor.
44 - Parallel: The parallel interface,  receiving data from a parallel sensor.
46 - ISP: The ISP, processing raw Bayer data from an image sensor and producing
47   YUV frames.
50 Topology
51 --------
53 The media controller pipeline graph is as follows:
55 .. _starfive_camss_graph:
57 .. kernel-figure:: starfive_camss_graph.dot
58     :alt:   starfive_camss_graph.dot
59     :align: center
61 The driver has 2 video devices:
63 - capture_raw: The capture device, capturing image data directly from a sensor.
64 - capture_yuv: The capture device, capturing YUV frame data processed by the
65   ISP module
67 The driver has 3 subdevices:
69 - stf_isp: is responsible for all the isp operations, outputs YUV frames.
70 - cdns_csi2rx: a CSI-2 bridge supporting up to 4 CSI lanes in input, and 4
71   different pixel streams in output.
72 - imx219: an image sensor, image data is sent through MIPI CSI-2.