linux/Documentation/video4linux
Mauro Carvalho Chehab eb4b0ec75e [media] include/media: move platform_data to linux/platform_data/media
Let's not mix platform_data headers with the core headers. Instead, let's
create a subdir at linux/platform_data and move the headers to that
common place, adding it to MAINTAINERS.

The headers were moved with:
	mkdir include/linux/platform_data/media/; git mv include/media/gpio-ir-recv.h include/media/ir-rx51.h include/media/mmp-camera.h include/media/omap1_camera.h include/media/omap4iss.h include/media/s5p_hdmi.h include/media/si4713.h include/media/sii9234.h include/media/smiapp.h include/media/soc_camera.h include/media/soc_camera_platform.h include/media/timb_radio.h include/media/timb_video.h include/linux/platform_data/media/

And the references fixed with this script:
    MAIN_DIR="linux/platform_data/"
    PREV_DIR="media/"
    DIRS="media/"

    echo "Checking affected files" >&2
    for i in $DIRS; do
	for j in $(find include/$MAIN_DIR/$i -type f -name '*.h'); do
		 n=`basename $j`
		git grep -l $n
	done
    done|sort|uniq >files && (
	echo "Handling files..." >&2;
	echo "for i in \$(cat files|grep -v Documentation); do cat \$i | \\";
	(
		cd include/$MAIN_DIR;
		for j in $DIRS; do
			for i in $(ls $j); do
				echo "perl -ne 's,(include [\\\"\\<])$PREV_DIR($i)([\\\"\\>]),\1$MAIN_DIR$j\2\3,; print \$_' |\\";
			done;
		done;
		echo "cat > a && mv a \$i; done";
	);
	echo "Handling documentation..." >&2;
	echo "for i in MAINTAINERS \$(cat files); do cat \$i | \\";
	(
		cd include/$MAIN_DIR;
		for j in $DIRS; do
			for i in $(ls $j); do
				echo "  perl -ne 's,include/$PREV_DIR($i)\b,include/$MAIN_DIR$j\1,; print \$_' |\\";
			done;
		done;
		echo "cat > a && mv a \$i; done"
	);
    ) >script && . ./script

Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
Acked-by: Arnd Bergmann <arnd@arndb.de>
Acked-by: Lee Jones <lee.jones@linaro.org>
Acked-by: Krzysztof Kozlowski <k.kozlowski@samsung.com>
2015-11-17 06:58:42 -02:00
..
bttv
cx88
cx2341x
4CCs.txt
API.html
cafe_ccic
CARDLIST.au0828
CARDLIST.bttv Documentation: Update cardlists 2014-04-23 09:58:16 -03:00
CARDLIST.cx88
CARDLIST.cx23885 [media] Documentation: update cardlists 2015-06-09 18:43:47 -03:00
CARDLIST.em28xx [media] Documentation: update cardlists 2015-06-09 18:43:47 -03:00
CARDLIST.ivtv
CARDLIST.saa7134 [media] saa7134: add Leadtek Winfast TV2100 FM card support 2015-09-25 17:19:17 -03:00
CARDLIST.saa7164 [media] Documentation: update cardlists 2015-06-09 18:43:47 -03:00
CARDLIST.tm6000
CARDLIST.tuner
CARDLIST.usbvision
cpia2_overview.txt
cx18.txt
extract_xc3028.pl
fimc.txt [media] exynos4-is: Remove support for non-dt platforms 2014-05-23 18:52:54 -03:00
gspca.txt
hauppauge-wintv-cx88-ir.txt
lifeview.txt
Makefile v4l2-pci-skeleton: Only build if PCI is available 2014-09-26 11:02:58 +02:00
meye.txt
not-in-cx2388x-datasheet.txt
omap3isp.txt
omap4_camera.txt [media] include/media: move platform_data to linux/platform_data/media 2015-11-17 06:58:42 -02:00
pxa_camera.txt
radiotrack.txt
README.cpia2
README.cx88
README.davinci-vpbe
README.ir
README.ivtv
README.pvrusb2
README.saa7134
sh_mobile_ceu_camera.txt
si470x.txt
si476x.txt
si4713.txt [media] include/media: move platform_data to linux/platform_data/media 2015-11-17 06:58:42 -02:00
soc-camera.txt [media] platform: Make use of media_bus_format enum 2014-11-14 17:54:08 -02:00
uvcvideo.txt
v4l2-controls.txt [media] media/Documentation: New flag EXECUTE_ON_WRITE 2015-04-08 06:35:16 -03:00
v4l2-framework.txt [media] v4l2-subdev: allow subdev to send an event to the v4l2_device notify function 2015-05-20 13:40:02 -03:00
v4l2-pci-skeleton.c [media] media: videobuf2: Change queue_setup argument 2015-10-20 14:48:39 -02:00
videobuf
vivid.txt [media] vivid: move video loopback control to the capture device 2015-06-06 07:33:17 -03:00
Zoran
zr364xx.txt


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]