|
|
Log in / Subscribe / Register

media: i2c: Add support for GC08A3 sensor

From:  Zhi Mao <zhi.mao-AT-mediatek.com>
To:  <mchehab-AT-kernel.org>, <robh+dt-AT-kernel.org>, <krzysztof.kozlowski+dt-AT-linaro.org>, <sakari.ailus-AT-linux.intel.com>
Subject:  [PATCH v7 0/2] media: i2c: Add support for GC08A3 sensor
Date:  Sun, 03 Mar 2024 10:26:07 +0800
Message-ID:  <20240303022609.26263-1-zhi.mao@mediatek.com>
Cc:  <laurent.pinchart-AT-ideasonboard.com>, <shengnan.wang-AT-mediatek.com>, <yaya.chang-AT-mediatek.com>, <10572168-AT-qq.com>, <Project_Global_Chrome_Upstream_Group-AT-mediatek.com>, <yunkec-AT-chromium.org>, <conor+dt-AT-kernel.org>, <matthias.bgg-AT-gmail.com>, <angelogioacchino.delregno-AT-collabora.com>, <jacopo.mondi-AT-ideasonboard.com>, <zhi.mao-AT-mediatek.com>, <hverkuil-cisco-AT-xs4all.nl>, <heiko-AT-sntech.de>, <jernej.skrabec-AT-gmail.com>, <macromorgan-AT-hotmail.com>, <linus.walleij-AT-linaro.org>, <hdegoede-AT-redhat.com>, <tomi.valkeinen-AT-ideasonboard.com>, <gerald.loacker-AT-wolfvision.net>, <andy.shevchenko-AT-gmail.com>, <bingbu.cao-AT-intel.com>, <dan.scally-AT-ideasonboard.com>, <linux-media-AT-vger.kernel.org>, <devicetree-AT-vger.kernel.org>, <linux-kernel-AT-vger.kernel.org>, <linux-arm-kernel-AT-lists.infradead.org>, <linux-mediatek-AT-lists.infradead.org>
Archive-link:  Article

This series adds YAML DT binding and V4L2 sub-device driver for Galaxycore's
GC08A3 8-megapixel 10-bit RAW CMOS 1/4" sensor, with an MIPI CSI-2 image data
interface and the I2C control bus.

The driver is implemented with V4L2 framework.
 - Async registered as a V4L2 sub-device.
 - As the first component of camera system including Seninf, ISP pipeline.
 - A media entity that provides one source pad in common.
 - Used in camera features on ChromeOS application.

Also this driver supports following features:
 - manual exposure and analog gain control support
 - vertical blanking control support
 - test pattern support
 - media controller support
 - runtime PM support
 - support resolution: 3264x2448@30fps, 1920x1080@60fps

Previous versions of this patch-set can be found here:
v6: https://lore.kernel.org/linux-media/20240227013221.21512-...
v5: https://lore.kernel.org/linux-media/20240220012540.10607-...
v4: https://lore.kernel.org/linux-media/20240204061538.2105-1...
v3: https://lore.kernel.org/linux-media/20240109022715.30278-...
v2: https://lore.kernel.org/linux-media/20231207052016.25954-...
v1: https://lore.kernel.org/linux-media/20231123115104.32094-...

This series is based on linux-next, tag: next-20240229
Changes in v7:
- gc08a3 sensor driver:
-- refine header files in driver code follow iwyu rules
-- modify some commets to match code style and english grammar and punctuation
-- use the default case for assign variable in function: gc08a3_test_pattern
-- use DEFINE_* PM macro for runtime pm ops

Thanks

Zhi Mao (2):
  media: dt-bindings: i2c: add GalaxyCore GC08A3 image sensor
  media: i2c: Add GC08A3 image sensor driver

 .../bindings/media/i2c/galaxycore,gc08a3.yaml |  112 ++
 drivers/media/i2c/Kconfig                     |   10 +
 drivers/media/i2c/Makefile                    |    1 +
 drivers/media/i2c/gc08a3.c                    | 1339 +++++++++++++++++
 4 files changed, 1462 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/media/i2c/galaxycore,gc08a3.yaml
 create mode 100644 drivers/media/i2c/gc08a3.c

-- 
2.25.1





Copyright © 2024, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds