132e2eae2SMauro Carvalho Chehab.. SPDX-License-Identifier: GPL-2.0
232e2eae2SMauro Carvalho Chehab
332e2eae2SMauro Carvalho ChehabThe saa7134 driver
432e2eae2SMauro Carvalho Chehab==================
532e2eae2SMauro Carvalho Chehab
632e2eae2SMauro Carvalho ChehabAuthor Gerd Hoffmann
732e2eae2SMauro Carvalho Chehab
832e2eae2SMauro Carvalho Chehab
932e2eae2SMauro Carvalho ChehabThis is a v4l2/oss device driver for saa7130/33/34/35 based capture / TV
1012bcf90cSMauro Carvalho Chehabboards.
1132e2eae2SMauro Carvalho Chehab
1232e2eae2SMauro Carvalho Chehab
1332e2eae2SMauro Carvalho ChehabStatus
1432e2eae2SMauro Carvalho Chehab------
1532e2eae2SMauro Carvalho Chehab
1632e2eae2SMauro Carvalho ChehabAlmost everything is working.  video, sound, tuner, radio, mpeg ts, ...
1732e2eae2SMauro Carvalho Chehab
1832e2eae2SMauro Carvalho ChehabAs with bttv, card-specific tweaks are needed.  Check CARDLIST for a
1932e2eae2SMauro Carvalho Chehablist of known TV cards and saa7134-cards.c for the drivers card
2032e2eae2SMauro Carvalho Chehabconfiguration info.
2132e2eae2SMauro Carvalho Chehab
2232e2eae2SMauro Carvalho Chehab
2332e2eae2SMauro Carvalho ChehabBuild
2432e2eae2SMauro Carvalho Chehab-----
2532e2eae2SMauro Carvalho Chehab
2612bcf90cSMauro Carvalho ChehabOnce you pick up a Kernel source, you should configure, build,
2712bcf90cSMauro Carvalho Chehabinstall and boot the new kernel.  You'll need at least
2812bcf90cSMauro Carvalho Chehabthese config options::
2932e2eae2SMauro Carvalho Chehab
3012bcf90cSMauro Carvalho Chehab    ./scripts/config -e PCI
3112bcf90cSMauro Carvalho Chehab    ./scripts/config -e INPUT
3212bcf90cSMauro Carvalho Chehab    ./scripts/config -m I2C
3312bcf90cSMauro Carvalho Chehab    ./scripts/config -m MEDIA_SUPPORT
3412bcf90cSMauro Carvalho Chehab    ./scripts/config -e MEDIA_PCI_SUPPORT
3512bcf90cSMauro Carvalho Chehab    ./scripts/config -e MEDIA_ANALOG_TV_SUPPORT
3612bcf90cSMauro Carvalho Chehab    ./scripts/config -e MEDIA_DIGITAL_TV_SUPPORT
3712bcf90cSMauro Carvalho Chehab    ./scripts/config -e MEDIA_RADIO_SUPPORT
3812bcf90cSMauro Carvalho Chehab    ./scripts/config -e RC_CORE
3912bcf90cSMauro Carvalho Chehab    ./scripts/config -e MEDIA_SUBDRV_AUTOSELECT
4012bcf90cSMauro Carvalho Chehab    ./scripts/config -m VIDEO_SAA7134
4112bcf90cSMauro Carvalho Chehab    ./scripts/config -e SAA7134_ALSA
4212bcf90cSMauro Carvalho Chehab    ./scripts/config -e VIDEO_SAA7134_RC
4312bcf90cSMauro Carvalho Chehab    ./scripts/config -e VIDEO_SAA7134_DVB
4412bcf90cSMauro Carvalho Chehab    ./scripts/config -e VIDEO_SAA7134_GO7007
4532e2eae2SMauro Carvalho Chehab
4612bcf90cSMauro Carvalho ChehabTo build and install, you should run::
4732e2eae2SMauro Carvalho Chehab
4812bcf90cSMauro Carvalho Chehab    make && make modules_install && make install
4912bcf90cSMauro Carvalho Chehab
5012bcf90cSMauro Carvalho ChehabOnce the new Kernel is booted, saa7134 driver should be loaded automatically.
5112bcf90cSMauro Carvalho Chehab
5212bcf90cSMauro Carvalho ChehabDepending on the card you might have to pass ``card=<nr>`` as insmod option.
53*6ef43d27SMauro Carvalho ChehabIf so, please check Documentation/admin-guide/media/saa7134-cardlist.rst
54*6ef43d27SMauro Carvalho Chehabfor valid choices.
5512bcf90cSMauro Carvalho Chehab
5612bcf90cSMauro Carvalho ChehabOnce you have your card type number, you can pass a modules configuration
5712bcf90cSMauro Carvalho Chehabvia a file (usually, it is either ``/etc/modules.conf`` or some file at
5812bcf90cSMauro Carvalho Chehab``/etc/modules-load.d/``, but the actual place depends on your
5912bcf90cSMauro Carvalho Chehabdistribution), with this content::
6012bcf90cSMauro Carvalho Chehab
6112bcf90cSMauro Carvalho Chehab    options saa7134 card=13 # Assuming that your card type is #13
6232e2eae2SMauro Carvalho Chehab
6332e2eae2SMauro Carvalho Chehab
6432e2eae2SMauro Carvalho ChehabChanges / Fixes
6532e2eae2SMauro Carvalho Chehab---------------
6632e2eae2SMauro Carvalho Chehab
6712bcf90cSMauro Carvalho ChehabPlease mail to linux-media AT vger.kernel.org unified diffs against
6812bcf90cSMauro Carvalho Chehabthe linux media git tree:
6912bcf90cSMauro Carvalho Chehab
7012bcf90cSMauro Carvalho Chehab    https://git.linuxtv.org/media_tree.git/
7112bcf90cSMauro Carvalho Chehab
7212bcf90cSMauro Carvalho ChehabThis is done by committing a patch at a clone of the git tree and
7312bcf90cSMauro Carvalho Chehabsubmitting the patch using ``git send-email``. Don't forget to
7412bcf90cSMauro Carvalho Chehabdescribe at the lots  what it changes / which problem it fixes / whatever
7532e2eae2SMauro Carvalho Chehabit is good for ...
7632e2eae2SMauro Carvalho Chehab
7732e2eae2SMauro Carvalho Chehab
7832e2eae2SMauro Carvalho ChehabKnown Problems
7932e2eae2SMauro Carvalho Chehab--------------
8032e2eae2SMauro Carvalho Chehab
8132e2eae2SMauro Carvalho Chehab* The tuner for the flyvideos isn't detected automatically and the
8232e2eae2SMauro Carvalho Chehab  default might not work for you depending on which version you have.
8312bcf90cSMauro Carvalho Chehab  There is a ``tuner=`` insmod option to override the driver's default.
8432e2eae2SMauro Carvalho Chehab
8532e2eae2SMauro Carvalho ChehabCredits
8632e2eae2SMauro Carvalho Chehab-------
8732e2eae2SMauro Carvalho Chehab
8832e2eae2SMauro Carvalho Chehabandrew.stevens@philips.com + werner.leeb@philips.com for providing
8932e2eae2SMauro Carvalho Chehabsaa7134 hardware specs and sample board.
90