Annotation of dvb-kernel/README, revision 1.28

1.23      hunold      1: linuxtv-dvb
                      2: ===========
1.17      js          3: 
1.24      hunold      4: Digital Video Broadcast drivers for Linux 2.6.x *only*.
1.17      js          5: 
                      6: Note: Unlike in previous releases, the test/utility programs have
                      7: been unbundled and are released seperately as linuxtv-dvb-apps-1.1.0.
                      8: 
1.23      hunold      9: The DVB drivers are already included in Linux 2.6.x, so you usually
                     10: don't need this package. What you will need, hwoever, is firmware.
                     11: see below.
1.17      js         12: 
1.24      hunold     13: "What happened to the 2.4 tree?" 
                     14: --------------------------------
                     15: 
                     16: See http://linuxtv.org/news/js/branch24.xml
                     17: 
                     18: Maintaining the DVB driver for both Linux 2.4 and 2.6 in the same CVS
                     19: tree became too problematic. E.g. it is not possible to create DVB
                     20: driver patches for the mainline kernel directly from CVS without doing
                     21: a lot of work by hand. We also need to do some structural changes which
                     22: are not easy to do when we always have to keep 2.4 backwards
                     23: compatibility.
                     24: 
                     25: Consequently, we've created a "linux_2_4" branch in dvb-kernel CVS for
                     26: the driver version for Linux 2.4.
                     27: 
                     28: Main development in CVS HEAD will be for Linux 2.6 only, and all 2.4
                     29: compatibility stuff has been removed from HEAD.
                     30: 
                     31: It largely depends on public interest and your help (hint, hint) for
                     32: improvements from HEAD to be backported to 2.4. If you want to checkout
                     33: the 2.4 drivers use the following command:
                     34: 
                     35: cvs -d :pserver:anonymous@linuxtv.org:/cvs/linuxtv co -P -rlinux_2_4
                     36: dvb-kernel
                     37: 
                     38: You can also select the linux_2_4 branch when viewing files in the CVS
                     39: web interface http://linuxtv.org/cgi-bin/cvsweb.cgi/dvb-kernel/ .
                     40: 
1.17      js         41: Quick start:
                     42: ------------
                     43: 
                     44: 1. Get firmware:
1.18      js         45: 
1.17      js         46:   Some DVB cards need firmware to operate. Due to licensing problems
                     47:   we won't distribute the firmware binaries with the driver source,
                     48:   you must get them seperately. See below for details about where
                     49:   to get and where to put.
1.18      js         50: 
1.26      quincy     51:   Please use the script in linux/Documentation/dvb/get_dvb_firmware to
                     52:   download the firmware for your device.
                     53: 
                     54:   There is also an archive of the latest firmware in linuxtv cvs, at
                     55:   http://linuxtv.org/cgi-bin/cvsweb.cgi/dvb-kernel/firmware/
                     56: 
1.25      js         57:   See also linux/Documentation/dvb/firmware.txt and
1.18      js         58:   linux/Documentation/firmware_class/README.
                     59: 
1.23      hunold     60: 2. cd build-2.6
1.17      js         61: 
                     62: 3. make
                     63: 
1.28    ! kenneth    64:   Note #1: Since the dvb-bt8xx and dst drivers now depend on a
1.27      kenneth    65:   snapshot of the v4l drivers, they are not built by default.
                     66:   To build these modules do this instead: make BTTV=1
                     67:   For detailed instructions for bttv based cards, see README.bt8xx
                     68: 
1.28    ! kenneth    69:   Note #2: OSD support for AV7110 is compiled in by default now,
        !            70:   if you do not want the OSD support built into this driver,
        !            71:   you can use 'make AV7110_OSD=no' to accomplish your goal.
        !            72: 
1.17      js         73: 4. ./insmod.sh load
                     74: 
1.19      js         75:   Note: Some of the drivers will refuse to load and spit out
                     76:   error messages if they cannot find their hardware. You can
                     77:   ignore them, or edit insmod.sh and comment out drivers that
                     78:   you don't need.
                     79: 
                     80:   You will have to load at least two drivers:
                     81:   - one for the main DVB card / device
                     82:   - one for the frontend (i.e. tuner + demodulator)
                     83: 
1.17      js         84: 
                     85: Detailed instructions for building:
                     86: -----------------------------------
1.1       hunold     87: 
1.10      holger     88: If you encounter any problems while executing the follwing steps please read
                     89: the TROUBLESHOOTING file.
1.8       holger     90: 
1.10      holger     91: Simply type 'make' to build the driver. The compiled modules will be located
1.23      hunold     92: in directory ./build-2.6/, depening on the kernel version you
1.8       holger     93: are running. There you will also find scripts to load and unload the modules.
                     94: 
1.15      hunold     95: For some cards or frontends you need to download additional firmware
1.25      js         96: binaries. You need to compile your kernel with CONFIG_FW_LOADER and
                     97: have reasonably new hostplug scripts installed (see if '/sbin/hotplug --help'
                     98: includes "firmware" in the list of available agents).
