mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2026-01-24 11:20:23 -05:00
The queue_setup callback has a void pointer that is just for V4L2 and is the pointer to the v4l2_format struct that was passed to VIDIOC_CREATE_BUFS. The idea was that drivers would use the information from that struct to buffers suitable for the requested format. After the vb2 split series this pointer is now a void pointer, which is ugly, and the reality is that all existing drivers will effectively just look at the sizeimage field of v4l2_format. To make this more generic the queue_setup callback is changed: the void pointer is dropped, instead if the *num_planes argument is 0, then use the current format size, if it is non-zero, then it contains the number of requested planes and the sizes array contains the requested sizes. If either is unsupported, then return -EINVAL, otherwise use the requested size(s). Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
What is it?
===========
This is a v4l2/oss device driver for saa7130/33/34/35 based capture / TV
boards. See http://www.semiconductors.philips.com/pip/saa7134hl for a
description.
Status
======
Almost everything is working. video, sound, tuner, radio, mpeg ts, ...
As with bttv, card-specific tweaks are needed. Check CARDLIST for a
list of known TV cards and saa7134-cards.c for the drivers card
configuration info.
Build
=====
Pick up videodev + v4l2 patches from http://bytesex.org/patches/.
Configure, build, install + boot the new kernel. You'll need at least
these config options:
CONFIG_I2C=m
CONFIG_VIDEO_DEV=m
Type "make" to build the driver now. "make install" installs the
driver. "modprobe saa7134" should load it. Depending on the card you
might have to pass card=<nr> as insmod option, check CARDLIST for
valid choices.
Changes / Fixes
===============
Please mail me unified diffs ("diff -u") with your changes, and don't
forget to tell me what it changes / which problem it fixes / whatever
it is good for ...
Known Problems
==============
* The tuner for the flyvideos isn't detected automatically and the
default might not work for you depending on which version you have.
There is a tuner= insmod option to override the driver's default.
Card Variations:
================
Cards can use either of these two crystals (xtal):
- 32.11 MHz -> .audio_clock=0x187de7
- 24.576MHz -> .audio_clock=0x200000
(xtal * .audio_clock = 51539600)
Some details about 30/34/35:
- saa7130 - low-price chip, doesn't have mute, that is why all those
cards should have .mute field defined in their tuner structure.
- saa7134 - usual chip
- saa7133/35 - saa7135 is probably a marketing decision, since all those
chips identifies itself as 33 on pci.
Credits
=======
andrew.stevens@philips.com + werner.leeb@philips.com for providing
saa7134 hardware specs and sample board.
Have fun,
Gerd
--
Gerd Knorr <kraxel@bytesex.org> [SuSE Labs]