[PATCH v6 0/2] media: i2c: Add ov2735 camera sensor driver
From: Hardevsinh Palaniya
Date: Thu Jul 31 2025 - 02:10:47 EST
The Omnivision OV2735 is a 1/2.7-Inch CMOS image sensor with an
active array size of 1920 x 1080.
The following features are supported:
- Manual exposure an gain control support.
- vblank/hblank control support.
- Test pattern support control.
- Supported resolution: 1920 x 1080 @ 30fps (SGRBG10).
The driver is tested on mainline branch v6.14-rc6 on IMX8MP Debix Model a.
v5 -> v6
In Patch 1/2:
- Add MAINTAINERS entry
In Patch 2/2:
- Add Required headers
- Change ov2735_page_access prototype to remove casting
- Add error check for devm_pm_runtime*
- Remove unused variable from stream_enable (Media CI robot detected)
v4 -> v5
In Patch 1/2:
- Add Krzysztof's Review tag.
In Patch 2/2:
- Remove redundant if (ret && err) check in ov2735_page_access()
- Address coding style issues (indentation, format specifier, combined declaration)
- Replace hardcoded values with USEC_PER_MSEC where appropriate
- removing unused "ov2735->client = client"
v3 -> v4
In Patch 1/2:
- Removed the clock-names property from the device tree binding.
- Added link-frequencies property to the port node.
- Cleaned up the example by removing unnecessary entries.
In Patch 2/2:
- Removed the cci_ prefix from read/write functions and custom page macros.
- Corrected error handling in the ov2735_page_access() function.
- Calculated PLL parameters dynamically based on the specified link frequency.
- Set resolution registers from format and crop instead of hardcoding.
- Fixed a memory leak in ov2735_parse_endpoint().
- Switched to devm_pm_runtime_*() functions for runtime PM handling.
- Added documentation for the use of msleep() in the power_on() function.
- Corrected GPIO polarity handling in the power_off() function.
v2 -> v3
In Patch 1/2:
- Renamed pwdn pin to enable pin.
- Changed supply names to lowercase and added them to required properties.
In Patch 2/2:
- Stored page number in CCI private bits.
- Added helper functions to handle page switching in cci_read() and cci_write().
- Removed ov2735_mbus_codes.
- Corrected control count to 9.
v1 -> v2
- Added necessary header files.
- Corrected indentation.
- Used the ret parameter in cci_write and cci_read functions.
Hardevsinh Palaniya (1):
media: i2c: add ov2735 image sensor driver
Himanshu Bhavani (1):
dt-bindings: media: i2c: Add ov2735 sensor
.../bindings/media/i2c/ovti,ov2735.yaml | 109 ++
MAINTAINERS | 9 +
drivers/media/i2c/Kconfig | 10 +
drivers/media/i2c/Makefile | 1 +
drivers/media/i2c/ov2735.c | 1071 +++++++++++++++++
5 files changed, 1200 insertions(+)
create mode 100644 Documentation/devicetree/bindings/media/i2c/ovti,ov2735.yaml
create mode 100644 drivers/media/i2c/ov2735.c
--
2.34.1