|
|
Subscribe / Log in / New account

media: i2c: add Sony IMX111 CMOS camera sensor driver

From:  Svyatoslav Ryhel <clamor95-AT-gmail.com>
To:  Mauro Carvalho Chehab <mchehab-AT-kernel.org>, Rob Herring <robh-AT-kernel.org>, Krzysztof Kozlowski <krzk+dt-AT-kernel.org>, Conor Dooley <conor+dt-AT-kernel.org>, Sakari Ailus <sakari.ailus-AT-linux.intel.com>, Svyatoslav Ryhel <clamor95-AT-gmail.com>, Hans Verkuil <hverkuil-AT-xs4all.nl>, Hans de Goede <hansg-AT-kernel.org>, AndrĂ© Apitzsch <git-AT-apitzsch.eu>, Sylvain Petinot <sylvain.petinot-AT-foss.st.com>, Benjamin Mugnier <benjamin.mugnier-AT-foss.st.com>, Dongcheng Yan <dongcheng.yan-AT-intel.com>, Heimir Thor Sverrisson <heimir.sverrisson-AT-gmail.com>, Tarang Raval <tarang.raval-AT-siliconsignals.io>
Subject:  [PATCH v4 0/2] media: i2c: add Sony IMX111 CMOS camera sensor driver
Date:  Mon, 03 Nov 2025 16:56:27 +0200
Message-ID:  <20251103145629.21588-1-clamor95@gmail.com>
Cc:  linux-media-AT-vger.kernel.org, devicetree-AT-vger.kernel.org, linux-kernel-AT-vger.kernel.org
Archive-link:  Article

Add driver for Sony IMX111 CMOS sensor found in LG Optimus 4X and Vu
smartphones.

---
Changes in v2:
- added nvmem-consumer and dropped eeprom
- switched to unevaluatedProperties
- dropped flash-leds, lens-focus, orientation and rotation since they are
  inherited from video-interface-devices by unevaluatedProperties
- dropped assigned-clock* props
- improved code style
- adjusted colorspace definitions

Changes in v3:
- switched to devm_regulator_bulk_get_const
- set V4L2_MBUS_CSI2_DPHY bus type unconditionaly
- removed pm_runtime_mark_last_busy
- removed properties from port endpoint and bus-type requirement
- removed unused headers
- adjusted register macros
- added vblank and hblank
- swapped register writed with known purpuse with macros
- container_of > container_of_const
- added return check to group write
- adjusted PM similar to imx219
- switched to enable/disable streams
- dropped enum_frame_interval, get_frame_interval and set_frame_interval ops
- devm_clk_get > devm_v4l2_sensor_clk_get
- adjusted default_link_freq calculation
- dropped imx111_id i2c_device_id
- improved code formatting

Changes in v4:
- aligned to 80 symbols per line
- switch > if for V4L2_CID_VBLANK in imx111_set_ctrl
- defined INTEGRATION_TIME_OFFSET
- added check for __v4l2_ctrl_* calls
- removed struct v4l2_subdev *sd from imx111_init_controls
- increased num of controls to 15
- initiated ret values
- added return pointer to most cci operations
---

Svyatoslav Ryhel (2):
  dt-bindings: media: i2c: document Sony IMX111 CMOS sensor
  media: i2c: add Sony IMX111 CMOS camera sensor driver

 .../bindings/media/i2c/sony,imx111.yaml       |  105 ++
 drivers/media/i2c/Kconfig                     |   10 +
 drivers/media/i2c/Makefile                    |    1 +
 drivers/media/i2c/imx111.c                    | 1610 +++++++++++++++++
 4 files changed, 1726 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/media/i2c/sony,imx111.yaml
 create mode 100644 drivers/media/i2c/imx111.c

-- 
2.51.0




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