From: Jonathan Cameron <jic23@cam.ac.uk>
To: Hans Verkuil <hverkuil@xs4all.nl>
Cc: Guennadi Liakhovetski <g.liakhovetski@gmx.de>,
Linux Media Mailing List <linux-media@vger.kernel.org>,
Darius <augulis.darius@gmail.com>,
Jonathan Corbet <corbet@lwn.net>
Subject: Re: [PATCH] soc-camera: ov7670 merged multiple drivers and moved over to v4l2-subdev
Date: Wed, 17 Jun 2009 09:26:29 +0000 [thread overview]
Message-ID: <4A38B6C5.3020108@cam.ac.uk> (raw)
In-Reply-To: <200906170844.42512.hverkuil@xs4all.nl>
Hans Verkuil wrote:
> On Tuesday 16 June 2009 16:45:04 Jonathan Cameron wrote:
>> Guennadi Liakhovetski wrote:
>>> On Mon, 15 Jun 2009, Jonathan Cameron wrote:
>>>> From: Jonathan Cameron <jic23@cam.ac.uk>
>>>>
>>>> OV7670 soc-camera driver. Merge of drivers from Jonathan Corbet,
>>>> Darius Augulis and Jonathan Cameron
>>> Could you please, describe in more detail how you merged them?
>> Mostly by combining the various register sets and then adding pretty much
>> all the functionality in each of them, testing pretty much everything.
>>
>> Note that a lot of what was in those drivers (usually labeled as
>> untested) simply doesn't work and is based on 'magic' register sets
>> provided by omnivision.
>>
>>> However, I am not sure this is the best way to go. I think, a better
>>> approach would be to take a driver currently in the mainline, perhaps,
>>> the most feature-complete one if there are several of them there,
>> That is more or less what I've done (it's based on Jonathan Corbet's
>> driver). Darius' driver and mine have never been in mainline. Darius' was
>> a complete rewrite based on doc's he has under NDA. Mine was based on
>> Jonathan Corbet's one with a few bits leveraged from a working tinyos
>> driver for the platform I'm using (principally because Omnivision are
>> ignoring both myself and the board supplier).
>>
>>> convert
>>> it and its user(s) to v4l2-subdev, extend it with any features missing
>>> in it and present in other drivers, then switch users of all other
>>> ov7670 drivers over to this one,
>> That's the problem. The only mainlined driver is specifically for an OLPC
>> machine. The driver is tied to specific i2c device and doesn't use
>> anything anywhere near soc-camera or v4l2-subdev.
>
> Yes, it does. ov7670.c was converted to v4l2-subdev in 2.6.30.
Ah! thanks for the heads up on that.
Some how I missed that entirely.
>
>> While it would be nice to get a single driver working
>> for this hardware as well as more conventional soc-camera devices, it
>> isn't going to happen without a lot of input from someone with an olpc.
>> The chip is interfaced through a Marvell 88alp101 'cafe' chip which does
>> a whole host of random things alongside being video processor and taking
>> a quick look at that would be written in a completely different fashion
>> if it were done now (mfd with subdevices etc, v4l2-sudev)
>>
>> So basically in the ideal world it would happen exactly as you've
>> suggested, but I doubt it'll happen any time soon and in the meantime
>> there is no in kernel support for those of us using the chip on other
>> platforms.
>>
>> *looks hopefully in the direction of Jonathan Corbet and other olpc
>> owners*
>
> I have an olpc, but I still haven't had the time to setup a proper test
> environment on it. However, I managed to clear my backlog of reviews in the
> past few days so hopefully I can find some time this weekend to set it up.
Cool.
>
>>> and finally make it work with soc-camera. This
>>> way you get a series of smaller and reviewable patches, instead of a
>>> completely new driver, that reproduces a lot of existing code but has
>>> to be reviewed anew. How does this sound?
>> Would be fine if the original driver (or anything terribly close to it)
>> were useable on a platform I actually have without more or less being
>> rewritten.
>>
>> I can back track the driver to be as close to that as possible and still
>> functional, but I'm not entirely sure it will make the code any easier to
>> review and you'll loose a lot the functionality lifted from Darius' as
>> my original drivers.
>>
>> The original posting I made was as close as you can reasonably get to
>> Jonathan's original driver.
>>
>> http://patchwork.kernel.org/patch/12192/
>>
>> At the time it wasn't really reviewed (beyond a few comments)
>> as you were just commencing the soc-camera conversion and it made
>> sense to wait for after that.
>>
>> I'm not really sure how we should proceed with this. I'm particularly
>> loath to touch the olpc driver unless we have a reasonable number of
>> people willing to test.
>
> The current ov7670.c driver in the 2.6.30 tree (and the v4l-dvb repository)
> is already v4l2_subdev based and should be reusable in other platforms,
> including soc-camera once that has also been converted to use v4l2_subdev.
Excellent, I'll look at moving the functionality patches based on this driver
and Darius' on to that then. Sorry for repeating some of your work, I somehow
completely forgot your original email saying this was on it's way!
Jonathan
prev parent reply other threads:[~2009-06-17 9:25 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-06-15 14:22 [PATCH] soc-camera: ov7670 merged multiple drivers and moved over to v4l2-subdev Jonathan Cameron
2009-06-16 13:59 ` Guennadi Liakhovetski
2009-06-16 14:45 ` Jonathan Cameron
2009-06-16 15:35 ` Darius Augulis
2009-06-16 17:23 ` Jonathan Cameron
2009-06-17 6:44 ` Hans Verkuil
2009-06-17 9:26 ` Jonathan Cameron [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4A38B6C5.3020108@cam.ac.uk \
--to=jic23@cam.ac.uk \
--cc=augulis.darius@gmail.com \
--cc=corbet@lwn.net \
--cc=g.liakhovetski@gmx.de \
--cc=hverkuil@xs4all.nl \
--cc=linux-media@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.