Documentation/admin-guide/media/mali-c55.rst

Source file repositories/reference/linux-study-clean/Documentation/admin-guide/media/mali-c55.rst

File Facts

System
Linux kernel
Corpus path
Documentation/admin-guide/media/mali-c55.rst
Extension
.rst
Size
17066 bytes
Lines
414
Domain
Support Tooling And Documentation
Bucket
Documentation
Inferred role
Support Tooling And Documentation: documentation
Status
atlas-only

Why This File Exists

Repository support layer: documentation, build tooling, samples, user-space helper tools, generated initramfs support, licenses, and validation utilities.

Dependency Surface

Detected Declarations

Annotated Snippet

.. SPDX-License-Identifier: GPL-2.0

==========================================
ARM Mali-C55 Image Signal Processor driver
==========================================

Introduction
============

This file documents the driver for ARM's Mali-C55 Image Signal Processor. The
driver is located under drivers/media/platform/arm/mali-c55.

The Mali-C55 ISP receives data in either raw Bayer format or RGB/YUV format from
sensors through either a parallel interface or a memory bus before processing it
and outputting it through an internal DMA engine. Two output pipelines are
possible (though one may not be fitted, depending on the implementation). These
are referred to as "Full resolution" and "Downscale", but the naming is historic
and both pipes are capable of cropping/scaling operations. The full resolution
pipe is also capable of outputting RAW data, bypassing much of the ISP's
processing. The downscale pipe cannot output RAW data. An integrated test
pattern generator can be used to drive the ISP and produce image data in the
absence of a connected camera sensor. The driver module is named mali_c55, and
is enabled through the CONFIG_VIDEO_MALI_C55 config option.

The driver implements V4L2, Media Controller and V4L2 Subdevice interfaces and
expects camera sensors connected to the ISP to have V4L2 subdevice interfaces.

Mali-C55 ISP hardware
=====================

A high level functional view of the Mali-C55 ISP is presented below. The ISP
takes input from either a live source or through a DMA engine for memory input,
depending on the SoC integration.::

  +---------+    +----------+                                     +--------+
  | Sensor  |--->| CSI-2 Rx |                "Full Resolution"    |  DMA   |
  +---------+    +----------+   |\                 Output    +--->| Writer |
                       |        | \                          |    +--------+
                       |        |  \    +----------+  +------+---> Streaming I/O
  +------------+       +------->|   |   |          |  |
  |            |                |   |-->| Mali-C55 |--+
  | DMA Reader |--------------->|   |   |    ISP   |  |
  |            |                |  /    |          |  |      +---> Streaming I/O
  +------------+                | /     +----------+  |      |
                                |/                    +------+
                                                             |    +--------+
                                                             +--->|  DMA   |
                                               "Downscaled"       | Writer |
                                                  Output          +--------+

Media Controller Topology
=========================

An example of the ISP's topology (as implemented in a system with an IMX415
camera sensor and generic CSI-2 receiver) is below:


.. kernel-figure:: mali-c55-graph.dot
    :alt:   mali-c55-graph.dot
    :align: center

The driver has 4 V4L2 subdevices:

- `mali_c55 isp`: Responsible for configuring input crop and color space
                  conversion
- `mali_c55 tpg`: The test pattern generator, emulating a camera sensor.
- `mali_c55 resizer fr`: The Full-Resolution pipe resizer
- `mali_c55 resizer ds`: The Downscale pipe resizer

The driver has 3 V4L2 video devices:

Annotation

Implementation Notes