Re: [BACKPORT v3.18] media: ov6650: Fix sensor possibly not detected on probe

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Fri, Mar 29, 2019 at 10:20:05PM +0100, Janusz Krzysztofik wrote:
> After removal of clock_start() from before soc_camera_init_i2c() in
> soc_camera_probe() by commit 9aea470b399d ("[media] soc-camera: switch
> I2C subdevice drivers to use v4l2-clk") introduced in v3.11, the ov6650
> driver could no longer probe the sensor successfully because its clock
> was no longer turned on in advance.  The issue was initially worked
> around by adding that missing clock_start() equivalent to OMAP1 camera
> interface driver - the only user of this sensor - but a propoer fix
> should be rather implemented in the sensor driver code itself.
> 
> Fix the issue by inserting a delay between the clock is turned on and
> the sensor I2C registers are read for the first time.
> 
> Fixes: 9aea470b399d ("[media] soc-camera: switch I2C subdevice drivers to use v4l2-clk")
> Signed-off-by: Janusz Krzysztofik <jmkrzyszt@xxxxxxxxx>
> Cc: stable@xxxxxxxxxxxxxxx
> ---
> Rebased on 3.18, should apply cleanly on 4.4 and 4.9 as well.
> 
> I dropped the comment on the patch being tested on an out of tree
> omap1_camera driver mainly because that driver is still in the tree
> in those kernel versions.
> 
>  drivers/media/i2c/soc_camera/ov6650.c | 2 ++
>  1 file changed, 2 insertions(+)
> 
> diff --git a/drivers/media/i2c/soc_camera/ov6650.c b/drivers/media/i2c/soc_camera/ov6650.c
> index ab01598ec83f..c0e25bf55fb8 100644
> --- a/drivers/media/i2c/soc_camera/ov6650.c
> +++ b/drivers/media/i2c/soc_camera/ov6650.c
> @@ -829,6 +829,8 @@ static int ov6650_video_probe(struct i2c_client *client)
>  	if (ret < 0)
>  		return ret;
>  
> +	msleep(20);
> +
>  	/*
>  	 * check and show product ID and manufacturer ID
>  	 */
> -- 
> 2.19.2
> 

What is the git commit id of this patch in Linus's tree?

thanks,

greg k-h



[Index of Archives]     [Linux Kernel]     [Kernel Development Newbies]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite Hiking]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux