[PATCH v8 0/2] media: i2c: Add ov2735 camera sensor driver

Hardevsinh Palaniya posted 2 patches 1 month, 1 week ago
There is a newer version of this series
.../bindings/media/i2c/ovti,ov2735.yaml       |  108 ++
MAINTAINERS                                   |    9 +
drivers/media/i2c/Kconfig                     |   10 +
drivers/media/i2c/Makefile                    |    1 +
drivers/media/i2c/ov2735.c                    | 1109 +++++++++++++++++
5 files changed, 1237 insertions(+)
create mode 100644 Documentation/devicetree/bindings/media/i2c/ovti,ov2735.yaml
create mode 100644 drivers/media/i2c/ov2735.c
[PATCH v8 0/2] media: i2c: Add ov2735 camera sensor driver
Posted by Hardevsinh Palaniya 1 month, 1 week ago
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.      

v7 -> v8

In Patch 2/2:
- Correct some macro prefixes
- Add register names for timing and analog control registers
- Make the common register array const
- Wrap lines within 80 columns
- Remove unnecessary guard delay
                                                                                
v6 -> v7                                                                        
                                                                                
In Patch 1/2:                                                                   
- Remove 'link-frequencies' property (already present)                          
                                                                                
In Patch 2/2:                                                                   
- Add mutex guard                                                               
- Correct pll_ctrl_enable macro name                                            
- Add error check for '__v4l2_ctrl_modify_range'                                
- Remove unnecessary comments                                                   
                                                                                
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       |  108 ++
 MAINTAINERS                                   |    9 +
 drivers/media/i2c/Kconfig                     |   10 +
 drivers/media/i2c/Makefile                    |    1 +
 drivers/media/i2c/ov2735.c                    | 1109 +++++++++++++++++
 5 files changed, 1237 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/media/i2c/ovti,ov2735.yaml
 create mode 100644 drivers/media/i2c/ov2735.c

-- 
2.34.1
Re: [PATCH v8 0/2] media: i2c: Add ov2735 camera sensor driver
Posted by Sakari Ailus 1 month ago
Hi Hardev,

On Thu, Aug 21, 2025 at 08:01:11PM +0530, Hardevsinh Palaniya wrote:
> The Omnivision OV2735 is a 1/2.7-Inch CMOS image sensor with an                 
> active array size of 1920 x 1080.                                               

Have you run v4l2-compliance on this? Could you do so and provide the
report, please?

-- 
Kind regards,

Sakari Ailus