mmp-camera: specify XO-1.75 clock speed

Message ID 20120515194331.77C519D401E@zog.reactivated.net (mailing list archive)
State Changes Requested, archived
Headers

Commit Message

Daniel Drake May 15, 2012, 7:43 p.m. UTC
  For the ov7670 camera to return images at the requested frame rate,
it needs to make calculations based on the clock speed, which is
a completely external factor (depends on the wiring of the system).

On the XO-1.75, which is the only known mmp-camera user, the camera
is clocked at 48MHz.

Pass this information to the ov7670 driver, to fix an issue where
a framerate faster than the requested amount was being provided.

Signed-off-by: Daniel Drake <dsd@laptop.org>
---
 drivers/media/video/marvell-ccic/mmp-driver.c |    7 +++++++
 1 file changed, 7 insertions(+)

Jon, is it OK to assume that XO-1.75 is the only mmp-camera user?
  

Comments

Jonathan Corbet May 16, 2012, 9:12 p.m. UTC | #1
On Tue, 15 May 2012 20:43:31 +0100 (BST)
Daniel Drake <dsd@laptop.org> wrote:

> Jon, is it OK to assume that XO-1.75 is the only mmp-camera user?

It's the only one I know of at the moment, certainly.

Even so, I think it would be a lot better to put this parameter into the
mmp_camera_platform_data structure instead of wiring it into the driver
source; it could then be set in olpc-xo-1-75.c with the other relevant
parameters.  I won't oppose the inclusion of this patch, but...any chance
it could be done that way?

Thanks,

jon
--
To unsubscribe from this list: send the line "unsubscribe linux-media" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
  
Daniel Drake May 16, 2012, 9:15 p.m. UTC | #2
On Wed, May 16, 2012 at 3:12 PM, Jonathan Corbet <corbet@lwn.net> wrote:
> On Tue, 15 May 2012 20:43:31 +0100 (BST)
> Daniel Drake <dsd@laptop.org> wrote:
>
>> Jon, is it OK to assume that XO-1.75 is the only mmp-camera user?
>
> It's the only one I know of at the moment, certainly.
>
> Even so, I think it would be a lot better to put this parameter into the
> mmp_camera_platform_data structure instead of wiring it into the driver
> source; it could then be set in olpc-xo-1-75.c with the other relevant
> parameters.  I won't oppose the inclusion of this patch, but...any chance
> it could be done that way?

I'll look into it. Please put this patch on pause for now.

Thanks
Daniel
--
To unsubscribe from this list: send the line "unsubscribe linux-media" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
  
Mauro Carvalho Chehab May 20, 2012, 3:18 p.m. UTC | #3
Em 16-05-2012 18:15, Daniel Drake escreveu:
> On Wed, May 16, 2012 at 3:12 PM, Jonathan Corbet <corbet@lwn.net> wrote:
>> On Tue, 15 May 2012 20:43:31 +0100 (BST)
>> Daniel Drake <dsd@laptop.org> wrote:
>>
>>> Jon, is it OK to assume that XO-1.75 is the only mmp-camera user?
>>
>> It's the only one I know of at the moment, certainly.
>>
>> Even so, I think it would be a lot better to put this parameter into the
>> mmp_camera_platform_data structure instead of wiring it into the driver
>> source; it could then be set in olpc-xo-1-75.c with the other relevant
>> parameters.  I won't oppose the inclusion of this patch, but...any chance
>> it could be done that way?
> 
> I'll look into it. Please put this patch on pause for now.

I've marked this patch as "changes requested" at patchwork:
	http://patchwork.linuxtv.org/patch/11270/

I agree with Jon: adding such config stuff at platform data is better.

Regards,
Mauro
--
To unsubscribe from this list: send the line "unsubscribe linux-media" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
  

Patch

diff --git a/drivers/media/video/marvell-ccic/mmp-driver.c b/drivers/media/video/marvell-ccic/mmp-driver.c
index c4c17fe..0ba49c7 100644
--- a/drivers/media/video/marvell-ccic/mmp-driver.c
+++ b/drivers/media/video/marvell-ccic/mmp-driver.c
@@ -188,6 +188,13 @@  static int mmpcam_probe(struct platform_device *pdev)
 	mcam->chip_id = V4L2_IDENT_ARMADA610;
 	mcam->buffer_mode = B_DMA_sg;
 	spin_lock_init(&mcam->dev_lock);
+
+	/*
+	 * Set the clock speed for the XO-1.75; I don't believe this
+	 * driver has ever run anywhere else.
+	 */
+	mcam->clock_speed = 48;
+
 	/*
 	 * Get our I/O memory.
 	 */