[PATCH/RFC 0/3] Cafe camera controller driver
Jonathan Corbet
corbet at lwn.net
Fri Oct 6 12:28:11 EDT 2006
Hi, Marcelo and everybody else,
Here comes the first public posting of the Cafe camera controller
driver. This version is based against 2.6.19-rc1; if anybody would like
a 2.6.18 version, let me know. The driver uses the new V4L2 API, and
will not work with kernels prior to 2.6.18.
I'll attach the rudimentary documentation file I've created. In
essence: the driver works well in some situations, less well in others,
and the full functionality isn't there yet. I'll get there. But it's
something to start with.
This version works with the prototype board I got from Marvell; I now
have the new test board and the associated camera module showed up about
half an hour ago. I've not yet had the opportunity to actually try
things out with that hardware yet.
jon
This is the initial version of the Cafe camera driver. Here's a few notes
to go along with it...
- You need a 2.6.18+ kernel for this driver. If you're running
2.6.18-vanilla, you'll need a couple of small v4l2 patches
or the driver will not function.
- The name of the driver (m88alp01-ccic) was taken from the product name
found in the draft spec. If we want to change its name (and Marvell
could well change theirs) now is probably the right time to do so.
- Once patched into the kernel, it should build and load just fine.
There's a number of tweakable parameters, but there should be no need to
mess with them.
- It is rock-solid with mplayer. The command I use is:
mplayer tv:// -tv driver=v4l2:width=640:height=480 -nosound
That will give you a 30fps window, VGA resolution, showing whatever the
camera sees. You can tweak contrast and brightness ('1' and '2' for
contrast, '3' and '4' for brightness); no other controls are hooked up
yet.
- It does not behave at all well with gqcam - which appears to be trying
to use the read() method. There is some residual weirdness with read()
that I've not yet had a chance to track down.
- Only VGA YUV video is supported so far. Other formats will come soon.
- I'm mostly unashamed to show the code, but there are some remaining
issues. The biggest has to do with the use of the "ovcamchip" layer,
which was really meant for a very different sort of device. Much of
stuff which should really be dealt with at the lower layer (so that the
Cafe could work with sensors other than the OV7670) is currently "known"
at the Cafe level instead. It is my intent to fix that.
Please do look it over, try it out, and get back to me with any questions
or comments.
jon
Jonathan Corbet
corbet at lwn.net
More information about the Devel
mailing list