Re: I2C of sensor SOC_CAMERA
- Date: Tue, 22 Dec 2009 23:00:28 +0100 (CET)
- From: Guennadi Liakhovetski <g.liakhovetski@xxxxxx>
- Subject: Re: I2C of sensor SOC_CAMERA
On Tue, 22 Dec 2009, Carlos Lavin wrote:
> hello. I'm developping a driver and I need develop a sensor with soc_camera
> library, well , I have a problem with the sensor because I can't read
> correctly of it, I use these instructions when I register the driver:
> static int __init ov7670_module_init(void)
> return i2c_add_driver(&ov7670_soc_i2c_driver);
> and in function probe of sensor.
> if (!i2c_check_functionality(adapter, I2C_FUNC_SMBUS_BYTE_DATA))
> i2c_set_clientdata(client, priv);
> ret = soc_camera_device_register(icd);
If you're using this function, then you're using a very old kernel.
> I don't know why I can't read well of this sensor...the sensor return values
> incorrect and bad (as "fffffffb") the address I2C is correct, can someone
> help me? can be that I haven't important function in the driver or in the
> configuration board?
You should upgrade to the newest kernel, best to the Linus' git tree and
port your driver to it. Then the most common reason for non-working I2C is
not started master clock on the interface. I would look in that direction.
Guennadi Liakhovetski, Ph.D.
Freelance Open-Source Software Developer
video4linux-list mailing list