diff options
-rw-r--r-- | linux/Documentation/dvb/FIRMWARE | 40 | ||||
-rw-r--r-- | linux/Documentation/dvb/cards.txt (renamed from linux/Documentation/dvb/CARDS) | 0 | ||||
-rw-r--r-- | linux/Documentation/dvb/contributors.txt (renamed from linux/Documentation/dvb/CONTRIBUTORS) | 11 | ||||
-rw-r--r-- | linux/Documentation/dvb/faq.txt (renamed from linux/Documentation/dvb/FAQ) | 0 | ||||
-rw-r--r-- | linux/Documentation/dvb/firmware.txt | 116 | ||||
-rw-r--r-- | linux/Documentation/dvb/readme.txt (renamed from linux/Documentation/dvb/README) | 23 |
6 files changed, 143 insertions, 47 deletions
diff --git a/linux/Documentation/dvb/FIRMWARE b/linux/Documentation/dvb/FIRMWARE deleted file mode 100644 index c26d4dcd8..000000000 --- a/linux/Documentation/dvb/FIRMWARE +++ /dev/null @@ -1,40 +0,0 @@ -Some DVB cards and many newer frontends require proprietary, -binary-only firmware. - -The DVB drivers will be converted to use the request_firmware() -hotplug interface (see linux/Documentation/firmware_class/). -(CONFIG_FW_LOADER) - -That means you will have to install recent hotplug scripts -which include an /etc/hotplug/firmware.agent to support this. -http://linux-hotplug.sourceforge.net/ -(Call /sbin/hotplug without arguments to find out if the -firmware agent is installed.) - -The firmware.agent script expects firmware binaries in -/usr/lib/hotplug/firmware/. To avoid naming and versioning -conflicts we propose the following naming scheme: - - /usr/lib/hotplug/firmware/dvb-{driver}-{ver}.fw for MPEG decoders etc. - /usr/lib/hotplug/firmware/dvb-fe-{driver}-{ver}.fw for frontends - - {driver} name is the basename of the driver kernel module (e.g. dvb-ttpci) - {ver} is a version number/name that should change only when the - driver/firmware internal API changes (so users are free to install the - latest firmware compatible with the driver). - -Currently the drivers still use various different methods -to load their firmwares, so here's just a short list of the -current state: - -- dvb-ttpci: firmware is compiled in (av7110_firm.h) -- ttusb-budget: firmware is compiled in (dvb-ttusb-dspbootcode.h) -- sp887x: firmware is compiled in (sp887x_firm.h) -- alps_tdlb7: firmware is loaded from path specified by - "mcfile" module parameter; the binary must be - extracted from the Windows driver (Sc_main.mc). -- tda1004x: firmware is loaded from path specified in - DVB_TDA1004X_FIRMWARE_FILE kernel config - variable (default /etc/dvb/tda1004x.bin); the - firmware binary must be extracted from the windows - driver diff --git a/linux/Documentation/dvb/CARDS b/linux/Documentation/dvb/cards.txt index 374263890..374263890 100644 --- a/linux/Documentation/dvb/CARDS +++ b/linux/Documentation/dvb/cards.txt diff --git a/linux/Documentation/dvb/CONTRIBUTORS b/linux/Documentation/dvb/contributors.txt index 5e5174143..d4776e500 100644 --- a/linux/Documentation/dvb/CONTRIBUTORS +++ b/linux/Documentation/dvb/contributors.txt @@ -32,7 +32,7 @@ Christoph Martin <martin@uni-mainz.de> Andreas Oberritter <andreas@oberritter.de> Florian Schirmer <jolt@tuxbox.org> -...and all the other dBox2 people <??> +...and all the other dBox2 people for many bugfixes in the generic DVB Core and their work on the dBox2 port of the DVB driver @@ -42,8 +42,13 @@ Oliver Endriss <o.endriss@gmx.de> Andrew de Quincey <adq_dvb@lidskialf.net> for the tda1004x frontend driver, and various bugfixes -V.C. <skystar@moldova.cc> Peter Schildmann <peter.schildmann@web.de> for the driver for the Technisat SkyStar2 PCI DVB card - based on the FlexCopII by B2C2,Inc. +Vadim Catana <skystar@moldova.cc> +Roberto Ragusa <r.ragusa@libero.it> +Augusto Cardoso <augusto@carhil.net> + for all the work for the FlexCopII chipset by B2C2,Inc. + +(If you think you should be in this list, but you are not, drop a + line to the DVB mailing list) diff --git a/linux/Documentation/dvb/FAQ b/linux/Documentation/dvb/faq.txt index 28e63ec30..28e63ec30 100644 --- a/linux/Documentation/dvb/FAQ +++ b/linux/Documentation/dvb/faq.txt diff --git a/linux/Documentation/dvb/firmware.txt b/linux/Documentation/dvb/firmware.txt new file mode 100644 index 000000000..8cb3e71cd --- /dev/null +++ b/linux/Documentation/dvb/firmware.txt @@ -0,0 +1,116 @@ +Some DVB cards and many newer frontends require proprietary, +binary-only firmware. + +The DVB drivers will be converted to use the request_firmware() +hotplug interface (see linux/Documentation/firmware_class/). +(CONFIG_FW_LOADER) + +The firmware can be loaded automatically via the hotplug manager +or manually with the steps described below. + +Currently the drivers still use various different methods +to load their firmwares, so here's just a short list of the +current state: + +- dvb-ttpci: driver uses firmware hotplug interface +- ttusb-budget: firmware is compiled in (dvb-ttusb-dspbootcode.h) +- sp887x: firmware is compiled in (sp887x_firm.h) +- alps_tdlb7: firmware is loaded from path specified by + "mcfile" module parameter; the binary must be + extracted from the Windows driver (Sc_main.mc). +- tda1004x: firmware is loaded from path specified in + DVB_TDA1004X_FIRMWARE_FILE kernel config + variable (default /etc/dvb/tda1004x.bin); the + firmware binary must be extracted from the windows + driver +- ttusb-dec: see "ttusb-dec.txt" for details + +1) Automatic firmware loading + +You need to install recent hotplug scripts if your distribution did not do it +for you already, especially the /etc/hotplug/firmware.agent. +http://linux-hotplug.sourceforge.net/ (Call /sbin/hotplug without arguments +to find out if the firmware agent is installed.) + +The firmware.agent script expects firmware binaries in +/usr/lib/hotplug/firmware/. To avoid naming and versioning +conflicts we propose the following naming scheme: + + /usr/lib/hotplug/firmware/dvb-{driver}-{ver}.fw for MPEG decoders etc. + /usr/lib/hotplug/firmware/dvb-fe-{driver}-{ver}.fw for frontends + + {driver} name is the basename of the driver kernel module (e.g. dvb-ttpci) + {ver} is a version number/name that should change only when the + driver/firmware internal API changes (so users are free to install the + latest firmware compatible with the driver). + +2) Manually loading the firmware into a driver + (currently only the dvb-ttpci / av7110 driver supports this) + +Step a) Mount sysfs-filesystem. + +Sysfs provides a means to export kernel data structures, their attributes, +and the linkages between them to userspace. + +For detailed informations have a look at Documentation/filesystems/sysfs.txt +All you need to know at the moment is that firmware loading only works through +sysfs. + +> mkdir /sys +> mount -t sysfs sysfs /sys + +Step b) Exploring the firmware loading facilities + +Firmware_class support is located in +/sys/class/firmware + +> dir /sys/class/firmware + +The "timeout" values specifies the amount of time that is waited before the +firmware upload process is cancelled. The default values is 10 seconds. If +you use a hotplug script for the firmware upload, this is sufficient. If +you want to upload the firmware by hand, however, this might be too fast. + +> echo "180" > /sys/class/firmware/timeout + +Step c) Getting a usable firmware file for the dvb-ttpci driver/av7110 card. + +You can download the firmware files from +http://www.linuxtv.org/download/dvb/ + +Please note that in case of the dvb-ttpci driver this is *not* the "Root" +file you probably know from the 2.4 DVB releases driver. + +> wget http://www.linuxtv.org/download/dvb/dvb-ttpci-1_21.fw +gets you the version "1.21" of the firmware fot the ttpci driver. + +Step d) Loading the dvb-ttpci driver and loading the firmware + +"modprobe" will take care that every needed module will be loaded +automatically (except the frontend driver) + +> modprobe dvb-ttpci + +The "modprobe" process will hang until +a) you upload the firmware or +b) the timeout occurs. + +Change to another terminal and have a look at + +> dir /sys/class/firmware/ + +total 0 +drwxr-xr-x 2 root root 0 Jul 29 11:00 0000:03:05.0 +-rw-r--r-- 1 root root 0 Jul 29 10:41 timeout + +"0000:03:05.0" is the id for my dvb-c card. It depends on the pci slot, +so it changes if you plug the card to different slots. + +You can upload the firmware like that: + +> export DEVDIR=/sys/class/firmware/0000\:03\:05.0 +> echo 1 > $DEVDIR/loading +> cat dvb-ttpci-01.fw > $DEVDIR/data +> echo 0 > $DEVDIR/loading + +That's it. The driver should be up and running now. diff --git a/linux/Documentation/dvb/README b/linux/Documentation/dvb/readme.txt index 8fa1f0313..9cd4be849 100644 --- a/linux/Documentation/dvb/README +++ b/linux/Documentation/dvb/readme.txt @@ -1,10 +1,6 @@ Linux Digital Video Broadcast (DVB) subsystem ============================================= -See the file CARDS for a list of supported hardware. -See the file FIRMWARE for required external firmware -files and where to get them. - The main development site and CVS repository for these drivers is http://linuxtv.org/. @@ -18,7 +14,26 @@ are available as part of the old driver package for Linux 2.4 (linuxtv-dvb-1.0.x.tar.gz), or from CVS (module DVB). We plan to split this into separate packages, but it's not been done yet. + http://linuxtv.org/download/dvb/ +What's inside this directory: + +"cards.txt" +contains a list of supported hardware. + +"contributors.txt" +is the who-is-who of DVB development + +"faq.txt" +contains frequently asked questions and their answers. + +"firmware.txt" +contains informations for required external firmware +files and where to get them. + +"ttusb-dec.txt" +contains detailed informations about the +TT DEC2000/DEC3000 USB DVB hardware. Good luck and have fun! |