On 04/16/2018 05:26 AM, Hans Verkuil wrote:
On 04/16/2018 03:39 AM, Samuel Bobrowicz wrote:
Can anyone verify if the OV5640 driver works with input clocks other
than the typical 24MHz? The driver suggests anything from 6MHz-24MHz
is acceptable, but I am running into issues while bringing up a module
that uses a 12MHz oscillator. I'd expect that different xclk's would
necessitate different register settings for the various resolutions
(PLL settings, PCLK width, etc.), however the driver does not seem to
modify nearly enough based on the frequency of xclk.
I'm pretty sure it has never been tested with 12 MHz. The i.MX SabreLite
seems to use 22 MHz, and I can't tell from the code what the SabreSD uses
(probably 22 or 24 MHz). Steve will probably know.
On i.MX6, the sabrelite uses the PWM3 clock at 22MHz for the OV5640 xclk.
The SabreSD uses the i.MX6 CKO clock, which is default sourced from the
24 MHz oscillator.
I wouldn't be surprised that there are issues with a 12MHz xclk in the
ov5640 driver. There's probably some assumptions made about the
xclk range in the hardcoded values in those huge register tables. Sorry
I don't have the time to look into it more.