Hi all,
This is v2 of the IMX585 series. It adds ClearHDR controls, fixes mono
format handling, and ensures HCG can’t be enabled while HDR is active.
Changes in v2:
- Move to V4L2 active State API.
- Shift the I2C registers read/write to v4l2-cci.
- Remove IR Filter switch support.
- Various log/trace noise trimmed or moved to debug print.
- Lock/ignore HCG when HDR is enabled; mark control inactive.
- Using compatible string for mono sensor.
- dt-bindings: drop redundant maxItems/minItems/names,
add "sony,imx585-mono", fix quoted string lint.
Features
==========
* 4-lane or 2-lane MIPI-CSI-2 up to 2079 Mbps/lane
* 4 K @ 60 fps 12-bit linear, 4 K @ 30 fps 16-bit Clear-HDR,
4 K @ 30 fps 12-bit gradient compression Clear-HDR
1080p binning mode, mono hardware variant, HCG support.
* New Sensor Dependent V4L2 controls for
HDR blending, grad-compression, HCG enable and Enable ClearHDR.
* Blacklevel adjustments through V4L2_CID_BRIGHTNESS.
* Multi Camera synchronization mode support.
Testing
==========
- Platform: Raspberry Pi 5, 4 lanes
- Formats: Y12/Y16 (mono), SRGGB12/SRGGB16 (color)
- Verified HDR on/off toggling updates ranges (exposure/gain/HMAX/VMAX)
- HCG is inactive and ignored when HDR=1; active in normal mode
Series layout
=============
1. **dt-bindings: media: Add Sony IMX585 CMOS image sensor**
2. **media: uapi: Add custom IMX585 control IDs**
3. **media: i2c: imx585: Add Sony IMX585 image-sensor driver**
4. **media: docs: Add userspace-API guide for the IMX585 driver**
Link to v1: https://lore.kernel.org/linux-media/20250702063836.3984-1-will@willwhang.com/
Thanks for reviewing!
Signed-off-by: Will Whang <will@willwhang.com>
Will Whang (4):
dt-bindings: media: Add Sony IMX585 CMOS image sensor
media: uapi: Add custom IMX585 control IDs
media: i2c: imx585: Add Sony IMX585 image-sensor driver
media: docs: Add userspace-API guide for the IMX585 driver
.../bindings/media/i2c/sony,imx585.yaml | 116 ++
.../userspace-api/media/drivers/imx585.rst | 122 ++
.../userspace-api/media/drivers/index.rst | 1 +
MAINTAINERS | 9 +
drivers/media/i2c/Kconfig | 9 +
drivers/media/i2c/Makefile | 1 +
drivers/media/i2c/imx585.c | 1768 +++++++++++++++++
include/uapi/linux/imx585.h | 20 +
include/uapi/linux/v4l2-controls.h | 6 +
9 files changed, 2052 insertions(+)
create mode 100644 Documentation/devicetree/bindings/media/i2c/sony,imx585.yaml
create mode 100644 Documentation/userspace-api/media/drivers/imx585.rst
create mode 100644 drivers/media/i2c/imx585.c
create mode 100644 include/uapi/linux/imx585.h
--
2.39.5