7.2. Amlogic C3 影像訊號處理 (C3ISP) 驅動程式

7.2.1. 簡介

本文件介紹了位於 drivers/media/platform/amlogic/c3/isp 下的 Amlogic C3ISP 驅動程式。

該驅動程式的當前版本支援 Amlogic C308L 處理器上的 C3ISP。

該驅動程式實現了 V4L2、媒體控制器和 V4L2 子裝置介面。支援核心中使用 V4L2 子裝置介面的攝像頭感測器。

該驅動程式已在 AW419-C308L-Socket 平臺上進行過測試。

7.2.2. Amlogic C3 ISP

C308L 處理器上發現的且驅動程式支援的攝像頭硬體包括:

  • 1 個 MIPI-CSI-2 模組:處理 MIPI CSI-2 接收器的物理層,並接收來自連線的攝像頭感測器的資料。

  • 1 個 MIPI-ADAPTER 模組:組織 MIPI 資料以滿足 ISP 輸入要求並將 MIPI 資料傳送到 ISP。

  • 1 個 ISP(影像訊號處理)模組:包含影像處理硬體塊的流水線。 ISP 流水線的末端包含三個調整大小器,每個調整大小器都連線到 DMA 介面,該介面將輸出資料寫入記憶體。

下面介紹了 C3 ISP 的高階功能檢視。

                                                                 +----------+    +-------+
                                                                 | Resizer  |--->| WRMIF |
+---------+    +------------+    +--------------+    +-------+   |----------+    +-------+
| Sensor  |--->| MIPI CSI-2 |--->| MIPI ADAPTER |--->|  ISP  |---|----------+    +-------+
+---------+    +------------+    +--------------+    +-------+   | Resizer  |--->| WRMIF |
                                                                 +----------+    +-------+
                                                                 |----------+    +-------+
                                                                 | Resizer  |--->| WRMIF |
                                                                 +----------+    +-------+

7.2.3. 驅動程式架構和設計

為了對模組之間的硬體連結進行建模,並公開一個乾淨、邏輯和可用的介面,驅動程式註冊了以下 V4L2 子裝置:

  • 1 個 c3-mipi-csi2 子裝置 - MIPI CSI-2 接收器

  • 1 個 c3-mipi-adapter 子裝置 - MIPI 介面卡

  • 1 個 c3-isp-core 子裝置 - ISP 核心

  • 3 個 c3-isp-resizer 子裝置 - ISP 調整大小器

c3-isp-core 子裝置連結到 2 個影片裝置節點,用於統計資料捕獲和引數程式設計

  • c3-isp-stats 捕獲影片裝置節點用於統計資料捕獲

  • c3-isp-params 輸出影片裝置用於引數程式設計

每個 c3-isp-resizer 子裝置都連結到一個捕獲影片裝置節點,從中捕獲幀

  • c3-isp-resizer0 連結到 c3-isp-cap0 捕獲影片裝置

  • c3-isp-resizer1 連結到 c3-isp-cap1 捕獲影片裝置

  • c3-isp-resizer2 連結到 c3-isp-cap2 捕獲影片裝置

媒體控制器流水線圖如下所示(連線了 IMX290 攝像頭感測器):

c3-isp.dot

媒體流水線拓撲

7.2.4. 實現

ISP 硬體的執行時配置在 c3-isp-params 影片裝置節點上執行,使用 V4L2_META_FMT_C3ISP_PARAMS 作為資料格式。緩衝區結構由 c3_isp_params_cfg 定義。

統計資料是從 c3-isp-stats 影片裝置節點捕獲的,使用 V4L2_META_FMT_C3ISP_STATS 資料格式。

最終圖片大小和格式使用 V4L2 影片捕獲介面在 c3-isp-cap[0, 2] 影片裝置節點上配置。

Amlogic C3 ISP 由 libcamera 支援,具有專用的流水線處理程式和演算法,可執行執行時影像校正和增強。