1.15      hunold     99: 
1.26      quincy    100: Please use the script in linux/Documentation/dvb/get_dvb_firmware to
                    101: download the firmware for your device.
1.15      hunold    102: 
                    103: If something is missing, you get notified in the build process or when
                    104: loading the modules.
1.8       holger    105: 
1.16      hunold    106: Just in case you are wondering: the "alps_bsrv2" driver is gone, please use
                    107: the new "ves1x93" driver instead.
                    108: 
1.23      hunold    109: In ./build-2.6/ you find the insmod script.
1.10      holger    110: 
1.9       holger    111: Use './insmod.sh load' to load the driver modules, './insmod.sh unload' to 
                    112: remove them. './insmod debug' loads the drivers with debugging enabled. 
1.13      holger    113: These scripts load all drivers for all cards but the ones based on the bt8xx.
                    114: For bt8xx based cards please use the insmod-bt8xx.sh script instead.
1.10      holger    115: 
1.12      holger    116: Now check the klog and syslog (in doubt type 'dmesg') for error messages.
1.9       holger    117: 
1.8       holger    118: When you reached this point successfully you probably want to start some
                    119: test applications, download the linuxtv-dvb-apps-1.1.tar.gz package, unpack
                    120: it and compile it. This package contains some tools to test and debug the
                    121: driver:
                    122: 
1.9       holger    123: linuxtv-dvb-apps-1.1/apps/szap/ contains three simple applications called 
                    124: szap, czap and tzap for zapping with DVB-S, DVB-C or DVB-T cards.
                    125: Read linuxtv-dvb-apps-1.1/apps/szap/ README for usage instructions.
1.8       holger    126: 
                    127: Note 1: tuning succeeded if you see the FE_HAS_LOCK flag and "status 1f"; a
                    128: good signal has a low bit error rate (ber) and zero uncorrectable packets (unc).
                    129: 
                    130: Note 2: you must keep ?zap running, or the frontend will go to sleep (unless
                    131: you load dvb-core.o with dvb_shutdown_timeout=0)
                    132: 
                    133: If your card has a hardware MPEG decoder you can watch TV with xawtv (together
                    134: with e.g. szap for DVB tuning); Note: xawtv cannot control the DVB tuner, you
                    135: must use ?zap
                    136: 
                    137: For cards without hardware MPEG decoder you need a software MPEG decoder, 
                    138: e.g. mplayer or xine (you need *very* recent versions which understand MPEG2 
                    139: transport streams; xine v0.9.21 and mplayer dev-CVS-030723-16:39-3.3.1 seem to 
                    140: work); Note: You must run ?zap with the -r flag to enable stream output to the 
                    141: dvr device, and keep it running while watching tv.  
                    142: 
                    143: Examples: 
                    144:        mplayer - < /dev/dvb/adapter0/dvr0 
                    145:        xine stdin://mpeg2 < /dev/dvb/adapter0/dvr0
                    146:        
                    147: Note: Newest mplayer and xine versions are reported to have builtin DVB support
1.9       holger    148: (see ./linux/Documentation/dvb/faq.txt for more info).
1.8       holger    149: 
                    150: For 'real' everyday use you probably don't want to use these test applications 
1.9       holger    151: but install a program like VDR or MythTV.
                    152: (Read ./linux/Documentation/dvb/faq.txt for some links)
1.8       holger    153: 
1.10      holger    154: When everything is working you probably want to install the driver on your 
                    155: system by typing 'make install'. If you want to load the modules automatically
                    156: when an application tries to open the device you need to add lines like these 
                    157: to your modules.conf:
                    158: 
                    159:        probeall /dev/dvb dvb-ttpci
                    160:        alias /dev/dvb/* /dev/dvb
                    161:        below dvb-ttpci alps_bsrv2 alps_tdmb7 alps_tdlb7
                    162:        add below dvb-ttpci grundig_29504-401 grundig_29504-491
                    163:        add below dvb-ttpci stv0299 ves1820
                    164: 
                    165: Note: this example is for people with Technotrend-based PCI cards, they must 
                    166: load the dvb-ttpci driver and a matching frontend drivers that are potentially
                    167: used on these cards. In order to find out which ones are required for your
                    168: setup check the lsmod output after loading the driver like described above.
                    169: Those DVB modules that have a usecount greater zero are required in your 
                    170: setup - edit the modules.conf file appropriatly]
                    171: 
                    172: Debian users don't edit modules.conf manually but add the lines above to a new
                    173: file in /etc/modutils/ (e.g. /etc/modutils/dvb) and call 'update-modules' then.
                    174: 
1.8       holger    175: --------------------------------------------------------------------------------
                    176: 
                    177: If you want to build a not-standalone driver but want to patch your 2.6 kernel
                    178: source tree with this driver please read README-2.6.
                    179: 
                    180: More documentation is located in ./linux/Documentation/dvb/.

LinuxTV legacy CVS <linuxtv.org/cvs>