[PATCH v2 0/3] media: i2c: ov9282: Modernize driver with CCI and streams API

From: Xiaolei Wang

Date: Sun Mar 01 2026 - 05:49:30 EST


This series modernizes the ov9282 driver by:

1. Converting to the common CCI (Camera Control Interface) register
access helpers, which simplifies the code by removing custom I2C
register access functions.

2. Switching to use the V4L2 sub-device state lock instead of a
private mutex, improving integration with the V4L2 framework.

3. Migrating from the legacy s_stream callback to the modern
enable_streams/disable_streams callbacks, providing better support
for multiplexed streams.

These changes reduce code complexity, improve maintainability, and
align the driver with current V4L2 best practices.

I verified each patch on the Raspberry Pi 5 platform.

Changes in V2:
- Patch 1: Fixed group hold release error handling in
ov9282_update_exp_gain()
- Patch 2: Fixed runtime PM cleanup in probe error path
- Patch 3: Improved error handling with clearer err_pm_put: label

Link to V1:
https://patchwork.linuxtv.org/project/linux-media/cover/20260228083401.1007434-1-xiaolei.wang@xxxxxxxxxxxxx/

Xiaolei Wang (3):
media: i2c: ov9282: Convert to CCI register access helpers
media: i2c: ov9282: Switch to using the sub-device state lock
media: i2c: ov9282: switch to {enable,disable}_streams

drivers/media/i2c/Kconfig | 1 +
drivers/media/i2c/ov9282.c | 408 +++++++++----------------------------
2 files changed, 101 insertions(+), 308 deletions(-)

--
2.43.0