--- dvb-kernel/README 2003/12/22 19:04:06 1.7 +++ dvb-kernel/README 2004/01/25 17:31:28 1.8 @@ -1,96 +1,80 @@ -Instructions for building the "new" driver under 2.6.x: -------------------------------------------------------- +Instructions for building the standalone driver: +------------------------------------------------ -(This won't work with *2.4.x*, so don't even try, have a look -at the build-2.4 directory instead) +You must have the kernel sources for the kernel you are actually using +installed, and symlinked to /lib/modules/$(KERNEL_VERSION)/build. This should +be the default in proper installations with installed kernel source package. -You need a kernel >= 2.6.0. +If you are in doubt please get a fresh and clean kernel source tarball from +http://www.kernel.org/, unpack, configure, install and boot this one before +building the DVB driver. 80% of the bug reports on the linux-dvb mailing list +have been related to not properly installed kernels in the past. + +For cards with MPEG decoder onboard make sure that CONFIG_VIDEO_DEV is enabled +in the config of your running kernel. If you get unresolved symbols named +video_XXXX then you missed this option. + +For some cards you need Input and Event Device Support enabled to get the +IR receiver on the card running. Be sure to enable CONFIG_INPUT and +CONFIG_INPUT_EVDEV if you get unresolved symbols named input_XXX. + +Now Type 'make' to build the driver. The compiled modules will be located +in directory ./build-2.4/ or ./build-2.6, depening on the kernel version you +are running. There you will also find scripts to load and unload the modules. + +For some cards you need to download additional firmware binaries. You get +notified in the build process or when loading the modules, please follow the +instructions there if you own one of the cards that need a firmware to run. + +Now execute the ./MAKEDEV-DVB.sh script to create the DVB API device nodes. +When you reached this point successfully you probably want to start some +test applications, download the linuxtv-dvb-apps-1.1.tar.gz package, unpack +it and compile it. This package contains some tools to test and debug the +driver: + +apps/szap/ contains three simple applications for zapping with DVB-S, DVB-C +or DVB-T cards (szap/czap/tzap); read the comments in apps/szap/szap.c for +instructions. + +Note 1: tuning succeeded if you see the FE_HAS_LOCK flag and "status 1f"; a +good signal has a low bit error rate (ber) and zero uncorrectable packets (unc). + +Note 2: you must keep ?zap running, or the frontend will go to sleep (unless +you load dvb-core.o with dvb_shutdown_timeout=0) + +If your card has a hardware MPEG decoder you can watch TV with xawtv (together +with e.g. szap for DVB tuning); Note: xawtv cannot control the DVB tuner, you +must use ?zap + +For cards without hardware MPEG decoder you need a software MPEG decoder, +e.g. mplayer or xine (you need *very* recent versions which understand MPEG2 +transport streams; xine v0.9.21 and mplayer dev-CVS-030723-16:39-3.3.1 seem to +work); Note: You must run ?zap with the -r flag to enable stream output to the +dvr device, and keep it running while watching tv. + +Examples: + mplayer - < /dev/dvb/adapter0/dvr0 + xine stdin://mpeg2 < /dev/dvb/adapter0/dvr0 + +Note: Newest mplayer and xine versions are reported to have builtin DVB support +(see FAQ for more info). + +For 'real' everyday use you probably don't want to use these test applications +but install a program like VDR or MythTV. Read the FAQ for some links. + +-------------------------------------------------------------------------------- + +The build system has been tested down to 2.4.20, if you run an older kernel +either update your kernel or just try - maybe you need to add some tweaks in +the dvb_compat.[hc] files. Please report your modifications on the linux-dvb +mailing list. + +If you want to build a not-standalone driver but want to patch your 2.6 kernel +source tree with this driver please read README-2.6. + +More documentation is located in ./linux/Documentation/dvb/. + +good luck, + +Holger -The DVB driver in 2.6.0 is fairly up-to-date, so it's usable for most of -the cards. - -Three options: -a) If you're satisfied with it and not interested in driver development - and/or debugging, then you can stop reading here. This stuff is not of - interest for you and won't bring you further. 8-) -b) If you'd like to use a more recent driver version, but don't want to - hassle with CVS, have a look at the "patches-2.6" directory. There you - can find patches which sync the most recent 2.6 kernel with the CVS - driver. Simply apply these patches and recompile the drivers. That's it. -c) If you want bleeding edge technology and drivers, read on: - -There is a script called "makelinks" which -- well -- makes links from the -CVS version of the driver to the kernel tree you supply on the command line. -The driver from the kernel is erased, instead the CVS driver will be used if -you compile your kernel again. - -1) Call "./makelinks . This will copy and link the -driver files to your kernel, remove some old files, move some files around. - -2) Next, use "make menuconfig" or whatever and select the av7110 driver if -you haven't done so before. - -The av7110 driver needs a firmware to work properly. You can download firmware -files from http://www.linuxtv.org:81/download/dvb/ -The most recent version is dvb-ttpci-01.fw - -If you have problems with modules and 2.6.x you can also compile the driver -statically into the kernel. - -*Pitfall*: Normally, this firmware is loaded to the device by the firmware -hotplug daemon when the module is loaded. If you compile the driver statically -into the kernel this won't work. You need to enable the option "Compile av7110 -firmware into the driver" then and select the path to the firmware file. In this -case, the firmware will be compiled into the driver as it used to be in former -times. - -Build and install the new kernel as usual. - -If you copy an old ".config" from an older kernel version (before 2.6.0) where -you already selected the av7110 driver, some dependencies are not set up correctly -and the driver won't be build completely. - -You need to delete everything between the -> # Supported SAA7146 based PCI Adapters -and -> # File systems -line in your ".config", then run "make oldconfig". You will be asked about -these devices again, and the dependencies are set correctly. - -3) You need to have at least the following modules loaded: - -- videodev: Video4Linux core module -- v4l2-common: common functions for Video4Linux-2 drivers -- v4l1-compat: backward compatiblity layer for Video4Linux-1 legacy applications -- dvb-core: DVB core module -- saa7146: SAA7146 core driver functions -- saa7146_vv: SAA7146 video and vbi functions -- video-buf: capture helper module for the saa7146_vv driver -- dvb-ttpci: Driver for AV7110 based DVB-S/C/T cards - -Additionally, you need a frontend driver, ie. ves1x93, ves1820. - -Normally it's sufficient to use -> modprobe dvb-ttpci -> modprobe ves1x93 - -if you have a ves1x93 based card. - -Note: The "alps_bsrv2" driver is gone, please use the ves1x93 driver instead! - -4) Try your favourite programs, the behaviour should be exactly the same. -Good luck! - -If you have problems or questions: - -1) Look at the TODO file. If the problem is mentionend there, -it will be fixed asap. - -2) Ask on the mailing list. If you choose to do so, please include the -following informations: - -- Do you really use the "dvb-kernel" driver? -- When did you check out the driver? -- Which kernel version are using? -- Which card do you have? (Name, board revision, frontend type, ...) -- What are the problems exactly?