From 87891c33d5d669811b7696ba55b03f2c4f921242 Mon Sep 17 00:00:00 2001 From: Johannes Stezenbach Date: Wed, 29 Oct 2003 14:40:11 +0000 Subject: some docs to go along with the 2.6 kernel --- linux/Documentation/dvb/CARDS | 63 ++++++++++++++++++++ linux/Documentation/dvb/CONTRIBUTORS | 49 ++++++++++++++++ linux/Documentation/dvb/FAQ | 109 +++++++++++++++++++++++++++++++++++ linux/Documentation/dvb/FIRMWARE | 39 +++++++++++++ linux/Documentation/dvb/README | 24 ++++++++ 5 files changed, 284 insertions(+) create mode 100644 linux/Documentation/dvb/CARDS create mode 100644 linux/Documentation/dvb/CONTRIBUTORS create mode 100644 linux/Documentation/dvb/FAQ create mode 100644 linux/Documentation/dvb/FIRMWARE create mode 100644 linux/Documentation/dvb/README (limited to 'linux/Documentation/dvb') diff --git a/linux/Documentation/dvb/CARDS b/linux/Documentation/dvb/CARDS new file mode 100644 index 000000000..374263890 --- /dev/null +++ b/linux/Documentation/dvb/CARDS @@ -0,0 +1,63 @@ +Hardware supported by the linuxtv.org DVB drivers +================================================= + + Generally, the DVB hardware manufacturers frequently change the + frontends (i.e. tuner / demodulator units) used, usually without + changing the product name, revision number or specs. Some cards + are also available in versions with different frontends for + DVB-S/DVB-C/DVB-T. Thus the frontend drivers are listed seperately. + + Note 1: There is no guarantee that every frontend driver works + out-of-the box with every card, because of different wiring. + + Note 2: The demodulator chips can be used with a variety of + tuner/PLL chips, and not all combinations are supported. Often + the demodulator and tuner/PLL chip are inside a metal box for + shielding, and the whole metal box has its own part number. + + +o Frontends drivers: + - dvb_dummy_fe: for testing... + DVB-S: + - alps_bsrv2 : Alps BSRV2 (ves1893 demodulator) + - cx24110 : Conexant HM1221/HM1811 (cx24110 or cx24106 demod, cx24108 PLL) + - grundig_29504-491 : Grundig 29504-491 (Philips TDA8083 demodulator), tsa5522 PLL + - mt312 : Zarlink mt312 or Mitel vp310 demodulator, sl1935 or tsa5059 PLL + - stv0299 : Alps BSRU6 (tsa5059 PLL), LG TDQB-S00x (tsa5059 PLL), + LG TDQF-S001F (sl1935 PLL), Philips SU1278 (tua6100 PLL), + Philips SU1278SH (tsa5059 PLL) + DVB-C: + - ves1820 : various (ves1820 demodulator, sp5659c or spXXXX PLL) + - at76c651 : Atmel AT76c651(B) with DAT7021 PLL + DVB-T: + - alps_tdlb7 : Alps TDLB7 (sp8870 demodulator, sp5659 PLL) + - alps_tdmb7 : Alps TDMB7 (cx22700 demodulator) + - grundig_29504-401 : Grundig 29504-401 (LSI L64781 demodulator), tsa5060 PLL + - tda1004x : Philips tda10045h (td1344 or tdm1316l PLL) + - nxt6000 : Alps TDME7 (MITEL SP5659 PLL), Alps TDED4 (TI ALP510 PLL), + Comtech DVBT-6k07 (SP5730 PLL) + (NxtWave Communications NXT6000 demodulator) + + +o Cards based on the Phillips saa7146 multimedia PCI bridge chip: + - TI AV7110 based cards (i.e. with hardware MPEG decoder): + - Siemens/Technotrend/Hauppauge PCI DVB card revision 1.1, 1.3, 1.5, 1.6, 2.1 + (aka Hauppauge Nexus) + - "budget" cards (i.e. without hardware MPEG decoder): + - Technotrend Budget / Hauppauge WinTV-Nova PCI Cards + - SATELCO Multimedia PCI + - KNC1 DVB-S + +o Cards based on the B2C2 Inc. FlexCopII: + - Technisat SkyStar2 PCI DVB + +o Cards based on the Conexant Bt8xx PCI bridge: + - Pinnacle PCTV Sat DVB + - Nebula Electronics DigiTV + +o Technotrend / Hauppauge DVB USB devices: + - Nova USB + - DEC 2000-T + +o Preliminary support for the analog module of the Siemens DVB-C PCI card + diff --git a/linux/Documentation/dvb/CONTRIBUTORS b/linux/Documentation/dvb/CONTRIBUTORS new file mode 100644 index 000000000..5e5174143 --- /dev/null +++ b/linux/Documentation/dvb/CONTRIBUTORS @@ -0,0 +1,49 @@ +Thanks go to the following people for patches and contributions: + +Michael Hunold + for the initial saa7146 driver and it's recent overhaul + +Christian Theiss + for his work on the initial Linux DVB driver + +Marcus Metzler +Ralph Metzler + for their contining work on the DVB driver + +Michael Holzt + for his contributions to the dvb-net driver + +Diego Picciani + for CyberLogin for Linux which allows logging onto EON + (in case you are wondering where CyberLogin is, EON changed its login + procedure and CyberLogin is no longer used.) + +Martin Schaller + for patching the cable card decoder driver + +Klaus Schmidinger + for various fixes regarding tuning, OSD and CI stuff and his work on VDR + +Steve Brown + for his AFC kernel thread + +Christoph Martin + for his LIRC infrared handler + +Andreas Oberritter +Florian Schirmer +...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 + +Oliver Endriss + for many bugfixes + +Andrew de Quincey + for the tda1004x frontend driver, and various bugfixes + +V.C. +Peter Schildmann + for the driver for the Technisat SkyStar2 PCI DVB card + based on the FlexCopII by B2C2,Inc. + diff --git a/linux/Documentation/dvb/FAQ b/linux/Documentation/dvb/FAQ new file mode 100644 index 000000000..28e63ec30 --- /dev/null +++ b/linux/Documentation/dvb/FAQ @@ -0,0 +1,109 @@ +Some very frequently asked questions about linuxtv-dvb + +1. The signal seems to die a few seconds after tuning. + + It's not a bug, it's a feature. Because the frontends have + significant power requirements (and hence get very hot), they + are powered down if they are unused (i.e. if the frontend device + is closed). The dvb-core.o module paramter "dvb_shutdown_timeout" + allow you to change the timeout (default 5 seconds). Setting the + timeout to 0 disables the timeout feature. + +2. How can I watch TV? + + The driver distribution includes some simple utilities which + are mainly intended for testing and to demonstrate how the + DVB API works. + + Depending on whether you have a DVB-S, DVB-C or DVB-T card, use + apps/szap/szap, czap or tzap. You must supply a channel list + in ~/.[sct]zap/channels.conf. If you are lucky you can just copy + one of the supplied channel lists, or you can create a new one + by running apps/scan/scan. If you run scan on an unknown network + you might have to supply some start data in apps/scan/initial.h. + + If you have a card with a built-in hardware MPEG-decoder the + drivers create a video4linux device (/dev/v4l/video0) which + you can use to watch TV with any v4l application. xawtv is known + to work. Note that you cannot change channels with xawtv, you + have to zap using [sct]zap. If you want a nice application for + TV watching and record/playback, have a look at VDR. + + If your card does not have a hardware MPEG decoder you need + a software MPEG decoder. Mplayer or xine are known to work. + Newsflash: MythTV also has DVB support now. + Note: Only very recent versions of Mplayer and xine can decode. + MPEG2 transport streams (TS) directly. Then, run + '[sct]zap channelname -r' in one xterm, and keep it running, + and start 'mplayer - < /dev/dvb/adapter0/dvr0' or + 'xine stdin://mpeg2 < /dev/dvb/adapter0/dvr0' in a second xterm. + That's all far from perfect, but it seems no one has written + a nice DVB application which includes a builtin software MPEG + decoder yet. + + Newsflash: Newest xine directly supports DVB. Just copy your + channels.conf to ~/.xine and start 'xine dvb://', or select + the DVB button in the xine GUI. Channel switching works using the + numpad pgup/pgdown (NP9 / NP3) keys to scroll through the channel osd + menu and pressing numpad-enter to switch to the selected channel. + + Note: Older versions of xine and mplayer understand MPEG program + streams (PS) only, and can be used in conjunction with the + ts2ps tool from the Metzler Brother's dvb-mpegtools package. + +3. Which other DVB applications exist? + + http://www.cadsoft.de/people/kls/vdr/ + Klaus Schmidinger's Video Disk Recorder + + http://www.metzlerbros.org/dvb/ + Metzler Bros. DVB development; alternate drivers and + DVB utilities, include dvb-mpegtools and tuxzap. + + http://www.linuxstb.org/ + http://sourceforge.net/projects/dvbtools/ + Dave Chapman's dvbtools package, including + dvbstream and dvbtune + + http://www.linuxdvb.tv/ + Henning Holtschneider's site with many interesting + links and docs + + http://www.dbox2.info/ + LinuxDVB on the dBox2 + + http://www.tuxbox.org/ + http://cvs.tuxbox.org/ + the TuxBox CVS many interesting DVB applications and the dBox2 + DVB source + + http://sourceforge.net/projects/dvbsak/ + DVB Swiss Army Knife library and utilities + + http://www.nenie.org/misc/mpsys/ + MPSYS: a MPEG2 system library and tools + + http://mplayerhq.hu/ + mplayer + + http://xine.sourceforge.net/ + http://xinehq.de/ + xine + + http://www.mythtv.org/ + MythTV - analog TV PVR, but now with DVB support, too + (with software MPEG decode) + +4. Can't get a signal tuned correctly + + If you are using a Technotrend/Hauppauge DVB-C card *without* analog + module, you might have to use module parameter adac=-1 (dvb-ttpci.o). + +5. The dvb_net device doesn't give me any multicast packets + + Check your routes if they include the multicast address range. + Additionally make sure that "source validation by reversed path + lookup" is disabled: + $ "echo 0 > /proc/sys/net/ipv4/conf/dvb0/rp_filter" + +eof diff --git a/linux/Documentation/dvb/FIRMWARE b/linux/Documentation/dvb/FIRMWARE new file mode 100644 index 000000000..17ecc048d --- /dev/null +++ b/linux/Documentation/dvb/FIRMWARE @@ -0,0 +1,39 @@ +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/). +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/ + +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 + + +eof diff --git a/linux/Documentation/dvb/README b/linux/Documentation/dvb/README new file mode 100644 index 000000000..8fa1f0313 --- /dev/null +++ b/linux/Documentation/dvb/README @@ -0,0 +1,24 @@ +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/. + +The developer mailing list linux-dvb is also hosted there, +see http://linuxtv.org/mailinglists.xml. Please check +the archive http://linuxtv.org/mailinglists/linux-dvb/ +before asking newbie questions on the list. + +API documentation, utilities and test/example programs +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/ + + +Good luck and have fun! -- cgit v1.2.3 From 61ecbc747954a733faf261ef6459e76d5cba3a65 Mon Sep 17 00:00:00 2001 From: Johannes Stezenbach Date: Wed, 12 Nov 2003 13:12:12 +0000 Subject: mention CONFIG_FW_LOADER + /sbin/hotplug w/o arguments trick --- linux/Documentation/dvb/FIRMWARE | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) (limited to 'linux/Documentation/dvb') diff --git a/linux/Documentation/dvb/FIRMWARE b/linux/Documentation/dvb/FIRMWARE index 17ecc048d..c26d4dcd8 100644 --- a/linux/Documentation/dvb/FIRMWARE +++ b/linux/Documentation/dvb/FIRMWARE @@ -3,9 +3,13 @@ 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 @@ -34,6 +38,3 @@ current state: variable (default /etc/dvb/tda1004x.bin); the firmware binary must be extracted from the windows driver - - -eof -- cgit v1.2.3 From cd163e5d563ca92b425feb1e3544f8eece8719e2 Mon Sep 17 00:00:00 2001 From: Alex Woods Date: Mon, 8 Dec 2003 20:22:20 +0000 Subject: Driver specific notes --- linux/Documentation/dvb/ttusb-dec.txt | 52 +++++++++++++++++++++++++++++++++++ 1 file changed, 52 insertions(+) create mode 100644 linux/Documentation/dvb/ttusb-dec.txt (limited to 'linux/Documentation/dvb') diff --git a/linux/Documentation/dvb/ttusb-dec.txt b/linux/Documentation/dvb/ttusb-dec.txt new file mode 100644 index 000000000..3afe21fc0 --- /dev/null +++ b/linux/Documentation/dvb/ttusb-dec.txt @@ -0,0 +1,52 @@ +TechnoTrend/Hauppauge DEC USB Driver +==================================== + +Driver Status +------------- + +Supported: + DEC2000-t + Linux Kernels 2.4 and 2.6 + Video Streaming + Audio Streaming + Channel Zapping + Hotplug firmware loader under 2.6 kernels + +In Progress: + DEC3000-s + +To Do: + Section data + Teletext streams + Tuner status information + DVB network interface + Streaming video PC->DEC + +Note: Since section data can not be retreived yet, scan apps will not work. + +Getting the Firmware +-------------------- +Currently, the driver only works with v2.15a of the firmware. The firmwares +can be obtained in this way: + +wget http://hauppauge.lightpath.net/de/dec215a.exe +unzip -j dec215a.exe Software/Oem/STB/App/Boot/STB_PC_T.bin +unzip -j dec215a.exe Software/Oem/STB/App/Boot/STB_PC_S.bin + + +Compilation Notes for 2.4 kernels +--------------------------------- +For 2.4 kernels the firmware for the DECs is compiled into the driver itself. +The firmwares are expected to be in /etc/dvb at compilation time. + +mv STB_PC_T.bin /etc/dvb/dec2000t.bin +mv STB_PC_S.bin /etc/dvb/dec3000s.bin + + +Hotplug Firmware Loading for 2.6 kernels +---------------------------------------- +For 2.6 kernels the firmware is loaded at the point that the driver module is +loaded. See linux/Documentation/dvb/FIRMWARE for more information. + +mv STB_PC_T.bin /usr/lib/hotplug/firmware/dec2000t.bin +mv STB_PC_S.bin /usr/lib/hotplug/firmware/dec3000s.bin -- cgit v1.2.3 From ae4b462da23dd2ff93fcf57239e28b805e41cb44 Mon Sep 17 00:00:00 2001 From: Michael Hunold Date: Fri, 19 Dec 2003 10:43:47 +0000 Subject: - don't use uppercase filenames - add some contributors - extend firmware documenation with informations from patches-2.6/README.firmware - rearrange readme file --- linux/Documentation/dvb/CARDS | 63 ----------------- linux/Documentation/dvb/CONTRIBUTORS | 49 ------------- linux/Documentation/dvb/FAQ | 109 ----------------------------- linux/Documentation/dvb/FIRMWARE | 40 ----------- linux/Documentation/dvb/README | 24 ------- linux/Documentation/dvb/cards.txt | 63 +++++++++++++++++ linux/Documentation/dvb/contributors.txt | 54 ++++++++++++++ linux/Documentation/dvb/faq.txt | 109 +++++++++++++++++++++++++++++ linux/Documentation/dvb/firmware.txt | 116 +++++++++++++++++++++++++++++++ linux/Documentation/dvb/readme.txt | 39 +++++++++++ 10 files changed, 381 insertions(+), 285 deletions(-) delete mode 100644 linux/Documentation/dvb/CARDS delete mode 100644 linux/Documentation/dvb/CONTRIBUTORS delete mode 100644 linux/Documentation/dvb/FAQ delete mode 100644 linux/Documentation/dvb/FIRMWARE delete mode 100644 linux/Documentation/dvb/README create mode 100644 linux/Documentation/dvb/cards.txt create mode 100644 linux/Documentation/dvb/contributors.txt create mode 100644 linux/Documentation/dvb/faq.txt create mode 100644 linux/Documentation/dvb/firmware.txt create mode 100644 linux/Documentation/dvb/readme.txt (limited to 'linux/Documentation/dvb') diff --git a/linux/Documentation/dvb/CARDS b/linux/Documentation/dvb/CARDS deleted file mode 100644 index 374263890..000000000 --- a/linux/Documentation/dvb/CARDS +++ /dev/null @@ -1,63 +0,0 @@ -Hardware supported by the linuxtv.org DVB drivers -================================================= - - Generally, the DVB hardware manufacturers frequently change the - frontends (i.e. tuner / demodulator units) used, usually without - changing the product name, revision number or specs. Some cards - are also available in versions with different frontends for - DVB-S/DVB-C/DVB-T. Thus the frontend drivers are listed seperately. - - Note 1: There is no guarantee that every frontend driver works - out-of-the box with every card, because of different wiring. - - Note 2: The demodulator chips can be used with a variety of - tuner/PLL chips, and not all combinations are supported. Often - the demodulator and tuner/PLL chip are inside a metal box for - shielding, and the whole metal box has its own part number. - - -o Frontends drivers: - - dvb_dummy_fe: for testing... - DVB-S: - - alps_bsrv2 : Alps BSRV2 (ves1893 demodulator) - - cx24110 : Conexant HM1221/HM1811 (cx24110 or cx24106 demod, cx24108 PLL) - - grundig_29504-491 : Grundig 29504-491 (Philips TDA8083 demodulator), tsa5522 PLL - - mt312 : Zarlink mt312 or Mitel vp310 demodulator, sl1935 or tsa5059 PLL - - stv0299 : Alps BSRU6 (tsa5059 PLL), LG TDQB-S00x (tsa5059 PLL), - LG TDQF-S001F (sl1935 PLL), Philips SU1278 (tua6100 PLL), - Philips SU1278SH (tsa5059 PLL) - DVB-C: - - ves1820 : various (ves1820 demodulator, sp5659c or spXXXX PLL) - - at76c651 : Atmel AT76c651(B) with DAT7021 PLL - DVB-T: - - alps_tdlb7 : Alps TDLB7 (sp8870 demodulator, sp5659 PLL) - - alps_tdmb7 : Alps TDMB7 (cx22700 demodulator) - - grundig_29504-401 : Grundig 29504-401 (LSI L64781 demodulator), tsa5060 PLL - - tda1004x : Philips tda10045h (td1344 or tdm1316l PLL) - - nxt6000 : Alps TDME7 (MITEL SP5659 PLL), Alps TDED4 (TI ALP510 PLL), - Comtech DVBT-6k07 (SP5730 PLL) - (NxtWave Communications NXT6000 demodulator) - - -o Cards based on the Phillips saa7146 multimedia PCI bridge chip: - - TI AV7110 based cards (i.e. with hardware MPEG decoder): - - Siemens/Technotrend/Hauppauge PCI DVB card revision 1.1, 1.3, 1.5, 1.6, 2.1 - (aka Hauppauge Nexus) - - "budget" cards (i.e. without hardware MPEG decoder): - - Technotrend Budget / Hauppauge WinTV-Nova PCI Cards - - SATELCO Multimedia PCI - - KNC1 DVB-S - -o Cards based on the B2C2 Inc. FlexCopII: - - Technisat SkyStar2 PCI DVB - -o Cards based on the Conexant Bt8xx PCI bridge: - - Pinnacle PCTV Sat DVB - - Nebula Electronics DigiTV - -o Technotrend / Hauppauge DVB USB devices: - - Nova USB - - DEC 2000-T - -o Preliminary support for the analog module of the Siemens DVB-C PCI card - diff --git a/linux/Documentation/dvb/CONTRIBUTORS b/linux/Documentation/dvb/CONTRIBUTORS deleted file mode 100644 index 5e5174143..000000000 --- a/linux/Documentation/dvb/CONTRIBUTORS +++ /dev/null @@ -1,49 +0,0 @@ -Thanks go to the following people for patches and contributions: - -Michael Hunold - for the initial saa7146 driver and it's recent overhaul - -Christian Theiss - for his work on the initial Linux DVB driver - -Marcus Metzler -Ralph Metzler - for their contining work on the DVB driver - -Michael Holzt - for his contributions to the dvb-net driver - -Diego Picciani - for CyberLogin for Linux which allows logging onto EON - (in case you are wondering where CyberLogin is, EON changed its login - procedure and CyberLogin is no longer used.) - -Martin Schaller - for patching the cable card decoder driver - -Klaus Schmidinger - for various fixes regarding tuning, OSD and CI stuff and his work on VDR - -Steve Brown - for his AFC kernel thread - -Christoph Martin - for his LIRC infrared handler - -Andreas Oberritter -Florian Schirmer -...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 - -Oliver Endriss - for many bugfixes - -Andrew de Quincey - for the tda1004x frontend driver, and various bugfixes - -V.C. -Peter Schildmann - for the driver for the Technisat SkyStar2 PCI DVB card - based on the FlexCopII by B2C2,Inc. - diff --git a/linux/Documentation/dvb/FAQ b/linux/Documentation/dvb/FAQ deleted file mode 100644 index 28e63ec30..000000000 --- a/linux/Documentation/dvb/FAQ +++ /dev/null @@ -1,109 +0,0 @@ -Some very frequently asked questions about linuxtv-dvb - -1. The signal seems to die a few seconds after tuning. - - It's not a bug, it's a feature. Because the frontends have - significant power requirements (and hence get very hot), they - are powered down if they are unused (i.e. if the frontend device - is closed). The dvb-core.o module paramter "dvb_shutdown_timeout" - allow you to change the timeout (default 5 seconds). Setting the - timeout to 0 disables the timeout feature. - -2. How can I watch TV? - - The driver distribution includes some simple utilities which - are mainly intended for testing and to demonstrate how the - DVB API works. - - Depending on whether you have a DVB-S, DVB-C or DVB-T card, use - apps/szap/szap, czap or tzap. You must supply a channel list - in ~/.[sct]zap/channels.conf. If you are lucky you can just copy - one of the supplied channel lists, or you can create a new one - by running apps/scan/scan. If you run scan on an unknown network - you might have to supply some start data in apps/scan/initial.h. - - If you have a card with a built-in hardware MPEG-decoder the - drivers create a video4linux device (/dev/v4l/video0) which - you can use to watch TV with any v4l application. xawtv is known - to work. Note that you cannot change channels with xawtv, you - have to zap using [sct]zap. If you want a nice application for - TV watching and record/playback, have a look at VDR. - - If your card does not have a hardware MPEG decoder you need - a software MPEG decoder. Mplayer or xine are known to work. - Newsflash: MythTV also has DVB support now. - Note: Only very recent versions of Mplayer and xine can decode. - MPEG2 transport streams (TS) directly. Then, run - '[sct]zap channelname -r' in one xterm, and keep it running, - and start 'mplayer - < /dev/dvb/adapter0/dvr0' or - 'xine stdin://mpeg2 < /dev/dvb/adapter0/dvr0' in a second xterm. - That's all far from perfect, but it seems no one has written - a nice DVB application which includes a builtin software MPEG - decoder yet. - - Newsflash: Newest xine directly supports DVB. Just copy your - channels.conf to ~/.xine and start 'xine dvb://', or select - the DVB button in the xine GUI. Channel switching works using the - numpad pgup/pgdown (NP9 / NP3) keys to scroll through the channel osd - menu and pressing numpad-enter to switch to the selected channel. - - Note: Older versions of xine and mplayer understand MPEG program - streams (PS) only, and can be used in conjunction with the - ts2ps tool from the Metzler Brother's dvb-mpegtools package. - -3. Which other DVB applications exist? - - http://www.cadsoft.de/people/kls/vdr/ - Klaus Schmidinger's Video Disk Recorder - - http://www.metzlerbros.org/dvb/ - Metzler Bros. DVB development; alternate drivers and - DVB utilities, include dvb-mpegtools and tuxzap. - - http://www.linuxstb.org/ - http://sourceforge.net/projects/dvbtools/ - Dave Chapman's dvbtools package, including - dvbstream and dvbtune - - http://www.linuxdvb.tv/ - Henning Holtschneider's site with many interesting - links and docs - - http://www.dbox2.info/ - LinuxDVB on the dBox2 - - http://www.tuxbox.org/ - http://cvs.tuxbox.org/ - the TuxBox CVS many interesting DVB applications and the dBox2 - DVB source - - http://sourceforge.net/projects/dvbsak/ - DVB Swiss Army Knife library and utilities - - http://www.nenie.org/misc/mpsys/ - MPSYS: a MPEG2 system library and tools - - http://mplayerhq.hu/ - mplayer - - http://xine.sourceforge.net/ - http://xinehq.de/ - xine - - http://www.mythtv.org/ - MythTV - analog TV PVR, but now with DVB support, too - (with software MPEG decode) - -4. Can't get a signal tuned correctly - - If you are using a Technotrend/Hauppauge DVB-C card *without* analog - module, you might have to use module parameter adac=-1 (dvb-ttpci.o). - -5. The dvb_net device doesn't give me any multicast packets - - Check your routes if they include the multicast address range. - Additionally make sure that "source validation by reversed path - lookup" is disabled: - $ "echo 0 > /proc/sys/net/ipv4/conf/dvb0/rp_filter" - -eof 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/README b/linux/Documentation/dvb/README deleted file mode 100644 index 8fa1f0313..000000000 --- a/linux/Documentation/dvb/README +++ /dev/null @@ -1,24 +0,0 @@ -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/. - -The developer mailing list linux-dvb is also hosted there, -see http://linuxtv.org/mailinglists.xml. Please check -the archive http://linuxtv.org/mailinglists/linux-dvb/ -before asking newbie questions on the list. - -API documentation, utilities and test/example programs -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/ - - -Good luck and have fun! diff --git a/linux/Documentation/dvb/cards.txt b/linux/Documentation/dvb/cards.txt new file mode 100644 index 000000000..374263890 --- /dev/null +++ b/linux/Documentation/dvb/cards.txt @@ -0,0 +1,63 @@ +Hardware supported by the linuxtv.org DVB drivers +================================================= + + Generally, the DVB hardware manufacturers frequently change the + frontends (i.e. tuner / demodulator units) used, usually without + changing the product name, revision number or specs. Some cards + are also available in versions with different frontends for + DVB-S/DVB-C/DVB-T. Thus the frontend drivers are listed seperately. + + Note 1: There is no guarantee that every frontend driver works + out-of-the box with every card, because of different wiring. + + Note 2: The demodulator chips can be used with a variety of + tuner/PLL chips, and not all combinations are supported. Often + the demodulator and tuner/PLL chip are inside a metal box for + shielding, and the whole metal box has its own part number. + + +o Frontends drivers: + - dvb_dummy_fe: for testing... + DVB-S: + - alps_bsrv2 : Alps BSRV2 (ves1893 demodulator) + - cx24110 : Conexant HM1221/HM1811 (cx24110 or cx24106 demod, cx24108 PLL) + - grundig_29504-491 : Grundig 29504-491 (Philips TDA8083 demodulator), tsa5522 PLL + - mt312 : Zarlink mt312 or Mitel vp310 demodulator, sl1935 or tsa5059 PLL + - stv0299 : Alps BSRU6 (tsa5059 PLL), LG TDQB-S00x (tsa5059 PLL), + LG TDQF-S001F (sl1935 PLL), Philips SU1278 (tua6100 PLL), + Philips SU1278SH (tsa5059 PLL) + DVB-C: + - ves1820 : various (ves1820 demodulator, sp5659c or spXXXX PLL) + - at76c651 : Atmel AT76c651(B) with DAT7021 PLL + DVB-T: + - alps_tdlb7 : Alps TDLB7 (sp8870 demodulator, sp5659 PLL) + - alps_tdmb7 : Alps TDMB7 (cx22700 demodulator) + - grundig_29504-401 : Grundig 29504-401 (LSI L64781 demodulator), tsa5060 PLL + - tda1004x : Philips tda10045h (td1344 or tdm1316l PLL) + - nxt6000 : Alps TDME7 (MITEL SP5659 PLL), Alps TDED4 (TI ALP510 PLL), + Comtech DVBT-6k07 (SP5730 PLL) + (NxtWave Communications NXT6000 demodulator) + + +o Cards based on the Phillips saa7146 multimedia PCI bridge chip: + - TI AV7110 based cards (i.e. with hardware MPEG decoder): + - Siemens/Technotrend/Hauppauge PCI DVB card revision 1.1, 1.3, 1.5, 1.6, 2.1 + (aka Hauppauge Nexus) + - "budget" cards (i.e. without hardware MPEG decoder): + - Technotrend Budget / Hauppauge WinTV-Nova PCI Cards + - SATELCO Multimedia PCI + - KNC1 DVB-S + +o Cards based on the B2C2 Inc. FlexCopII: + - Technisat SkyStar2 PCI DVB + +o Cards based on the Conexant Bt8xx PCI bridge: + - Pinnacle PCTV Sat DVB + - Nebula Electronics DigiTV + +o Technotrend / Hauppauge DVB USB devices: + - Nova USB + - DEC 2000-T + +o Preliminary support for the analog module of the Siemens DVB-C PCI card + diff --git a/linux/Documentation/dvb/contributors.txt b/linux/Documentation/dvb/contributors.txt new file mode 100644 index 000000000..d4776e500 --- /dev/null +++ b/linux/Documentation/dvb/contributors.txt @@ -0,0 +1,54 @@ +Thanks go to the following people for patches and contributions: + +Michael Hunold + for the initial saa7146 driver and it's recent overhaul + +Christian Theiss + for his work on the initial Linux DVB driver + +Marcus Metzler +Ralph Metzler + for their contining work on the DVB driver + +Michael Holzt + for his contributions to the dvb-net driver + +Diego Picciani + for CyberLogin for Linux which allows logging onto EON + (in case you are wondering where CyberLogin is, EON changed its login + procedure and CyberLogin is no longer used.) + +Martin Schaller + for patching the cable card decoder driver + +Klaus Schmidinger + for various fixes regarding tuning, OSD and CI stuff and his work on VDR + +Steve Brown + for his AFC kernel thread + +Christoph Martin + for his LIRC infrared handler + +Andreas Oberritter +Florian Schirmer +...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 + +Oliver Endriss + for many bugfixes + +Andrew de Quincey + for the tda1004x frontend driver, and various bugfixes + +Peter Schildmann + for the driver for the Technisat SkyStar2 PCI DVB card + +Vadim Catana +Roberto Ragusa +Augusto Cardoso + 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.txt b/linux/Documentation/dvb/faq.txt new file mode 100644 index 000000000..28e63ec30 --- /dev/null +++ b/linux/Documentation/dvb/faq.txt @@ -0,0 +1,109 @@ +Some very frequently asked questions about linuxtv-dvb + +1. The signal seems to die a few seconds after tuning. + + It's not a bug, it's a feature. Because the frontends have + significant power requirements (and hence get very hot), they + are powered down if they are unused (i.e. if the frontend device + is closed). The dvb-core.o module paramter "dvb_shutdown_timeout" + allow you to change the timeout (default 5 seconds). Setting the + timeout to 0 disables the timeout feature. + +2. How can I watch TV? + + The driver distribution includes some simple utilities which + are mainly intended for testing and to demonstrate how the + DVB API works. + + Depending on whether you have a DVB-S, DVB-C or DVB-T card, use + apps/szap/szap, czap or tzap. You must supply a channel list + in ~/.[sct]zap/channels.conf. If you are lucky you can just copy + one of the supplied channel lists, or you can create a new one + by running apps/scan/scan. If you run scan on an unknown network + you might have to supply some start data in apps/scan/initial.h. + + If you have a card with a built-in hardware MPEG-decoder the + drivers create a video4linux device (/dev/v4l/video0) which + you can use to watch TV with any v4l application. xawtv is known + to work. Note that you cannot change channels with xawtv, you + have to zap using [sct]zap. If you want a nice application for + TV watching and record/playback, have a look at VDR. + + If your card does not have a hardware MPEG decoder you need + a software MPEG decoder. Mplayer or xine are known to work. + Newsflash: MythTV also has DVB support now. + Note: Only very recent versions of Mplayer and xine can decode. + MPEG2 transport streams (TS) directly. Then, run + '[sct]zap channelname -r' in one xterm, and keep it running, + and start 'mplayer - < /dev/dvb/adapter0/dvr0' or + 'xine stdin://mpeg2 < /dev/dvb/adapter0/dvr0' in a second xterm. + That's all far from perfect, but it seems no one has written + a nice DVB application which includes a builtin software MPEG + decoder yet. + + Newsflash: Newest xine directly supports DVB. Just copy your + channels.conf to ~/.xine and start 'xine dvb://', or select + the DVB button in the xine GUI. Channel switching works using the + numpad pgup/pgdown (NP9 / NP3) keys to scroll through the channel osd + menu and pressing numpad-enter to switch to the selected channel. + + Note: Older versions of xine and mplayer understand MPEG program + streams (PS) only, and can be used in conjunction with the + ts2ps tool from the Metzler Brother's dvb-mpegtools package. + +3. Which other DVB applications exist? + + http://www.cadsoft.de/people/kls/vdr/ + Klaus Schmidinger's Video Disk Recorder + + http://www.metzlerbros.org/dvb/ + Metzler Bros. DVB development; alternate drivers and + DVB utilities, include dvb-mpegtools and tuxzap. + + http://www.linuxstb.org/ + http://sourceforge.net/projects/dvbtools/ + Dave Chapman's dvbtools package, including + dvbstream and dvbtune + + http://www.linuxdvb.tv/ + Henning Holtschneider's site with many interesting + links and docs + + http://www.dbox2.info/ + LinuxDVB on the dBox2 + + http://www.tuxbox.org/ + http://cvs.tuxbox.org/ + the TuxBox CVS many interesting DVB applications and the dBox2 + DVB source + + http://sourceforge.net/projects/dvbsak/ + DVB Swiss Army Knife library and utilities + + http://www.nenie.org/misc/mpsys/ + MPSYS: a MPEG2 system library and tools + + http://mplayerhq.hu/ + mplayer + + http://xine.sourceforge.net/ + http://xinehq.de/ + xine + + http://www.mythtv.org/ + MythTV - analog TV PVR, but now with DVB support, too + (with software MPEG decode) + +4. Can't get a signal tuned correctly + + If you are using a Technotrend/Hauppauge DVB-C card *without* analog + module, you might have to use module parameter adac=-1 (dvb-ttpci.o). + +5. The dvb_net device doesn't give me any multicast packets + + Check your routes if they include the multicast address range. + Additionally make sure that "source validation by reversed path + lookup" is disabled: + $ "echo 0 > /proc/sys/net/ipv4/conf/dvb0/rp_filter" + +eof 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.txt b/linux/Documentation/dvb/readme.txt new file mode 100644 index 000000000..9cd4be849 --- /dev/null +++ b/linux/Documentation/dvb/readme.txt @@ -0,0 +1,39 @@ +Linux Digital Video Broadcast (DVB) subsystem +============================================= + +The main development site and CVS repository for these +drivers is http://linuxtv.org/. + +The developer mailing list linux-dvb is also hosted there, +see http://linuxtv.org/mailinglists.xml. Please check +the archive http://linuxtv.org/mailinglists/linux-dvb/ +before asking newbie questions on the list. + +API documentation, utilities and test/example programs +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! -- cgit v1.2.3 From 7225302ef8db1b869af8423c0612f3928b711ffc Mon Sep 17 00:00:00 2001 From: Andreas Oberritter Date: Sat, 20 Dec 2003 22:22:18 +0000 Subject: updated contributors.txt and some email addresses --- linux/Documentation/dvb/contributors.txt | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) (limited to 'linux/Documentation/dvb') diff --git a/linux/Documentation/dvb/contributors.txt b/linux/Documentation/dvb/contributors.txt index d4776e500..8316b23ad 100644 --- a/linux/Documentation/dvb/contributors.txt +++ b/linux/Documentation/dvb/contributors.txt @@ -30,11 +30,15 @@ Steve Brown Christoph Martin for his LIRC infrared handler -Andreas Oberritter +Andreas Oberritter +Dennis Noermann +Felix Domke Florian Schirmer -...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 +Ronny Strutz <3des@elitedvb.de> +Wolfram Joost +...and all the other dbox2 people + for many bugfixes in the generic DVB Core, frontend drivers and + their work on the dbox2 port of the DVB driver Oliver Endriss for many bugfixes -- cgit v1.2.3 From a4de0564d8402bd754b5d216376fae86822595c7 Mon Sep 17 00:00:00 2001 From: Michael Hunold Date: Sun, 21 Dec 2003 11:26:52 +0000 Subject: - add documentation for bt8xx based DVB cards - mention this file in the readme --- linux/Documentation/dvb/bt8xx.txt | 90 ++++++++++++++++++++++++++++++++++++++ linux/Documentation/dvb/readme.txt | 5 +++ 2 files changed, 95 insertions(+) create mode 100644 linux/Documentation/dvb/bt8xx.txt (limited to 'linux/Documentation/dvb') diff --git a/linux/Documentation/dvb/bt8xx.txt b/linux/Documentation/dvb/bt8xx.txt new file mode 100644 index 000000000..e3cacf4f2 --- /dev/null +++ b/linux/Documentation/dvb/bt8xx.txt @@ -0,0 +1,90 @@ +How to get the Nebula, PCTV and Twinhan DST cards working +========================================================= + +This class of cards has a bt878a as the PCI interface, and +require the bttv driver. + +Please pay close attention to the warning about the bttv module +options below for the DST card. + +1) General informations +======================= + +These drivers require the bttv driver to provide the means to access +the i2c bus and the gpio pins of the bt8xx chipset. + +Because of this, you need to enable +"Device drivers" => "Multimedia devices" + => "Video For Linux" => "BT848 Video For Linux" + +2) Loading Modules +================== + +In general you need to load the bttv driver, which will handle the gpio and +i2c communication for us. Next you need the common dvb-bt8xx device driver +and one frontend driver. + +The bttv driver will HANG YOUR SYSTEM IF YOU DO NOT SPECIFY THE CORRECT +CARD ID! + +(If you don't get your card running and you suspect that the card id you're +using is wrong, have a look at "bttv-cards.c" for a list of possible card +ids.) + +Pay attention to failures when you load the frontend drivers +(e.g. dmesg, /var/log/messages). + +3a) Nebula / Pinnacle PCTV +-------------------------- + + $ modprobe bttv i2c_hw=1 card=0x68 + $ modprobe dvb-bt8xx + +For Nebula cards use the "nxt6000" frontend driver: + $ modprobe nxt6000 + +For Pinnacle PCTV cards use the "cx24110" frontend driver: + $ modprobe cx24110 + +3b) TwinHan +----------- + + $ modprobe bttv i2c_hw=1 card=0x71 + $ modprobe dvb-bt8xx + $ modprobe dst + +The value 0x71 will override the PCI type detection for dvb-bt8xx, which +is necessary for TwinHan cards.# + +If you're having an older card (blue color circuit) and card=0x71 locks your +machine, try using 0x68, too. If that does not work, ask on the DVB mailing list. + +The DST module takes a couple of useful parameters, in case the +dst drivers fails to detect your type of card correctly. + +dst_type takes values 0 (satellite), 1 (terrestial TV), 2 (cable). + +dst_type_flags takes bit combined values: +1 = new tuner type packets. You can use this if your card is detected + and you have debug and you continually see the tuner packets not + working (make sure not a basic problem like dish alignment etc.) + +2 = TS 204. If your card tunes OK, but the picture is terrible, seemingly + breaking up in one half continually, and crc fails a lot, then + this is worth a try (or trying to turn off) + +4 = has symdiv. Some cards, mostly without new tuner packets, require + a symbol division algorithm. Doesn't apply to terrestial TV. + +You can also specify a value to have the autodetected values turned off +(e.g. 0). The autodected values are determined bythe cards 'response +string' which you can see in your logs e.g. + +dst_check_ci: recognize DST-MOT + +or + +dst_check_ci: unable to recognize DSTXCI or STXCI + +-- +Authors: Richard Walker, Jamie Honan, Michael Hunold diff --git a/linux/Documentation/dvb/readme.txt b/linux/Documentation/dvb/readme.txt index 9cd4be849..720aa8ce0 100644 --- a/linux/Documentation/dvb/readme.txt +++ b/linux/Documentation/dvb/readme.txt @@ -36,4 +36,9 @@ files and where to get them. contains detailed informations about the TT DEC2000/DEC3000 USB DVB hardware. +"bt8xx.txt" +contains detailed installation instructions for the +various bt8xx based "budget" DVB cards +(Nebula, Pinnacle PCTV, Twinhan DST) + Good luck and have fun! -- cgit v1.2.3 From 43f64291268024d850870f12529791ec7be79bb8 Mon Sep 17 00:00:00 2001 From: Michael Hunold Date: Sun, 21 Dec 2003 17:42:02 +0000 Subject: - add Davor Emard to the contributors --- linux/Documentation/dvb/contributors.txt | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'linux/Documentation/dvb') diff --git a/linux/Documentation/dvb/contributors.txt b/linux/Documentation/dvb/contributors.txt index 8316b23ad..923d937cd 100644 --- a/linux/Documentation/dvb/contributors.txt +++ b/linux/Documentation/dvb/contributors.txt @@ -54,5 +54,9 @@ Roberto Ragusa Augusto Cardoso for all the work for the FlexCopII chipset by B2C2,Inc. +Davor Emard + for his work on the budget drivers, the demux code, + the module unloading problems, ... + (If you think you should be in this list, but you are not, drop a line to the DVB mailing list) -- cgit v1.2.3 From 7973b11c7b7796883a2b735677bda2bb687826f3 Mon Sep 17 00:00:00 2001 From: Michael Hunold Date: Wed, 24 Dec 2003 22:08:37 +0000 Subject: - fix typo concerning firmware version --- linux/Documentation/dvb/firmware.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'linux/Documentation/dvb') diff --git a/linux/Documentation/dvb/firmware.txt b/linux/Documentation/dvb/firmware.txt index 8cb3e71cd..f2b614f5b 100644 --- a/linux/Documentation/dvb/firmware.txt +++ b/linux/Documentation/dvb/firmware.txt @@ -81,7 +81,7 @@ 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 +> wget http://www.linuxtv.org/download/dvb/dvb-ttpci-01.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 -- cgit v1.2.3 From e325e80abac96407e8bf501f0c77e10ed80bb090 Mon Sep 17 00:00:00 2001 From: Alex Woods Date: Sat, 27 Dec 2003 18:57:50 +0000 Subject: Rudimentary section filter support (enough for scan). Alter hotplug firmware naming to fit in with dvb standard. --- linux/Documentation/dvb/ttusb-dec.txt | 11 ++++------- 1 file changed, 4 insertions(+), 7 deletions(-) (limited to 'linux/Documentation/dvb') diff --git a/linux/Documentation/dvb/ttusb-dec.txt b/linux/Documentation/dvb/ttusb-dec.txt index 3afe21fc0..e2fefb6dc 100644 --- a/linux/Documentation/dvb/ttusb-dec.txt +++ b/linux/Documentation/dvb/ttusb-dec.txt @@ -9,6 +9,7 @@ Supported: Linux Kernels 2.4 and 2.6 Video Streaming Audio Streaming + Section Filters Channel Zapping Hotplug firmware loader under 2.6 kernels @@ -16,14 +17,10 @@ In Progress: DEC3000-s To Do: - Section data - Teletext streams Tuner status information DVB network interface Streaming video PC->DEC -Note: Since section data can not be retreived yet, scan apps will not work. - Getting the Firmware -------------------- Currently, the driver only works with v2.15a of the firmware. The firmwares @@ -46,7 +43,7 @@ mv STB_PC_S.bin /etc/dvb/dec3000s.bin Hotplug Firmware Loading for 2.6 kernels ---------------------------------------- For 2.6 kernels the firmware is loaded at the point that the driver module is -loaded. See linux/Documentation/dvb/FIRMWARE for more information. +loaded. See linux/Documentation/dvb/firmware.txt for more information. -mv STB_PC_T.bin /usr/lib/hotplug/firmware/dec2000t.bin -mv STB_PC_S.bin /usr/lib/hotplug/firmware/dec3000s.bin +mv STB_PC_T.bin /usr/lib/hotplug/firmware/dvb-ttusb-dec-2000t-2.15a.fw +mv STB_PC_S.bin /usr/lib/hotplug/firmware/dvb-ttusb-dec-3000s-2.15a.fw -- cgit v1.2.3 From 6e1e44bfc1562848ec63603c0dd6e1c430daf279 Mon Sep 17 00:00:00 2001 From: Michael Hunold Date: Thu, 1 Jan 2004 16:25:55 +0000 Subject: - fix name of firmware file --- linux/Documentation/dvb/firmware.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'linux/Documentation/dvb') diff --git a/linux/Documentation/dvb/firmware.txt b/linux/Documentation/dvb/firmware.txt index f2b614f5b..3a85c0b5b 100644 --- a/linux/Documentation/dvb/firmware.txt +++ b/linux/Documentation/dvb/firmware.txt @@ -82,7 +82,7 @@ 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-01.fw -gets you the version "1.21" of the firmware fot the ttpci driver. +gets you the version 01 of the firmware fot the ttpci driver. Step d) Loading the dvb-ttpci driver and loading the firmware -- cgit v1.2.3 From 539fe957e343be686be416ccf137396bca953e07 Mon Sep 17 00:00:00 2001 From: Alex Woods Date: Sun, 4 Jan 2004 22:07:57 +0000 Subject: Apply Hans-Frieder Vogt's patch for calculating firmware CRCs. Update ttusb-dec docs accordingly. Add him to contributors file and correct a typo. --- linux/Documentation/dvb/contributors.txt | 6 +++++- linux/Documentation/dvb/ttusb-dec.txt | 16 ++++++++++++---- 2 files changed, 17 insertions(+), 5 deletions(-) (limited to 'linux/Documentation/dvb') diff --git a/linux/Documentation/dvb/contributors.txt b/linux/Documentation/dvb/contributors.txt index 923d937cd..86c9270da 100644 --- a/linux/Documentation/dvb/contributors.txt +++ b/linux/Documentation/dvb/contributors.txt @@ -8,7 +8,7 @@ Christian Theiss Marcus Metzler Ralph Metzler - for their contining work on the DVB driver + for their continuing work on the DVB driver Michael Holzt for his contributions to the dvb-net driver @@ -58,5 +58,9 @@ Davor Emard for his work on the budget drivers, the demux code, the module unloading problems, ... +Hans-Frieder Vogt + for his work on calculating and checking the crc's for the + TechnoTrend/Hauppauge DEC driver firmware + (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/ttusb-dec.txt b/linux/Documentation/dvb/ttusb-dec.txt index e2fefb6dc..7e3f2beac 100644 --- a/linux/Documentation/dvb/ttusb-dec.txt +++ b/linux/Documentation/dvb/ttusb-dec.txt @@ -23,8 +23,16 @@ To Do: Getting the Firmware -------------------- -Currently, the driver only works with v2.15a of the firmware. The firmwares -can be obtained in this way: +The firmware can be found in the software update files on this page: +http://www.hauppauge.de/sw_dec.htm + +The firmware for the DEC2000-t is called STB_PC_T.bin, and the firmware for +the DEC3000-s is called STB_PC_S.bin. + +Note that firmware version 2.16 beta2 for the DEC2000-t has a bug that sets +the device's USB id to that of the DEC3000-s, making it unusable. + +Instructions follow for retrieving version 2.15a of the firmware: wget http://hauppauge.lightpath.net/de/dec215a.exe unzip -j dec215a.exe Software/Oem/STB/App/Boot/STB_PC_T.bin @@ -45,5 +53,5 @@ Hotplug Firmware Loading for 2.6 kernels For 2.6 kernels the firmware is loaded at the point that the driver module is loaded. See linux/Documentation/dvb/firmware.txt for more information. -mv STB_PC_T.bin /usr/lib/hotplug/firmware/dvb-ttusb-dec-2000t-2.15a.fw -mv STB_PC_S.bin /usr/lib/hotplug/firmware/dvb-ttusb-dec-3000s-2.15a.fw +mv STB_PC_T.bin /usr/lib/hotplug/firmware/dvb-ttusb-dec-2000t.fw +mv STB_PC_S.bin /usr/lib/hotplug/firmware/dvb-ttusb-dec-3000s.fw -- cgit v1.2.3 From 7cac2bd195ef658e25808a8762c6b44ad11aa7fd Mon Sep 17 00:00:00 2001 From: Alex Woods Date: Sat, 10 Jan 2004 01:11:17 +0000 Subject: Handle the new firmwares that change the devices' USB IDs. Tidy up the STB initialisation process a little. --- linux/Documentation/dvb/ttusb-dec.txt | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) (limited to 'linux/Documentation/dvb') diff --git a/linux/Documentation/dvb/ttusb-dec.txt b/linux/Documentation/dvb/ttusb-dec.txt index 7e3f2beac..a844d8e09 100644 --- a/linux/Documentation/dvb/ttusb-dec.txt +++ b/linux/Documentation/dvb/ttusb-dec.txt @@ -29,14 +29,14 @@ http://www.hauppauge.de/sw_dec.htm The firmware for the DEC2000-t is called STB_PC_T.bin, and the firmware for the DEC3000-s is called STB_PC_S.bin. -Note that firmware version 2.16 beta2 for the DEC2000-t has a bug that sets -the device's USB id to that of the DEC3000-s, making it unusable. +Note that firmwares since version 2.16 beta2 for the DEC2000-t give the device +the USB ID of the DEC3000-s. The driver copes with this. -Instructions follow for retrieving version 2.15a of the firmware: +Instructions follow for retrieving version 2.16 of the firmware: -wget http://hauppauge.lightpath.net/de/dec215a.exe -unzip -j dec215a.exe Software/Oem/STB/App/Boot/STB_PC_T.bin -unzip -j dec215a.exe Software/Oem/STB/App/Boot/STB_PC_S.bin +wget http://hauppauge.lightpath.net/de/dec216.exe +unzip -j dec216.exe software/OEM/STB/App/Boot/STB_PC_T.bin +unzip -j dec216.exe software/OEM/STB/App/Boot/STB_PC_S.bin Compilation Notes for 2.4 kernels -- cgit v1.2.3 From 2d7fbe39b4d518dad90974c3fff93a77ae78f6c1 Mon Sep 17 00:00:00 2001 From: Alex Woods Date: Mon, 12 Jan 2004 21:41:41 +0000 Subject: Support DEC2540-t under kernel 2.4 and add info on it to the ttusb-dec docs. Add a module option to get the raw AVPES packets from the dvr device. Handle the new empty packets that appear with the 2.16 firmware. Extra error checks. --- linux/Documentation/dvb/ttusb-dec.txt | 19 +++++++++++++------ 1 file changed, 13 insertions(+), 6 deletions(-) (limited to 'linux/Documentation/dvb') diff --git a/linux/Documentation/dvb/ttusb-dec.txt b/linux/Documentation/dvb/ttusb-dec.txt index a844d8e09..1eca96907 100644 --- a/linux/Documentation/dvb/ttusb-dec.txt +++ b/linux/Documentation/dvb/ttusb-dec.txt @@ -14,6 +14,7 @@ Supported: Hotplug firmware loader under 2.6 kernels In Progress: + DEC2540-t DEC3000-s To Do: @@ -23,11 +24,13 @@ To Do: Getting the Firmware -------------------- -The firmware can be found in the software update files on this page: +The firmware can be found in the software update zip files on this page: http://www.hauppauge.de/sw_dec.htm -The firmware for the DEC2000-t is called STB_PC_T.bin, and the firmware for -the DEC3000-s is called STB_PC_S.bin. +The firmwares are named as follows: +DEC2000-t: STB_PC_T.bin +DEC2540-t: STB_PC_X.bin +DEC3000-s: STB_PC_S.bin Note that firmwares since version 2.16 beta2 for the DEC2000-t give the device the USB ID of the DEC3000-s. The driver copes with this. @@ -36,16 +39,19 @@ Instructions follow for retrieving version 2.16 of the firmware: wget http://hauppauge.lightpath.net/de/dec216.exe unzip -j dec216.exe software/OEM/STB/App/Boot/STB_PC_T.bin +unzip -j dec216.exe software/OEM/STB/App/Boot/STB_PC_X.bin unzip -j dec216.exe software/OEM/STB/App/Boot/STB_PC_S.bin Compilation Notes for 2.4 kernels --------------------------------- For 2.4 kernels the firmware for the DECs is compiled into the driver itself. -The firmwares are expected to be in /etc/dvb at compilation time. +The firmwares are expected to be in the build-2.4 directory at compilation +time. -mv STB_PC_T.bin /etc/dvb/dec2000t.bin -mv STB_PC_S.bin /etc/dvb/dec3000s.bin +mv STB_PC_T.bin build-2.4/dec2000t.bin +mv STB_PC_X.bin build-2.4/dec2540t.bin +mv STB_PC_S.bin build-2.4/dec3000s.bin Hotplug Firmware Loading for 2.6 kernels @@ -54,4 +60,5 @@ For 2.6 kernels the firmware is loaded at the point that the driver module is loaded. See linux/Documentation/dvb/firmware.txt for more information. mv STB_PC_T.bin /usr/lib/hotplug/firmware/dvb-ttusb-dec-2000t.fw +mv STB_PC_X.bin /usr/lib/hotplug/firmware/dvb-ttusb-dec-2540t.fw mv STB_PC_S.bin /usr/lib/hotplug/firmware/dvb-ttusb-dec-3000s.fw -- cgit v1.2.3 From 08b9a6d74ea0b8105936ccfbb8265b1bda5867f4 Mon Sep 17 00:00:00 2001 From: Alex Woods Date: Tue, 13 Jan 2004 22:52:22 +0000 Subject: Fix USB timeout bug under 2.6. Use standard naming scheme firmwares for 2.4 build and update docs accordingly. --- linux/Documentation/dvb/ttusb-dec.txt | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'linux/Documentation/dvb') diff --git a/linux/Documentation/dvb/ttusb-dec.txt b/linux/Documentation/dvb/ttusb-dec.txt index 1eca96907..b8e24995c 100644 --- a/linux/Documentation/dvb/ttusb-dec.txt +++ b/linux/Documentation/dvb/ttusb-dec.txt @@ -49,9 +49,9 @@ For 2.4 kernels the firmware for the DECs is compiled into the driver itself. The firmwares are expected to be in the build-2.4 directory at compilation time. -mv STB_PC_T.bin build-2.4/dec2000t.bin -mv STB_PC_X.bin build-2.4/dec2540t.bin -mv STB_PC_S.bin build-2.4/dec3000s.bin +mv STB_PC_T.bin build-2.4/dvb-ttusb-dec-2000t.fw +mv STB_PC_X.bin build-2.4/dvb-ttusb-dec-2540t.fw +mv STB_PC_S.bin build-2.4/dvb-ttusb-dec-3000s.fw Hotplug Firmware Loading for 2.6 kernels -- cgit v1.2.3 From 39c55aa3961c5f258cc19051f4c96c543a367476 Mon Sep 17 00:00:00 2001 From: Holger Waechtler Date: Sun, 25 Jan 2004 17:36:19 +0000 Subject: move Mark Edward's HOWTO to linux/Documentation/dvb/ and remove double FAQ --- .../dvb/HOWTO-get-a-new-card-running-avermedia | 449 +++++++++++++++++++++ 1 file changed, 449 insertions(+) create mode 100644 linux/Documentation/dvb/HOWTO-get-a-new-card-running-avermedia (limited to 'linux/Documentation/dvb') diff --git a/linux/Documentation/dvb/HOWTO-get-a-new-card-running-avermedia b/linux/Documentation/dvb/HOWTO-get-a-new-card-running-avermedia new file mode 100644 index 000000000..050e72be8 --- /dev/null +++ b/linux/Documentation/dvb/HOWTO-get-a-new-card-running-avermedia @@ -0,0 +1,449 @@ +Hi all, + +Mark Edwards was so kind to describe the steps he did to get his (at this time +unsupported) Avermedia DVB-T card running. Since this is a nice introduction +to the DVB infrastructure I added the file to the LinuxDVB CVS repository. + +We hope it can help you to get your new unsupported card running or it's just +an interesting lecture if you are new to the DVB stuff and want to know how +things work together. + +The mentioned patches are now part of the LinuxDVB CVS, you don't have to apply +them again. + +have fun, + +Holger + + +-------------------------------------------------------------------------------- + + +HOWTO: Get An Avermedia DVB-T working under Linux + ______________________________________________ + + Table of Contents + Assumptions and Introduction + The Avermedia DVB-T + Getting the card going + Receiving DVB-T in Australia + Patching dvb-bt8xx + Known Limitations + +Assumptions and Introduction + + It is assumed that the reader understands the basic structure + of the Linux Kernel DVB drivers and the general principles of + Digital TV. + + One significant difference between Digital TV and Analogue TV + that the unwary (like myself) should consider is that, + although the component structure of budget DVB-T cards are + substantially similar to Analogue TV cards, they function in + substantially different ways. + + The purpose of an Analogue TV is to receive and display an + Analogue Television signal. An Analogue TV signal (otherwise + known as composite video) is an analogue encoding of a + sequence of image frames (25 per second) rasterised using an + interlacing technique. Interlacing takes two fields to + represent one frame. Computers today are at their best when + dealing with digital signals, not analogue signals and a + composite video signal is about as far removed from a digital + data stream as you can get. Therefore, an Analogue TV card for + a PC has the following purpose: + + * Tune the receiver to receive a broadcast signal + * demodulate the broadcast signal + * demultiplex the analogue video signal and analogue audio + signal (note some countries employ a digital audio signal + embedded within the modulated composite analogue signal - + NICAM.) + * digitize the analogue video signal and make the resulting + datastream available to the data bus. + + The digital datastream from an Analogue TV card is generated + by circuitry on the card and is often presented uncompressed. + For a PAL TV signal encoded at a resolution of 720x576 24-bit + color pixels over 25 frames per second - a fair amount of data + is generated and must be proceesed by the PC before it can be + displayed on the video monitor screen. Some Analogue TV cards + for PC's have onboard MPEG2 encoders which permit the raw + digital data stream to be presented to the PC in an encoded + and compressed form - similar to the form that is used in + Digital TV. + + The purpose of a simple budget digital TV card (DVB-T,C or S) + is to simply: + + * Tune the received to receive a broadcast signal. + * Extract the encoded digital datastream from the broadcast + signal. + * Make the encoded digital datastream (MPEG2) available to + the data bus. + + The significant difference between the two is that the tuner + on the analogue TV card spits out an Analogue signal, whereas + the tuner on the digital TV card spits out a compressed + encoded digital datastream. As the signal is already + digitised, it is trivial to pass this datastream to the PC + databus with minimal additional processing and then extract + the digital video and audio datastreams passing them to the + appropriate software or hardware for decoding and viewing. + _________________________________________________________ + +The Avermedia DVB-T + + The Avermedia DVB-T is a budget PCI DVB card. It has 3 inputs: + + * RF Tuner Input + * Composite Video Input (RCA Jack) + * SVIDEO Input (Mini-DIN) + + The RF Tuner Input is the input to the tuner module of the + card. The Tuner is otherwise known as the "Frontend" . The + Frontend of the Avermedia DVB-T is a Microtune 7202D. A timely + post to the linux-dvb mailing list ascertained that the + Microtune 7202D is supported by the sp887x driver which is + found in the dvb-hw CVS module. + + The DVB-T card is based around the BT878 chip which is a very + common multimedia bridge and often found on Analogue TV cards. + There is no on-board MPEG2 decoder, which means that all MPEG2 + decoding must be done in software. + _________________________________________________________ + +Getting the card going + + In order to fire up the card, it is necessary to load a number + of modules from the DVB driver set. Prior to this it will have + been necessary to download these drivers from the linuxtv CVS + server and compile them successfully. + + The Device Driver API for DVB under Linux exposes the + following device files in the /dev tree: + + * /dev/dvb/adapter0/audio0 + * /dev/dvb/adapter0/ca0 + * /dev/dvb/adapter0/demux0 + * /dev/dvb/adapter0/dvr0 + * /dev/dvb/adapter0/frontend0 + * /dev/dvb/adapter0/net0 + * /dev/dvb/adapter0/osd0 + * /dev/dvb/adapter0/video0 + + The primary device nodes that we are interested in (at this + stage) for the Avermedia DVB-T are: + + * /dev/dvb/adapter0/dvr0 + * /dev/dvb/adapter0/frontend0 + + The dvr0 device node is used to read the MPEG2 Data Stream and + the frontend0 node is used to tune the frontend tuner module. + + At this stage, it has not been able to ascertain the + functionality of the remaining device nodes in respect of the + Avermedia DVBT. However, full functionality in respect of + tuning, receiving and supplying the MPEG2 data stream is + possible with the currently available versions of the driver. + It may be possible that additional functionality is available + from the card (i.e. viewing the additional analogue inputs + that the card presents), but this has not been tested yet. If + I get around to this, I'll update the document with whatever I + find. + + To power up the card, load the following modules in the + following order: + + * insmod dvb-core.o + * modprobe bttv.o + * insmod bt878.o + * insmod dvb-bt8xx.o + * insmod sp887x.o + + Insertion of these modules into the running kernel will + activate the appropriate DVB device nodes. It is then possible + to start accessing the card with utilities such as scan, tzap, + dvbstream etc. + _________________________________________________________ + +Receiving DVB-T in Australia + + I have no experience of DVB-T in other countries other than + Australia, so I will attempt to explain how it works here in + Melbourne and how this affects the configuration of the DVB-T + card. + + The Digital Broadcasting Australia website has a Reception + locatortool which provides information on transponder channels + and frequencies. My local transmitter happens to be Mount + Dandenong. + + The frequencies broadcast by Mount Dandenong are: + + Table 1. Transponder Frequencies Mount Dandenong, Vic, Aus. + Broadcaster Channel Frequency + ABC VHF 12 226.5 MHz + TEN VHF 11 219.5 MHz + NINE VHF 8 191.625 MHz + SEVEN VHF 6 177.5 MHz + SBS UHF 29 536.5 MHz + + Documentation for DVB/apps/scan indicates that it is necesary + to alter the initial.h file for the local transponders. I + didn't spend too much time trying to work out how scan worked, + so I recompiled a new version of scan for each transponder + listed above and piped the output to a 'channels.conf' file. + It was necessary to alter the initial.h file in the following + way: +static +struct transponder ofdm_probes [] = { + /** + * Australia ABC + */ + { + .type = FE_OFDM, + .param = { + .frequency = 226500000, + .inversion = INVERSION_OFF, + { ofdm: + { + .bandwidth = BANDWIDTH_7_MHZ, + .code_rate_HP = FEC_2_3, + .code_rate_LP = FEC_NONE, + .constellation = QAM_64, + .transmission_mode = TRANSMISSION_MODE_8K, + .guard_interval = GUARD_INTERVAL_1_8, + .hierarchy_information = HIERARCHY_NONE + } + } + } + }, + /** + * Australia TEN + */ + { + .type = FE_OFDM, + .param = { + .frequency = 219500000, + .inversion = INVERSION_OFF, + { ofdm: + { + .bandwidth = BANDWIDTH_7_MHZ, + .code_rate_HP = FEC_2_3, + .code_rate_LP = FEC_NONE, + .constellation = QAM_64, + .transmission_mode = TRANSMISSION_MODE_8K, + .guard_interval = GUARD_INTERVAL_1_8, + .hierarchy_information = HIERARCHY_NONE + } + } + } + }, + /** + * Australia NINE + */ + { + .type = FE_OFDM, + .param = { + .frequency = 191625000, + .inversion = INVERSION_OFF, + { ofdm: + { + .bandwidth = BANDWIDTH_7_MHZ, + .code_rate_HP = FEC_2_3, + .code_rate_LP = FEC_NONE, + .constellation = QAM_64, + .transmission_mode = TRANSMISSION_MODE_8K, + .guard_interval = GUARD_INTERVAL_1_8, + .hierarchy_information = HIERARCHY_NONE + } + } + } + }, + /** + * Australia SEVEN + */ + { + .type = FE_OFDM, + .param = { + .frequency = 177500000, + .inversion = INVERSION_OFF, + { ofdm: + { + .bandwidth = BANDWIDTH_7_MHZ, + .code_rate_HP = FEC_2_3, + .code_rate_LP = FEC_NONE, + .constellation = QAM_64, + .transmission_mode = TRANSMISSION_MODE_8K, + .guard_interval = GUARD_INTERVAL_1_8, + .hierarchy_information = HIERARCHY_NONE + } + } + } + }, + /** + * Australia SBS + */ + { + .type = FE_OFDM, + .param = { + .frequency = 536500000, + .inversion = INVERSION_OFF, + { ofdm: + { + .bandwidth = BANDWIDTH_7_MHZ, + .code_rate_HP = FEC_2_3, + .code_rate_LP = FEC_NONE, + .constellation = QAM_64, + .transmission_mode = TRANSMISSION_MODE_8K, + .guard_interval = GUARD_INTERVAL_1_8, + .hierarchy_information = HIERARCHY_NONE + } + } + } + }, +}; + + +#endif + + The defaults for the transponder frequency and other + modulation parameters were obtained from www.dba.org.au. + + When Scan runs, it will output channels.conf information for + the first successful transponder. In Australia, where each + hannel has it's own transponder, it's necessary to then + comment out the last transponder that was scanned and + recompile scan. This is a dreadful kludge I know, but all I + want with scan is to be able to create a working channels.conf + file. Now I have a working channels.conf file, I don't need + scan any more. + + Here's my channels.conf file for anyone who's interested: +ABC HDTV:226500000:INVERSION_OFF:BANDWIDTH_7_MHZ:FEC_3_4:FEC_3_4:QAM_64 +:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_16:HIERARCHY_NONE:2307:0:560 +ABC TV Melbourne:226500000:INVERSION_OFF:BANDWIDTH_7_MHZ:FEC_3_4:FEC_3_ +4:QAM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_16:HIERARCHY_NONE:512:65 +0:561 +ABC TV 2:226500000:INVERSION_OFF:BANDWIDTH_7_MHZ:FEC_3_4:FEC_3_4:QAM_64 +:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_16:HIERARCHY_NONE:512:650:562 +ABC TV 3:226500000:INVERSION_OFF:BANDWIDTH_7_MHZ:FEC_3_4:FEC_3_4:QAM_64 +:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_16:HIERARCHY_NONE:512:650:563 +ABC TV 4:226500000:INVERSION_OFF:BANDWIDTH_7_MHZ:FEC_3_4:FEC_3_4:QAM_64 +:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_16:HIERARCHY_NONE:512:650:564 +ABC DiG Radio:226500000:INVERSION_OFF:BANDWIDTH_7_MHZ:FEC_3_4:FEC_3_4:Q +AM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_16:HIERARCHY_NONE:0:2311:56 +6 +TEN Digital:219500000:INVERSION_OFF:BANDWIDTH_7_MHZ:FEC_3_4:FEC_1_2:QAM +_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_16:HIERARCHY_NONE:512:650:158 +5 +TEN Digital 1:219500000:INVERSION_OFF:BANDWIDTH_7_MHZ:FEC_3_4:FEC_1_2:Q +AM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_16:HIERARCHY_NONE:512:650:1 +586 +TEN Digital 2:219500000:INVERSION_OFF:BANDWIDTH_7_MHZ:FEC_3_4:FEC_1_2:Q +AM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_16:HIERARCHY_NONE:512:650:1 +587 +TEN Digital 3:219500000:INVERSION_OFF:BANDWIDTH_7_MHZ:FEC_3_4:FEC_1_2:Q +AM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_16:HIERARCHY_NONE:512:650:1 +588 +TEN Digital:219500000:INVERSION_OFF:BANDWIDTH_7_MHZ:FEC_3_4:FEC_1_2:QAM +_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_16:HIERARCHY_NONE:512:650:158 +9 +TEN Digital 4:219500000:INVERSION_OFF:BANDWIDTH_7_MHZ:FEC_3_4:FEC_1_2:Q +AM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_16:HIERARCHY_NONE:512:650:1 +590 +TEN Digital:219500000:INVERSION_OFF:BANDWIDTH_7_MHZ:FEC_3_4:FEC_1_2:QAM +_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_16:HIERARCHY_NONE:512:650:159 +1 +TEN HD:219500000:INVERSION_OFF:BANDWIDTH_7_MHZ:FEC_3_4:FEC_1_2:QAM_64:T +RANSMISSION_MODE_8K:GUARD_INTERVAL_1_16:HIERARCHY_NONE:514:0:1592 +TEN Digital:219500000:INVERSION_OFF:BANDWIDTH_7_MHZ:FEC_3_4:FEC_1_2:QAM +_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_16:HIERARCHY_NONE:512:650:159 +3 +Nine Digital:191625000:INVERSION_OFF:BANDWIDTH_7_MHZ:FEC_3_4:FEC_1_2:QA +M_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_16:HIERARCHY_NONE:513:660:10 +72 +Nine Digital HD:191625000:INVERSION_OFF:BANDWIDTH_7_MHZ:FEC_3_4:FEC_1_2 +:QAM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_16:HIERARCHY_NONE:512:0:1 +073 +Nine Guide:191625000:INVERSION_OFF:BANDWIDTH_7_MHZ:FEC_3_4:FEC_1_2:QAM_ +64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_16:HIERARCHY_NONE:514:670:1074 +7 Digital:177500000:INVERSION_OFF:BANDWIDTH_7_MHZ:FEC_2_3:FEC_2_3:QAM_6 +4:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_8:HIERARCHY_NONE:769:770:1328 +7 Digital 1:177500000:INVERSION_OFF:BANDWIDTH_7_MHZ:FEC_2_3:FEC_2_3:QAM +_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_8:HIERARCHY_NONE:769:770:1329 +7 Digital 2:177500000:INVERSION_OFF:BANDWIDTH_7_MHZ:FEC_2_3:FEC_2_3:QAM +_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_8:HIERARCHY_NONE:769:770:1330 +7 Digital 3:177500000:INVERSION_OFF:BANDWIDTH_7_MHZ:FEC_2_3:FEC_2_3:QAM +_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_8:HIERARCHY_NONE:769:770:1331 +7 HD Digital:177500000:INVERSION_OFF:BANDWIDTH_7_MHZ:FEC_2_3:FEC_2_3:QA +M_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_8:HIERARCHY_NONE:833:834:133 +2 +7 Program Guide:177500000:INVERSION_OFF:BANDWIDTH_7_MHZ:FEC_2_3:FEC_2_3 +:QAM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_8:HIERARCHY_NONE:865:866: +1334 +SBS HD:536500000:INVERSION_OFF:BANDWIDTH_7_MHZ:FEC_2_3:FEC_2_3:QAM_64:T +RANSMISSION_MODE_8K:GUARD_INTERVAL_1_8:HIERARCHY_NONE:102:103:784 +SBS DIGITAL 1:536500000:INVERSION_OFF:BANDWIDTH_7_MHZ:FEC_2_3:FEC_2_3:Q +AM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_8:HIERARCHY_NONE:161:81:785 +SBS DIGITAL 2:536500000:INVERSION_OFF:BANDWIDTH_7_MHZ:FEC_2_3:FEC_2_3:Q +AM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_8:HIERARCHY_NONE:162:83:786 +SBS EPG:536500000:INVERSION_OFF:BANDWIDTH_7_MHZ:FEC_2_3:FEC_2_3:QAM_64: +TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_8:HIERARCHY_NONE:163:85:787 +SBS RADIO 1:536500000:INVERSION_OFF:BANDWIDTH_7_MHZ:FEC_2_3:FEC_2_3:QAM +_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_8:HIERARCHY_NONE:0:201:798 +SBS RADIO 2:536500000:INVERSION_OFF:BANDWIDTH_7_MHZ:FEC_2_3:FEC_2_3:QAM +_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_8:HIERARCHY_NONE:0:202:799 + _________________________________________________________ + +Patching dvb-bt8xx + + The following patch to dvb-bt8xx is required to be applied + against the code prior to file date 5th September 2003. It may + have been applied to CVS by the time this HOWTO gets + published. +Index: dvb-bt8xx.c +=================================================================== +RCS file: /cvs/linuxtv/dvb-kernel/linux/drivers/media/dvb/bt8xx/dvb-bt8 +xx.c,v +retrieving revision 1.10 +diff -u -r1.10 dvb-bt8xx.c +--- dvb-bt8xx.c 15 Jul 2003 09:30:02 -0000 1.10 ++++ dvb-bt8xx.c 6 Sep 2003 02:06:20 -0000 +@@ -302,6 +302,14 @@ + case 0x01010071: + dvb_bt8xx_load(card_nr, "Nebula DigiTV +DVB-T", (1 << 26) | (1 << 14) | (1 << 5)); + break; ++ case 0x07611461: ++ dvb_bt8xx_load(card_nr, "Avermedia DVB- +T", (1 << 26) | (1 << 14) | (1 << 5)); ++ break; ++ default: ++ dprintk("dvb_bt8xx: card_nr found %0X \n",card_nr); ++ dprintk("dvb_bt8xx: card_id found %0X \n",card_id); ++ dprintk("dvb_bt8xx: card_type found %0X \n",card_type) +; ++ break;; + } + } + _________________________________________________________ + +Known Limitations + + At present I can say with confidence that the frontend tunes + via /dev/dvb/adapter{x}/frontend0 and supplies an MPEG2 stream + via /dev/dvb/adapter{x}/dvr0. I have not tested the + functionality of any other part of the card yet. I will do so + over time and update this document. + + There are some limitations in the i2c layer due to a returned + error message inconsistency. Although this generates errors in + dmesg and the system logs, it does not appear to affect the + ability of the frontend to function correctly. + + So far, I have only been able to decode SDTV MPEG2 data + streams from ABC, Channel 7, Channel 9 and SBS. For some + reason, the HDTV and all Channel 10 streams cause xine to die + on me. I am pursuing this particular limitation at the moment. -- cgit v1.2.3 From 79a0122a3496f9276eb29e5e30afd9899473efc1 Mon Sep 17 00:00:00 2001 From: Johannes Stezenbach Date: Mon, 26 Jan 2004 11:59:36 +0000 Subject: rename HOWTO-get-a-new-card-running-avermedia to avermedia.txt --- .../dvb/HOWTO-get-a-new-card-running-avermedia | 449 --------------------- linux/Documentation/dvb/avermedia.txt | 449 +++++++++++++++++++++ 2 files changed, 449 insertions(+), 449 deletions(-) delete mode 100644 linux/Documentation/dvb/HOWTO-get-a-new-card-running-avermedia create mode 100644 linux/Documentation/dvb/avermedia.txt (limited to 'linux/Documentation/dvb') diff --git a/linux/Documentation/dvb/HOWTO-get-a-new-card-running-avermedia b/linux/Documentation/dvb/HOWTO-get-a-new-card-running-avermedia deleted file mode 100644 index 050e72be8..000000000 --- a/linux/Documentation/dvb/HOWTO-get-a-new-card-running-avermedia +++ /dev/null @@ -1,449 +0,0 @@ -Hi all, - -Mark Edwards was so kind to describe the steps he did to get his (at this time -unsupported) Avermedia DVB-T card running. Since this is a nice introduction -to the DVB infrastructure I added the file to the LinuxDVB CVS repository. - -We hope it can help you to get your new unsupported card running or it's just -an interesting lecture if you are new to the DVB stuff and want to know how -things work together. - -The mentioned patches are now part of the LinuxDVB CVS, you don't have to apply -them again. - -have fun, - -Holger - - --------------------------------------------------------------------------------- - - -HOWTO: Get An Avermedia DVB-T working under Linux - ______________________________________________ - - Table of Contents - Assumptions and Introduction - The Avermedia DVB-T - Getting the card going - Receiving DVB-T in Australia - Patching dvb-bt8xx - Known Limitations - -Assumptions and Introduction - - It is assumed that the reader understands the basic structure - of the Linux Kernel DVB drivers and the general principles of - Digital TV. - - One significant difference between Digital TV and Analogue TV - that the unwary (like myself) should consider is that, - although the component structure of budget DVB-T cards are - substantially similar to Analogue TV cards, they function in - substantially different ways. - - The purpose of an Analogue TV is to receive and display an - Analogue Television signal. An Analogue TV signal (otherwise - known as composite video) is an analogue encoding of a - sequence of image frames (25 per second) rasterised using an - interlacing technique. Interlacing takes two fields to - represent one frame. Computers today are at their best when - dealing with digital signals, not analogue signals and a - composite video signal is about as far removed from a digital - data stream as you can get. Therefore, an Analogue TV card for - a PC has the following purpose: - - * Tune the receiver to receive a broadcast signal - * demodulate the broadcast signal - * demultiplex the analogue video signal and analogue audio - signal (note some countries employ a digital audio signal - embedded within the modulated composite analogue signal - - NICAM.) - * digitize the analogue video signal and make the resulting - datastream available to the data bus. - - The digital datastream from an Analogue TV card is generated - by circuitry on the card and is often presented uncompressed. - For a PAL TV signal encoded at a resolution of 720x576 24-bit - color pixels over 25 frames per second - a fair amount of data - is generated and must be proceesed by the PC before it can be - displayed on the video monitor screen. Some Analogue TV cards - for PC's have onboard MPEG2 encoders which permit the raw - digital data stream to be presented to the PC in an encoded - and compressed form - similar to the form that is used in - Digital TV. - - The purpose of a simple budget digital TV card (DVB-T,C or S) - is to simply: - - * Tune the received to receive a broadcast signal. - * Extract the encoded digital datastream from the broadcast - signal. - * Make the encoded digital datastream (MPEG2) available to - the data bus. - - The significant difference between the two is that the tuner - on the analogue TV card spits out an Analogue signal, whereas - the tuner on the digital TV card spits out a compressed - encoded digital datastream. As the signal is already - digitised, it is trivial to pass this datastream to the PC - databus with minimal additional processing and then extract - the digital video and audio datastreams passing them to the - appropriate software or hardware for decoding and viewing. - _________________________________________________________ - -The Avermedia DVB-T - - The Avermedia DVB-T is a budget PCI DVB card. It has 3 inputs: - - * RF Tuner Input - * Composite Video Input (RCA Jack) - * SVIDEO Input (Mini-DIN) - - The RF Tuner Input is the input to the tuner module of the - card. The Tuner is otherwise known as the "Frontend" . The - Frontend of the Avermedia DVB-T is a Microtune 7202D. A timely - post to the linux-dvb mailing list ascertained that the - Microtune 7202D is supported by the sp887x driver which is - found in the dvb-hw CVS module. - - The DVB-T card is based around the BT878 chip which is a very - common multimedia bridge and often found on Analogue TV cards. - There is no on-board MPEG2 decoder, which means that all MPEG2 - decoding must be done in software. - _________________________________________________________ - -Getting the card going - - In order to fire up the card, it is necessary to load a number - of modules from the DVB driver set. Prior to this it will have - been necessary to download these drivers from the linuxtv CVS - server and compile them successfully. - - The Device Driver API for DVB under Linux exposes the - following device files in the /dev tree: - - * /dev/dvb/adapter0/audio0 - * /dev/dvb/adapter0/ca0 - * /dev/dvb/adapter0/demux0 - * /dev/dvb/adapter0/dvr0 - * /dev/dvb/adapter0/frontend0 - * /dev/dvb/adapter0/net0 - * /dev/dvb/adapter0/osd0 - * /dev/dvb/adapter0/video0 - - The primary device nodes that we are interested in (at this - stage) for the Avermedia DVB-T are: - - * /dev/dvb/adapter0/dvr0 - * /dev/dvb/adapter0/frontend0 - - The dvr0 device node is used to read the MPEG2 Data Stream and - the frontend0 node is used to tune the frontend tuner module. - - At this stage, it has not been able to ascertain the - functionality of the remaining device nodes in respect of the - Avermedia DVBT. However, full functionality in respect of - tuning, receiving and supplying the MPEG2 data stream is - possible with the currently available versions of the driver. - It may be possible that additional functionality is available - from the card (i.e. viewing the additional analogue inputs - that the card presents), but this has not been tested yet. If - I get around to this, I'll update the document with whatever I - find. - - To power up the card, load the following modules in the - following order: - - * insmod dvb-core.o - * modprobe bttv.o - * insmod bt878.o - * insmod dvb-bt8xx.o - * insmod sp887x.o - - Insertion of these modules into the running kernel will - activate the appropriate DVB device nodes. It is then possible - to start accessing the card with utilities such as scan, tzap, - dvbstream etc. - _________________________________________________________ - -Receiving DVB-T in Australia - - I have no experience of DVB-T in other countries other than - Australia, so I will attempt to explain how it works here in - Melbourne and how this affects the configuration of the DVB-T - card. - - The Digital Broadcasting Australia website has a Reception - locatortool which provides information on transponder channels - and frequencies. My local transmitter happens to be Mount - Dandenong. - - The frequencies broadcast by Mount Dandenong are: - - Table 1. Transponder Frequencies Mount Dandenong, Vic, Aus. - Broadcaster Channel Frequency - ABC VHF 12 226.5 MHz - TEN VHF 11 219.5 MHz - NINE VHF 8 191.625 MHz - SEVEN VHF 6 177.5 MHz - SBS UHF 29 536.5 MHz - - Documentation for DVB/apps/scan indicates that it is necesary - to alter the initial.h file for the local transponders. I - didn't spend too much time trying to work out how scan worked, - so I recompiled a new version of scan for each transponder - listed above and piped the output to a 'channels.conf' file. - It was necessary to alter the initial.h file in the following - way: -static -struct transponder ofdm_probes [] = { - /** - * Australia ABC - */ - { - .type = FE_OFDM, - .param = { - .frequency = 226500000, - .inversion = INVERSION_OFF, - { ofdm: - { - .bandwidth = BANDWIDTH_7_MHZ, - .code_rate_HP = FEC_2_3, - .code_rate_LP = FEC_NONE, - .constellation = QAM_64, - .transmission_mode = TRANSMISSION_MODE_8K, - .guard_interval = GUARD_INTERVAL_1_8, - .hierarchy_information = HIERARCHY_NONE - } - } - } - }, - /** - * Australia TEN - */ - { - .type = FE_OFDM, - .param = { - .frequency = 219500000, - .inversion = INVERSION_OFF, - { ofdm: - { - .bandwidth = BANDWIDTH_7_MHZ, - .code_rate_HP = FEC_2_3, - .code_rate_LP = FEC_NONE, - .constellation = QAM_64, - .transmission_mode = TRANSMISSION_MODE_8K, - .guard_interval = GUARD_INTERVAL_1_8, - .hierarchy_information = HIERARCHY_NONE - } - } - } - }, - /** - * Australia NINE - */ - { - .type = FE_OFDM, - .param = { - .frequency = 191625000, - .inversion = INVERSION_OFF, - { ofdm: - { - .bandwidth = BANDWIDTH_7_MHZ, - .code_rate_HP = FEC_2_3, - .code_rate_LP = FEC_NONE, - .constellation = QAM_64, - .transmission_mode = TRANSMISSION_MODE_8K, - .guard_interval = GUARD_INTERVAL_1_8, - .hierarchy_information = HIERARCHY_NONE - } - } - } - }, - /** - * Australia SEVEN - */ - { - .type = FE_OFDM, - .param = { - .frequency = 177500000, - .inversion = INVERSION_OFF, - { ofdm: - { - .bandwidth = BANDWIDTH_7_MHZ, - .code_rate_HP = FEC_2_3, - .code_rate_LP = FEC_NONE, - .constellation = QAM_64, - .transmission_mode = TRANSMISSION_MODE_8K, - .guard_interval = GUARD_INTERVAL_1_8, - .hierarchy_information = HIERARCHY_NONE - } - } - } - }, - /** - * Australia SBS - */ - { - .type = FE_OFDM, - .param = { - .frequency = 536500000, - .inversion = INVERSION_OFF, - { ofdm: - { - .bandwidth = BANDWIDTH_7_MHZ, - .code_rate_HP = FEC_2_3, - .code_rate_LP = FEC_NONE, - .constellation = QAM_64, - .transmission_mode = TRANSMISSION_MODE_8K, - .guard_interval = GUARD_INTERVAL_1_8, - .hierarchy_information = HIERARCHY_NONE - } - } - } - }, -}; - - -#endif - - The defaults for the transponder frequency and other - modulation parameters were obtained from www.dba.org.au. - - When Scan runs, it will output channels.conf information for - the first successful transponder. In Australia, where each - hannel has it's own transponder, it's necessary to then - comment out the last transponder that was scanned and - recompile scan. This is a dreadful kludge I know, but all I - want with scan is to be able to create a working channels.conf - file. Now I have a working channels.conf file, I don't need - scan any more. - - Here's my channels.conf file for anyone who's interested: -ABC HDTV:226500000:INVERSION_OFF:BANDWIDTH_7_MHZ:FEC_3_4:FEC_3_4:QAM_64 -:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_16:HIERARCHY_NONE:2307:0:560 -ABC TV Melbourne:226500000:INVERSION_OFF:BANDWIDTH_7_MHZ:FEC_3_4:FEC_3_ -4:QAM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_16:HIERARCHY_NONE:512:65 -0:561 -ABC TV 2:226500000:INVERSION_OFF:BANDWIDTH_7_MHZ:FEC_3_4:FEC_3_4:QAM_64 -:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_16:HIERARCHY_NONE:512:650:562 -ABC TV 3:226500000:INVERSION_OFF:BANDWIDTH_7_MHZ:FEC_3_4:FEC_3_4:QAM_64 -:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_16:HIERARCHY_NONE:512:650:563 -ABC TV 4:226500000:INVERSION_OFF:BANDWIDTH_7_MHZ:FEC_3_4:FEC_3_4:QAM_64 -:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_16:HIERARCHY_NONE:512:650:564 -ABC DiG Radio:226500000:INVERSION_OFF:BANDWIDTH_7_MHZ:FEC_3_4:FEC_3_4:Q -AM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_16:HIERARCHY_NONE:0:2311:56 -6 -TEN Digital:219500000:INVERSION_OFF:BANDWIDTH_7_MHZ:FEC_3_4:FEC_1_2:QAM -_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_16:HIERARCHY_NONE:512:650:158 -5 -TEN Digital 1:219500000:INVERSION_OFF:BANDWIDTH_7_MHZ:FEC_3_4:FEC_1_2:Q -AM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_16:HIERARCHY_NONE:512:650:1 -586 -TEN Digital 2:219500000:INVERSION_OFF:BANDWIDTH_7_MHZ:FEC_3_4:FEC_1_2:Q -AM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_16:HIERARCHY_NONE:512:650:1 -587 -TEN Digital 3:219500000:INVERSION_OFF:BANDWIDTH_7_MHZ:FEC_3_4:FEC_1_2:Q -AM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_16:HIERARCHY_NONE:512:650:1 -588 -TEN Digital:219500000:INVERSION_OFF:BANDWIDTH_7_MHZ:FEC_3_4:FEC_1_2:QAM -_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_16:HIERARCHY_NONE:512:650:158 -9 -TEN Digital 4:219500000:INVERSION_OFF:BANDWIDTH_7_MHZ:FEC_3_4:FEC_1_2:Q -AM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_16:HIERARCHY_NONE:512:650:1 -590 -TEN Digital:219500000:INVERSION_OFF:BANDWIDTH_7_MHZ:FEC_3_4:FEC_1_2:QAM -_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_16:HIERARCHY_NONE:512:650:159 -1 -TEN HD:219500000:INVERSION_OFF:BANDWIDTH_7_MHZ:FEC_3_4:FEC_1_2:QAM_64:T -RANSMISSION_MODE_8K:GUARD_INTERVAL_1_16:HIERARCHY_NONE:514:0:1592 -TEN Digital:219500000:INVERSION_OFF:BANDWIDTH_7_MHZ:FEC_3_4:FEC_1_2:QAM -_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_16:HIERARCHY_NONE:512:650:159 -3 -Nine Digital:191625000:INVERSION_OFF:BANDWIDTH_7_MHZ:FEC_3_4:FEC_1_2:QA -M_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_16:HIERARCHY_NONE:513:660:10 -72 -Nine Digital HD:191625000:INVERSION_OFF:BANDWIDTH_7_MHZ:FEC_3_4:FEC_1_2 -:QAM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_16:HIERARCHY_NONE:512:0:1 -073 -Nine Guide:191625000:INVERSION_OFF:BANDWIDTH_7_MHZ:FEC_3_4:FEC_1_2:QAM_ -64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_16:HIERARCHY_NONE:514:670:1074 -7 Digital:177500000:INVERSION_OFF:BANDWIDTH_7_MHZ:FEC_2_3:FEC_2_3:QAM_6 -4:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_8:HIERARCHY_NONE:769:770:1328 -7 Digital 1:177500000:INVERSION_OFF:BANDWIDTH_7_MHZ:FEC_2_3:FEC_2_3:QAM -_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_8:HIERARCHY_NONE:769:770:1329 -7 Digital 2:177500000:INVERSION_OFF:BANDWIDTH_7_MHZ:FEC_2_3:FEC_2_3:QAM -_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_8:HIERARCHY_NONE:769:770:1330 -7 Digital 3:177500000:INVERSION_OFF:BANDWIDTH_7_MHZ:FEC_2_3:FEC_2_3:QAM -_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_8:HIERARCHY_NONE:769:770:1331 -7 HD Digital:177500000:INVERSION_OFF:BANDWIDTH_7_MHZ:FEC_2_3:FEC_2_3:QA -M_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_8:HIERARCHY_NONE:833:834:133 -2 -7 Program Guide:177500000:INVERSION_OFF:BANDWIDTH_7_MHZ:FEC_2_3:FEC_2_3 -:QAM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_8:HIERARCHY_NONE:865:866: -1334 -SBS HD:536500000:INVERSION_OFF:BANDWIDTH_7_MHZ:FEC_2_3:FEC_2_3:QAM_64:T -RANSMISSION_MODE_8K:GUARD_INTERVAL_1_8:HIERARCHY_NONE:102:103:784 -SBS DIGITAL 1:536500000:INVERSION_OFF:BANDWIDTH_7_MHZ:FEC_2_3:FEC_2_3:Q -AM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_8:HIERARCHY_NONE:161:81:785 -SBS DIGITAL 2:536500000:INVERSION_OFF:BANDWIDTH_7_MHZ:FEC_2_3:FEC_2_3:Q -AM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_8:HIERARCHY_NONE:162:83:786 -SBS EPG:536500000:INVERSION_OFF:BANDWIDTH_7_MHZ:FEC_2_3:FEC_2_3:QAM_64: -TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_8:HIERARCHY_NONE:163:85:787 -SBS RADIO 1:536500000:INVERSION_OFF:BANDWIDTH_7_MHZ:FEC_2_3:FEC_2_3:QAM -_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_8:HIERARCHY_NONE:0:201:798 -SBS RADIO 2:536500000:INVERSION_OFF:BANDWIDTH_7_MHZ:FEC_2_3:FEC_2_3:QAM -_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_8:HIERARCHY_NONE:0:202:799 - _________________________________________________________ - -Patching dvb-bt8xx - - The following patch to dvb-bt8xx is required to be applied - against the code prior to file date 5th September 2003. It may - have been applied to CVS by the time this HOWTO gets - published. -Index: dvb-bt8xx.c -=================================================================== -RCS file: /cvs/linuxtv/dvb-kernel/linux/drivers/media/dvb/bt8xx/dvb-bt8 -xx.c,v -retrieving revision 1.10 -diff -u -r1.10 dvb-bt8xx.c ---- dvb-bt8xx.c 15 Jul 2003 09:30:02 -0000 1.10 -+++ dvb-bt8xx.c 6 Sep 2003 02:06:20 -0000 -@@ -302,6 +302,14 @@ - case 0x01010071: - dvb_bt8xx_load(card_nr, "Nebula DigiTV -DVB-T", (1 << 26) | (1 << 14) | (1 << 5)); - break; -+ case 0x07611461: -+ dvb_bt8xx_load(card_nr, "Avermedia DVB- -T", (1 << 26) | (1 << 14) | (1 << 5)); -+ break; -+ default: -+ dprintk("dvb_bt8xx: card_nr found %0X \n",card_nr); -+ dprintk("dvb_bt8xx: card_id found %0X \n",card_id); -+ dprintk("dvb_bt8xx: card_type found %0X \n",card_type) -; -+ break;; - } - } - _________________________________________________________ - -Known Limitations - - At present I can say with confidence that the frontend tunes - via /dev/dvb/adapter{x}/frontend0 and supplies an MPEG2 stream - via /dev/dvb/adapter{x}/dvr0. I have not tested the - functionality of any other part of the card yet. I will do so - over time and update this document. - - There are some limitations in the i2c layer due to a returned - error message inconsistency. Although this generates errors in - dmesg and the system logs, it does not appear to affect the - ability of the frontend to function correctly. - - So far, I have only been able to decode SDTV MPEG2 data - streams from ABC, Channel 7, Channel 9 and SBS. For some - reason, the HDTV and all Channel 10 streams cause xine to die - on me. I am pursuing this particular limitation at the moment. diff --git a/linux/Documentation/dvb/avermedia.txt b/linux/Documentation/dvb/avermedia.txt new file mode 100644 index 000000000..050e72be8 --- /dev/null +++ b/linux/Documentation/dvb/avermedia.txt @@ -0,0 +1,449 @@ +Hi all, + +Mark Edwards was so kind to describe the steps he did to get his (at this time +unsupported) Avermedia DVB-T card running. Since this is a nice introduction +to the DVB infrastructure I added the file to the LinuxDVB CVS repository. + +We hope it can help you to get your new unsupported card running or it's just +an interesting lecture if you are new to the DVB stuff and want to know how +things work together. + +The mentioned patches are now part of the LinuxDVB CVS, you don't have to apply +them again. + +have fun, + +Holger + + +-------------------------------------------------------------------------------- + + +HOWTO: Get An Avermedia DVB-T working under Linux + ______________________________________________ + + Table of Contents + Assumptions and Introduction + The Avermedia DVB-T + Getting the card going + Receiving DVB-T in Australia + Patching dvb-bt8xx + Known Limitations + +Assumptions and Introduction + + It is assumed that the reader understands the basic structure + of the Linux Kernel DVB drivers and the general principles of + Digital TV. + + One significant difference between Digital TV and Analogue TV + that the unwary (like myself) should consider is that, + although the component structure of budget DVB-T cards are + substantially similar to Analogue TV cards, they function in + substantially different ways. + + The purpose of an Analogue TV is to receive and display an + Analogue Television signal. An Analogue TV signal (otherwise + known as composite video) is an analogue encoding of a + sequence of image frames (25 per second) rasterised using an + interlacing technique. Interlacing takes two fields to + represent one frame. Computers today are at their best when + dealing with digital signals, not analogue signals and a + composite video signal is about as far removed from a digital + data stream as you can get. Therefore, an Analogue TV card for + a PC has the following purpose: + + * Tune the receiver to receive a broadcast signal + * demodulate the broadcast signal + * demultiplex the analogue video signal and analogue audio + signal (note some countries employ a digital audio signal + embedded within the modulated composite analogue signal - + NICAM.) + * digitize the analogue video signal and make the resulting + datastream available to the data bus. + + The digital datastream from an Analogue TV card is generated + by circuitry on the card and is often presented uncompressed. + For a PAL TV signal encoded at a resolution of 720x576 24-bit + color pixels over 25 frames per second - a fair amount of data + is generated and must be proceesed by the PC before it can be + displayed on the video monitor screen. Some Analogue TV cards + for PC's have onboard MPEG2 encoders which permit the raw + digital data stream to be presented to the PC in an encoded + and compressed form - similar to the form that is used in + Digital TV. + + The purpose of a simple budget digital TV card (DVB-T,C or S) + is to simply: + + * Tune the received to receive a broadcast signal. + * Extract the encoded digital datastream from the broadcast + signal. + * Make the encoded digital datastream (MPEG2) available to + the data bus. + + The significant difference between the two is that the tuner + on the analogue TV card spits out an Analogue signal, whereas + the tuner on the digital TV card spits out a compressed + encoded digital datastream. As the signal is already + digitised, it is trivial to pass this datastream to the PC + databus with minimal additional processing and then extract + the digital video and audio datastreams passing them to the + appropriate software or hardware for decoding and viewing. + _________________________________________________________ + +The Avermedia DVB-T + + The Avermedia DVB-T is a budget PCI DVB card. It has 3 inputs: + + * RF Tuner Input + * Composite Video Input (RCA Jack) + * SVIDEO Input (Mini-DIN) + + The RF Tuner Input is the input to the tuner module of the + card. The Tuner is otherwise known as the "Frontend" . The + Frontend of the Avermedia DVB-T is a Microtune 7202D. A timely + post to the linux-dvb mailing list ascertained that the + Microtune 7202D is supported by the sp887x driver which is + found in the dvb-hw CVS module. + + The DVB-T card is based around the BT878 chip which is a very + common multimedia bridge and often found on Analogue TV cards. + There is no on-board MPEG2 decoder, which means that all MPEG2 + decoding must be done in software. + _________________________________________________________ + +Getting the card going + + In order to fire up the card, it is necessary to load a number + of modules from the DVB driver set. Prior to this it will have + been necessary to download these drivers from the linuxtv CVS + server and compile them successfully. + + The Device Driver API for DVB under Linux exposes the + following device files in the /dev tree: + + * /dev/dvb/adapter0/audio0 + * /dev/dvb/adapter0/ca0 + * /dev/dvb/adapter0/demux0 + * /dev/dvb/adapter0/dvr0 + * /dev/dvb/adapter0/frontend0 + * /dev/dvb/adapter0/net0 + * /dev/dvb/adapter0/osd0 + * /dev/dvb/adapter0/video0 + + The primary device nodes that we are interested in (at this + stage) for the Avermedia DVB-T are: + + * /dev/dvb/adapter0/dvr0 + * /dev/dvb/adapter0/frontend0 + + The dvr0 device node is used to read the MPEG2 Data Stream and + the frontend0 node is used to tune the frontend tuner module. + + At this stage, it has not been able to ascertain the + functionality of the remaining device nodes in respect of the + Avermedia DVBT. However, full functionality in respect of + tuning, receiving and supplying the MPEG2 data stream is + possible with the currently available versions of the driver. + It may be possible that additional functionality is available + from the card (i.e. viewing the additional analogue inputs + that the card presents), but this has not been tested yet. If + I get around to this, I'll update the document with whatever I + find. + + To power up the card, load the following modules in the + following order: + + * insmod dvb-core.o + * modprobe bttv.o + * insmod bt878.o + * insmod dvb-bt8xx.o + * insmod sp887x.o + + Insertion of these modules into the running kernel will + activate the appropriate DVB device nodes. It is then possible + to start accessing the card with utilities such as scan, tzap, + dvbstream etc. + _________________________________________________________ + +Receiving DVB-T in Australia + + I have no experience of DVB-T in other countries other than + Australia, so I will attempt to explain how it works here in + Melbourne and how this affects the configuration of the DVB-T + card. + + The Digital Broadcasting Australia website has a Reception + locatortool which provides information on transponder channels + and frequencies. My local transmitter happens to be Mount + Dandenong. + + The frequencies broadcast by Mount Dandenong are: + + Table 1. Transponder Frequencies Mount Dandenong, Vic, Aus. + Broadcaster Channel Frequency + ABC VHF 12 226.5 MHz + TEN VHF 11 219.5 MHz + NINE VHF 8 191.625 MHz + SEVEN VHF 6 177.5 MHz + SBS UHF 29 536.5 MHz + + Documentation for DVB/apps/scan indicates that it is necesary + to alter the initial.h file for the local transponders. I + didn't spend too much time trying to work out how scan worked, + so I recompiled a new version of scan for each transponder + listed above and piped the output to a 'channels.conf' file. + It was necessary to alter the initial.h file in the following + way: +static +struct transponder ofdm_probes [] = { + /** + * Australia ABC + */ + { + .type = FE_OFDM, + .param = { + .frequency = 226500000, + .inversion = INVERSION_OFF, + { ofdm: + { + .bandwidth = BANDWIDTH_7_MHZ, + .code_rate_HP = FEC_2_3, + .code_rate_LP = FEC_NONE, + .constellation = QAM_64, + .transmission_mode = TRANSMISSION_MODE_8K, + .guard_interval = GUARD_INTERVAL_1_8, + .hierarchy_information = HIERARCHY_NONE + } + } + } + }, + /** + * Australia TEN + */ + { + .type = FE_OFDM, + .param = { + .frequency = 219500000, + .inversion = INVERSION_OFF, + { ofdm: + { + .bandwidth = BANDWIDTH_7_MHZ, + .code_rate_HP = FEC_2_3, + .code_rate_LP = FEC_NONE, + .constellation = QAM_64, + .transmission_mode = TRANSMISSION_MODE_8K, + .guard_interval = GUARD_INTERVAL_1_8, + .hierarchy_information = HIERARCHY_NONE + } + } + } + }, + /** + * Australia NINE + */ + { + .type = FE_OFDM, + .param = { + .frequency = 191625000, + .inversion = INVERSION_OFF, + { ofdm: + { + .bandwidth = BANDWIDTH_7_MHZ, + .code_rate_HP = FEC_2_3, + .code_rate_LP = FEC_NONE, + .constellation = QAM_64, + .transmission_mode = TRANSMISSION_MODE_8K, + .guard_interval = GUARD_INTERVAL_1_8, + .hierarchy_information = HIERARCHY_NONE + } + } + } + }, + /** + * Australia SEVEN + */ + { + .type = FE_OFDM, + .param = { + .frequency = 177500000, + .inversion = INVERSION_OFF, + { ofdm: + { + .bandwidth = BANDWIDTH_7_MHZ, + .code_rate_HP = FEC_2_3, + .code_rate_LP = FEC_NONE, + .constellation = QAM_64, + .transmission_mode = TRANSMISSION_MODE_8K, + .guard_interval = GUARD_INTERVAL_1_8, + .hierarchy_information = HIERARCHY_NONE + } + } + } + }, + /** + * Australia SBS + */ + { + .type = FE_OFDM, + .param = { + .frequency = 536500000, + .inversion = INVERSION_OFF, + { ofdm: + { + .bandwidth = BANDWIDTH_7_MHZ, + .code_rate_HP = FEC_2_3, + .code_rate_LP = FEC_NONE, + .constellation = QAM_64, + .transmission_mode = TRANSMISSION_MODE_8K, + .guard_interval = GUARD_INTERVAL_1_8, + .hierarchy_information = HIERARCHY_NONE + } + } + } + }, +}; + + +#endif + + The defaults for the transponder frequency and other + modulation parameters were obtained from www.dba.org.au. + + When Scan runs, it will output channels.conf information for + the first successful transponder. In Australia, where each + hannel has it's own transponder, it's necessary to then + comment out the last transponder that was scanned and + recompile scan. This is a dreadful kludge I know, but all I + want with scan is to be able to create a working channels.conf + file. Now I have a working channels.conf file, I don't need + scan any more. + + Here's my channels.conf file for anyone who's interested: +ABC HDTV:226500000:INVERSION_OFF:BANDWIDTH_7_MHZ:FEC_3_4:FEC_3_4:QAM_64 +:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_16:HIERARCHY_NONE:2307:0:560 +ABC TV Melbourne:226500000:INVERSION_OFF:BANDWIDTH_7_MHZ:FEC_3_4:FEC_3_ +4:QAM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_16:HIERARCHY_NONE:512:65 +0:561 +ABC TV 2:226500000:INVERSION_OFF:BANDWIDTH_7_MHZ:FEC_3_4:FEC_3_4:QAM_64 +:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_16:HIERARCHY_NONE:512:650:562 +ABC TV 3:226500000:INVERSION_OFF:BANDWIDTH_7_MHZ:FEC_3_4:FEC_3_4:QAM_64 +:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_16:HIERARCHY_NONE:512:650:563 +ABC TV 4:226500000:INVERSION_OFF:BANDWIDTH_7_MHZ:FEC_3_4:FEC_3_4:QAM_64 +:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_16:HIERARCHY_NONE:512:650:564 +ABC DiG Radio:226500000:INVERSION_OFF:BANDWIDTH_7_MHZ:FEC_3_4:FEC_3_4:Q +AM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_16:HIERARCHY_NONE:0:2311:56 +6 +TEN Digital:219500000:INVERSION_OFF:BANDWIDTH_7_MHZ:FEC_3_4:FEC_1_2:QAM +_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_16:HIERARCHY_NONE:512:650:158 +5 +TEN Digital 1:219500000:INVERSION_OFF:BANDWIDTH_7_MHZ:FEC_3_4:FEC_1_2:Q +AM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_16:HIERARCHY_NONE:512:650:1 +586 +TEN Digital 2:219500000:INVERSION_OFF:BANDWIDTH_7_MHZ:FEC_3_4:FEC_1_2:Q +AM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_16:HIERARCHY_NONE:512:650:1 +587 +TEN Digital 3:219500000:INVERSION_OFF:BANDWIDTH_7_MHZ:FEC_3_4:FEC_1_2:Q +AM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_16:HIERARCHY_NONE:512:650:1 +588 +TEN Digital:219500000:INVERSION_OFF:BANDWIDTH_7_MHZ:FEC_3_4:FEC_1_2:QAM +_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_16:HIERARCHY_NONE:512:650:158 +9 +TEN Digital 4:219500000:INVERSION_OFF:BANDWIDTH_7_MHZ:FEC_3_4:FEC_1_2:Q +AM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_16:HIERARCHY_NONE:512:650:1 +590 +TEN Digital:219500000:INVERSION_OFF:BANDWIDTH_7_MHZ:FEC_3_4:FEC_1_2:QAM +_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_16:HIERARCHY_NONE:512:650:159 +1 +TEN HD:219500000:INVERSION_OFF:BANDWIDTH_7_MHZ:FEC_3_4:FEC_1_2:QAM_64:T +RANSMISSION_MODE_8K:GUARD_INTERVAL_1_16:HIERARCHY_NONE:514:0:1592 +TEN Digital:219500000:INVERSION_OFF:BANDWIDTH_7_MHZ:FEC_3_4:FEC_1_2:QAM +_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_16:HIERARCHY_NONE:512:650:159 +3 +Nine Digital:191625000:INVERSION_OFF:BANDWIDTH_7_MHZ:FEC_3_4:FEC_1_2:QA +M_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_16:HIERARCHY_NONE:513:660:10 +72 +Nine Digital HD:191625000:INVERSION_OFF:BANDWIDTH_7_MHZ:FEC_3_4:FEC_1_2 +:QAM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_16:HIERARCHY_NONE:512:0:1 +073 +Nine Guide:191625000:INVERSION_OFF:BANDWIDTH_7_MHZ:FEC_3_4:FEC_1_2:QAM_ +64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_16:HIERARCHY_NONE:514:670:1074 +7 Digital:177500000:INVERSION_OFF:BANDWIDTH_7_MHZ:FEC_2_3:FEC_2_3:QAM_6 +4:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_8:HIERARCHY_NONE:769:770:1328 +7 Digital 1:177500000:INVERSION_OFF:BANDWIDTH_7_MHZ:FEC_2_3:FEC_2_3:QAM +_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_8:HIERARCHY_NONE:769:770:1329 +7 Digital 2:177500000:INVERSION_OFF:BANDWIDTH_7_MHZ:FEC_2_3:FEC_2_3:QAM +_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_8:HIERARCHY_NONE:769:770:1330 +7 Digital 3:177500000:INVERSION_OFF:BANDWIDTH_7_MHZ:FEC_2_3:FEC_2_3:QAM +_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_8:HIERARCHY_NONE:769:770:1331 +7 HD Digital:177500000:INVERSION_OFF:BANDWIDTH_7_MHZ:FEC_2_3:FEC_2_3:QA +M_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_8:HIERARCHY_NONE:833:834:133 +2 +7 Program Guide:177500000:INVERSION_OFF:BANDWIDTH_7_MHZ:FEC_2_3:FEC_2_3 +:QAM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_8:HIERARCHY_NONE:865:866: +1334 +SBS HD:536500000:INVERSION_OFF:BANDWIDTH_7_MHZ:FEC_2_3:FEC_2_3:QAM_64:T +RANSMISSION_MODE_8K:GUARD_INTERVAL_1_8:HIERARCHY_NONE:102:103:784 +SBS DIGITAL 1:536500000:INVERSION_OFF:BANDWIDTH_7_MHZ:FEC_2_3:FEC_2_3:Q +AM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_8:HIERARCHY_NONE:161:81:785 +SBS DIGITAL 2:536500000:INVERSION_OFF:BANDWIDTH_7_MHZ:FEC_2_3:FEC_2_3:Q +AM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_8:HIERARCHY_NONE:162:83:786 +SBS EPG:536500000:INVERSION_OFF:BANDWIDTH_7_MHZ:FEC_2_3:FEC_2_3:QAM_64: +TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_8:HIERARCHY_NONE:163:85:787 +SBS RADIO 1:536500000:INVERSION_OFF:BANDWIDTH_7_MHZ:FEC_2_3:FEC_2_3:QAM +_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_8:HIERARCHY_NONE:0:201:798 +SBS RADIO 2:536500000:INVERSION_OFF:BANDWIDTH_7_MHZ:FEC_2_3:FEC_2_3:QAM +_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_8:HIERARCHY_NONE:0:202:799 + _________________________________________________________ + +Patching dvb-bt8xx + + The following patch to dvb-bt8xx is required to be applied + against the code prior to file date 5th September 2003. It may + have been applied to CVS by the time this HOWTO gets + published. +Index: dvb-bt8xx.c +=================================================================== +RCS file: /cvs/linuxtv/dvb-kernel/linux/drivers/media/dvb/bt8xx/dvb-bt8 +xx.c,v +retrieving revision 1.10 +diff -u -r1.10 dvb-bt8xx.c +--- dvb-bt8xx.c 15 Jul 2003 09:30:02 -0000 1.10 ++++ dvb-bt8xx.c 6 Sep 2003 02:06:20 -0000 +@@ -302,6 +302,14 @@ + case 0x01010071: + dvb_bt8xx_load(card_nr, "Nebula DigiTV +DVB-T", (1 << 26) | (1 << 14) | (1 << 5)); + break; ++ case 0x07611461: ++ dvb_bt8xx_load(card_nr, "Avermedia DVB- +T", (1 << 26) | (1 << 14) | (1 << 5)); ++ break; ++ default: ++ dprintk("dvb_bt8xx: card_nr found %0X \n",card_nr); ++ dprintk("dvb_bt8xx: card_id found %0X \n",card_id); ++ dprintk("dvb_bt8xx: card_type found %0X \n",card_type) +; ++ break;; + } + } + _________________________________________________________ + +Known Limitations + + At present I can say with confidence that the frontend tunes + via /dev/dvb/adapter{x}/frontend0 and supplies an MPEG2 stream + via /dev/dvb/adapter{x}/dvr0. I have not tested the + functionality of any other part of the card yet. I will do so + over time and update this document. + + There are some limitations in the i2c layer due to a returned + error message inconsistency. Although this generates errors in + dmesg and the system logs, it does not appear to affect the + ability of the frontend to function correctly. + + So far, I have only been able to decode SDTV MPEG2 data + streams from ABC, Channel 7, Channel 9 and SBS. For some + reason, the HDTV and all Channel 10 streams cause xine to die + on me. I am pursuing this particular limitation at the moment. -- cgit v1.2.3 From bbf7250b0097d6047027ed8dcea5b1dbc8c2ec03 Mon Sep 17 00:00:00 2001 From: Michael Hunold Date: Thu, 29 Jan 2004 10:37:46 +0000 Subject: - strip README-2.6 to the bare minimum. Move interesing stuff to faq.txt - add alps_bsrv2 => ves1x93 transition to main README - minor cleanup in README --- linux/Documentation/dvb/faq.txt | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) (limited to 'linux/Documentation/dvb') diff --git a/linux/Documentation/dvb/faq.txt b/linux/Documentation/dvb/faq.txt index 28e63ec30..bc8b5990b 100644 --- a/linux/Documentation/dvb/faq.txt +++ b/linux/Documentation/dvb/faq.txt @@ -106,4 +106,33 @@ Some very frequently asked questions about linuxtv-dvb lookup" is disabled: $ "echo 0 > /proc/sys/net/ipv4/conf/dvb0/rp_filter" +6. What the hell are all those modules that need to be loaded? + + For a dvb-ttpci av7110 based full-featured card the following + modules are loaded: + + - videodev: Video4Linux core module. This is the base module that + gives you access to the "analog" tv picture of the av7110 mpeg2 + decoder. + + - v4l2-common: common functions for Video4Linux-2 drivers + + - v4l1-compat: backward compatiblity layer for Video4Linux-1 legacy + applications + + - dvb-core: DVB core module. This provides you with the + /dev/dvb/adapter entries + + - saa7146: SAA7146 core driver. This is need to access any SAA7146 + based card in your system. + + - saa7146_vv: SAA7146 video and vbi functions. These are only needed + for full-featured cards. + + - video-buf: capture helper module for the saa7146_vv driver. This + one is responsible to handle capture buffers. + + - dvb-ttpci: The main driver for AV7110 based, full-featued + DVB-S/C/T cards + eof -- cgit v1.2.3 From e505cd85c749e55982171f622fa2fb134231fd63 Mon Sep 17 00:00:00 2001 From: Holger Waechtler Date: Thu, 29 Jan 2004 21:22:08 +0000 Subject: update by Mark Edwards --- linux/Documentation/dvb/avermedia.txt | 249 +++++++++------------------------- 1 file changed, 62 insertions(+), 187 deletions(-) (limited to 'linux/Documentation/dvb') diff --git a/linux/Documentation/dvb/avermedia.txt b/linux/Documentation/dvb/avermedia.txt index 050e72be8..5d8dbdada 100644 --- a/linux/Documentation/dvb/avermedia.txt +++ b/linux/Documentation/dvb/avermedia.txt @@ -1,23 +1,3 @@ -Hi all, - -Mark Edwards was so kind to describe the steps he did to get his (at this time -unsupported) Avermedia DVB-T card running. Since this is a nice introduction -to the DVB infrastructure I added the file to the LinuxDVB CVS repository. - -We hope it can help you to get your new unsupported card running or it's just -an interesting lecture if you are new to the DVB stuff and want to know how -things work together. - -The mentioned patches are now part of the LinuxDVB CVS, you don't have to apply -them again. - -have fun, - -Holger - - --------------------------------------------------------------------------------- - HOWTO: Get An Avermedia DVB-T working under Linux ______________________________________________ @@ -26,9 +6,10 @@ HOWTO: Get An Avermedia DVB-T working under Linux Assumptions and Introduction The Avermedia DVB-T Getting the card going + Getting the Firmware Receiving DVB-T in Australia - Patching dvb-bt8xx Known Limitations + Further Update Assumptions and Introduction @@ -64,7 +45,7 @@ Assumptions and Introduction The digital datastream from an Analogue TV card is generated by circuitry on the card and is often presented uncompressed. - For a PAL TV signal encoded at a resolution of 720x576 24-bit + For a PAL TV signal encoded at a resolution of 768x576 24-bit color pixels over 25 frames per second - a fair amount of data is generated and must be proceesed by the PC before it can be displayed on the video monitor screen. Some Analogue TV cards @@ -110,7 +91,8 @@ The Avermedia DVB-T The DVB-T card is based around the BT878 chip which is a very common multimedia bridge and often found on Analogue TV cards. There is no on-board MPEG2 decoder, which means that all MPEG2 - decoding must be done in software. + decoding must be done in software, or if you have one, on an + MPEG2 hardware decoding card or chipset. _________________________________________________________ Getting the card going @@ -120,8 +102,9 @@ Getting the card going been necessary to download these drivers from the linuxtv CVS server and compile them successfully. - The Device Driver API for DVB under Linux exposes the - following device files in the /dev tree: + Depending on the card's feature set, the Device Driver API for + DVB under Linux will expose some of the following device files + in the /dev tree: * /dev/dvb/adapter0/audio0 * /dev/dvb/adapter0/ca0 @@ -165,6 +148,28 @@ Getting the card going activate the appropriate DVB device nodes. It is then possible to start accessing the card with utilities such as scan, tzap, dvbstream etc. + + The current version of the frontend module sp887x.o, contains + no firmware drivers?, so the first time you open it with a DVB + utility the driver will try to download some initial firmware + to the card. You will need to download this firmware from the + web, or copy it from an installation of the Windows drivers + that probably came with your card, before you can use it. + + The default Linux filesystem location for this firmware is + /usr/lib/hotplug/firmware/sc_main.mc . + _________________________________________________________ + +Getting the Firmware + + As the firmware for the card is no longer contained within the + driver, it is necessary to extract it from the windows + drivers. + + The Windows drivers for the Avermedia DVB-T can be obtained + from: http://babyurl.com/H3U970 and you can get an application + to extract the firmware from: + http://www.kyz.uklinux.net/cabextract.php. _________________________________________________________ Receiving DVB-T in Australia @@ -189,136 +194,29 @@ Receiving DVB-T in Australia SEVEN VHF 6 177.5 MHz SBS UHF 29 536.5 MHz - Documentation for DVB/apps/scan indicates that it is necesary - to alter the initial.h file for the local transponders. I - didn't spend too much time trying to work out how scan worked, - so I recompiled a new version of scan for each transponder - listed above and piped the output to a 'channels.conf' file. - It was necessary to alter the initial.h file in the following - way: -static -struct transponder ofdm_probes [] = { - /** - * Australia ABC - */ - { - .type = FE_OFDM, - .param = { - .frequency = 226500000, - .inversion = INVERSION_OFF, - { ofdm: - { - .bandwidth = BANDWIDTH_7_MHZ, - .code_rate_HP = FEC_2_3, - .code_rate_LP = FEC_NONE, - .constellation = QAM_64, - .transmission_mode = TRANSMISSION_MODE_8K, - .guard_interval = GUARD_INTERVAL_1_8, - .hierarchy_information = HIERARCHY_NONE - } - } - } - }, - /** - * Australia TEN - */ - { - .type = FE_OFDM, - .param = { - .frequency = 219500000, - .inversion = INVERSION_OFF, - { ofdm: - { - .bandwidth = BANDWIDTH_7_MHZ, - .code_rate_HP = FEC_2_3, - .code_rate_LP = FEC_NONE, - .constellation = QAM_64, - .transmission_mode = TRANSMISSION_MODE_8K, - .guard_interval = GUARD_INTERVAL_1_8, - .hierarchy_information = HIERARCHY_NONE - } - } - } - }, - /** - * Australia NINE - */ - { - .type = FE_OFDM, - .param = { - .frequency = 191625000, - .inversion = INVERSION_OFF, - { ofdm: - { - .bandwidth = BANDWIDTH_7_MHZ, - .code_rate_HP = FEC_2_3, - .code_rate_LP = FEC_NONE, - .constellation = QAM_64, - .transmission_mode = TRANSMISSION_MODE_8K, - .guard_interval = GUARD_INTERVAL_1_8, - .hierarchy_information = HIERARCHY_NONE - } - } - } - }, - /** - * Australia SEVEN - */ - { - .type = FE_OFDM, - .param = { - .frequency = 177500000, - .inversion = INVERSION_OFF, - { ofdm: - { - .bandwidth = BANDWIDTH_7_MHZ, - .code_rate_HP = FEC_2_3, - .code_rate_LP = FEC_NONE, - .constellation = QAM_64, - .transmission_mode = TRANSMISSION_MODE_8K, - .guard_interval = GUARD_INTERVAL_1_8, - .hierarchy_information = HIERARCHY_NONE - } - } - } - }, - /** - * Australia SBS - */ - { - .type = FE_OFDM, - .param = { - .frequency = 536500000, - .inversion = INVERSION_OFF, - { ofdm: - { - .bandwidth = BANDWIDTH_7_MHZ, - .code_rate_HP = FEC_2_3, - .code_rate_LP = FEC_NONE, - .constellation = QAM_64, - .transmission_mode = TRANSMISSION_MODE_8K, - .guard_interval = GUARD_INTERVAL_1_8, - .hierarchy_information = HIERARCHY_NONE - } - } - } - }, -}; - - -#endif + The Scan utility has a set of compiled-in defaults for various + countries and regions, but if they do not suit, or if you have + a pre-compiled scan binary, you can specify a data file on the + command line which contains the transponder frequencies. Here + is a sample file for the above channel transponders: +# Data file for DVB scan program +# +# C Frequency SymbolRate FEC QAM +# S Frequency Polarisation SymbolRate FEC +# T Frequency Bandwidth FEC FEC2 QAM Mode Guard Hier +T 226500000 7MHz 2/3 NONE QAM64 8k 1/8 NONE +T 191625000 7MHz 2/3 NONE QAM64 8k 1/8 NONE +T 219500000 7MHz 2/3 NONE QAM64 8k 1/8 NONE +T 177500000 7MHz 2/3 NONE QAM64 8k 1/8 NONE +T 536500000 7MHz 2/3 NONE QAM64 8k 1/8 NONE The defaults for the transponder frequency and other modulation parameters were obtained from www.dba.org.au. When Scan runs, it will output channels.conf information for - the first successful transponder. In Australia, where each - hannel has it's own transponder, it's necessary to then - comment out the last transponder that was scanned and - recompile scan. This is a dreadful kludge I know, but all I - want with scan is to be able to create a working channels.conf - file. Now I have a working channels.conf file, I don't need - scan any more. + any channel's transponders which the card's frontend can lock + onto. (i.e. any whose signal is strong enough at your + antenna). Here's my channels.conf file for anyone who's interested: ABC HDTV:226500000:INVERSION_OFF:BANDWIDTH_7_MHZ:FEC_3_4:FEC_3_4:QAM_64 @@ -397,39 +295,6 @@ SBS RADIO 2:536500000:INVERSION_OFF:BANDWIDTH_7_MHZ:FEC_2_3:FEC_2_3:QAM _64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_8:HIERARCHY_NONE:0:202:799 _________________________________________________________ -Patching dvb-bt8xx - - The following patch to dvb-bt8xx is required to be applied - against the code prior to file date 5th September 2003. It may - have been applied to CVS by the time this HOWTO gets - published. -Index: dvb-bt8xx.c -=================================================================== -RCS file: /cvs/linuxtv/dvb-kernel/linux/drivers/media/dvb/bt8xx/dvb-bt8 -xx.c,v -retrieving revision 1.10 -diff -u -r1.10 dvb-bt8xx.c ---- dvb-bt8xx.c 15 Jul 2003 09:30:02 -0000 1.10 -+++ dvb-bt8xx.c 6 Sep 2003 02:06:20 -0000 -@@ -302,6 +302,14 @@ - case 0x01010071: - dvb_bt8xx_load(card_nr, "Nebula DigiTV -DVB-T", (1 << 26) | (1 << 14) | (1 << 5)); - break; -+ case 0x07611461: -+ dvb_bt8xx_load(card_nr, "Avermedia DVB- -T", (1 << 26) | (1 << 14) | (1 << 5)); -+ break; -+ default: -+ dprintk("dvb_bt8xx: card_nr found %0X \n",card_nr); -+ dprintk("dvb_bt8xx: card_id found %0X \n",card_id); -+ dprintk("dvb_bt8xx: card_type found %0X \n",card_type) -; -+ break;; - } - } - _________________________________________________________ - Known Limitations At present I can say with confidence that the frontend tunes @@ -442,8 +307,18 @@ Known Limitations error message inconsistency. Although this generates errors in dmesg and the system logs, it does not appear to affect the ability of the frontend to function correctly. + _________________________________________________________ + +Further Update + + dvbstream and VideoLAN Client on windows works a treat with + DVB, in fact this is currently serving as my main way of + viewing DVB-T at the moment. Additionally, VLC is happily + decoding HDTV signals, although the PC is dropping the odd + frame here and there - I assume due to processing capability - + as all the decoding is being done under windows in software. + + Many thanks to Nigel Pearson for the updates to this document + since the recent revision of the driver. - So far, I have only been able to decode SDTV MPEG2 data - streams from ABC, Channel 7, Channel 9 and SBS. For some - reason, the HDTV and all Channel 10 streams cause xine to die - on me. I am pursuing this particular limitation at the moment. + January 29th 2004 -- cgit v1.2.3 From a248d346df73636a718357e294873fafd4f6d53d Mon Sep 17 00:00:00 2001 From: Johannes Stezenbach Date: Fri, 30 Jan 2004 15:48:52 +0000 Subject: add an entry about debugging dvb_net problems --- linux/Documentation/dvb/faq.txt | 21 +++++++++++++++++++-- 1 file changed, 19 insertions(+), 2 deletions(-) (limited to 'linux/Documentation/dvb') diff --git a/linux/Documentation/dvb/faq.txt b/linux/Documentation/dvb/faq.txt index bc8b5990b..470c8bcfd 100644 --- a/linux/Documentation/dvb/faq.txt +++ b/linux/Documentation/dvb/faq.txt @@ -99,14 +99,31 @@ Some very frequently asked questions about linuxtv-dvb If you are using a Technotrend/Hauppauge DVB-C card *without* analog module, you might have to use module parameter adac=-1 (dvb-ttpci.o). -5. The dvb_net device doesn't give me any multicast packets +5. The dvb_net device doesn't give me any packets at all + + Run tcpdump on the dvb0_0 interface. This sets the interface + into promiscous mode so it accepts any packets from the PID + you have configured with the dvbnet utility. Check if there + are any packets with the IP addr and MAC addr you have + configured with ifconfig. + + If tcpdump doesn't give you any output, check the statistics + which ifconfig outputs. (Note: If the MAC address is wrong, + dvb_net won't get any input; thus you have to run tcpdump + before checking the statistics.) If there are no packets at + all then maybe the PID is wrong. If there are error packets, + then either the PID is wrong or the stream does not conform to + the MPE standard (EN 301 192, http://www.etsi.org/). You can + use e.g. dvbsnoop for debugging. + +6. The dvb_net device doesn't give me any multicast packets Check your routes if they include the multicast address range. Additionally make sure that "source validation by reversed path lookup" is disabled: $ "echo 0 > /proc/sys/net/ipv4/conf/dvb0/rp_filter" -6. What the hell are all those modules that need to be loaded? +7. What the hell are all those modules that need to be loaded? For a dvb-ttpci av7110 based full-featured card the following modules are loaded: -- cgit v1.2.3 From 3e3a2ec29fa5dea15eed40cd7a67c8264f4ac614 Mon Sep 17 00:00:00 2001 From: Andrew de Quincy Date: Fri, 30 Jan 2004 16:40:41 +0000 Subject: Standardised where the firmware should be. --- linux/Documentation/dvb/firmware.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'linux/Documentation/dvb') diff --git a/linux/Documentation/dvb/firmware.txt b/linux/Documentation/dvb/firmware.txt index 3a85c0b5b..dff3c9fe6 100644 --- a/linux/Documentation/dvb/firmware.txt +++ b/linux/Documentation/dvb/firmware.txt @@ -20,7 +20,7 @@ current state: 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 + variable (default /usr/lib/hotplug/firmware/tda1004x.bin); the firmware binary must be extracted from the windows driver - ttusb-dec: see "ttusb-dec.txt" for details -- cgit v1.2.3 From 05d191d8509677634e101bcb81fcb2d8bc5d18e3 Mon Sep 17 00:00:00 2001 From: Johannes Stezenbach Date: Thu, 5 Feb 2004 16:37:16 +0000 Subject: update --- linux/Documentation/dvb/cards.txt | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) (limited to 'linux/Documentation/dvb') diff --git a/linux/Documentation/dvb/cards.txt b/linux/Documentation/dvb/cards.txt index 374263890..846882251 100644 --- a/linux/Documentation/dvb/cards.txt +++ b/linux/Documentation/dvb/cards.txt @@ -8,7 +8,7 @@ Hardware supported by the linuxtv.org DVB drivers DVB-S/DVB-C/DVB-T. Thus the frontend drivers are listed seperately. Note 1: There is no guarantee that every frontend driver works - out-of-the box with every card, because of different wiring. + out of the box with every card, because of different wiring. Note 2: The demodulator chips can be used with a variety of tuner/PLL chips, and not all combinations are supported. Often @@ -19,7 +19,7 @@ Hardware supported by the linuxtv.org DVB drivers o Frontends drivers: - dvb_dummy_fe: for testing... DVB-S: - - alps_bsrv2 : Alps BSRV2 (ves1893 demodulator) + - ves1x93 : Alps BSRV2 (ves1893 demodulator) and dbox2 (ves1993) - cx24110 : Conexant HM1221/HM1811 (cx24110 or cx24106 demod, cx24108 PLL) - grundig_29504-491 : Grundig 29504-491 (Philips TDA8083 demodulator), tsa5522 PLL - mt312 : Zarlink mt312 or Mitel vp310 demodulator, sl1935 or tsa5059 PLL @@ -37,6 +37,9 @@ o Frontends drivers: - nxt6000 : Alps TDME7 (MITEL SP5659 PLL), Alps TDED4 (TI ALP510 PLL), Comtech DVBT-6k07 (SP5730 PLL) (NxtWave Communications NXT6000 demodulator) + - sp887x : Microtune 7202D + DVB-S/C/T: + - dst : TwinHan DST Frontend o Cards based on the Phillips saa7146 multimedia PCI bridge chip: @@ -54,10 +57,10 @@ o Cards based on the B2C2 Inc. FlexCopII: o Cards based on the Conexant Bt8xx PCI bridge: - Pinnacle PCTV Sat DVB - Nebula Electronics DigiTV + - TwinHan DST o Technotrend / Hauppauge DVB USB devices: - Nova USB - - DEC 2000-T - -o Preliminary support for the analog module of the Siemens DVB-C PCI card + - DEC 2000-T, 3000-S, 2540-T +o Experimental support for the analog module of the Siemens DVB-C PCI card -- cgit v1.2.3 From 6eff8a0d098499cd53e857131b9ff6c5ba5496bb Mon Sep 17 00:00:00 2001 From: Johannes Stezenbach Date: Thu, 5 Feb 2004 17:32:18 +0000 Subject: mention Avermedia DVB-T card --- linux/Documentation/dvb/cards.txt | 1 + 1 file changed, 1 insertion(+) (limited to 'linux/Documentation/dvb') diff --git a/linux/Documentation/dvb/cards.txt b/linux/Documentation/dvb/cards.txt index 846882251..cc459c811 100644 --- a/linux/Documentation/dvb/cards.txt +++ b/linux/Documentation/dvb/cards.txt @@ -58,6 +58,7 @@ o Cards based on the Conexant Bt8xx PCI bridge: - Pinnacle PCTV Sat DVB - Nebula Electronics DigiTV - TwinHan DST + - Avermedia DVB-T o Technotrend / Hauppauge DVB USB devices: - Nova USB -- cgit v1.2.3 From 5d0793d6c5e2f4498f4a1b7427b40786e0691f90 Mon Sep 17 00:00:00 2001 From: Johannes Stezenbach Date: Fri, 6 Feb 2004 14:56:27 +0000 Subject: mention ttpci-firmware utility --- linux/Documentation/dvb/firmware.txt | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'linux/Documentation/dvb') diff --git a/linux/Documentation/dvb/firmware.txt b/linux/Documentation/dvb/firmware.txt index dff3c9fe6..0991c0c1f 100644 --- a/linux/Documentation/dvb/firmware.txt +++ b/linux/Documentation/dvb/firmware.txt @@ -76,11 +76,15 @@ you want to upload the firmware by hand, however, this might be too fast. 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/ +http://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. +The ttpci-firmware utility from linuxtv.org CVS can be used to +convert Dpram and Root files into a usable firmware image. +See dvb-kerrnel/scripts/ in http://linuxtv.org/cvs/. + > wget http://www.linuxtv.org/download/dvb/dvb-ttpci-01.fw gets you the version 01 of the firmware fot the ttpci driver. -- cgit v1.2.3 From 0d3462c31acf9423d48f88a2ba9ae5cbc738d61f Mon Sep 17 00:00:00 2001 From: Holger Waechtler Date: Wed, 11 Feb 2004 13:57:56 +0000 Subject: update by Niklas Peinecke --- linux/Documentation/dvb/cards.txt | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'linux/Documentation/dvb') diff --git a/linux/Documentation/dvb/cards.txt b/linux/Documentation/dvb/cards.txt index cc459c811..5e07f1830 100644 --- a/linux/Documentation/dvb/cards.txt +++ b/linux/Documentation/dvb/cards.txt @@ -25,7 +25,7 @@ o Frontends drivers: - mt312 : Zarlink mt312 or Mitel vp310 demodulator, sl1935 or tsa5059 PLL - stv0299 : Alps BSRU6 (tsa5059 PLL), LG TDQB-S00x (tsa5059 PLL), LG TDQF-S001F (sl1935 PLL), Philips SU1278 (tua6100 PLL), - Philips SU1278SH (tsa5059 PLL) + Philips SU1278SH (tsa5059 PLL), Samsung TBMU24112IMB DVB-C: - ves1820 : various (ves1820 demodulator, sp5659c or spXXXX PLL) - at76c651 : Atmel AT76c651(B) with DAT7021 PLL @@ -51,8 +51,8 @@ o Cards based on the Phillips saa7146 multimedia PCI bridge chip: - SATELCO Multimedia PCI - KNC1 DVB-S -o Cards based on the B2C2 Inc. FlexCopII: - - Technisat SkyStar2 PCI DVB +o Cards based on the B2C2 Inc. FlexCopII/IIb/III: + - Technisat SkyStar2 PCI DVB card revision 2.3, 2.6B, 2.6C o Cards based on the Conexant Bt8xx PCI bridge: - Pinnacle PCTV Sat DVB -- cgit v1.2.3 From 4692a568477c815a4269c258fa044abd567f1b00 Mon Sep 17 00:00:00 2001 From: Oliver Endriss Date: Thu, 26 Feb 2004 21:15:01 +0000 Subject: Fujitsu-Siemens Activy budget card --- linux/Documentation/dvb/cards.txt | 1 + linux/Documentation/dvb/contributors.txt | 4 ++++ 2 files changed, 5 insertions(+) (limited to 'linux/Documentation/dvb') diff --git a/linux/Documentation/dvb/cards.txt b/linux/Documentation/dvb/cards.txt index 5e07f1830..cf2e110fa 100644 --- a/linux/Documentation/dvb/cards.txt +++ b/linux/Documentation/dvb/cards.txt @@ -50,6 +50,7 @@ o Cards based on the Phillips saa7146 multimedia PCI bridge chip: - Technotrend Budget / Hauppauge WinTV-Nova PCI Cards - SATELCO Multimedia PCI - KNC1 DVB-S + - Fujitsu-Siemens Activy DVB-S budget card o Cards based on the B2C2 Inc. FlexCopII/IIb/III: - Technisat SkyStar2 PCI DVB card revision 2.3, 2.6B, 2.6C diff --git a/linux/Documentation/dvb/contributors.txt b/linux/Documentation/dvb/contributors.txt index 86c9270da..53a6173cd 100644 --- a/linux/Documentation/dvb/contributors.txt +++ b/linux/Documentation/dvb/contributors.txt @@ -62,5 +62,9 @@ Hans-Frieder Vogt for his work on calculating and checking the crc's for the TechnoTrend/Hauppauge DEC driver firmware +Michael Dreher +Andreas 'randy' Weinberger + for the support of the Fujitsu-Siemens Activy budget DVB-S + (If you think you should be in this list, but you are not, drop a line to the DVB mailing list) -- cgit v1.2.3 From 7d9a2810f1565116411b198b0e6087f3b1e6090f Mon Sep 17 00:00:00 2001 From: Johannes Stezenbach Date: Fri, 19 Mar 2004 17:13:54 +0000 Subject: =?UTF-8?q?patch=20by=20Kenneth=20Aafl=C3=B8y=20to=20add=20support?= =?UTF-8?q?=20for=20Typhoon=20DVB-S=20budget=20card?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- linux/Documentation/dvb/cards.txt | 1 + linux/Documentation/dvb/contributors.txt | 4 ++++ 2 files changed, 5 insertions(+) (limited to 'linux/Documentation/dvb') diff --git a/linux/Documentation/dvb/cards.txt b/linux/Documentation/dvb/cards.txt index cf2e110fa..695f174d8 100644 --- a/linux/Documentation/dvb/cards.txt +++ b/linux/Documentation/dvb/cards.txt @@ -50,6 +50,7 @@ o Cards based on the Phillips saa7146 multimedia PCI bridge chip: - Technotrend Budget / Hauppauge WinTV-Nova PCI Cards - SATELCO Multimedia PCI - KNC1 DVB-S + - Typhoon DVB-S budget - Fujitsu-Siemens Activy DVB-S budget card o Cards based on the B2C2 Inc. FlexCopII/IIb/III: diff --git a/linux/Documentation/dvb/contributors.txt b/linux/Documentation/dvb/contributors.txt index 53a6173cd..12026e933 100644 --- a/linux/Documentation/dvb/contributors.txt +++ b/linux/Documentation/dvb/contributors.txt @@ -66,5 +66,9 @@ Michael Dreher Andreas 'randy' Weinberger for the support of the Fujitsu-Siemens Activy budget DVB-S +Kenneth Aafløy + for adding support for Typhoon DVB-S budget card + + (If you think you should be in this list, but you are not, drop a line to the DVB mailing list) -- cgit v1.2.3 From 06836acb1d14d2fe537ef202f0253f5321ae1278 Mon Sep 17 00:00:00 2001 From: Johannes Stezenbach Date: Thu, 8 Apr 2004 15:54:49 +0000 Subject: added a link to dvbsnoop --- linux/Documentation/dvb/faq.txt | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'linux/Documentation/dvb') diff --git a/linux/Documentation/dvb/faq.txt b/linux/Documentation/dvb/faq.txt index 470c8bcfd..ba743da79 100644 --- a/linux/Documentation/dvb/faq.txt +++ b/linux/Documentation/dvb/faq.txt @@ -93,6 +93,11 @@ Some very frequently asked questions about linuxtv-dvb http://www.mythtv.org/ MythTV - analog TV PVR, but now with DVB support, too (with software MPEG decode) + + http://dvbsnoop.sourceforge.net/ + DVB sniffer program to monitor, analyze, debug, dump + or view dvb/mpeg/dsm-cc/mhp stream information (TS, + PES, SECTION) 4. Can't get a signal tuned correctly -- cgit v1.2.3 From a9135ebb9e7ffd0934fa6e9bd6b0a0a4e5ff912d Mon Sep 17 00:00:00 2001 From: Alex Woods Date: Sun, 2 May 2004 16:30:56 +0000 Subject: DiSEqC for 3000-s Update docs accordingly --- linux/Documentation/dvb/contributors.txt | 2 ++ linux/Documentation/dvb/ttusb-dec.txt | 7 +++---- 2 files changed, 5 insertions(+), 4 deletions(-) (limited to 'linux/Documentation/dvb') diff --git a/linux/Documentation/dvb/contributors.txt b/linux/Documentation/dvb/contributors.txt index 12026e933..dd40ad665 100644 --- a/linux/Documentation/dvb/contributors.txt +++ b/linux/Documentation/dvb/contributors.txt @@ -69,6 +69,8 @@ Andreas 'randy' Weinberger Kenneth Aafløy for adding support for Typhoon DVB-S budget card +Ernst Peinlich + for tuning/DiSEqC support for the DEC 3000-s (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/ttusb-dec.txt b/linux/Documentation/dvb/ttusb-dec.txt index b8e24995c..485dab5ad 100644 --- a/linux/Documentation/dvb/ttusb-dec.txt +++ b/linux/Documentation/dvb/ttusb-dec.txt @@ -6,6 +6,8 @@ Driver Status Supported: DEC2000-t + DEC2450-t + DEC3000-s Linux Kernels 2.4 and 2.6 Video Streaming Audio Streaming @@ -13,14 +15,11 @@ Supported: Channel Zapping Hotplug firmware loader under 2.6 kernels -In Progress: - DEC2540-t - DEC3000-s - To Do: Tuner status information DVB network interface Streaming video PC->DEC + Conax support for 2450-t Getting the Firmware -------------------- -- cgit v1.2.3 From e4fa3c987a43338bc0dcb2ed4b01d61abe2b26ab Mon Sep 17 00:00:00 2001 From: Michael Hunold Date: Wed, 12 May 2004 12:46:58 +0000 Subject: - reflect latest changes for frontend firmware loading --- linux/Documentation/dvb/firmware.txt | 44 +++++++++++++++++++++++++----------- 1 file changed, 31 insertions(+), 13 deletions(-) (limited to 'linux/Documentation/dvb') diff --git a/linux/Documentation/dvb/firmware.txt b/linux/Documentation/dvb/firmware.txt index 0991c0c1f..4c7f3d49c 100644 --- a/linux/Documentation/dvb/firmware.txt +++ b/linux/Documentation/dvb/firmware.txt @@ -12,17 +12,16 @@ 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 +Drivers using the firmware hotplug interface: +- dvb-ttpci +- tda1004x: + +Proprietary solutions which need to be converted: - 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 /usr/lib/hotplug/firmware/tda1004x.bin); the - firmware binary must be extracted from the windows - driver - ttusb-dec: see "ttusb-dec.txt" for details 1) Automatic firmware loading @@ -45,7 +44,6 @@ conflicts we propose the following naming scheme: 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. @@ -73,9 +71,9 @@ 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. +Step c) Getting a usable firmware file -You can download the firmware files from +- For the dvb-ttpci driver/av7110 card you can download the firmware files from http://linuxtv.org/download/dvb/ Please note that in case of the dvb-ttpci driver this is *not* the "Root" @@ -88,12 +86,23 @@ See dvb-kerrnel/scripts/ in http://linuxtv.org/cvs/. > wget http://www.linuxtv.org/download/dvb/dvb-ttpci-01.fw gets you the version 01 of the firmware fot the ttpci driver. -Step d) Loading the dvb-ttpci driver and loading the firmware +- The tda1004x driver needs a copy of the DLL "ttlcdacc.dll" from the Haupauge or Technotrend +windows driver. Currently the DLL from v2.15a of the technotrend driver is supported. Other versions can +added reasonably painlessly. + +Windows driver URL: http://www.technotrend.de/ + +> wget http://www.technotrend.de/new/215/TTweb_215a_budget_20_05_2003.zip +> unzip -j TTweb_215a_budget_20_05_2003.zip Software/Oem/PCI/App/ttlcdacc.dll + +Step d) Loading the driver and uploading the firmware manually "modprobe" will take care that every needed module will be loaded -automatically (except the frontend driver) +automatically > modprobe dvb-ttpci +or +> modprobe tda1004x The "modprobe" process will hang until a) you upload the firmware or @@ -107,14 +116,23 @@ 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. +"0000:03:05.0" is the id of the device that needs an firmware upload. + +In this example, this is the pci id of my dvb-c card. It depends on the pci slot, +so it changes if you plug the card to different slots. For the tda1004x, +the id will be an artifical number consisting on the i2c bus the device is on. You can upload the firmware like that: > export DEVDIR=/sys/class/firmware/0000\:03\:05.0 > echo 1 > $DEVDIR/loading + +For the dvb-ttpci card: > cat dvb-ttpci-01.fw > $DEVDIR/data + +For the tda1004x frontend: +> cat ttlcdacc.dll > $DEVDIR/data + > echo 0 > $DEVDIR/loading That's it. The driver should be up and running now. -- cgit v1.2.3 From 5402205afabc6d544e28caf7e855778c1db37f70 Mon Sep 17 00:00:00 2001 From: Michael Hunold Date: Mon, 24 May 2004 17:42:43 +0000 Subject: - forgot to commit latest changes regarding tda1004x to CVS --- linux/Documentation/dvb/firmware.txt | 77 +++++++++++++++++++++++------------- 1 file changed, 49 insertions(+), 28 deletions(-) (limited to 'linux/Documentation/dvb') diff --git a/linux/Documentation/dvb/firmware.txt b/linux/Documentation/dvb/firmware.txt index 4c7f3d49c..e1e14b2c9 100644 --- a/linux/Documentation/dvb/firmware.txt +++ b/linux/Documentation/dvb/firmware.txt @@ -24,6 +24,33 @@ Proprietary solutions which need to be converted: extracted from the Windows driver (Sc_main.mc). - ttusb-dec: see "ttusb-dec.txt" for details +0) Getting a usable firmware file + +- For the dvb-ttpci driver/av7110 card you can download the firmware files from +http://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. + +The ttpci-firmware utility from linuxtv.org CVS can be used to +convert Dpram and Root files into a usable firmware image. +See dvb-kerrnel/scripts/ in http://linuxtv.org/cvs/. + +> wget http://www.linuxtv.org/download/dvb/dvb-ttpci-01.fw +gets you the version 01 of the firmware fot the ttpci driver. + +- The tda1004x driver needs a copy of the DLL "ttlcdacc.dll" from the Haupauge or Technotrend +windows driver. Currently the DLL from v2.15a of the technotrend driver is supported. Other versions can +added reasonably painlessly. + +Windows driver URL: http://www.technotrend.de/ + +> wget http://www.technotrend.de/new/215/TTweb_215a_budget_20_05_2003.zip +> unzip -j TTweb_215a_budget_20_05_2003.zip Software/Oem/PCI/App/ttlcdacc.dll + +Rename "ttlcdacc.dll" to "tda1004x.bin" -- that's currently the default name +for the firmware file. + 1) Automatic firmware loading You need to install recent hotplug scripts if your distribution did not do it @@ -43,6 +70,22 @@ conflicts we propose the following naming scheme: driver/firmware internal API changes (so users are free to install the latest firmware compatible with the driver). +Currently the drivers mentionend above support firmware upload through the +hotplug manager. If you have such a card, a simple "modprobe" of the driver +will take care of everything, ie. + +> modprobe dvb-ttpci +or +> modprobe tda1004x + +If you have the hotplug firmware scripts installed, both drivers will ask the hotplug +daemon for their default firmware. If the scripts are there, but the firmware cannot +be found, an error message will be printed immediately. Make sure that the firmware +are in a path where the hotplug manager can find them. + +Please note that the default firmware name of the tda1004x doesn't follow the +naming conventions stated above. It's still called "tda1004x.bin". + 2) Manually loading the firmware into a driver Step a) Mount sysfs-filesystem. @@ -71,31 +114,7 @@ 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://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. - -The ttpci-firmware utility from linuxtv.org CVS can be used to -convert Dpram and Root files into a usable firmware image. -See dvb-kerrnel/scripts/ in http://linuxtv.org/cvs/. - -> wget http://www.linuxtv.org/download/dvb/dvb-ttpci-01.fw -gets you the version 01 of the firmware fot the ttpci driver. - -- The tda1004x driver needs a copy of the DLL "ttlcdacc.dll" from the Haupauge or Technotrend -windows driver. Currently the DLL from v2.15a of the technotrend driver is supported. Other versions can -added reasonably painlessly. - -Windows driver URL: http://www.technotrend.de/ - -> wget http://www.technotrend.de/new/215/TTweb_215a_budget_20_05_2003.zip -> unzip -j TTweb_215a_budget_20_05_2003.zip Software/Oem/PCI/App/ttlcdacc.dll - -Step d) Loading the driver and uploading the firmware manually +Step c) Loading the driver and uploading the firmware manually "modprobe" will take care that every needed module will be loaded automatically @@ -104,7 +123,8 @@ automatically or > modprobe tda1004x -The "modprobe" process will hang until +If you don't have the hotplug subsystem running, the "modprobe" process will +now hang until a) you upload the firmware or b) the timeout occurs. @@ -130,8 +150,9 @@ You can upload the firmware like that: For the dvb-ttpci card: > cat dvb-ttpci-01.fw > $DEVDIR/data -For the tda1004x frontend: -> cat ttlcdacc.dll > $DEVDIR/data +For the tda1004x frontend, the path above might be different, but the other things +are the same: +> cat tda1004x.bin > $DEVDIR/data > echo 0 > $DEVDIR/loading -- cgit v1.2.3 From ec43988cd138da40f4bf309df4c6ade87a1837b2 Mon Sep 17 00:00:00 2001 From: Johannes Stezenbach Date: Thu, 10 Jun 2004 16:32:33 +0000 Subject: new firmware download location --- linux/Documentation/dvb/firmware.txt | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'linux/Documentation/dvb') diff --git a/linux/Documentation/dvb/firmware.txt b/linux/Documentation/dvb/firmware.txt index e1e14b2c9..2ea97087a 100644 --- a/linux/Documentation/dvb/firmware.txt +++ b/linux/Documentation/dvb/firmware.txt @@ -27,7 +27,7 @@ Proprietary solutions which need to be converted: 0) Getting a usable firmware file - For the dvb-ttpci driver/av7110 card you can download the firmware files from -http://linuxtv.org/download/dvb/ +http://linuxtv.org/download/dvb/firmware/ 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. @@ -36,8 +36,8 @@ The ttpci-firmware utility from linuxtv.org CVS can be used to convert Dpram and Root files into a usable firmware image. See dvb-kerrnel/scripts/ in http://linuxtv.org/cvs/. -> wget http://www.linuxtv.org/download/dvb/dvb-ttpci-01.fw -gets you the version 01 of the firmware fot the ttpci driver. +> wget http://www.linuxtv.org/download/dvb/firmware/dvb-ttpci-01.fw-261c +> mv dvb-ttpci-01.fw-261c /usr/lib/hotplug/firmware/dvb-ttpci-01.fw - The tda1004x driver needs a copy of the DLL "ttlcdacc.dll" from the Haupauge or Technotrend windows driver. Currently the DLL from v2.15a of the technotrend driver is supported. Other versions can -- cgit v1.2.3 From d130ed470a8d96fb32e1e94b09abfbb45929fb2c Mon Sep 17 00:00:00 2001 From: Johannes Stezenbach Date: Sun, 20 Jun 2004 22:53:32 +0000 Subject: mention KNC1 DVB-S clones --- linux/Documentation/dvb/cards.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'linux/Documentation/dvb') diff --git a/linux/Documentation/dvb/cards.txt b/linux/Documentation/dvb/cards.txt index 695f174d8..4a397fae3 100644 --- a/linux/Documentation/dvb/cards.txt +++ b/linux/Documentation/dvb/cards.txt @@ -49,7 +49,7 @@ o Cards based on the Phillips saa7146 multimedia PCI bridge chip: - "budget" cards (i.e. without hardware MPEG decoder): - Technotrend Budget / Hauppauge WinTV-Nova PCI Cards - SATELCO Multimedia PCI - - KNC1 DVB-S + - KNC1 DVB-S, Typhoon DVB-S, Terratec Cinergy 1200 DVB-S (no CI support) - Typhoon DVB-S budget - Fujitsu-Siemens Activy DVB-S budget card -- cgit v1.2.3 From 579832ccff77ff3322bd06fd73256614896e429b Mon Sep 17 00:00:00 2001 From: Patrick Boettcher Date: Tue, 20 Jul 2004 20:52:19 +0000 Subject: added new driver for the USB budget devices: - Twinhan VisionPlus VisionDTV USB-Ter DVB-T Device - CTS Portable documentation, helper scripts and modifications in the necessary files have been done, hopefully. --- linux/Documentation/dvb/firmware.txt | 1 + linux/Documentation/dvb/readme.txt | 4 + linux/Documentation/dvb/vp7041.txt | 148 +++++++++++++++++++++++++++++++++++ 3 files changed, 153 insertions(+) create mode 100644 linux/Documentation/dvb/vp7041.txt (limited to 'linux/Documentation/dvb') diff --git a/linux/Documentation/dvb/firmware.txt b/linux/Documentation/dvb/firmware.txt index 2ea97087a..d97852d32 100644 --- a/linux/Documentation/dvb/firmware.txt +++ b/linux/Documentation/dvb/firmware.txt @@ -23,6 +23,7 @@ Proprietary solutions which need to be converted: "mcfile" module parameter; the binary must be extracted from the Windows driver (Sc_main.mc). - ttusb-dec: see "ttusb-dec.txt" for details +- vp7041: see vp7041.txt for more information 0) Getting a usable firmware file diff --git a/linux/Documentation/dvb/readme.txt b/linux/Documentation/dvb/readme.txt index 720aa8ce0..e38016cf8 100644 --- a/linux/Documentation/dvb/readme.txt +++ b/linux/Documentation/dvb/readme.txt @@ -41,4 +41,8 @@ contains detailed installation instructions for the various bt8xx based "budget" DVB cards (Nebula, Pinnacle PCTV, Twinhan DST) +"vp7041.txt" +contains detailed informations about the +Visionplus VisionDTV USB-Ter DVB-T adapter. + Good luck and have fun! diff --git a/linux/Documentation/dvb/vp7041.txt b/linux/Documentation/dvb/vp7041.txt new file mode 100644 index 000000000..fe8ddae14 --- /dev/null +++ b/linux/Documentation/dvb/vp7041.txt @@ -0,0 +1,148 @@ +Linux Driver for + VisionPlus VisionDTV USB-Ter DVB-T Device (VP7041) + (http://www.twinhan.com/visiontv-2_4.htm) +and + CTS Portable (Chinese Television System) + (http://www.2cts.tv/ctsportable/) + +Copyright (C) 2004 Patrick Boettcher (patrick.boettcher@desy.de), + +This program is free software; you can redistribute it and/or +modify it under the terms of the GNU General Public License as +published by the Free Software Foundation, version 2. + +Koenigs Wusterhausen, Germany + +NEWS: + 2004-07-15 - found out, by accident, that the device has a TUA6010XS for + frequency generator + 2004-07-12 - figured out, that the driver should also work with the + CTS Portable (Chinese Television System) + 2004-07-08 - firmware-extraction-2.422-problem solved, driver is now working + properly with firmware extracted from 2.422 + - #if for 2.6.4 (dvb), compile issue + - changed firmware handling, see vp7041.txt sec 1.1 + 2004-07-02 - some tuner modifications, v0.1, cleanups, first public + 2004-06-28 - now using the dvb_dmx_swfilter_packets, everything + runs fine now + 2004-06-27 - able to watch and switching channels (pre-alpha) + - no section filtering yet + 2004-06-06 - first TS received, but kernel oops :/ + 2004-05-14 - firmware loader is working + 2004-05-11 - start writing the driver + +0. About the driver. +This driver is completly reverse-engineered by using the device on a guest PC +with Windows (where a working driver exists). +If you have a look into the source code, you will find a lot of buffers with +a lot of hex-numbers in it. By all means, I will not assert, that I understand +each of them. But this is like the windows driver controls the device, and +obviously it is working even in Linux. + +If someone of you recognizes something in those buffers (maybe there is +a frontend or any other device, which are fed like this) please let me know. +If I could assign a function name to any of those anonymous numbers, I will +be very happy. + +By all means, I will highly appreciate any comment, critic and patch to improve +the quality of this piece of software. + +When using this driver your system can crash or hang. I'm not responsibly for +any data you may lose. So be warned. (Enabling sysrq saves a lot of data). + +Addition: This driver should also work with the CTS Portable since the +windriver seems to be identical to the Twinhan one. Comment on this badly +needed. + +1. How to use? +NOTE: This driver was developed on Linux 2.6.6., it is working with 2.6.7. +Linux 2.4.x support is not planned, but patches are very welcome. + +NOTE: I'm using Debian testing, so the following explaination (especially +the hotplug-path) needn't match your system, but probably it will :). + +1.1. Firmware extraction + +First of all you have to extract the firmware from the windows driver: + +Therefore "Peter Schildmann" originally wrote a shell script, I adopted +it to a Perl script for easier supporting different firmware version. +The firmware extract script can be found inside the dvb-kernel-cvs +(script/vp7041_extract_firmware.pl). + +If you want to extract the firmware, you have to run the script like this: + +perl vp7041_extract_firmware.pl + +The driverfile can be found in the windows driver package. As of version +2.42 the windows driver the file is called "UDTTload.sys", older (but +working) versions have "twinload.sys" respectively . (On a +windows system, where the driver is in use, it can be found in +\PathtoWindows\System32\drivers) +The name of the firmware-file for linux has to be "dvb-vp7041-.fw" +(the script cares about). +The firmware has to be put into /usr/lib/hotplug/firmware (As I said +Debian). + +If you figured out the driver file extract the firmware: + +perl vp7041_extract_firmware.pl /path/to/UDTTload.sys \ + /usr/lib/hotplug/firmware + +1.2. Compiling + +Since the driver is in the linux kernel, activating the driver in +your favorite config-environment should sufficient. I recommend +to compile the driver as module. Hotplug does the rest. + +1.3. Loading the driver + +Hotplug is able to load the driver, when it is needed (because you plugged +in the device). + +If you want to enable debug output, you have to load the driver manually. + +modprobe vp7041 debug=1 + +should do the trick. + +When the driver is loaded successfully, the firmware file was in +the right place and the device is connected, the "Power"-LED should be +turned on. + +If this is done, even in the non-debug mode, dmesg should show +something like the following: + +DVB: registering new adapter (VisionPlus VisionDTV USB-Ter DVB-T Device). +DVB: registering frontend 0:0 (VisionPlus VisionDTV USB-Ter (VP7041) Frontend)... +VisionPlus VisionDTV USB-Ter DVB-T Device successfully initialized and connected. + +At this point you are able to start a dvb-capable application. For myself +I used mplayer, dvbscan, tzap and kaxtv, they are working. Using the device +as a slave device in vdr, was not working for me. Some work has to be done +(patches and comments are very welcome). + +2. Known problems and bugs + +see vp7041.c + +2.1 TODO +see vp7041.c + +again, patches and comments are very very welcome + +3. Acknowledgements + Alex Woods for frequently answering question about usb and dvb + stuff, a big thank you + + Bernd Wagner for helping with huge bug reports and discussions. + + Some guys on the linux-dvb mailing list for encouraging me + + Peter Schildmann >peter.schildmann-nospam-at-web.de< for his + user-level firmware loader, which saves a lot of time + + Ulf Hermenau for helping me out with traditional chinese. + + André Smoktun and Christian Frömmel for supporting me with + hardware and listening to my problems very patient -- cgit v1.2.3 From 72d4781a731b791d9f3845d08139a6946c991875 Mon Sep 17 00:00:00 2001 From: Michael Hunold Date: Fri, 6 Aug 2004 11:23:24 +0000 Subject: - add sysfs/udev support using "class_simple" - please read the new documentation file "udev.txt" for a short description on how to create the proper udev rules --- linux/Documentation/dvb/readme.txt | 3 +++ linux/Documentation/dvb/udev.txt | 44 ++++++++++++++++++++++++++++++++++++++ 2 files changed, 47 insertions(+) create mode 100644 linux/Documentation/dvb/udev.txt (limited to 'linux/Documentation/dvb') diff --git a/linux/Documentation/dvb/readme.txt b/linux/Documentation/dvb/readme.txt index e38016cf8..727e30470 100644 --- a/linux/Documentation/dvb/readme.txt +++ b/linux/Documentation/dvb/readme.txt @@ -45,4 +45,7 @@ various bt8xx based "budget" DVB cards contains detailed informations about the Visionplus VisionDTV USB-Ter DVB-T adapter. +"udev.txt" +how to get DVB and udev up and running. + Good luck and have fun! diff --git a/linux/Documentation/dvb/udev.txt b/linux/Documentation/dvb/udev.txt new file mode 100644 index 000000000..8ef0616ed --- /dev/null +++ b/linux/Documentation/dvb/udev.txt @@ -0,0 +1,44 @@ +The DVB subsystem currently registers to the sysfs subsystem using the +"class_simple" interface. + +This means that only the basic informations like module loading parameters +are presented through sysfs. Other things that might be interesting are +currently *not* available. + +Nevertheless it's now possible to add proper udev rules so that the +DVB device nodes are created automatically. + +We assume that you have udev already up and running and that have been +creating the DVB device nodes manually up to now due to the missing sysfs +support. + +0. Don't forget to disable your current method of creating the +device nodes manually. + +1. Unfortunately, you'll need a helper script to transform the kernel +sysfs device name into the well known dvb adapter / device naming scheme. +The script should be called "dvb.sh" and should be placed into a script +dir where udev can execute it, most likely /etc/udev/scripts/ + +So, create a new file /etc/udev/scripts/dvb.sh and add the following: +------------------------------schnipp------------------------------------------------ +#!/bin/sh +/bin/echo $1 | /bin/sed -e 's,dvb\([0-9]\)\.\([^0-9]*\)\([0-9]\),dvb/adapter\1/\2\3,' +------------------------------schnipp------------------------------------------------ + +Don't forget to make the script executable with "chmod". + +1. You need to add a proper rule to your udev rule file. The main +udev configuration file /etc/udev/udev.conf will tell you the +directory of the rules, most likely it's /etc/udev/rules.d/ + +Edit the main rule file and add the following rule to the end +of the file. + +KERNEL="dvb*", PROGRAM="/etc/udev/scripts/dvb.sh %k", NAME="%c" + +For every device that registers to the sysfs subsystem with a "dvb" prefix, +the helper script /etc/udev/scripts/dvb.sh is invoked, which will then +create the proper device name. + +Now udev will create the device node in your /dev/ device tree. -- cgit v1.2.3 From aad50aad46ee16967a58231ee98f94c1d5baaddb Mon Sep 17 00:00:00 2001 From: Michael Hunold Date: Wed, 11 Aug 2004 09:44:45 +0000 Subject: - don't instruct users to add the rules to the main rule file, but tell them to create a separate dvb.rule file --- linux/Documentation/dvb/udev.txt | 20 +++++++++++--------- 1 file changed, 11 insertions(+), 9 deletions(-) (limited to 'linux/Documentation/dvb') diff --git a/linux/Documentation/dvb/udev.txt b/linux/Documentation/dvb/udev.txt index 8ef0616ed..68ee224b6 100644 --- a/linux/Documentation/dvb/udev.txt +++ b/linux/Documentation/dvb/udev.txt @@ -28,17 +28,19 @@ So, create a new file /etc/udev/scripts/dvb.sh and add the following: Don't forget to make the script executable with "chmod". -1. You need to add a proper rule to your udev rule file. The main -udev configuration file /etc/udev/udev.conf will tell you the -directory of the rules, most likely it's /etc/udev/rules.d/ - -Edit the main rule file and add the following rule to the end -of the file. +1. You need to create a proper udev rule that will create the device nodes +like you know them. All real distributions out there scan the /etc/udev/rules.d +directory for rule files. The main udev configuration file /etc/udev/udev.conf +will tell you the directory where the rules are, most likely it's /etc/udev/rules.d/ +Create a new rule file in that directory called "dvb.rule" and add the following line: +------------------------------schnipp------------------------------------------------ KERNEL="dvb*", PROGRAM="/etc/udev/scripts/dvb.sh %k", NAME="%c" +------------------------------schnipp------------------------------------------------ + +If you want more control over the device nodes (for example a special group membership) +have a look at "man udev". For every device that registers to the sysfs subsystem with a "dvb" prefix, the helper script /etc/udev/scripts/dvb.sh is invoked, which will then -create the proper device name. - -Now udev will create the device node in your /dev/ device tree. +create the proper device node in your /dev/ directory. -- cgit v1.2.3 From 26e02de58f44002171f9bf3da4ad68441c068816 Mon Sep 17 00:00:00 2001 From: Andrew de Quincy Date: Thu, 26 Aug 2004 17:23:24 +0000 Subject: Initial checkin --- linux/Documentation/dvb/get_dvb_firmware | 329 +++++++++++++++++++++++++++++++ 1 file changed, 329 insertions(+) create mode 100644 linux/Documentation/dvb/get_dvb_firmware (limited to 'linux/Documentation/dvb') diff --git a/linux/Documentation/dvb/get_dvb_firmware b/linux/Documentation/dvb/get_dvb_firmware new file mode 100644 index 000000000..0df55436f --- /dev/null +++ b/linux/Documentation/dvb/get_dvb_firmware @@ -0,0 +1,329 @@ +#!/usr/bin/perl +# DVB firmware extractor +# +# (c) 2004 Andrew de Quincey +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + +use File::Temp qw/ tempdir /; +use IO::Handle; + +@components = ( "alps_tdlb7", "sp887x", "tda10045", "tda10046", "av7110", "dec2000t", "dec2540t", "dec3000s", "vp7041" ); + +# Check args +syntax() if (scalar(@ARGV) != 1); +$cid = $ARGV[0]; + +# Do it! +for($i=0; $i < scalar(@components); $i++) { + if ($cid eq $components[$i]) { + $outfile = eval($cid); + die $@ if $@; + print STDERR "Firmware $outfile extracted successfully. Now copy it to /usr/lib/hotplug/firmware/.\n"; + exit(0); + } +} + +# If we get here, it wasn't found +print STDERR "Unknown component \"$cid\"\n"; +syntax(); + + + + +# --------------------------------------------------------------- +# Firmware-specific extraction subroutines + +sub alps_tdlb7 { + my $sourcefile = "tt_Premium_217g.zip"; + my $url = "http://www.technotrend.de/new/217g/$sourcefile"; + my $hash = "53970ec17a538945a6d8cb608a7b3899"; + my $outfile = "dvb-fe-tdlb7.fw"; + my $tmpdir = tempdir(DIR => "/tmp", CLEANUP => 1); + + checkstandard(); + + wgetfile($sourcefile, $url); + unzip($sourcefile, $tmpdir); + verify("$tmpdir/software/OEM/HE/App/boot/SC_MAIN.MC", $hash); + copy("$tmpdir/software/OEM/HE/App/boot/SC_MAIN.MC", $outfile); + + $outfile; +} + +sub sp887x { + my $sourcefile = "Dvbt1.3.57.6.zip"; + my $url = "http://www.avermedia.com/software/$sourcefile"; + my $cabfile = "DVBT Net Ver1.3.57.6/disk1/data1.cab"; + my $hash = "237938d53a7f834c05c42b894ca68ac3"; + my $outfile = "dvb-fe-sp887x.fw"; + my $tmpdir = tempdir(DIR => "/tmp", CLEANUP => 1); + + checkstandard(); + checkunshield(); + + wgetfile($sourcefile, $url); + unzip($sourcefile, $tmpdir); + unshield("$tmpdir/$cabfile", $tmpdir); + verify("$tmpdir/sc_main.mc", $hash); + copy("$tmpdir/sc_main.mc", $outfile); + + $outfile; +} + +sub tda10045 { + my $sourcefile = "tt_budget_217g.zip"; + my $url = "http://www.technotrend.de/new/217g/$sourcefile"; + my $hash = "2105fd5bf37842fbcdfa4bfd58f3594a"; + my $outfile = "dvb-fe-tda10045.fw"; + my $tmpdir = tempdir(DIR => "/tmp", CLEANUP => 1); + + checkstandard(); + + wgetfile($sourcefile, $url); + unzip($sourcefile, $tmpdir); + extract("$tmpdir/software/OEM/PCI/App/ttlcdacc.dll", 0x37ef9, 30555, "$tmpdir/fwtmp"); + verify("$tmpdir/fwtmp", $hash); + copy("$tmpdir/fwtmp", $outfile); + + $outfile; +} + +sub tda10046 { + my $sourcefile = "tt_budget_217g.zip"; + my $url = "http://www.technotrend.de/new/217g/$sourcefile"; + my $hash = "a25b579e37109af60f4a36c37893957c"; + my $outfile = "dvb-fe-tda10046.fw"; + my $tmpdir = tempdir(DIR => "/tmp", CLEANUP => 1); + + checkstandard(); + + wgetfile($sourcefile, $url); + unzip($sourcefile, $tmpdir); + extract("$tmpdir/software/OEM/PCI/App/ttlcdacc.dll", 0x3f731, 24479, "$tmpdir/fwtmp"); + verify("$tmpdir/fwtmp", $hash); + copy("$tmpdir/fwtmp", $outfile); + + $outfile; +} + +sub av7110 { + my $sourcefile = "dvb-ttpci-01.fw-261c"; + my $url = "http://www.linuxtv.org/download/dvb/firmware/$sourcefile"; + my $hash = "7b263de6b0b92d2347319c65adc7d4fb"; + my $outfile = "dvb-ttpci-01.fw"; + + checkstandard(); + + wgetfile($sourcefile, $url); + verify($sourcefile, $hash); + copy($sourcefile, $outfile); + + $outfile; +} + +sub dec2000t { + my $sourcefile = "dec217g.exe"; + my $url = "http://hauppauge.lightpath.net/de/$sourcefile"; + my $hash = "bd86f458cee4a8f0a8ce2d20c66215a9"; + my $outfile = "dvb-ttusb-dec-2000t.fw"; + my $tmpdir = tempdir(DIR => "/tmp", CLEANUP => 1); + + checkstandard(); + + wgetfile($sourcefile, $url); + unzip($sourcefile, $tmpdir); + verify("$tmpdir/software/OEM/STB/App/Boot/STB_PC_T.bin", $hash); + copy("$tmpdir/software/OEM/STB/App/Boot/STB_PC_T.bin", $outfile); + + $outfile; +} + +sub dec2540t { + my $sourcefile = "dec217g.exe"; + my $url = "http://hauppauge.lightpath.net/de/$sourcefile"; + my $hash = "53e58f4f5b5c2930beee74a7681fed92"; + my $outfile = "dvb-ttusb-dec-2540t.fw"; + my $tmpdir = tempdir(DIR => "/tmp", CLEANUP => 1); + + checkstandard(); + + wgetfile($sourcefile, $url); + unzip($sourcefile, $tmpdir); + verify("$tmpdir/software/OEM/STB/App/Boot/STB_PC_X.bin", $hash); + copy("$tmpdir/software/OEM/STB/App/Boot/STB_PC_X.bin", $outfile); + + $outfile; +} + +sub dec3000s { + my $sourcefile = "dec217g.exe"; + my $url = "http://hauppauge.lightpath.net/de/$sourcefile"; + my $hash = "b013ececea83f4d6d8d2a29ac7c1b448"; + my $outfile = "dvb-ttusb-dec-3000s.fw"; + my $tmpdir = tempdir(DIR => "/tmp", CLEANUP => 1); + + checkstandard(); + + wgetfile($sourcefile, $url); + unzip($sourcefile, $tmpdir); + verify("$tmpdir/software/OEM/STB/App/Boot/STB_PC_S.bin", $hash); + copy("$tmpdir/software/OEM/STB/App/Boot/STB_PC_S.bin", $outfile); + + $outfile; +} + +sub vp7041 { + my $sourcefile = "2.422.zip"; + my $url = "http://www.twinhan.com/files/driver/USB-Ter/$sourcefile"; + my $hash = "e88c9372d1f66609a3e7b072c53fbcfe"; + my $outfile = "dvb-vp7041-2.422.fw"; + my $tmpdir = tempdir(DIR => "/tmp", CLEANUP => 1); + + checkstandard(); + + wgetfile($sourcefile, $url); + unzip($sourcefile, $tmpdir); + extract("$tmpdir/VisionDTV/Drivers/Win2K&XP/UDTTload.sys", 12503, 3036, "$tmpdir/fwtmp1"); + extract("$tmpdir/VisionDTV/Drivers/Win2K&XP/UDTTload.sys", 2207, 10274, "$tmpdir/fwtmp2"); + + my $CMD = "\000\001\000\222\177\000"; + my $PAD = "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"; + my ($FW); + open $FW, ">$tmpdir/fwtmp3"; + print $FW "$CMD\001$PAD"; + print $FW "$CMD\001$PAD"; + appendfile($FW, "$tmpdir/fwtmp1"); + print $FW "$CMD\000$PAD"; + print $FW "$CMD\001$PAD"; + appendfile($FW, "$tmpdir/fwtmp2"); + print $FW "$CMD\001$PAD"; + print $FW "$CMD\000$PAD"; + close($FW); + + verify("$tmpdir/fwtmp3", $hash); + copy("$tmpdir/fwtmp3", $outfile); + + $outfile; +} + + + + +# --------------------------------------------------------------- +# Utilities + +sub checkstandard { + if (system("which unzip > /dev/null 2>&1")) { + die "This firmware requires the unzip command - see ftp://ftp.info-zip.org/pub/infozip/UnZip.html\n"; + } + if (system("which md5sum > /dev/null 2>&1")) { + die "This firmware requires the md5sum command - see http://www.gnu.org/software/coreutils/\n"; + } + if (system("which wget > /dev/null 2>&1")) { + die "This firmware requires the wget command - see http://wget.sunsite.dk/\n"; + } +} + +sub checkunshield { + if (system("which unshield > /dev/null 2>&1")) { + die "This firmware requires the unshield command - see http://sourceforge.net/projects/synce/\n"; + } +} + +sub wgetfile { + my ($sourcefile, $url) = @_; + + if (! -f $sourcefile) { + system("wget \"$url\"") and die "wget failed - unable to download firmware"; + } +} + +sub unzip { + my ($sourcefile, $todir) = @_; + + $status = system("unzip -q -o -d \"$todir\" \"$sourcefile\" 2>/dev/null" ); + if ((($status >> 8) > 2) || (($status & 0xff) != 0)) { + die ("unzip failed - unable to extract firmware"); + } +} + +sub unshield { + my ($sourcefile, $todir) = @_; + + system("unshield -d \"$todir\" \"$sourcefile\" > /dev/null" ) and die ("unshield failed - unable to extract firmware"); +} + +sub verify { + my ($filename, $hash) = @_; + my ($testhash); + + open(CMD, "md5sum \"$filename\"|"); + $testhash = ; + $testhash =~ /([a-zA-Z0-9]*)/; + $testhash = $1; + close CMD; + die "Hash of extracted file does not match!\n" if ($testhash ne $hash); +} + +sub copy { + my ($from, $to) = @_; + + system("cp -f $from $to") and die ("cp failed"); +} + +sub extract { + my ($infile, $offset, $length, $outfile) = @_; + my ($chunklength, $buf, $rcount); + + open INFILE, "<$infile"; + open OUTFILE, ">$outfile"; + sysseek(INFILE, $offset, SEEK_SET); + while($length > 0) { + # Calc chunk size + $chunklength = 2048; + $chunklength = $length if ($chunklength > $length); + + $rcount = sysread(INFILE, $buf, $chunklength); + die "Ran out of data\n" if ($rcount != $chunklength); + syswrite(OUTFILE, $buf); + $length -= $rcount; + } + close INFILE; + close OUTFILE; +} + +sub appendfile { + my ($FH, $infile) = @_; + my ($buf); + + open INFILE, "<$infile"; + while(1) { + $rcount = sysread(INFILE, $buf, 2048); + last if ($rcount == 0); + print $FH $buf; + } + close(INFILE); +} + +sub syntax() { + print STDERR "syntax: get_dvb_firmware \n"; + print STDERR "Supported components:\n"; + for($i=0; $i < scalar(@components); $i++) { + print STDERR "\t" . $components[$i] . "\n"; + } + exit(1); +} -- cgit v1.2.3 From 62525e8bd6a4a521756045e14978c17d80191ec0 Mon Sep 17 00:00:00 2001 From: Andrew de Quincy Date: Thu, 26 Aug 2004 18:05:18 +0000 Subject: Updated docs for new firmware download script --- linux/Documentation/dvb/avermedia.txt | 26 +----- linux/Documentation/dvb/firmware.txt | 160 ---------------------------------- linux/Documentation/dvb/readme.txt | 6 +- linux/Documentation/dvb/ttusb-dec.txt | 31 ++----- linux/Documentation/dvb/vp7041.txt | 25 +----- 5 files changed, 14 insertions(+), 234 deletions(-) delete mode 100644 linux/Documentation/dvb/firmware.txt (limited to 'linux/Documentation/dvb') diff --git a/linux/Documentation/dvb/avermedia.txt b/linux/Documentation/dvb/avermedia.txt index 5d8dbdada..09020ebd2 100644 --- a/linux/Documentation/dvb/avermedia.txt +++ b/linux/Documentation/dvb/avermedia.txt @@ -6,7 +6,6 @@ HOWTO: Get An Avermedia DVB-T working under Linux Assumptions and Introduction The Avermedia DVB-T Getting the card going - Getting the Firmware Receiving DVB-T in Australia Known Limitations Further Update @@ -149,28 +148,9 @@ Getting the card going to start accessing the card with utilities such as scan, tzap, dvbstream etc. - The current version of the frontend module sp887x.o, contains - no firmware drivers?, so the first time you open it with a DVB - utility the driver will try to download some initial firmware - to the card. You will need to download this firmware from the - web, or copy it from an installation of the Windows drivers - that probably came with your card, before you can use it. - - The default Linux filesystem location for this firmware is - /usr/lib/hotplug/firmware/sc_main.mc . - _________________________________________________________ - -Getting the Firmware - - As the firmware for the card is no longer contained within the - driver, it is necessary to extract it from the windows - drivers. - - The Windows drivers for the Avermedia DVB-T can be obtained - from: http://babyurl.com/H3U970 and you can get an application - to extract the firmware from: - http://www.kyz.uklinux.net/cabextract.php. - _________________________________________________________ + The frontend module sp887x.o, requires an external firmware. + Please use the command "get_dvb_firmware sp887x" to download + it. Then copy it to /usr/lib/hotplug/firmware. Receiving DVB-T in Australia diff --git a/linux/Documentation/dvb/firmware.txt b/linux/Documentation/dvb/firmware.txt deleted file mode 100644 index d97852d32..000000000 --- a/linux/Documentation/dvb/firmware.txt +++ /dev/null @@ -1,160 +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) - -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: - -Drivers using the firmware hotplug interface: -- dvb-ttpci -- tda1004x: - -Proprietary solutions which need to be converted: -- 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). -- ttusb-dec: see "ttusb-dec.txt" for details -- vp7041: see vp7041.txt for more information - -0) Getting a usable firmware file - -- For the dvb-ttpci driver/av7110 card you can download the firmware files from -http://linuxtv.org/download/dvb/firmware/ - -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. - -The ttpci-firmware utility from linuxtv.org CVS can be used to -convert Dpram and Root files into a usable firmware image. -See dvb-kerrnel/scripts/ in http://linuxtv.org/cvs/. - -> wget http://www.linuxtv.org/download/dvb/firmware/dvb-ttpci-01.fw-261c -> mv dvb-ttpci-01.fw-261c /usr/lib/hotplug/firmware/dvb-ttpci-01.fw - -- The tda1004x driver needs a copy of the DLL "ttlcdacc.dll" from the Haupauge or Technotrend -windows driver. Currently the DLL from v2.15a of the technotrend driver is supported. Other versions can -added reasonably painlessly. - -Windows driver URL: http://www.technotrend.de/ - -> wget http://www.technotrend.de/new/215/TTweb_215a_budget_20_05_2003.zip -> unzip -j TTweb_215a_budget_20_05_2003.zip Software/Oem/PCI/App/ttlcdacc.dll - -Rename "ttlcdacc.dll" to "tda1004x.bin" -- that's currently the default name -for the firmware file. - -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). - -Currently the drivers mentionend above support firmware upload through the -hotplug manager. If you have such a card, a simple "modprobe" of the driver -will take care of everything, ie. - -> modprobe dvb-ttpci -or -> modprobe tda1004x - -If you have the hotplug firmware scripts installed, both drivers will ask the hotplug -daemon for their default firmware. If the scripts are there, but the firmware cannot -be found, an error message will be printed immediately. Make sure that the firmware -are in a path where the hotplug manager can find them. - -Please note that the default firmware name of the tda1004x doesn't follow the -naming conventions stated above. It's still called "tda1004x.bin". - -2) Manually loading the firmware into a driver - -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) Loading the driver and uploading the firmware manually - -"modprobe" will take care that every needed module will be loaded -automatically - -> modprobe dvb-ttpci -or -> modprobe tda1004x - -If you don't have the hotplug subsystem running, the "modprobe" process will -now 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 of the device that needs an firmware upload. - -In this example, this is the pci id of my dvb-c card. It depends on the pci slot, -so it changes if you plug the card to different slots. For the tda1004x, -the id will be an artifical number consisting on the i2c bus the device is on. - -You can upload the firmware like that: - -> export DEVDIR=/sys/class/firmware/0000\:03\:05.0 -> echo 1 > $DEVDIR/loading - -For the dvb-ttpci card: -> cat dvb-ttpci-01.fw > $DEVDIR/data - -For the tda1004x frontend, the path above might be different, but the other things -are the same: -> cat tda1004x.bin > $DEVDIR/data - -> echo 0 > $DEVDIR/loading - -That's it. The driver should be up and running now. diff --git a/linux/Documentation/dvb/readme.txt b/linux/Documentation/dvb/readme.txt index 727e30470..b308a7962 100644 --- a/linux/Documentation/dvb/readme.txt +++ b/linux/Documentation/dvb/readme.txt @@ -28,9 +28,9 @@ 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. +"get_dvb_firmware" +script to download and extract firmware for those devices +that require it. "ttusb-dec.txt" contains detailed informations about the diff --git a/linux/Documentation/dvb/ttusb-dec.txt b/linux/Documentation/dvb/ttusb-dec.txt index 485dab5ad..5c1e984c2 100644 --- a/linux/Documentation/dvb/ttusb-dec.txt +++ b/linux/Documentation/dvb/ttusb-dec.txt @@ -23,34 +23,17 @@ To Do: Getting the Firmware -------------------- -The firmware can be found in the software update zip files on this page: -http://www.hauppauge.de/sw_dec.htm - -The firmwares are named as follows: -DEC2000-t: STB_PC_T.bin -DEC2540-t: STB_PC_X.bin -DEC3000-s: STB_PC_S.bin - -Note that firmwares since version 2.16 beta2 for the DEC2000-t give the device -the USB ID of the DEC3000-s. The driver copes with this. - -Instructions follow for retrieving version 2.16 of the firmware: - -wget http://hauppauge.lightpath.net/de/dec216.exe -unzip -j dec216.exe software/OEM/STB/App/Boot/STB_PC_T.bin -unzip -j dec216.exe software/OEM/STB/App/Boot/STB_PC_X.bin -unzip -j dec216.exe software/OEM/STB/App/Boot/STB_PC_S.bin +To download the firmware, use the following commands: +"get_dvb_firmware dec2000t" +"get_dvb_firmware dec2540t" +"get_dvb_firmware dec3000s" Compilation Notes for 2.4 kernels --------------------------------- For 2.4 kernels the firmware for the DECs is compiled into the driver itself. -The firmwares are expected to be in the build-2.4 directory at compilation -time. -mv STB_PC_T.bin build-2.4/dvb-ttusb-dec-2000t.fw -mv STB_PC_X.bin build-2.4/dvb-ttusb-dec-2540t.fw -mv STB_PC_S.bin build-2.4/dvb-ttusb-dec-3000s.fw +Copy the three files downloaded above into the build-2.4 directory. Hotplug Firmware Loading for 2.6 kernels @@ -58,6 +41,4 @@ Hotplug Firmware Loading for 2.6 kernels For 2.6 kernels the firmware is loaded at the point that the driver module is loaded. See linux/Documentation/dvb/firmware.txt for more information. -mv STB_PC_T.bin /usr/lib/hotplug/firmware/dvb-ttusb-dec-2000t.fw -mv STB_PC_X.bin /usr/lib/hotplug/firmware/dvb-ttusb-dec-2540t.fw -mv STB_PC_S.bin /usr/lib/hotplug/firmware/dvb-ttusb-dec-3000s.fw +Copy the three files downloaded above into the /usr/lib/hotplug/firmware directory. diff --git a/linux/Documentation/dvb/vp7041.txt b/linux/Documentation/dvb/vp7041.txt index fe8ddae14..a706f3be5 100644 --- a/linux/Documentation/dvb/vp7041.txt +++ b/linux/Documentation/dvb/vp7041.txt @@ -65,29 +65,8 @@ the hotplug-path) needn't match your system, but probably it will :). First of all you have to extract the firmware from the windows driver: -Therefore "Peter Schildmann" originally wrote a shell script, I adopted -it to a Perl script for easier supporting different firmware version. -The firmware extract script can be found inside the dvb-kernel-cvs -(script/vp7041_extract_firmware.pl). - -If you want to extract the firmware, you have to run the script like this: - -perl vp7041_extract_firmware.pl - -The driverfile can be found in the windows driver package. As of version -2.42 the windows driver the file is called "UDTTload.sys", older (but -working) versions have "twinload.sys" respectively . (On a -windows system, where the driver is in use, it can be found in -\PathtoWindows\System32\drivers) -The name of the firmware-file for linux has to be "dvb-vp7041-.fw" -(the script cares about). -The firmware has to be put into /usr/lib/hotplug/firmware (As I said -Debian). - -If you figured out the driver file extract the firmware: - -perl vp7041_extract_firmware.pl /path/to/UDTTload.sys \ - /usr/lib/hotplug/firmware +Please use the command "get_dvb_firmware vp7041" to download and extract the +firmware. Then copy it to /usr/lib/hotplug/firmware. 1.2. Compiling -- cgit v1.2.3 From c96f7f33f594e8de4f24c4992493be1697e87721 Mon Sep 17 00:00:00 2001 From: Andrew de Quincy Date: Thu, 26 Aug 2004 18:26:27 +0000 Subject: Make safe for paths with spaces --- linux/Documentation/dvb/get_dvb_firmware | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'linux/Documentation/dvb') diff --git a/linux/Documentation/dvb/get_dvb_firmware b/linux/Documentation/dvb/get_dvb_firmware index 0df55436f..49a40f845 100644 --- a/linux/Documentation/dvb/get_dvb_firmware +++ b/linux/Documentation/dvb/get_dvb_firmware @@ -282,7 +282,7 @@ sub verify { sub copy { my ($from, $to) = @_; - system("cp -f $from $to") and die ("cp failed"); + system("cp -f \"$from\" \"$to\"") and die ("cp failed"); } sub extract { -- cgit v1.2.3 From 7d6379ce8a3f77ec43a279591cbaa37eb052c8d6 Mon Sep 17 00:00:00 2001 From: Patrick Boettcher Date: Sun, 5 Sep 2004 11:37:04 +0000 Subject: removed vp7041 doc and added dibusb doc --- linux/Documentation/dvb/README.dibusb | 120 +++++++++++++++++++++++++++++ linux/Documentation/dvb/get_dvb_firmware | 12 ++- linux/Documentation/dvb/vp7041.txt | 127 ------------------------------- 3 files changed, 130 insertions(+), 129 deletions(-) create mode 100644 linux/Documentation/dvb/README.dibusb delete mode 100644 linux/Documentation/dvb/vp7041.txt (limited to 'linux/Documentation/dvb') diff --git a/linux/Documentation/dvb/README.dibusb b/linux/Documentation/dvb/README.dibusb new file mode 100644 index 000000000..fd8719a18 --- /dev/null +++ b/linux/Documentation/dvb/README.dibusb @@ -0,0 +1,120 @@ +Documentation for dib3000mb frontend driver and dibusb device driver + +The drivers should work with + +- Twinhan VisionPlus VisionDTV USB-Ter DVB-T Device (VP7041) + http://www.twinhan.com/visiontv-2_4.htm + +- CTS Portable (Chinese Television System) + http://www.2cts.tv/ctsportable/ + +- KWorld V-Stream XPERT DTV - DVB-T USB + http://www.kworld.com.tw/asp/pindex.asp?id=4&pid=13 + +- HAMA DVB-T USB device + http://www.hama.de/portal/articleId*110620/action*2598 + +- DiBcom USB DVB-T reference device + + +Copyright (C) 2004 Patrick Boettcher (patrick.boettcher@desy.de), + +both drivers based on GPL code, which has + +Copyright (C) 2004 Amaury Demol for DiBcom (ademol@dibcom.fr) + +This program is free software; you can redistribute it and/or +modify it under the terms of the GNU General Public License as +published by the Free Software Foundation, version 2. + + +NEWS: + + 2004-09-05 - released the dibusb device and dib3000mb-frontend driver + + (old news for vp7041.c) + 2004-07-15 - found out, by accident, that the device has a TUA6010XS for + frequency generator + 2004-07-12 - figured out, that the driver should also work with the + CTS Portable (Chinese Television System) + 2004-07-08 - firmware-extraction-2.422-problem solved, driver is now working + properly with firmware extracted from 2.422 + - #if for 2.6.4 (dvb), compile issue + - changed firmware handling, see vp7041.txt sec 1.1 + 2004-07-02 - some tuner modifications, v0.1, cleanups, first public + 2004-06-28 - now using the dvb_dmx_swfilter_packets, everything + runs fine now + 2004-06-27 - able to watch and switching channels (pre-alpha) + - no section filtering yet + 2004-06-06 - first TS received, but kernel oops :/ + 2004-05-14 - firmware loader is working + 2004-05-11 - start writing the driver + +1. How to use? +NOTE: This driver was developed using Linux 2.6.6., +it is working with 2.6.7, 2.6.8.1. + +Linux 2.4.x support is not planned, but patches are very welcome. + +NOTE: I'm using Debian testing, so the following explaination (especially +the hotplug-path) needn't match your system, but probably it will :). + +1.1. Firmware + +The USB driver needs to download a firmware to start working. + +You can either use "get_dvb_firmware dibusb" to download the firmware or you +can get it directly via + +http://linuxtv.org/cgi-bin/cvsweb.cgi/dvb-kernel/firmware/dvb-dibusb-5.0.0.11.fw?rev=1.1&content-type=text/plain + +1.2. Compiling + +Since the driver is in the linux kernel, activating the driver in +your favorite config-environment should sufficient. I recommend +to compile the driver as module. Hotplug does the rest. + +1.3. Loading the drivers + +Hotplug is able to load the driver, when it is needed (because you plugged +in the device). + +If you want to enable debug output, you have to load the driver manually. + +modprobe dvb-dibusb debug=1 +modprobe dib3000m debug=1 + +should do the trick. + +When the driver is loaded successfully, the firmware file was in +the right place and the device is connected, the "Power"-LED should be +turned on. + +At this point you should be able to start a dvb-capable application. For myself +I used mplayer, dvbscan, tzap and kaxtv, they are working. Using the device +as a slave device in vdr, was not working for me. Some work has to be done +(patches and comments are very welcome). + +2. Known problems and bugs + +again, patches and comments are very very welcome + +3. Acknowledgements + Amaury Demol (ademol@dibcom.fr) and Francois Kanounnikoff from DiBcom for + providing specs, code and help, on which the dvb-dibusb and dib3000mb are + based. + + Alex Woods for frequently answering question about usb and dvb + stuff, a big thank you + + Bernd Wagner for helping with huge bug reports and discussions. + + Some guys on the linux-dvb mailing list for encouraging me + + Peter Schildmann >peter.schildmann-nospam-at-web.de< for his + user-level firmware loader, which saves a lot of time + + Ulf Hermenau for helping me out with traditional chinese. + + André Smoktun and Christian Frömmel for supporting me with + hardware and listening to my problems very patient diff --git a/linux/Documentation/dvb/get_dvb_firmware b/linux/Documentation/dvb/get_dvb_firmware index 49a40f845..78ad29174 100644 --- a/linux/Documentation/dvb/get_dvb_firmware +++ b/linux/Documentation/dvb/get_dvb_firmware @@ -21,7 +21,7 @@ use File::Temp qw/ tempdir /; use IO::Handle; -@components = ( "alps_tdlb7", "sp887x", "tda10045", "tda10046", "av7110", "dec2000t", "dec2540t", "dec3000s", "vp7041" ); +@components = ( "alps_tdlb7", "sp887x", "tda10045", "tda10046", "av7110", "dec2000t", "dec2540t", "dec3000s", "vp7041", "dibusb" ); # Check args syntax() if (scalar(@ARGV) != 1); @@ -220,8 +220,16 @@ sub vp7041 { $outfile; } +sub dibusb { + my $url = "http://linuxtv.org/cgi-bin/cvsweb.cgi/dvb-kernel/firmware/dvb-dibusb-5.0.0.11.fw?rev=1.1&content-type=text/plain"; + my $outfile = "dvb-dibusb-5.0.0.11.fw"; + my $hash = "fa490295a527360ca16dcdf3224ca243"; + wgetfile($outfile, $url); + verify($outfile,$hash); + $outfile; +} # --------------------------------------------------------------- # Utilities @@ -248,7 +256,7 @@ sub wgetfile { my ($sourcefile, $url) = @_; if (! -f $sourcefile) { - system("wget \"$url\"") and die "wget failed - unable to download firmware"; + system("wget -O \"$sourcefile\" \"$url\"") and die "wget failed - unable to download firmware"; } } diff --git a/linux/Documentation/dvb/vp7041.txt b/linux/Documentation/dvb/vp7041.txt deleted file mode 100644 index a706f3be5..000000000 --- a/linux/Documentation/dvb/vp7041.txt +++ /dev/null @@ -1,127 +0,0 @@ -Linux Driver for - VisionPlus VisionDTV USB-Ter DVB-T Device (VP7041) - (http://www.twinhan.com/visiontv-2_4.htm) -and - CTS Portable (Chinese Television System) - (http://www.2cts.tv/ctsportable/) - -Copyright (C) 2004 Patrick Boettcher (patrick.boettcher@desy.de), - -This program is free software; you can redistribute it and/or -modify it under the terms of the GNU General Public License as -published by the Free Software Foundation, version 2. - -Koenigs Wusterhausen, Germany - -NEWS: - 2004-07-15 - found out, by accident, that the device has a TUA6010XS for - frequency generator - 2004-07-12 - figured out, that the driver should also work with the - CTS Portable (Chinese Television System) - 2004-07-08 - firmware-extraction-2.422-problem solved, driver is now working - properly with firmware extracted from 2.422 - - #if for 2.6.4 (dvb), compile issue - - changed firmware handling, see vp7041.txt sec 1.1 - 2004-07-02 - some tuner modifications, v0.1, cleanups, first public - 2004-06-28 - now using the dvb_dmx_swfilter_packets, everything - runs fine now - 2004-06-27 - able to watch and switching channels (pre-alpha) - - no section filtering yet - 2004-06-06 - first TS received, but kernel oops :/ - 2004-05-14 - firmware loader is working - 2004-05-11 - start writing the driver - -0. About the driver. -This driver is completly reverse-engineered by using the device on a guest PC -with Windows (where a working driver exists). -If you have a look into the source code, you will find a lot of buffers with -a lot of hex-numbers in it. By all means, I will not assert, that I understand -each of them. But this is like the windows driver controls the device, and -obviously it is working even in Linux. - -If someone of you recognizes something in those buffers (maybe there is -a frontend or any other device, which are fed like this) please let me know. -If I could assign a function name to any of those anonymous numbers, I will -be very happy. - -By all means, I will highly appreciate any comment, critic and patch to improve -the quality of this piece of software. - -When using this driver your system can crash or hang. I'm not responsibly for -any data you may lose. So be warned. (Enabling sysrq saves a lot of data). - -Addition: This driver should also work with the CTS Portable since the -windriver seems to be identical to the Twinhan one. Comment on this badly -needed. - -1. How to use? -NOTE: This driver was developed on Linux 2.6.6., it is working with 2.6.7. -Linux 2.4.x support is not planned, but patches are very welcome. - -NOTE: I'm using Debian testing, so the following explaination (especially -the hotplug-path) needn't match your system, but probably it will :). - -1.1. Firmware extraction - -First of all you have to extract the firmware from the windows driver: - -Please use the command "get_dvb_firmware vp7041" to download and extract the -firmware. Then copy it to /usr/lib/hotplug/firmware. - -1.2. Compiling - -Since the driver is in the linux kernel, activating the driver in -your favorite config-environment should sufficient. I recommend -to compile the driver as module. Hotplug does the rest. - -1.3. Loading the driver - -Hotplug is able to load the driver, when it is needed (because you plugged -in the device). - -If you want to enable debug output, you have to load the driver manually. - -modprobe vp7041 debug=1 - -should do the trick. - -When the driver is loaded successfully, the firmware file was in -the right place and the device is connected, the "Power"-LED should be -turned on. - -If this is done, even in the non-debug mode, dmesg should show -something like the following: - -DVB: registering new adapter (VisionPlus VisionDTV USB-Ter DVB-T Device). -DVB: registering frontend 0:0 (VisionPlus VisionDTV USB-Ter (VP7041) Frontend)... -VisionPlus VisionDTV USB-Ter DVB-T Device successfully initialized and connected. - -At this point you are able to start a dvb-capable application. For myself -I used mplayer, dvbscan, tzap and kaxtv, they are working. Using the device -as a slave device in vdr, was not working for me. Some work has to be done -(patches and comments are very welcome). - -2. Known problems and bugs - -see vp7041.c - -2.1 TODO -see vp7041.c - -again, patches and comments are very very welcome - -3. Acknowledgements - Alex Woods for frequently answering question about usb and dvb - stuff, a big thank you - - Bernd Wagner for helping with huge bug reports and discussions. - - Some guys on the linux-dvb mailing list for encouraging me - - Peter Schildmann >peter.schildmann-nospam-at-web.de< for his - user-level firmware loader, which saves a lot of time - - Ulf Hermenau for helping me out with traditional chinese. - - André Smoktun and Christian Frömmel for supporting me with - hardware and listening to my problems very patient -- cgit v1.2.3 From 00809cd196b2a808d5b3f3f9d88496778e2389d8 Mon Sep 17 00:00:00 2001 From: Patrick Boettcher Date: Mon, 6 Sep 2004 04:59:40 +0000 Subject: added the USB device to the card-list --- linux/Documentation/dvb/cards.txt | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'linux/Documentation/dvb') diff --git a/linux/Documentation/dvb/cards.txt b/linux/Documentation/dvb/cards.txt index 4a397fae3..43e1a8a97 100644 --- a/linux/Documentation/dvb/cards.txt +++ b/linux/Documentation/dvb/cards.txt @@ -38,6 +38,7 @@ o Frontends drivers: Comtech DVBT-6k07 (SP5730 PLL) (NxtWave Communications NXT6000 demodulator) - sp887x : Microtune 7202D + - dib3000mb : DiBcom 3000-MB Frontend DVB-S/C/T: - dst : TwinHan DST Frontend @@ -66,4 +67,9 @@ o Technotrend / Hauppauge DVB USB devices: - Nova USB - DEC 2000-T, 3000-S, 2540-T +o DiBcom DVB-T USB based devices: + - Twinhan VisionPlus VisionDTV USB-Ter DVB-T Device + - KWorld V-Stream XPERT DTV - DVB-T USB + - HAMA DVB-T USB device + o Experimental support for the analog module of the Siemens DVB-C PCI card -- cgit v1.2.3 From 2afc53b6555473db9d4cf452d0394865b3875409 Mon Sep 17 00:00:00 2001 From: Andrew de Quincy Date: Thu, 9 Sep 2004 10:14:41 +0000 Subject: Minor fix to check commands exist --- linux/Documentation/dvb/get_dvb_firmware | 2 ++ 1 file changed, 2 insertions(+) (limited to 'linux/Documentation/dvb') diff --git a/linux/Documentation/dvb/get_dvb_firmware b/linux/Documentation/dvb/get_dvb_firmware index 78ad29174..82bc4e58c 100644 --- a/linux/Documentation/dvb/get_dvb_firmware +++ b/linux/Documentation/dvb/get_dvb_firmware @@ -225,6 +225,8 @@ sub dibusb { my $outfile = "dvb-dibusb-5.0.0.11.fw"; my $hash = "fa490295a527360ca16dcdf3224ca243"; + checkstandard(); + wgetfile($outfile, $url); verify($outfile,$hash); -- cgit v1.2.3 From ec3be35a5b3647656f5dd8d4ea88d44348c7d93c Mon Sep 17 00:00:00 2001 From: Patrick Boettcher Date: Mon, 13 Sep 2004 07:34:45 +0000 Subject: fixed typo --- linux/Documentation/dvb/README.dibusb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'linux/Documentation/dvb') diff --git a/linux/Documentation/dvb/README.dibusb b/linux/Documentation/dvb/README.dibusb index fd8719a18..9ddd53974 100644 --- a/linux/Documentation/dvb/README.dibusb +++ b/linux/Documentation/dvb/README.dibusb @@ -82,7 +82,7 @@ in the device). If you want to enable debug output, you have to load the driver manually. modprobe dvb-dibusb debug=1 -modprobe dib3000m debug=1 +modprobe dib3000mb debug=1 should do the trick. -- cgit v1.2.3 From 16c72bebd2824b32cc1629b04f66454e8b810856 Mon Sep 17 00:00:00 2001 From: Patrick Boettcher Date: Mon, 13 Sep 2004 21:28:47 +0000 Subject: - added support for "Ultima Electronic/Artec T1 USB TVBOX" (another dibusb clone) reported by Christian Motschke, thanks - make some doc notes about it --- linux/Documentation/dvb/README.dibusb | 35 +++++++++++++++++++++++++++++++++-- 1 file changed, 33 insertions(+), 2 deletions(-) (limited to 'linux/Documentation/dvb') diff --git a/linux/Documentation/dvb/README.dibusb b/linux/Documentation/dvb/README.dibusb index 9ddd53974..a19154501 100644 --- a/linux/Documentation/dvb/README.dibusb +++ b/linux/Documentation/dvb/README.dibusb @@ -16,6 +16,9 @@ The drivers should work with - DiBcom USB DVB-T reference device +- Ultima Electronic/Artec T1 USB TVBOX + http://www.arteceuro.com/products-tvbox.html + Copyright (C) 2004 Patrick Boettcher (patrick.boettcher@desy.de), @@ -29,7 +32,8 @@ published by the Free Software Foundation, version 2. NEWS: - + 2004-09-13 - added support for a new device (Artec T1 USB TVBOX), thanks + to Christian Motschke for reporting 2004-09-05 - released the dibusb device and dib3000mb-frontend driver (old news for vp7041.c) @@ -97,7 +101,34 @@ as a slave device in vdr, was not working for me. Some work has to be done 2. Known problems and bugs -again, patches and comments are very very welcome +TODO: +- add some additional URBs for USB data transfer +- due a firmware bug no write access destroys the USB mpeg transfers -> no + writes during streaming, stop streaming, when adding another pid + +2.1. Adding new devices + +It is not possible to determine the range of devices based on the DiBcom +reference design. This is because the reference design of DiBcom can be sold +to third persons, without telling DiBcom (so done with the Twinhan VP7041 and +the HAMA device). + +When you think you have a device like this and the driver does not recognizes it, +please send the ****load.inf and the ****cap.inf of the Windows driver to me. + +Sometimes the Vendor or Product ID is identical to the ones of Twinhan, even +though it is not a Twinhan device (e.g. HAMA), then please send me the name +of the device. I will add it to this list in order to make this clear to +others. + +If you are familar with C you can also add the VID and PID of the device to +the dvb-dibusb.[hc]-files and create a patch and send it over to me or to +the linux-dvb mailing list, _after_ you have tried compiling and modprobing +it. + +2.2. Comments + +Patches, comments and suggestions are very very welcome 3. Acknowledgements Amaury Demol (ademol@dibcom.fr) and Francois Kanounnikoff from DiBcom for -- cgit v1.2.3 From c40a86c67942fe83a8a3461a5ae7702f7471474e Mon Sep 17 00:00:00 2001 From: Patrick Boettcher Date: Fri, 17 Sep 2004 07:58:46 +0000 Subject: - typos in README.dibusb fixed and comments added - changed debug calls, added debug levels - fixed bug, when enumerating the firmware files --- linux/Documentation/dvb/README.dibusb | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) (limited to 'linux/Documentation/dvb') diff --git a/linux/Documentation/dvb/README.dibusb b/linux/Documentation/dvb/README.dibusb index a19154501..ed73aabdc 100644 --- a/linux/Documentation/dvb/README.dibusb +++ b/linux/Documentation/dvb/README.dibusb @@ -12,7 +12,7 @@ The drivers should work with http://www.kworld.com.tw/asp/pindex.asp?id=4&pid=13 - HAMA DVB-T USB device - http://www.hama.de/portal/articleId*110620/action*2598 + http://www.hama.de/portal/articleId*110620/action*2598 - DiBcom USB DVB-T reference device @@ -103,8 +103,8 @@ as a slave device in vdr, was not working for me. Some work has to be done TODO: - add some additional URBs for USB data transfer -- due a firmware bug no write access destroys the USB mpeg transfers -> no - writes during streaming, stop streaming, when adding another pid +- due a firmware problem i2c writes during mpeg transfers destroy the stream + no i2c writes during streaming, interrupt streaming, when adding another pid 2.1. Adding new devices @@ -143,7 +143,8 @@ Patches, comments and suggestions are very very welcome Some guys on the linux-dvb mailing list for encouraging me Peter Schildmann >peter.schildmann-nospam-at-web.de< for his - user-level firmware loader, which saves a lot of time + user-level firmware loader, which saves a lot of time + (when writing the vp7041 driver) Ulf Hermenau for helping me out with traditional chinese. -- cgit v1.2.3 From f0ef0b54a60a050a2cfaf014524495710a299f89 Mon Sep 17 00:00:00 2001 From: Patrick Boettcher Date: Mon, 20 Sep 2004 15:21:56 +0000 Subject: - added notes for new dibusb device - corrected old pointer to vp7041.txt --- linux/Documentation/dvb/README.dibusb | 7 +++++++ linux/Documentation/dvb/readme.txt | 6 +++--- 2 files changed, 10 insertions(+), 3 deletions(-) (limited to 'linux/Documentation/dvb') diff --git a/linux/Documentation/dvb/README.dibusb b/linux/Documentation/dvb/README.dibusb index ed73aabdc..0e2363727 100644 --- a/linux/Documentation/dvb/README.dibusb +++ b/linux/Documentation/dvb/README.dibusb @@ -19,6 +19,9 @@ The drivers should work with - Ultima Electronic/Artec T1 USB TVBOX http://www.arteceuro.com/products-tvbox.html +- Compro Videomate DVB-U2000 - DVB-T USB + http://www.comprousa.com/products/vmu2000.htm + Copyright (C) 2004 Patrick Boettcher (patrick.boettcher@desy.de), @@ -32,6 +35,10 @@ published by the Free Software Foundation, version 2. NEWS: + 2004-09-20 - added support for a new device (Compro DVB-U2000), thanks + to Amaury Demol for reporting + - changed usb TS transfer method (several urbs, stopping transfer + before setting a new pid) 2004-09-13 - added support for a new device (Artec T1 USB TVBOX), thanks to Christian Motschke for reporting 2004-09-05 - released the dibusb device and dib3000mb-frontend driver diff --git a/linux/Documentation/dvb/readme.txt b/linux/Documentation/dvb/readme.txt index b308a7962..a60c27d43 100644 --- a/linux/Documentation/dvb/readme.txt +++ b/linux/Documentation/dvb/readme.txt @@ -41,9 +41,9 @@ contains detailed installation instructions for the various bt8xx based "budget" DVB cards (Nebula, Pinnacle PCTV, Twinhan DST) -"vp7041.txt" -contains detailed informations about the -Visionplus VisionDTV USB-Ter DVB-T adapter. +"README.dibusb" +contains detailed information about adapters +based on DiBcom reference design. "udev.txt" how to get DVB and udev up and running. -- cgit v1.2.3 From 00da2badce9a5354c4315b2805e62fb1f77edf63 Mon Sep 17 00:00:00 2001 From: Patrick Boettcher Date: Tue, 28 Sep 2004 19:36:44 +0000 Subject: - added new device ids (unkown name) from new Twinhan driver - notes in documentation - some cleanups - return values in firmware upload method (thanks to Ian ) --- linux/Documentation/dvb/README.dibusb | 41 ++++++++++++++++++++++------------- 1 file changed, 26 insertions(+), 15 deletions(-) (limited to 'linux/Documentation/dvb') diff --git a/linux/Documentation/dvb/README.dibusb b/linux/Documentation/dvb/README.dibusb index 0e2363727..311f1f023 100644 --- a/linux/Documentation/dvb/README.dibusb +++ b/linux/Documentation/dvb/README.dibusb @@ -1,9 +1,11 @@ +$Id: README.dibusb,v 1.6 2004/09/28 19:36:44 pmp Exp $ + Documentation for dib3000mb frontend driver and dibusb device driver The drivers should work with - Twinhan VisionPlus VisionDTV USB-Ter DVB-T Device (VP7041) - http://www.twinhan.com/visiontv-2_4.htm + http://www.twinhan.com/ - CTS Portable (Chinese Television System) http://www.2cts.tv/ctsportable/ @@ -22,6 +24,7 @@ The drivers should work with - Compro Videomate DVB-U2000 - DVB-T USB http://www.comprousa.com/products/vmu2000.htm +- Unknown USB DVB-T device with vendor ID Hyper-Paltek Copyright (C) 2004 Patrick Boettcher (patrick.boettcher@desy.de), @@ -35,10 +38,11 @@ published by the Free Software Foundation, version 2. NEWS: + 2004-09-28 - added support for a new device (Unkown, vendor ID is Hyper-Paltek) 2004-09-20 - added support for a new device (Compro DVB-U2000), thanks to Amaury Demol for reporting - - changed usb TS transfer method (several urbs, stopping transfer - before setting a new pid) + - changed usb TS transfer method (several urbs, stopping transfer + before setting a new pid) 2004-09-13 - added support for a new device (Artec T1 USB TVBOX), thanks to Christian Motschke for reporting 2004-09-05 - released the dibusb device and dib3000mb-frontend driver @@ -50,8 +54,8 @@ NEWS: CTS Portable (Chinese Television System) 2004-07-08 - firmware-extraction-2.422-problem solved, driver is now working properly with firmware extracted from 2.422 - - #if for 2.6.4 (dvb), compile issue - - changed firmware handling, see vp7041.txt sec 1.1 + - #if for 2.6.4 (dvb), compile issue + - changed firmware handling, see vp7041.txt sec 1.1 2004-07-02 - some tuner modifications, v0.1, cleanups, first public 2004-06-28 - now using the dvb_dmx_swfilter_packets, everything runs fine now @@ -92,8 +96,13 @@ in the device). If you want to enable debug output, you have to load the driver manually. -modprobe dvb-dibusb debug=1 -modprobe dib3000mb debug=1 +first have a look, which debug level are available: + +modinfo dvb-dibusb +modinfo dib3000mb + +modprobe dvb-dibusb debug= +modprobe dib3000mb debug= should do the trick. @@ -109,11 +118,13 @@ as a slave device in vdr, was not working for me. Some work has to be done 2. Known problems and bugs TODO: -- add some additional URBs for USB data transfer -- due a firmware problem i2c writes during mpeg transfers destroy the stream - no i2c writes during streaming, interrupt streaming, when adding another pid +- remote control tasklet +- signal-quality and strength calculations +- debug messages restructure +- i2c address probing +- -2.1. Adding new devices +2.1. Adding support for devices It is not possible to determine the range of devices based on the DiBcom reference design. This is because the reference design of DiBcom can be sold @@ -129,7 +140,7 @@ of the device. I will add it to this list in order to make this clear to others. If you are familar with C you can also add the VID and PID of the device to -the dvb-dibusb.[hc]-files and create a patch and send it over to me or to +the dvb-dibusb.h-file and create a patch and send it over to me or to the linux-dvb mailing list, _after_ you have tried compiling and modprobing it. @@ -138,9 +149,9 @@ it. Patches, comments and suggestions are very very welcome 3. Acknowledgements - Amaury Demol (ademol@dibcom.fr) and Francois Kanounnikoff from DiBcom for - providing specs, code and help, on which the dvb-dibusb and dib3000mb are - based. + Amaury Demol (ademol@dibcom.fr) and Francois Kanounnikoff from DiBcom for + providing specs, code and help, on which the dvb-dibusb and dib3000mb are + based. Alex Woods for frequently answering question about usb and dvb stuff, a big thank you -- cgit v1.2.3 From 25da23146538519f0f644671c49868bfb560740a Mon Sep 17 00:00:00 2001 From: Andrew de Quincy Date: Thu, 28 Oct 2004 17:37:07 +0000 Subject: Imported FE_REFACTORING to HEAD --- linux/Documentation/dvb/get_dvb_firmware | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'linux/Documentation/dvb') diff --git a/linux/Documentation/dvb/get_dvb_firmware b/linux/Documentation/dvb/get_dvb_firmware index 82bc4e58c..e1082e33f 100644 --- a/linux/Documentation/dvb/get_dvb_firmware +++ b/linux/Documentation/dvb/get_dvb_firmware @@ -21,7 +21,7 @@ use File::Temp qw/ tempdir /; use IO::Handle; -@components = ( "alps_tdlb7", "sp887x", "tda10045", "tda10046", "av7110", "dec2000t", "dec2540t", "dec3000s", "vp7041", "dibusb" ); +@components = ( "sp8870", "sp887x", "tda10045", "tda10046", "av7110", "dec2000t", "dec2540t", "dec3000s", "vp7041", "dibusb" ); # Check args syntax() if (scalar(@ARGV) != 1); @@ -47,11 +47,11 @@ syntax(); # --------------------------------------------------------------- # Firmware-specific extraction subroutines -sub alps_tdlb7 { +sub sp8870 { my $sourcefile = "tt_Premium_217g.zip"; my $url = "http://www.technotrend.de/new/217g/$sourcefile"; my $hash = "53970ec17a538945a6d8cb608a7b3899"; - my $outfile = "dvb-fe-tdlb7.fw"; + my $outfile = "dvb-fe-sp8870.fw"; my $tmpdir = tempdir(DIR => "/tmp", CLEANUP => 1); checkstandard(); -- cgit v1.2.3 From 0a707de8c98c7685e759a503168d1ce7c31f66a7 Mon Sep 17 00:00:00 2001 From: Michael Hunold Date: Wed, 3 Nov 2004 20:30:58 +0000 Subject: - remove another automatic cvs commit foobar --- linux/Documentation/dvb/README.dibusb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'linux/Documentation/dvb') diff --git a/linux/Documentation/dvb/README.dibusb b/linux/Documentation/dvb/README.dibusb index 311f1f023..46148487b 100644 --- a/linux/Documentation/dvb/README.dibusb +++ b/linux/Documentation/dvb/README.dibusb @@ -1,4 +1,4 @@ -$Id: README.dibusb,v 1.6 2004/09/28 19:36:44 pmp Exp $ + Documentation for dib3000mb frontend driver and dibusb device driver -- cgit v1.2.3 From c5f61237462dbf7c67d8e3637dae72befc0f6b2b Mon Sep 17 00:00:00 2001 From: Patrick Boettcher Date: Fri, 5 Nov 2004 09:17:38 +0000 Subject: updated the docs for the new dibusb devices --- linux/Documentation/dvb/README.dibusb | 107 ++++++++++++++++++++++++---------- linux/Documentation/dvb/cards.txt | 14 ++++- 2 files changed, 88 insertions(+), 33 deletions(-) (limited to 'linux/Documentation/dvb') diff --git a/linux/Documentation/dvb/README.dibusb b/linux/Documentation/dvb/README.dibusb index 46148487b..f868c2f5d 100644 --- a/linux/Documentation/dvb/README.dibusb +++ b/linux/Documentation/dvb/README.dibusb @@ -1,43 +1,81 @@ +Documentation for dib3000mb frontend driver and dibusb device driver +==================================================================== +Copyright (C) 2004 Patrick Boettcher (patrick.boettcher@desy.de), + +dibusb and dib3000mb/mc drivers based on GPL code, which has + +Copyright (C) 2004 Amaury Demol for DiBcom (ademol@dibcom.fr) + +This program is free software; you can redistribute it and/or +modify it under the terms of the GNU General Public License as +published by the Free Software Foundation, version 2. -Documentation for dib3000mb frontend driver and dibusb device driver -The drivers should work with +Supported devices USB1.1 +======================== -- Twinhan VisionPlus VisionDTV USB-Ter DVB-T Device (VP7041) - http://www.twinhan.com/ +Produced and reselled by Twinhan: +--------------------------------- +- TwinhanDTV USB-Ter DVB-T Device (VP7041) + http://www.twinhan.com/product_terrestrial_3.asp + +- TwinhanDTV Magic Box (VP7041e) + http://www.twinhan.com/product_terrestrial_4.asp + +- HAMA DVB-T USB device + http://www.hama.de/portal/articleId*110620/action*2598 - CTS Portable (Chinese Television System) http://www.2cts.tv/ctsportable/ -- KWorld V-Stream XPERT DTV - DVB-T USB - http://www.kworld.com.tw/asp/pindex.asp?id=4&pid=13 +- Unknown USB DVB-T device with vendor ID Hyper-Paltek -- HAMA DVB-T USB device - http://www.hama.de/portal/articleId*110620/action*2598 - -- DiBcom USB DVB-T reference device -- Ultima Electronic/Artec T1 USB TVBOX +Produced and reselled by KWorld: +-------------------------------- +- KWorld V-Stream XPERT DTV DVB-T USB + http://www.kworld.com.tw/en/product/DVBT-USB/DVBT-USB.html + +- JetWay DTV DVB-T USB + http://www.jetway.com.tw/evisn/product/lcd-tv/DVT-USB/dtv-usb.htm + +- ADSTech Instant TV DVB-T USB + http://www.adstech.com/products/PTV-333/intro/PTV-333_intro.asp?pid=PTV-333 + + +Others: +------- +- Ultima Electronic/Artec T1 USB TVBOX (AN2135 and AN2235) http://www.arteceuro.com/products-tvbox.html - Compro Videomate DVB-U2000 - DVB-T USB http://www.comprousa.com/products/vmu2000.htm -- Unknown USB DVB-T device with vendor ID Hyper-Paltek +- Grandtec USB DVB-T + http://www.grand.com.tw/ -Copyright (C) 2004 Patrick Boettcher (patrick.boettcher@desy.de), +- Avermedia AverTV DVBT USB + http://www.avermedia.com/ -both drivers based on GPL code, which has +- DiBcom USB DVB-T reference device (non-public) -Copyright (C) 2004 Amaury Demol for DiBcom (ademol@dibcom.fr) -This program is free software; you can redistribute it and/or -modify it under the terms of the GNU General Public License as -published by the Free Software Foundation, version 2. +Supported devices USB2.0 +======================== +- Yakumo DVB-T mobile + http://www.yakumo.de/produkte/index.php?pid=1&ag=DVB-T + +- DiBcom USB2.0 DVB-T reference device (non-public) + -NEWS: +0. NEWS: + 2004-11-05 - added support for a new devices (Grandtec/Avermedia/Artec) + - merged my changes (for dib3000mb/dibusb) to the FE_REFACTORING, because it became HEAD + - moved transfer control (pid filter, fifo control) from usb driver to frontend, it seems + better settled there (added xfer_ops-struct) + - created a common files for frontends (mc/p/mb) 2004-09-28 - added support for a new device (Unkown, vendor ID is Hyper-Paltek) 2004-09-20 - added support for a new device (Compro DVB-U2000), thanks to Amaury Demol for reporting @@ -49,7 +87,7 @@ NEWS: (old news for vp7041.c) 2004-07-15 - found out, by accident, that the device has a TUA6010XS for - frequency generator + PLL 2004-07-12 - figured out, that the driver should also work with the CTS Portable (Chinese Television System) 2004-07-08 - firmware-extraction-2.422-problem solved, driver is now working @@ -67,7 +105,7 @@ NEWS: 1. How to use? NOTE: This driver was developed using Linux 2.6.6., -it is working with 2.6.7, 2.6.8.1. +it is working with 2.6.7, 2.6.8.1, 2.6.9 . Linux 2.4.x support is not planned, but patches are very welcome. @@ -81,8 +119,14 @@ The USB driver needs to download a firmware to start working. You can either use "get_dvb_firmware dibusb" to download the firmware or you can get it directly via +for USB1.1 (AN2135) http://linuxtv.org/cgi-bin/cvsweb.cgi/dvb-kernel/firmware/dvb-dibusb-5.0.0.11.fw?rev=1.1&content-type=text/plain +for USB1.1 (AN2235) + +for USB2.0 (FX2) +http://linuxtv.org/cgi-bin/cvsweb.cgi/dvb-kernel/firmware/dvb-dibusb-6.0.0.5.fw?rev=1.1&content-type=text/plain + 1.2. Compiling Since the driver is in the linux kernel, activating the driver in @@ -94,15 +138,16 @@ to compile the driver as module. Hotplug does the rest. Hotplug is able to load the driver, when it is needed (because you plugged in the device). -If you want to enable debug output, you have to load the driver manually. +If you want to enable debug output, you have to load the driver manually and +from withing the dvb-kernel cvs repository. first have a look, which debug level are available: -modinfo dvb-dibusb modinfo dib3000mb +modinfo dvb-dibusb -modprobe dvb-dibusb debug= modprobe dib3000mb debug= +modprobe dvb-dibusb debug= should do the trick. @@ -118,21 +163,19 @@ as a slave device in vdr, was not working for me. Some work has to be done 2. Known problems and bugs TODO: -- remote control tasklet +- remote control - signal-quality and strength calculations -- debug messages restructure - i2c address probing -- 2.1. Adding support for devices It is not possible to determine the range of devices based on the DiBcom -reference design. This is because the reference design of DiBcom can be sold -to third persons, without telling DiBcom (so done with the Twinhan VP7041 and +reference designs. This is because the reference design of DiBcom can be sold +to thirds, without telling DiBcom (so done with the Twinhan VP7041 and the HAMA device). When you think you have a device like this and the driver does not recognizes it, -please send the ****load.inf and the ****cap.inf of the Windows driver to me. +please send the ****load*.inf and the ****cap*.inf of the Windows driver to me. Sometimes the Vendor or Product ID is identical to the ones of Twinhan, even though it is not a Twinhan device (e.g. HAMA), then please send me the name @@ -152,7 +195,7 @@ Patches, comments and suggestions are very very welcome Amaury Demol (ademol@dibcom.fr) and Francois Kanounnikoff from DiBcom for providing specs, code and help, on which the dvb-dibusb and dib3000mb are based. - + Alex Woods for frequently answering question about usb and dvb stuff, a big thank you @@ -164,6 +207,8 @@ Patches, comments and suggestions are very very welcome user-level firmware loader, which saves a lot of time (when writing the vp7041 driver) + David Matthews for identifying a new device type (Artec T1 with AN2235) + Ulf Hermenau for helping me out with traditional chinese. André Smoktun and Christian Frömmel for supporting me with diff --git a/linux/Documentation/dvb/cards.txt b/linux/Documentation/dvb/cards.txt index 43e1a8a97..efdc4ee9d 100644 --- a/linux/Documentation/dvb/cards.txt +++ b/linux/Documentation/dvb/cards.txt @@ -38,7 +38,7 @@ o Frontends drivers: Comtech DVBT-6k07 (SP5730 PLL) (NxtWave Communications NXT6000 demodulator) - sp887x : Microtune 7202D - - dib3000mb : DiBcom 3000-MB Frontend + - dib3000mb : DiBcom 3000-MB demodulator DVB-S/C/T: - dst : TwinHan DST Frontend @@ -69,7 +69,17 @@ o Technotrend / Hauppauge DVB USB devices: o DiBcom DVB-T USB based devices: - Twinhan VisionPlus VisionDTV USB-Ter DVB-T Device - - KWorld V-Stream XPERT DTV - DVB-T USB - HAMA DVB-T USB device + - CTS Portable (Chinese Television System) + - KWorld V-Stream XPERT DTV DVB-T USB + - JetWay DTV DVB-T USB + - ADSTech Instant TV DVB-T USB + - Ultima Electronic/Artec T1 USB TVBOX (AN2135 and AN2235) + - Compro Videomate DVB-U2000 - DVB-T USB + - Grandtec USB DVB-T + - Avermedia AverTV DVBT USB + - DiBcom USB DVB-T reference device (non-public) + - Yakumo DVB-T mobile USB2.0 + - DiBcom USB2.0 DVB-T reference device (non-public) o Experimental support for the analog module of the Siemens DVB-C PCI card -- cgit v1.2.3 From 78f377b0ee18b3889b2a2bfcee75ab9786e80a35 Mon Sep 17 00:00:00 2001 From: Patrick Boettcher Date: Sat, 6 Nov 2004 12:28:46 +0000 Subject: added support for special Artec devices (with AN2235 usb controller) --- linux/Documentation/dvb/README.dibusb | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'linux/Documentation/dvb') diff --git a/linux/Documentation/dvb/README.dibusb b/linux/Documentation/dvb/README.dibusb index f868c2f5d..0c1da012c 100644 --- a/linux/Documentation/dvb/README.dibusb +++ b/linux/Documentation/dvb/README.dibusb @@ -122,7 +122,8 @@ can get it directly via for USB1.1 (AN2135) http://linuxtv.org/cgi-bin/cvsweb.cgi/dvb-kernel/firmware/dvb-dibusb-5.0.0.11.fw?rev=1.1&content-type=text/plain -for USB1.1 (AN2235) +for USB1.1 (AN2235) (a few Artec T1 devices) +http://linuxtv.org/cgi-bin/cvsweb.cgi/dvb-kernel/firmware/dvb-dibusb-an2235-1.fw?rev=1.1&content-type=text/plain for USB2.0 (FX2) http://linuxtv.org/cgi-bin/cvsweb.cgi/dvb-kernel/firmware/dvb-dibusb-6.0.0.5.fw?rev=1.1&content-type=text/plain -- cgit v1.2.3 From b1adb56ca9f64c2cec0ba0ebb75332e51fd4ea79 Mon Sep 17 00:00:00 2001 From: Patrick Boettcher Date: Sun, 7 Nov 2004 18:46:20 +0000 Subject: added remote control event handling. Thanks to David Matthews. --- linux/Documentation/dvb/README.dibusb | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'linux/Documentation/dvb') diff --git a/linux/Documentation/dvb/README.dibusb b/linux/Documentation/dvb/README.dibusb index 0c1da012c..554f65606 100644 --- a/linux/Documentation/dvb/README.dibusb +++ b/linux/Documentation/dvb/README.dibusb @@ -71,6 +71,7 @@ Supported devices USB2.0 0. NEWS: + 2004-11-07 - added remote control support. Thanks to David Matthews. 2004-11-05 - added support for a new devices (Grandtec/Avermedia/Artec) - merged my changes (for dib3000mb/dibusb) to the FE_REFACTORING, because it became HEAD - moved transfer control (pid filter, fifo control) from usb driver to frontend, it seems @@ -197,6 +198,9 @@ Patches, comments and suggestions are very very welcome providing specs, code and help, on which the dvb-dibusb and dib3000mb are based. + David Matthews for identifying a new device type (Artec T1 with AN2235) + and for extending dibusb with remote control event handling. Thank you. + Alex Woods for frequently answering question about usb and dvb stuff, a big thank you @@ -208,7 +212,6 @@ Patches, comments and suggestions are very very welcome user-level firmware loader, which saves a lot of time (when writing the vp7041 driver) - David Matthews for identifying a new device type (Artec T1 with AN2235) Ulf Hermenau for helping me out with traditional chinese. -- cgit v1.2.3 From d3f8f1e3c54e43c5eb830f30fe37a251196d4d90 Mon Sep 17 00:00:00 2001 From: Andrew de Quincy Date: Sat, 13 Nov 2004 19:03:22 +0000 Subject: Added additional firmware location --- linux/Documentation/dvb/get_dvb_firmware | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'linux/Documentation/dvb') diff --git a/linux/Documentation/dvb/get_dvb_firmware b/linux/Documentation/dvb/get_dvb_firmware index e1082e33f..071993c93 100644 --- a/linux/Documentation/dvb/get_dvb_firmware +++ b/linux/Documentation/dvb/get_dvb_firmware @@ -32,7 +32,7 @@ for($i=0; $i < scalar(@components); $i++) { if ($cid eq $components[$i]) { $outfile = eval($cid); die $@ if $@; - print STDERR "Firmware $outfile extracted successfully. Now copy it to /usr/lib/hotplug/firmware/.\n"; + print STDERR "Firmware $outfile extracted successfully. Now copy it to either /lib/firmware or /usr/lib/hotplug/firmware/ (depending on your hotplug version).\n"; exit(0); } } -- cgit v1.2.3 From 2635ade059ff4084f7cf68b69819d4c36b1233ce Mon Sep 17 00:00:00 2001 From: Patrick Boettcher Date: Sun, 21 Nov 2004 21:44:52 +0000 Subject: doc update --- linux/Documentation/dvb/README.dibusb | 2 ++ 1 file changed, 2 insertions(+) (limited to 'linux/Documentation/dvb') diff --git a/linux/Documentation/dvb/README.dibusb b/linux/Documentation/dvb/README.dibusb index 554f65606..acd83e15d 100644 --- a/linux/Documentation/dvb/README.dibusb +++ b/linux/Documentation/dvb/README.dibusb @@ -71,6 +71,8 @@ Supported devices USB2.0 0. NEWS: + 2004-11-21 - first working version of the dib3000mc/p frontend driver. + 2004-11-12 - added additional remote control keys. Thanks to Uwe Hanke. 2004-11-07 - added remote control support. Thanks to David Matthews. 2004-11-05 - added support for a new devices (Grandtec/Avermedia/Artec) - merged my changes (for dib3000mb/dibusb) to the FE_REFACTORING, because it became HEAD -- cgit v1.2.3 From 09f6ef93badf234d981c63f98bb1e36254243d31 Mon Sep 17 00:00:00 2001 From: Patrick Boettcher Date: Tue, 23 Nov 2004 21:30:49 +0000 Subject: doc update --- linux/Documentation/dvb/README.dibusb | 31 ++++++++++++++++++++++++++----- 1 file changed, 26 insertions(+), 5 deletions(-) (limited to 'linux/Documentation/dvb') diff --git a/linux/Documentation/dvb/README.dibusb b/linux/Documentation/dvb/README.dibusb index acd83e15d..0aa26cac1 100644 --- a/linux/Documentation/dvb/README.dibusb +++ b/linux/Documentation/dvb/README.dibusb @@ -69,8 +69,10 @@ Supported devices USB2.0 - DiBcom USB2.0 DVB-T reference device (non-public) - 0. NEWS: + 2004-11-23 - merged changes from DiB3000MC_ver2.1 + - revised the debugging + - possibility to deliver the complete TS for USB2.0 2004-11-21 - first working version of the dib3000mc/p frontend driver. 2004-11-12 - added additional remote control keys. Thanks to Uwe Hanke. 2004-11-07 - added remote control support. Thanks to David Matthews. @@ -167,9 +169,7 @@ as a slave device in vdr, was not working for me. Some work has to be done 2. Known problems and bugs TODO: -- remote control - signal-quality and strength calculations -- i2c address probing 2.1. Adding support for devices @@ -191,7 +191,29 @@ the dvb-dibusb.h-file and create a patch and send it over to me or to the linux-dvb mailing list, _after_ you have tried compiling and modprobing it. -2.2. Comments +2.2. USB1.1 Bandwidth limitation + +Most of the current supported devices are USB1.1 and thus they have a +maximum bandwidth of about 5-6 MBit/s when connected to a USB2.0 hub. +This is not enough for receiving the complete transport stream of a +DVB-T channel (which can be about 16 MBit/s). Normally this is not a +problem, if you only want to watch TV, but watching a channel while +recording another channel on the same frequency simply does not work. +This applies to all USB1.1 DVB-T devices. + +A special problem of the dibusb for the USB1.1 is, that the USB control +IC has a problem with write accesses while having MPEG2-streaming +enabled. When you set another pid while receiving MPEG2-TS it happens, that +the stream is disturbed and probably data is lost (results in distortions of +the video or strange beeps within the audio stream). DiBcom is preparing a +firmware especially for Linux which perhaps solves the problem. + +Especially VDR users are victoms of this bug. VDR frequently requests new PIDs +due the automatic scanning (introduced in 1.3.x, afaik) and epg-scan. Disabling +these features is maybe a solution. Additionally this behaviour of VDR exceeds +the USB1.1 bandwidth. + +2.3. Comments Patches, comments and suggestions are very very welcome @@ -214,7 +236,6 @@ Patches, comments and suggestions are very very welcome user-level firmware loader, which saves a lot of time (when writing the vp7041 driver) - Ulf Hermenau for helping me out with traditional chinese. André Smoktun and Christian Frömmel for supporting me with -- cgit v1.2.3 From ca11373ee66327573c4a133e613aa8b6b8f1cb7a Mon Sep 17 00:00:00 2001 From: Patrick Boettcher Date: Mon, 6 Dec 2004 08:04:07 +0000 Subject: added new usb ids --- linux/Documentation/dvb/README.dibusb | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) (limited to 'linux/Documentation/dvb') diff --git a/linux/Documentation/dvb/README.dibusb b/linux/Documentation/dvb/README.dibusb index 0aa26cac1..0c1ae7a39 100644 --- a/linux/Documentation/dvb/README.dibusb +++ b/linux/Documentation/dvb/README.dibusb @@ -47,7 +47,7 @@ Produced and reselled by KWorld: Others: ------- - Ultima Electronic/Artec T1 USB TVBOX (AN2135 and AN2235) - http://www.arteceuro.com/products-tvbox.html + http://82.161.246.249/products-tvbox.html - Compro Videomate DVB-U2000 - DVB-T USB http://www.comprousa.com/products/vmu2000.htm @@ -63,6 +63,9 @@ Others: Supported devices USB2.0 ======================== +- Twinhan MagicBox II + http://www.twinhan.com/product_terrestrial_7.asp + - Yakumo DVB-T mobile http://www.yakumo.de/produkte/index.php?pid=1&ag=DVB-T @@ -70,6 +73,8 @@ Supported devices USB2.0 0. NEWS: + 2004-12-06 - possibility for demod i2c-address probing + - new usb IDs (Compro,Artec) 2004-11-23 - merged changes from DiB3000MC_ver2.1 - revised the debugging - possibility to deliver the complete TS for USB2.0 -- cgit v1.2.3 From 164429b647d9fa0e7ab13830d5f2efe041ef8a2b Mon Sep 17 00:00:00 2001 From: Johannes Stezenbach Date: Thu, 16 Dec 2004 15:59:26 +0000 Subject: add nxt2002 --- linux/Documentation/dvb/get_dvb_firmware | 20 +++++++++++++++++++- 1 file changed, 19 insertions(+), 1 deletion(-) (limited to 'linux/Documentation/dvb') diff --git a/linux/Documentation/dvb/get_dvb_firmware b/linux/Documentation/dvb/get_dvb_firmware index 071993c93..1ddf1aa7b 100644 --- a/linux/Documentation/dvb/get_dvb_firmware +++ b/linux/Documentation/dvb/get_dvb_firmware @@ -21,7 +21,8 @@ use File::Temp qw/ tempdir /; use IO::Handle; -@components = ( "sp8870", "sp887x", "tda10045", "tda10046", "av7110", "dec2000t", "dec2540t", "dec3000s", "vp7041", "dibusb" ); +@components = ( "sp8870", "sp887x", "tda10045", "tda10046", "av7110", "dec2000t", + "dec2540t", "dec3000s", "vp7041", "dibusb", "nxt2002" ); # Check args syntax() if (scalar(@ARGV) != 1); @@ -233,6 +234,23 @@ sub dibusb { $outfile; } +sub nxt2002 { + my $sourcefile = "Broadband4PC_4_2_11.zip"; + my $url = "http://www.bbti.us/download/windows/$sourcefile"; + my $hash = "c6d2ea47a8f456d887ada0cfb718ff2a"; + my $outfile = "dvb-fe-nxt2002.fw"; + my $tmpdir = tempdir(DIR => "/tmp", CLEANUP => 1); + + checkstandard(); + + wgetfile($sourcefile, $url); + unzip($sourcefile, $tmpdir); + verify("$tmpdir/SkyNETU.sys", $hash); + extract("$tmpdir/SkyNETU.sys", 375832, 5908, $outfile); + + $outfile; +} + # --------------------------------------------------------------- # Utilities -- cgit v1.2.3 From 99548d19d853d76e3792e2e5f9d49848366271f1 Mon Sep 17 00:00:00 2001 From: Patrick Boettcher Date: Mon, 27 Dec 2004 15:21:43 +0000 Subject: additional debug, doc update --- linux/Documentation/dvb/README.dibusb | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) (limited to 'linux/Documentation/dvb') diff --git a/linux/Documentation/dvb/README.dibusb b/linux/Documentation/dvb/README.dibusb index 0c1ae7a39..816fc8e0c 100644 --- a/linux/Documentation/dvb/README.dibusb +++ b/linux/Documentation/dvb/README.dibusb @@ -46,7 +46,7 @@ Produced and reselled by KWorld: Others: ------- -- Ultima Electronic/Artec T1 USB TVBOX (AN2135 and AN2235) +- Ultima Electronic/Artec T1 USB TVBOX (AN2135, AN2235) http://82.161.246.249/products-tvbox.html - Compro Videomate DVB-U2000 - DVB-T USB @@ -69,12 +69,16 @@ Supported devices USB2.0 - Yakumo DVB-T mobile http://www.yakumo.de/produkte/index.php?pid=1&ag=DVB-T +- Artec T1 USB TVBOX (FX2) + - DiBcom USB2.0 DVB-T reference device (non-public) 0. NEWS: + 2004-12-26 - refactored the dibusb-driver, splitted into separate files + - i2c-probing enabled 2004-12-06 - possibility for demod i2c-address probing - - new usb IDs (Compro,Artec) + - new usb IDs (Compro, Artec) 2004-11-23 - merged changes from DiB3000MC_ver2.1 - revised the debugging - possibility to deliver the complete TS for USB2.0 -- cgit v1.2.3 From f136c9670713e5839f970a4b5141a3fa023512c2 Mon Sep 17 00:00:00 2001 From: Patrick Boettcher Date: Wed, 29 Dec 2004 10:53:54 +0000 Subject: readme update --- linux/Documentation/dvb/README.dibusb | 34 +++++++++++++++++++++++----------- 1 file changed, 23 insertions(+), 11 deletions(-) (limited to 'linux/Documentation/dvb') diff --git a/linux/Documentation/dvb/README.dibusb b/linux/Documentation/dvb/README.dibusb index 816fc8e0c..4e0f803aa 100644 --- a/linux/Documentation/dvb/README.dibusb +++ b/linux/Documentation/dvb/README.dibusb @@ -66,7 +66,7 @@ Supported devices USB2.0 - Twinhan MagicBox II http://www.twinhan.com/product_terrestrial_7.asp -- Yakumo DVB-T mobile +- Typhoon/Yakumo DVB-T mobile http://www.yakumo.de/produkte/index.php?pid=1&ag=DVB-T - Artec T1 USB TVBOX (FX2) @@ -75,6 +75,7 @@ Supported devices USB2.0 0. NEWS: + 2004-12-29 - after several days of struggling around bug of no returning URBs fixed. 2004-12-26 - refactored the dibusb-driver, splitted into separate files - i2c-probing enabled 2004-12-06 - possibility for demod i2c-address probing @@ -119,13 +120,15 @@ Supported devices USB2.0 1. How to use? NOTE: This driver was developed using Linux 2.6.6., -it is working with 2.6.7, 2.6.8.1, 2.6.9 . +it is working with 2.6.7 and above. Linux 2.4.x support is not planned, but patches are very welcome. NOTE: I'm using Debian testing, so the following explaination (especially the hotplug-path) needn't match your system, but probably it will :). +The driver is included in the kernel since Linux 2.6.10. + 1.1. Firmware The USB driver needs to download a firmware to start working. @@ -159,9 +162,13 @@ from withing the dvb-kernel cvs repository. first have a look, which debug level are available: modinfo dib3000mb +modinfo dib3000-common +modinfo dib3000mc modinfo dvb-dibusb +modprobe dib3000-common debug= modprobe dib3000mb debug= +modprobe dib3000mc debug= modprobe dvb-dibusb debug= should do the trick. @@ -172,13 +179,11 @@ turned on. At this point you should be able to start a dvb-capable application. For myself I used mplayer, dvbscan, tzap and kaxtv, they are working. Using the device -as a slave device in vdr, was not working for me. Some work has to be done -(patches and comments are very welcome). +in vdr (at least the USB2.0 one) is working. 2. Known problems and bugs -TODO: -- signal-quality and strength calculations +- none this time 2.1. Adding support for devices @@ -206,9 +211,10 @@ Most of the current supported devices are USB1.1 and thus they have a maximum bandwidth of about 5-6 MBit/s when connected to a USB2.0 hub. This is not enough for receiving the complete transport stream of a DVB-T channel (which can be about 16 MBit/s). Normally this is not a -problem, if you only want to watch TV, but watching a channel while -recording another channel on the same frequency simply does not work. -This applies to all USB1.1 DVB-T devices. +problem, if you only want to watch TV (this does not apply for HDTV), +but watching a channel while recording another channel on the same +frequency simply does not work. This applies to all USB1.1 DVB-T +devices, not only dibusb) A special problem of the dibusb for the USB1.1 is, that the USB control IC has a problem with write accesses while having MPEG2-streaming @@ -222,14 +228,20 @@ due the automatic scanning (introduced in 1.3.x, afaik) and epg-scan. Disabling these features is maybe a solution. Additionally this behaviour of VDR exceeds the USB1.1 bandwidth. +Update: +For the USB1.1 and VDR some work has been done (patches and comments are still +very welcome). Maybe the problem is solved in the meantime because I now use +the dmx_sw_filter function instead of dmx_sw_filter_packet. I hope the +linux-dvb software filter is able to get the best of the garbled TS. + 2.3. Comments Patches, comments and suggestions are very very welcome 3. Acknowledgements Amaury Demol (ademol@dibcom.fr) and Francois Kanounnikoff from DiBcom for - providing specs, code and help, on which the dvb-dibusb and dib3000mb are - based. + providing specs, code and help, on which the dvb-dibusb, dib3000mb and + dib3000mc are based. David Matthews for identifying a new device type (Artec T1 with AN2235) and for extending dibusb with remote control event handling. Thank you. -- cgit v1.2.3 From 4c4023a4a1aef55ff9de69f7f9aff8a646222bff Mon Sep 17 00:00:00 2001 From: Patrick Boettcher Date: Mon, 10 Jan 2005 18:09:39 +0000 Subject: tuner quirks for some weird devices (Artec T1 AN2235 device has sometimes a Panasonic Tuner assembled). Tunerprobing implemented. Thanks a lot to Gunnar Wittich. --- linux/Documentation/dvb/README.dibusb | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'linux/Documentation/dvb') diff --git a/linux/Documentation/dvb/README.dibusb b/linux/Documentation/dvb/README.dibusb index 4e0f803aa..418d8c38d 100644 --- a/linux/Documentation/dvb/README.dibusb +++ b/linux/Documentation/dvb/README.dibusb @@ -46,7 +46,7 @@ Produced and reselled by KWorld: Others: ------- -- Ultima Electronic/Artec T1 USB TVBOX (AN2135, AN2235) +- Ultima Electronic/Artec T1 USB TVBOX (AN2135, AN2235, AN2235 with Panasonic Tuner) http://82.161.246.249/products-tvbox.html - Compro Videomate DVB-U2000 - DVB-T USB @@ -75,6 +75,9 @@ Supported devices USB2.0 0. NEWS: + 2004-01-10 - refacotring completed, now everything is very delightful + - tuner quirks for some weird devices (Artec T1 AN2235 device has sometimes a + Panasonic Tuner assembled). Tunerprobing implemented. Thanks a lot to Gunnar Wittich. 2004-12-29 - after several days of struggling around bug of no returning URBs fixed. 2004-12-26 - refactored the dibusb-driver, splitted into separate files - i2c-probing enabled -- cgit v1.2.3 From 443e97baaeee1d2160687375f174b10371fc451d Mon Sep 17 00:00:00 2001 From: Patrick Boettcher Date: Thu, 13 Jan 2005 13:26:14 +0000 Subject: doc update, Makefile in build-2.6 --- linux/Documentation/dvb/README.dibusb | 25 +++++++++++++++++-------- 1 file changed, 17 insertions(+), 8 deletions(-) (limited to 'linux/Documentation/dvb') diff --git a/linux/Documentation/dvb/README.dibusb b/linux/Documentation/dvb/README.dibusb index 418d8c38d..d0f1f1733 100644 --- a/linux/Documentation/dvb/README.dibusb +++ b/linux/Documentation/dvb/README.dibusb @@ -26,7 +26,7 @@ Produced and reselled by Twinhan: - HAMA DVB-T USB device http://www.hama.de/portal/articleId*110620/action*2598 -- CTS Portable (Chinese Television System) +- CTS Portable (Chinese Television System) (2) http://www.2cts.tv/ctsportable/ - Unknown USB DVB-T device with vendor ID Hyper-Paltek @@ -49,13 +49,13 @@ Others: - Ultima Electronic/Artec T1 USB TVBOX (AN2135, AN2235, AN2235 with Panasonic Tuner) http://82.161.246.249/products-tvbox.html -- Compro Videomate DVB-U2000 - DVB-T USB +- Compro Videomate DVB-U2000 - DVB-T USB (2) http://www.comprousa.com/products/vmu2000.htm -- Grandtec USB DVB-T +- Grandtec USB DVB-T http://www.grand.com.tw/ -- Avermedia AverTV DVBT USB +- Avermedia AverTV DVBT USB (2) http://www.avermedia.com/ - DiBcom USB DVB-T reference device (non-public) @@ -63,19 +63,28 @@ Others: Supported devices USB2.0 ======================== -- Twinhan MagicBox II +- Twinhan MagicBox II (2) http://www.twinhan.com/product_terrestrial_7.asp -- Typhoon/Yakumo DVB-T mobile +- Hanftek UMT-010 (1) + http://www.globalsources.com/si/6008819757082/ProductDetail/Digital-TV/product_id-100046529 + +- Typhoon/Yakumo/HAMA DVB-T mobile USB2.0 (1) http://www.yakumo.de/produkte/index.php?pid=1&ag=DVB-T -- Artec T1 USB TVBOX (FX2) +- Artec T1 USB TVBOX (FX2) (2) - DiBcom USB2.0 DVB-T reference device (non-public) +1) It is working almost. +2) No test reports received yet. + 0. NEWS: - 2004-01-10 - refacotring completed, now everything is very delightful + 2004-01-13 - moved the mirrored pid_filter_table back to dvb-dibusb + - first almost working version for HanfTek UMT-010 + - found out, that Yakumo/HAMA/Typhoon are predessors of the HanfTek + 2004-01-10 - refactoring completed, now everything is very delightful - tuner quirks for some weird devices (Artec T1 AN2235 device has sometimes a Panasonic Tuner assembled). Tunerprobing implemented. Thanks a lot to Gunnar Wittich. 2004-12-29 - after several days of struggling around bug of no returning URBs fixed. -- cgit v1.2.3 From 6e7d9216e42a255b6382d67bbd81a0875e988ff7 Mon Sep 17 00:00:00 2001 From: Patrick Boettcher Date: Mon, 31 Jan 2005 09:09:43 +0000 Subject: readme update --- linux/Documentation/dvb/README.dibusb | 43 +++++++++++++++-------------------- 1 file changed, 18 insertions(+), 25 deletions(-) (limited to 'linux/Documentation/dvb') diff --git a/linux/Documentation/dvb/README.dibusb b/linux/Documentation/dvb/README.dibusb index d0f1f1733..a133a3bbf 100644 --- a/linux/Documentation/dvb/README.dibusb +++ b/linux/Documentation/dvb/README.dibusb @@ -1,7 +1,7 @@ Documentation for dib3000mb frontend driver and dibusb device driver ==================================================================== -Copyright (C) 2004 Patrick Boettcher (patrick.boettcher@desy.de), +Copyright (C) 2004-5 Patrick Boettcher (patrick.boettcher@desy.de), dibusb and dib3000mb/mc drivers based on GPL code, which has @@ -81,6 +81,7 @@ Supported devices USB2.0 0. NEWS: + 2004-01-31 - distorted streaming is finally gone for USB1.1 devices 2004-01-13 - moved the mirrored pid_filter_table back to dvb-dibusb - first almost working version for HanfTek UMT-010 - found out, that Yakumo/HAMA/Typhoon are predessors of the HanfTek @@ -191,7 +192,7 @@ turned on. At this point you should be able to start a dvb-capable application. For myself I used mplayer, dvbscan, tzap and kaxtv, they are working. Using the device -in vdr (at least the USB2.0 one) is working. +in vdr is working now also. 2. Known problems and bugs @@ -213,42 +214,34 @@ of the device. I will add it to this list in order to make this clear to others. If you are familar with C you can also add the VID and PID of the device to -the dvb-dibusb.h-file and create a patch and send it over to me or to +the dvb-dibusb-core.c-file and create a patch and send it over to me or to the linux-dvb mailing list, _after_ you have tried compiling and modprobing it. 2.2. USB1.1 Bandwidth limitation -Most of the current supported devices are USB1.1 and thus they have a +Most of the currently supported devices are USB1.1 and thus they have a maximum bandwidth of about 5-6 MBit/s when connected to a USB2.0 hub. This is not enough for receiving the complete transport stream of a DVB-T channel (which can be about 16 MBit/s). Normally this is not a problem, if you only want to watch TV (this does not apply for HDTV), but watching a channel while recording another channel on the same -frequency simply does not work. This applies to all USB1.1 DVB-T -devices, not only dibusb) - -A special problem of the dibusb for the USB1.1 is, that the USB control -IC has a problem with write accesses while having MPEG2-streaming -enabled. When you set another pid while receiving MPEG2-TS it happens, that -the stream is disturbed and probably data is lost (results in distortions of -the video or strange beeps within the audio stream). DiBcom is preparing a -firmware especially for Linux which perhaps solves the problem. - -Especially VDR users are victoms of this bug. VDR frequently requests new PIDs -due the automatic scanning (introduced in 1.3.x, afaik) and epg-scan. Disabling -these features is maybe a solution. Additionally this behaviour of VDR exceeds -the USB1.1 bandwidth. - -Update: -For the USB1.1 and VDR some work has been done (patches and comments are still -very welcome). Maybe the problem is solved in the meantime because I now use -the dmx_sw_filter function instead of dmx_sw_filter_packet. I hope the +frequency simply does not work very well. This applies to all USB1.1 +DVB-T devices, not just dibusb) + +Update: For the USB1.1 and VDR some work has been done (patches and comments +are still very welcome). Maybe the problem is solved in the meantime because I +now use the dmx_sw_filter function instead of dmx_sw_filter_packet. I hope the linux-dvb software filter is able to get the best of the garbled TS. +The bug, where the TS is distorted by a heavy usage of the device is gone +definitely. All dibusb-devices I was using (Twinhan, Kworld, DiBcom) are +working like charm now with VDR. Sometimes I even was able to record a channel +and watch another one. + 2.3. Comments -Patches, comments and suggestions are very very welcome +Patches, comments and suggestions are very very welcome. 3. Acknowledgements Amaury Demol (ademol@dibcom.fr) and Francois Kanounnikoff from DiBcom for @@ -259,7 +252,7 @@ Patches, comments and suggestions are very very welcome and for extending dibusb with remote control event handling. Thank you. Alex Woods for frequently answering question about usb and dvb - stuff, a big thank you + stuff, a big thank you. Bernd Wagner for helping with huge bug reports and discussions. -- cgit v1.2.3 From a32182686d2a324b78fea725bc25cdb333e6366c Mon Sep 17 00:00:00 2001 From: Patrick Boettcher Date: Wed, 2 Feb 2005 19:04:48 +0000 Subject: - added support for Hauppauge WinTV NOVA-T USB2 (clone of MOD3000P by DiBcom) --- linux/Documentation/dvb/README.dibusb | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) (limited to 'linux/Documentation/dvb') diff --git a/linux/Documentation/dvb/README.dibusb b/linux/Documentation/dvb/README.dibusb index a133a3bbf..a65e41acf 100644 --- a/linux/Documentation/dvb/README.dibusb +++ b/linux/Documentation/dvb/README.dibusb @@ -1,4 +1,4 @@ -Documentation for dib3000mb frontend driver and dibusb device driver +Documentation for dib3000* frontend drivers and dibusb device driver ==================================================================== Copyright (C) 2004-5 Patrick Boettcher (patrick.boettcher@desy.de), @@ -74,17 +74,21 @@ Supported devices USB2.0 - Artec T1 USB TVBOX (FX2) (2) +- Hauppauge WinTV NOVA-T USB2 + http://www.hauppauge.com/ + - DiBcom USB2.0 DVB-T reference device (non-public) 1) It is working almost. -2) No test reports received yet. +2) No test reports received yet. 0. NEWS: + 2004-02-02 - added support for the Hauppauge Win-TV Nova-T USB2 2004-01-31 - distorted streaming is finally gone for USB1.1 devices 2004-01-13 - moved the mirrored pid_filter_table back to dvb-dibusb - first almost working version for HanfTek UMT-010 - - found out, that Yakumo/HAMA/Typhoon are predessors of the HanfTek + - found out, that Yakumo/HAMA/Typhoon are predessors of the HanfTek UMT-010 2004-01-10 - refactoring completed, now everything is very delightful - tuner quirks for some weird devices (Artec T1 AN2235 device has sometimes a Panasonic Tuner assembled). Tunerprobing implemented. Thanks a lot to Gunnar Wittich. -- cgit v1.2.3 From 6777d03846a997f84aff74d780a272a164a5f654 Mon Sep 17 00:00:00 2001 From: Johannes Stezenbach Date: Sat, 5 Feb 2005 01:04:10 +0000 Subject: patch by Mattias Holmlund: support new version of unshield for sp887x firmware extraction (changed cmdline parameters) --- linux/Documentation/dvb/get_dvb_firmware | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'linux/Documentation/dvb') diff --git a/linux/Documentation/dvb/get_dvb_firmware b/linux/Documentation/dvb/get_dvb_firmware index 1ddf1aa7b..4d9adada0 100644 --- a/linux/Documentation/dvb/get_dvb_firmware +++ b/linux/Documentation/dvb/get_dvb_firmware @@ -79,8 +79,8 @@ sub sp887x { wgetfile($sourcefile, $url); unzip($sourcefile, $tmpdir); unshield("$tmpdir/$cabfile", $tmpdir); - verify("$tmpdir/sc_main.mc", $hash); - copy("$tmpdir/sc_main.mc", $outfile); + verify("$tmpdir/ZEnglish/sc_main.mc", $hash); + copy("$tmpdir/ZEnglish/sc_main.mc", $outfile); $outfile; } @@ -292,7 +292,7 @@ sub unzip { sub unshield { my ($sourcefile, $todir) = @_; - system("unshield -d \"$todir\" \"$sourcefile\" > /dev/null" ) and die ("unshield failed - unable to extract firmware"); + system("unshield x -d \"$todir\" \"$sourcefile\" > /dev/null" ) and die ("unshield failed - unable to extract firmware"); } sub verify { -- cgit v1.2.3 From 98a6c50cc8707941fbd7aedc49f9a81531959934 Mon Sep 17 00:00:00 2001 From: Patrick Boettcher Date: Fri, 11 Feb 2005 18:51:32 +0000 Subject: - added a another firmware file for KWorld/ADSTech Instant DVB-T USB2.0 (DiB3000M-B) - added support for KWorld/ADSTech Instant DVB-T USB2.0 (DiB3000M-B) - added deactivation option of the pid parser for the DiB3000M-B (since there are USB2.0 devices and which now have the ability to deliver the complete Transport Stream) --- linux/Documentation/dvb/README.dibusb | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) (limited to 'linux/Documentation/dvb') diff --git a/linux/Documentation/dvb/README.dibusb b/linux/Documentation/dvb/README.dibusb index a65e41acf..21b52e9d8 100644 --- a/linux/Documentation/dvb/README.dibusb +++ b/linux/Documentation/dvb/README.dibusb @@ -77,6 +77,8 @@ Supported devices USB2.0 - Hauppauge WinTV NOVA-T USB2 http://www.hauppauge.com/ +- KWorld/ADSTech Instant DVB-T USB2.0 (DiB3000M-B) + - DiBcom USB2.0 DVB-T reference device (non-public) 1) It is working almost. @@ -84,12 +86,13 @@ Supported devices USB2.0 0. NEWS: - 2004-02-02 - added support for the Hauppauge Win-TV Nova-T USB2 - 2004-01-31 - distorted streaming is finally gone for USB1.1 devices - 2004-01-13 - moved the mirrored pid_filter_table back to dvb-dibusb + 2005-02-11 - added support for the KWorld/ADSTech Instant DVB-T USB2.0. Thanks a lot to Joachim von Caron + 2005-02-02 - added support for the Hauppauge Win-TV Nova-T USB2 + 2005-01-31 - distorted streaming is finally gone for USB1.1 devices + 2005-01-13 - moved the mirrored pid_filter_table back to dvb-dibusb - first almost working version for HanfTek UMT-010 - found out, that Yakumo/HAMA/Typhoon are predessors of the HanfTek UMT-010 - 2004-01-10 - refactoring completed, now everything is very delightful + 2005-01-10 - refactoring completed, now everything is very delightful - tuner quirks for some weird devices (Artec T1 AN2235 device has sometimes a Panasonic Tuner assembled). Tunerprobing implemented. Thanks a lot to Gunnar Wittich. 2004-12-29 - after several days of struggling around bug of no returning URBs fixed. @@ -260,6 +263,9 @@ Patches, comments and suggestions are very very welcome. Bernd Wagner for helping with huge bug reports and discussions. + Gunnar Wittich and Joachim von Caron for their trust for giving me + root-shells on their machines to implement support for new devices. + Some guys on the linux-dvb mailing list for encouraging me Peter Schildmann >peter.schildmann-nospam-at-web.de< for his -- cgit v1.2.3 From 91b6041d1588b585acafa62239b3ff8fac2c6568 Mon Sep 17 00:00:00 2001 From: Patrick Boettcher Date: Thu, 17 Feb 2005 20:18:03 +0000 Subject: - corrected links to firmware files (reported by Stefan Frings, thanks) --- linux/Documentation/dvb/README.dibusb | 19 +++++++++++++------ linux/Documentation/dvb/get_dvb_firmware | 2 +- 2 files changed, 14 insertions(+), 7 deletions(-) (limited to 'linux/Documentation/dvb') diff --git a/linux/Documentation/dvb/README.dibusb b/linux/Documentation/dvb/README.dibusb index 21b52e9d8..c1d55ccf9 100644 --- a/linux/Documentation/dvb/README.dibusb +++ b/linux/Documentation/dvb/README.dibusb @@ -157,13 +157,20 @@ You can either use "get_dvb_firmware dibusb" to download the firmware or you can get it directly via for USB1.1 (AN2135) -http://linuxtv.org/cgi-bin/cvsweb.cgi/dvb-kernel/firmware/dvb-dibusb-5.0.0.11.fw?rev=1.1&content-type=text/plain +http://www.linuxtv.org/cgi-bin/viewcvs.cgi/*checkout*/dvb-kernel/firmware/dvb-dibusb-5.0.0.11.fw for USB1.1 (AN2235) (a few Artec T1 devices) -http://linuxtv.org/cgi-bin/cvsweb.cgi/dvb-kernel/firmware/dvb-dibusb-an2235-1.fw?rev=1.1&content-type=text/plain +http://www.linuxtv.org/cgi-bin/viewcvs.cgi/*checkout*/dvb-kernel/firmware/dvb-dibusb-an2235-1.fw + +for USB2.0 (FX2) Hauppauge, DiBcom +http://www.linuxtv.org/cgi-bin/viewcvs.cgi/*checkout*/dvb-kernel/firmware/dvb-dibusb-6.0.0.5.fw + +for USB2.0 ADSTech/Kworld USB2.0 +http://www.linuxtv.org/cgi-bin/viewcvs.cgi/*checkout*/dvb-kernel/firmware/dvb-dibusb-adstech-usb2-1.fw + +for USB2.0 HanfTek +http://www.linuxtv.org/cgi-bin/viewcvs.cgi/*checkout*/dvb-kernel/firmware/dvb-dibusb-an2235-1.fw -for USB2.0 (FX2) -http://linuxtv.org/cgi-bin/cvsweb.cgi/dvb-kernel/firmware/dvb-dibusb-6.0.0.5.fw?rev=1.1&content-type=text/plain 1.2. Compiling @@ -203,7 +210,7 @@ in vdr is working now also. 2. Known problems and bugs -- none this time +- Don't remove the USB device while running an DVB application, your system will die. 2.1. Adding support for devices @@ -242,7 +249,7 @@ now use the dmx_sw_filter function instead of dmx_sw_filter_packet. I hope the linux-dvb software filter is able to get the best of the garbled TS. The bug, where the TS is distorted by a heavy usage of the device is gone -definitely. All dibusb-devices I was using (Twinhan, Kworld, DiBcom) are +definitely. All dibusb-devices I was using (Twinhan, Kworld, DiBcom) are working like charm now with VDR. Sometimes I even was able to record a channel and watch another one. diff --git a/linux/Documentation/dvb/get_dvb_firmware b/linux/Documentation/dvb/get_dvb_firmware index 4d9adada0..0de7934e7 100644 --- a/linux/Documentation/dvb/get_dvb_firmware +++ b/linux/Documentation/dvb/get_dvb_firmware @@ -222,7 +222,7 @@ sub vp7041 { } sub dibusb { - my $url = "http://linuxtv.org/cgi-bin/cvsweb.cgi/dvb-kernel/firmware/dvb-dibusb-5.0.0.11.fw?rev=1.1&content-type=text/plain"; + my $url = "http://www.linuxtv.org/cgi-bin/viewcvs.cgi/*checkout*/dvb-kernel/firmware/dvb-dibusb-5.0.0.11.fw"; my $outfile = "dvb-dibusb-5.0.0.11.fw"; my $hash = "fa490295a527360ca16dcdf3224ca243"; -- cgit v1.2.3 From 4d292e354c6a309594495ffc983327775c037503 Mon Sep 17 00:00:00 2001 From: Johannes Stezenbach Date: Sat, 19 Feb 2005 22:59:50 +0000 Subject: add OREN or51211, or51132_qam and or51132_vsb firmware --- linux/Documentation/dvb/get_dvb_firmware | 54 +++++++++++++++++++++++++++----- 1 file changed, 47 insertions(+), 7 deletions(-) (limited to 'linux/Documentation/dvb') diff --git a/linux/Documentation/dvb/get_dvb_firmware b/linux/Documentation/dvb/get_dvb_firmware index 0de7934e7..f5b368b4b 100644 --- a/linux/Documentation/dvb/get_dvb_firmware +++ b/linux/Documentation/dvb/get_dvb_firmware @@ -1,19 +1,19 @@ #!/usr/bin/perl # DVB firmware extractor -# +# # (c) 2004 Andrew de Quincey -# +# # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. -# +# # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# +# # GNU General Public License for more details. -# +# # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software # Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. @@ -22,14 +22,15 @@ use File::Temp qw/ tempdir /; use IO::Handle; @components = ( "sp8870", "sp887x", "tda10045", "tda10046", "av7110", "dec2000t", - "dec2540t", "dec3000s", "vp7041", "dibusb", "nxt2002" ); + "dec2540t", "dec3000s", "vp7041", "dibusb", "nxt2002", + "or51211", "or51132_qam", "or51132_vsb"); # Check args syntax() if (scalar(@ARGV) != 1); $cid = $ARGV[0]; # Do it! -for($i=0; $i < scalar(@components); $i++) { +for ($i=0; $i < scalar(@components); $i++) { if ($cid eq $components[$i]) { $outfile = eval($cid); die $@ if $@; @@ -251,6 +252,45 @@ sub nxt2002 { $outfile; } +sub or51211 { + my $fwfile = "dvb-fe-or51211.fw"; + my $url = "http://linuxtv.org/downloads/firmware/$fwfile"; + my $hash = "d830949c771a289505bf9eafc225d491"; + + checkstandard(); + + wgetfile($fwfile, $url); + verify($fwfile, $hash); + + $fwfile; +} + +sub or51132_qam { + my $fwfile = "dvb-fe-or51132-qam.fw"; + my $url = "http://linuxtv.org/downloads/firmware/$fwfile"; + my $hash = "7702e8938612de46ccadfe9b413cb3b5"; + + checkstandard(); + + wgetfile($fwfile, $url); + verify($fwfile, $hash); + + $fwfile; +} + +sub or51132_vsb { + my $fwfile = "dvb-fe-or51132-vsb.fw"; + my $url = "http://linuxtv.org/downloads/firmware/$fwfile"; + my $hash = "c16208e02f36fc439a557ad4c613364a"; + + checkstandard(); + + wgetfile($fwfile, $url); + verify($fwfile, $hash); + + $fwfile; +} + # --------------------------------------------------------------- # Utilities -- cgit v1.2.3 From 42f03b0af28f2f39f3a430a3f1038623f87c0285 Mon Sep 17 00:00:00 2001 From: Johannes Stezenbach Date: Wed, 23 Feb 2005 00:15:31 +0000 Subject: correct download link for av7110 firmware and get new version 261d --- linux/Documentation/dvb/get_dvb_firmware | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'linux/Documentation/dvb') diff --git a/linux/Documentation/dvb/get_dvb_firmware b/linux/Documentation/dvb/get_dvb_firmware index f5b368b4b..139affac9 100644 --- a/linux/Documentation/dvb/get_dvb_firmware +++ b/linux/Documentation/dvb/get_dvb_firmware @@ -123,9 +123,9 @@ sub tda10046 { } sub av7110 { - my $sourcefile = "dvb-ttpci-01.fw-261c"; - my $url = "http://www.linuxtv.org/download/dvb/firmware/$sourcefile"; - my $hash = "7b263de6b0b92d2347319c65adc7d4fb"; + my $sourcefile = "dvb-ttpci-01.fw-261d"; + my $url = "http://www.linuxtv.org/downloads/firmware/$sourcefile"; + my $hash = "603431b6259715a8e88f376a53b64e2f"; my $outfile = "dvb-ttpci-01.fw"; checkstandard(); -- cgit v1.2.3 From 3c2ab123d1b992e5f457ad252da8d6b82676d7f4 Mon Sep 17 00:00:00 2001 From: Johannes Stezenbach Date: Wed, 23 Feb 2005 00:18:27 +0000 Subject: correct some links --- linux/Documentation/dvb/readme.txt | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) (limited to 'linux/Documentation/dvb') diff --git a/linux/Documentation/dvb/readme.txt b/linux/Documentation/dvb/readme.txt index a60c27d43..754c98c6a 100644 --- a/linux/Documentation/dvb/readme.txt +++ b/linux/Documentation/dvb/readme.txt @@ -5,8 +5,9 @@ The main development site and CVS repository for these drivers is http://linuxtv.org/. The developer mailing list linux-dvb is also hosted there, -see http://linuxtv.org/mailinglists.xml. Please check -the archive http://linuxtv.org/mailinglists/linux-dvb/ +see http://linuxtv.org/lists.php. Please check +the archive http://linuxtv.org/pipermail/linux-dvb/ +and the Wiki http://linuxtv.org/wiki/ before asking newbie questions on the list. API documentation, utilities and test/example programs @@ -15,7 +16,7 @@ are available as part of the old driver package for Linux 2.4 We plan to split this into separate packages, but it's not been done yet. -http://linuxtv.org/download/dvb/ +http://linuxtv.org/downloads/ What's inside this directory: -- cgit v1.2.3 From 5486b447bfcedd4e154782e0e8045bdbf9cefc42 Mon Sep 17 00:00:00 2001 From: Alex Woods Date: Wed, 23 Feb 2005 00:25:22 +0000 Subject: Add Peter Beutner --- linux/Documentation/dvb/contributors.txt | 3 +++ 1 file changed, 3 insertions(+) (limited to 'linux/Documentation/dvb') diff --git a/linux/Documentation/dvb/contributors.txt b/linux/Documentation/dvb/contributors.txt index dd40ad665..c9d5ce370 100644 --- a/linux/Documentation/dvb/contributors.txt +++ b/linux/Documentation/dvb/contributors.txt @@ -72,5 +72,8 @@ Kenneth Aafl Ernst Peinlich for tuning/DiSEqC support for the DEC 3000-s +Peter Beutner + for the IR code for the ttusb-dec driver + (If you think you should be in this list, but you are not, drop a line to the DVB mailing list) -- cgit v1.2.3 From 22369c7b769f439e3b351ecc9cd396a40b452db1 Mon Sep 17 00:00:00 2001 From: Johannes Stezenbach Date: Wed, 2 Mar 2005 21:42:00 +0000 Subject: whitespace cleanup (remove ws at eol, sync with changes in mainline kernel) --- linux/Documentation/dvb/faq.txt | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) (limited to 'linux/Documentation/dvb') diff --git a/linux/Documentation/dvb/faq.txt b/linux/Documentation/dvb/faq.txt index ba743da79..3bf51e45c 100644 --- a/linux/Documentation/dvb/faq.txt +++ b/linux/Documentation/dvb/faq.txt @@ -35,7 +35,7 @@ Some very frequently asked questions about linuxtv-dvb Note: Only very recent versions of Mplayer and xine can decode. MPEG2 transport streams (TS) directly. Then, run '[sct]zap channelname -r' in one xterm, and keep it running, - and start 'mplayer - < /dev/dvb/adapter0/dvr0' or + and start 'mplayer - < /dev/dvb/adapter0/dvr0' or 'xine stdin://mpeg2 < /dev/dvb/adapter0/dvr0' in a second xterm. That's all far from perfect, but it seems no one has written a nice DVB application which includes a builtin software MPEG @@ -93,7 +93,7 @@ Some very frequently asked questions about linuxtv-dvb http://www.mythtv.org/ MythTV - analog TV PVR, but now with DVB support, too (with software MPEG decode) - + http://dvbsnoop.sourceforge.net/ DVB sniffer program to monitor, analyze, debug, dump or view dvb/mpeg/dsm-cc/mhp stream information (TS, @@ -129,25 +129,25 @@ Some very frequently asked questions about linuxtv-dvb $ "echo 0 > /proc/sys/net/ipv4/conf/dvb0/rp_filter" 7. What the hell are all those modules that need to be loaded? - + For a dvb-ttpci av7110 based full-featured card the following modules are loaded: - videodev: Video4Linux core module. This is the base module that gives you access to the "analog" tv picture of the av7110 mpeg2 decoder. - + - v4l2-common: common functions for Video4Linux-2 drivers - + - v4l1-compat: backward compatiblity layer for Video4Linux-1 legacy applications - dvb-core: DVB core module. This provides you with the /dev/dvb/adapter entries - + - saa7146: SAA7146 core driver. This is need to access any SAA7146 based card in your system. - + - saa7146_vv: SAA7146 video and vbi functions. These are only needed for full-featured cards. -- cgit v1.2.3 From 8a64b813388b3ceab573104d53d848274b75138a Mon Sep 17 00:00:00 2001 From: Patrick Boettcher Date: Wed, 9 Mar 2005 12:36:49 +0000 Subject: - moved the flexcop-driver-suite to linux/drivers - adapted build-2.6 (removed skystar2 from insmod.sh) - corrected some bugs in Kconfig - tried compilation with linux 2.6.11 (as module and as compiled-in-driver) --- linux/Documentation/dvb/README.flexcop | 279 +++++++++++++++++++++++++++++++++ 1 file changed, 279 insertions(+) create mode 100644 linux/Documentation/dvb/README.flexcop (limited to 'linux/Documentation/dvb') diff --git a/linux/Documentation/dvb/README.flexcop b/linux/Documentation/dvb/README.flexcop new file mode 100644 index 000000000..2d73446fb --- /dev/null +++ b/linux/Documentation/dvb/README.flexcop @@ -0,0 +1,279 @@ +This README escorted the skystar2-driver rewriting procedure. It describes the +state of the new flexcop-driver set and some internals are written down here +too. + +How to do something in here? +============================ + +make -f Makefile.t +make -C ../build-2.6 +./in.sh # load the drivers +./rm.sh # unload the drivers + +Please read this file, if you want to contribute. + +This document hopefully describes things about the flexcop and its +device-offsprings. Goal is to write a easy-to-write and easy-to-read set of +drivers based on the skystar2.c and other information. + +This directory is temporary. It is used for rewriting the skystar2.c and to +create shared code, which then can be used by the usb box as well. + +Remark: flexcop-pci.c was a copy of skystar2.c, but every line has been +touched and rewritten. + +General coding processing +========================= + +We should proceed as follows (as long as no one complains): + +0) Think before start writing code! + +1) rewriting the skystar2.c with the help of the flexcop register descriptions +and splitting up the files to a pci-bus-part and a flexcop-part. +The new driver will be called b2c2-flexcop-pci.ko/b2c2-flexcop-usb.ko for the +device-specific part and b2c2-flexcop.ko for the common flexcop-functions. + +2) Search for errors in the leftover of flexcop-pci.c (compare with pluto2.c +and other pci drivers) + +3) make some beautification (see 'Improvements when rewriting (refactoring) is +done') + +4) Testing the new driver and maybe substitute the skystar2.c with it, to reach +a wider tester audience. + +5) creating an usb-bus-part using the already written flexcop code for the pci +card. + +Idea: create a kernel-object for the flexcop and export all important +functions. This option saves kernel-memory, but maybe a lot of functions have +to be exported to kernel namespace. + + +Current situation +================= + +0) Done :) +1) Done (some minor issues left) +2) Done +3) Not ready yet, more information is necessary +4) next to be done (see the table below) +5) USB driver is working (yes, there are some minor issues) + +What seems to be ready? +----------------------- + +1) Rewriting +1a) i2c is cut off from the flexcop-pci.c and seems to work +1b) moved tuner and demod stuff from flexcop-pci.c to flexcop-tuner-fe.c +1c) moved lnb and diseqc stuff from flexcop-pci.c to flexcop-tuner-fe.c +1e) eeprom (reading MAC address) +1d) sram (no dynamic sll size detection (commented out) (using default as JJ told me)) +1f) misc. register accesses for reading parameters (e.g. resetting, revision) +1g) pid/mac filter (flexcop-hw-filter.c) +1i) dvb-stuff initialization in flexcop.c (done) +1h) dma stuff (now just using the size-irq, instead of all-together, to be done) +1j) remove flexcop initialization from flexcop-pci.c completely (done) +1l) use a well working dma IRQ method (done, see 'Known bugs and problems and TODO') +1k) cleanup flexcop-files (remove unused EXPORT_SYMBOLs, make static from +non-static where possible, moved code to proper places) + +2) Search for errors in the leftover of flexcop-pci.c (partially done) +5a) add MAC address reading + +What to do in the near future? +-------------------------------------- +(no special order here) + + +5) USB driver +5b) optimize isoc-transfer (submitting/killing isoc URBs when transfer is starting) +5c) feeding of ISOC data to the software demux (format of the isochronous data +and speed optimization, no real error) + +Testing changes +--------------- + +O = item is working +P = item is partially working +X = item is not working +N = item does not apply here + = item need to be examined + + | PCI | USB +item | mt352 | nxt2002 | stv0299 | mt312 | mt352 | nxt2002 | stv0299 | mt312 +-------+-------+---------+---------+-------+-------+---------+---------+------- +1a) | O | | | | N | N | N | N +1b) | O | | | | | | O | +1c) | N | N | | | N | N | O | +1d) | O | O +1e) | O | O +1f) | P +1g) | O +1h) | P | +1i) | O | N +1j) | O | N +1l) | O | N +2) | O | N +5a) | N | O +5b)* | N | +5c)* | N | + +* - not done yet + +Known bugs and problems and TODO +-------------------------------- + +1g/h/l) when pid filtering is enabled on the pci card + +DMA usage currently: + The DMA is splitted in 2 equal-sized subbuffers. The Flexcop writes to first + address and triggers an IRQ when it's full and starts writing to the second + address. When the second address is full, the IRQ is triggered again, and + the flexcop writes to first address again, and so on. + The buffersize of each address is currently 640*188 bytes. + + Problem is, when using hw-pid-filtering and doing some low-bandwidth + operation (like scanning) the buffers won't be filled enough to trigger + the IRQ. That's why: + + When PID filtering is activated, the timer IRQ is used. Every 1.97 ms the IRQ + is triggered. Is the current write address of DMA1 different to the one + during the last IRQ, then the data is passed to the demuxer. + + There is an additional DMA-IRQ-method: packet count IRQ. This isn't + implemented correctly yet. + + The solution is to disable HW PID filtering, but I don't know how the DVB + API software demux behaves on slow systems with 45MBit/s TS. + +Solved bugs :) +-------------- +1g) pid-filtering (somehow pid index 4 and 5 (EMM_PID and ECM_PID) aren't +working) +SOLUTION: also index 0 was affected, because net_translation is done for +these indexes by default + +5b) isochronous transfer does only work in the first attempt (for the Sky2PC USB, +Air2PC is working) +SOLUTION: the flexcop was going asleep and never really woke up again (don't +know if this need fixes, see flexcop-fe-tuner.c:flexcop_sleep) + +Improvements when rewriting (refactoring) is done +================================================= + +- split sleeping of the flexcop (misc_204.ACPI3_sig = 1;) from lnb_control + (enable sleeping for other demods than dvb-s) +- add support for CableStar (stv0297 Microtune 203x/ALPS) + +Debugging +--------- +- add verbose debugging to skystar2.c (dump the reg_dw_data) and compare it + with this flexcop, this is important, because i2c is now using the + flexcop_ibi_value union from flexcop-reg.h (do you have a better idea for + that, please tell us so). + +Everything which is identical in the following table, can be put into a common +flexcop-module. + + PCI USB +------------------------------------------------------------------------------- +Different: +Register access: accessing IO memory USB control message +I2C bus: I2C bus of the FC USB control message +Data transfer: DMA isochronous transfer +EEPROM transfer: through i2c bus not clear yet + +Identical: +Streaming: accessing registers +PID Filtering: accessing registers +Sram destinations: accessing registers +Tuner/Demod: I2C bus +DVB-stuff: can be written for common use + +Restrictions: +============ + +We need to create a bus-specific-struct and a flexcop-struct. + +bus-specific-struct: + +struct flexcop_pci +... + +struct flexcop_usb +... + + +struct flexcop_device { + void *bus_specific; /* container for bus-specific struct */ +... +} + +PCI i2c can read/write max 4 bytes at a time, USB can more + +Functions +========= + +Syntax +------ + +- Flexcop functions will be called "flexcop(_[a-z0-9]+)+" and exported as such + if needed. +- Flexcop-device functions will be called "flexcop_device(_[a-z0-9]+)+" and + exported as such if needed. +- Both will be compiled to b2c2-flexcop.ko and their source can be found in the + flexcop*.[hc] + +Callbacks and exports +--------------------- + +Bus-specific functions will be given as callbacks (function pointers) to the +flexcop-module. (within the flexcop_device-struct) + +Initialization process +====================== + +b2c2-flexcop.ko is loaded +b2c2-flexcop-.ko is loaded + +suppose a device is found: +malloc flexcop and the bus-specific variables (via flexcop_device_malloc) +fill the bus-specific variable +fill the flexcop variable (especially the bus-specific callbacks) +bus-specific initialization + - ... +do the common initialization (via flexcop_device_initialize) + - reset the card + - determine flexcop type (II, IIB, III) + - hw_filters (bus dependent) + - 0x204 + - set sram size + - create the dvb-stuff + - create i2c stuff + - frontend-initialization +done +bus specific: + - media_destination (this and the following 3 are bus specific) + - cai_dest + - cao_dest + - net_destination + +Bugs fixed while rewriting the driver +===================================== + +- EEPROM access (to read the MAC address) was fixed to death some time last + year. (fixed here and in skystar2.c) (Bjarne, this was the piece of code + (fix-chipaddr) we were wondering about) + + +Acknowledgements (just for the rewriting part) +================ + +Bjarne Steinsbo thought a lot in the first place of the pci part for this code +sharing idea. + +Andreas Oberritter for providing a recent PCI initialization template (pluto2.c). + +comments, critics and ideas to linux-dvb@linuxtv.org or patrick.boettcher@desy.de -- cgit v1.2.3 From d409fb356d6cf8b8f2b146520fed7060b6e89982 Mon Sep 17 00:00:00 2001 From: Johannes Stezenbach Date: Sat, 12 Mar 2005 20:23:51 +0000 Subject: a few more whitespace cleanups --- linux/Documentation/dvb/README.dibusb | 74 +++++++++++++++++------------------ 1 file changed, 37 insertions(+), 37 deletions(-) (limited to 'linux/Documentation/dvb') diff --git a/linux/Documentation/dvb/README.dibusb b/linux/Documentation/dvb/README.dibusb index c1d55ccf9..5d7bfbfca 100644 --- a/linux/Documentation/dvb/README.dibusb +++ b/linux/Documentation/dvb/README.dibusb @@ -1,7 +1,7 @@ Documentation for dib3000* frontend drivers and dibusb device driver ==================================================================== -Copyright (C) 2004-5 Patrick Boettcher (patrick.boettcher@desy.de), +Copyright (C) 2004-5 Patrick Boettcher (patrick.boettcher@desy.de), dibusb and dib3000mb/mc drivers based on GPL code, which has @@ -19,13 +19,13 @@ Produced and reselled by Twinhan: --------------------------------- - TwinhanDTV USB-Ter DVB-T Device (VP7041) http://www.twinhan.com/product_terrestrial_3.asp - + - TwinhanDTV Magic Box (VP7041e) http://www.twinhan.com/product_terrestrial_4.asp - + - HAMA DVB-T USB device http://www.hama.de/portal/articleId*110620/action*2598 - + - CTS Portable (Chinese Television System) (2) http://www.2cts.tv/ctsportable/ @@ -37,7 +37,7 @@ Produced and reselled by KWorld: - KWorld V-Stream XPERT DTV DVB-T USB http://www.kworld.com.tw/en/product/DVBT-USB/DVBT-USB.html -- JetWay DTV DVB-T USB +- JetWay DTV DVB-T USB http://www.jetway.com.tw/evisn/product/lcd-tv/DVT-USB/dtv-usb.htm - ADSTech Instant TV DVB-T USB @@ -46,13 +46,13 @@ Produced and reselled by KWorld: Others: ------- -- Ultima Electronic/Artec T1 USB TVBOX (AN2135, AN2235, AN2235 with Panasonic Tuner) +- Ultima Electronic/Artec T1 USB TVBOX (AN2135, AN2235, AN2235 with Panasonic Tuner) http://82.161.246.249/products-tvbox.html - Compro Videomate DVB-U2000 - DVB-T USB (2) http://www.comprousa.com/products/vmu2000.htm -- Grandtec USB DVB-T +- Grandtec USB DVB-T http://www.grand.com.tw/ - Avermedia AverTV DVBT USB (2) @@ -94,7 +94,7 @@ Supported devices USB2.0 - found out, that Yakumo/HAMA/Typhoon are predessors of the HanfTek UMT-010 2005-01-10 - refactoring completed, now everything is very delightful - tuner quirks for some weird devices (Artec T1 AN2235 device has sometimes a - Panasonic Tuner assembled). Tunerprobing implemented. Thanks a lot to Gunnar Wittich. + Panasonic Tuner assembled). Tunerprobing implemented. Thanks a lot to Gunnar Wittich. 2004-12-29 - after several days of struggling around bug of no returning URBs fixed. 2004-12-26 - refactored the dibusb-driver, splitted into separate files - i2c-probing enabled @@ -114,23 +114,23 @@ Supported devices USB2.0 2004-09-28 - added support for a new device (Unkown, vendor ID is Hyper-Paltek) 2004-09-20 - added support for a new device (Compro DVB-U2000), thanks to Amaury Demol for reporting - - changed usb TS transfer method (several urbs, stopping transfer + - changed usb TS transfer method (several urbs, stopping transfer before setting a new pid) 2004-09-13 - added support for a new device (Artec T1 USB TVBOX), thanks to Christian Motschke for reporting 2004-09-05 - released the dibusb device and dib3000mb-frontend driver (old news for vp7041.c) - 2004-07-15 - found out, by accident, that the device has a TUA6010XS for + 2004-07-15 - found out, by accident, that the device has a TUA6010XS for PLL 2004-07-12 - figured out, that the driver should also work with the CTS Portable (Chinese Television System) - 2004-07-08 - firmware-extraction-2.422-problem solved, driver is now working + 2004-07-08 - firmware-extraction-2.422-problem solved, driver is now working properly with firmware extracted from 2.422 - #if for 2.6.4 (dvb), compile issue - changed firmware handling, see vp7041.txt sec 1.1 2004-07-02 - some tuner modifications, v0.1, cleanups, first public - 2004-06-28 - now using the dvb_dmx_swfilter_packets, everything + 2004-06-28 - now using the dvb_dmx_swfilter_packets, everything runs fine now 2004-06-27 - able to watch and switching channels (pre-alpha) - no section filtering yet @@ -139,7 +139,7 @@ Supported devices USB2.0 2004-05-11 - start writing the driver 1. How to use? -NOTE: This driver was developed using Linux 2.6.6., +NOTE: This driver was developed using Linux 2.6.6., it is working with 2.6.7 and above. Linux 2.4.x support is not planned, but patches are very welcome. @@ -154,7 +154,7 @@ The driver is included in the kernel since Linux 2.6.10. The USB driver needs to download a firmware to start working. You can either use "get_dvb_firmware dibusb" to download the firmware or you -can get it directly via +can get it directly via for USB1.1 (AN2135) http://www.linuxtv.org/cgi-bin/viewcvs.cgi/*checkout*/dvb-kernel/firmware/dvb-dibusb-5.0.0.11.fw @@ -196,50 +196,50 @@ modinfo dvb-dibusb modprobe dib3000-common debug= modprobe dib3000mb debug= modprobe dib3000mc debug= -modprobe dvb-dibusb debug= +modprobe dvb-dibusb debug= should do the trick. -When the driver is loaded successfully, the firmware file was in +When the driver is loaded successfully, the firmware file was in the right place and the device is connected, the "Power"-LED should be turned on. At this point you should be able to start a dvb-capable application. For myself I used mplayer, dvbscan, tzap and kaxtv, they are working. Using the device -in vdr is working now also. +in vdr is working now also. 2. Known problems and bugs - Don't remove the USB device while running an DVB application, your system will die. -2.1. Adding support for devices +2.1. Adding support for devices -It is not possible to determine the range of devices based on the DiBcom +It is not possible to determine the range of devices based on the DiBcom reference designs. This is because the reference design of DiBcom can be sold -to thirds, without telling DiBcom (so done with the Twinhan VP7041 and +to thirds, without telling DiBcom (so done with the Twinhan VP7041 and the HAMA device). When you think you have a device like this and the driver does not recognizes it, please send the ****load*.inf and the ****cap*.inf of the Windows driver to me. -Sometimes the Vendor or Product ID is identical to the ones of Twinhan, even -though it is not a Twinhan device (e.g. HAMA), then please send me the name -of the device. I will add it to this list in order to make this clear to +Sometimes the Vendor or Product ID is identical to the ones of Twinhan, even +though it is not a Twinhan device (e.g. HAMA), then please send me the name +of the device. I will add it to this list in order to make this clear to others. -If you are familar with C you can also add the VID and PID of the device to -the dvb-dibusb-core.c-file and create a patch and send it over to me or to +If you are familar with C you can also add the VID and PID of the device to +the dvb-dibusb-core.c-file and create a patch and send it over to me or to the linux-dvb mailing list, _after_ you have tried compiling and modprobing it. 2.2. USB1.1 Bandwidth limitation -Most of the currently supported devices are USB1.1 and thus they have a -maximum bandwidth of about 5-6 MBit/s when connected to a USB2.0 hub. +Most of the currently supported devices are USB1.1 and thus they have a +maximum bandwidth of about 5-6 MBit/s when connected to a USB2.0 hub. This is not enough for receiving the complete transport stream of a DVB-T channel (which can be about 16 MBit/s). Normally this is not a problem, if you only want to watch TV (this does not apply for HDTV), -but watching a channel while recording another channel on the same +but watching a channel while recording another channel on the same frequency simply does not work very well. This applies to all USB1.1 DVB-T devices, not just dibusb) @@ -254,12 +254,12 @@ working like charm now with VDR. Sometimes I even was able to record a channel and watch another one. 2.3. Comments - + Patches, comments and suggestions are very very welcome. 3. Acknowledgements - Amaury Demol (ademol@dibcom.fr) and Francois Kanounnikoff from DiBcom for - providing specs, code and help, on which the dvb-dibusb, dib3000mb and + Amaury Demol (ademol@dibcom.fr) and Francois Kanounnikoff from DiBcom for + providing specs, code and help, on which the dvb-dibusb, dib3000mb and dib3000mc are based. David Matthews for identifying a new device type (Artec T1 with AN2235) @@ -269,17 +269,17 @@ Patches, comments and suggestions are very very welcome. stuff, a big thank you. Bernd Wagner for helping with huge bug reports and discussions. - + Gunnar Wittich and Joachim von Caron for their trust for giving me root-shells on their machines to implement support for new devices. - + Some guys on the linux-dvb mailing list for encouraging me - - Peter Schildmann >peter.schildmann-nospam-at-web.de< for his - user-level firmware loader, which saves a lot of time + + Peter Schildmann >peter.schildmann-nospam-at-web.de< for his + user-level firmware loader, which saves a lot of time (when writing the vp7041 driver) Ulf Hermenau for helping me out with traditional chinese. - + André Smoktun and Christian Frömmel for supporting me with hardware and listening to my problems very patient -- cgit v1.2.3 From a8566025a59f930794bd8aafbccf8ee7b08937cb Mon Sep 17 00:00:00 2001 From: Patrick Boettcher Date: Tue, 22 Mar 2005 11:51:25 +0000 Subject: - white space changes :) - acknowledgements --- linux/Documentation/dvb/README.flexcop | 37 +++++++++++++++++++--------------- 1 file changed, 21 insertions(+), 16 deletions(-) (limited to 'linux/Documentation/dvb') diff --git a/linux/Documentation/dvb/README.flexcop b/linux/Documentation/dvb/README.flexcop index 2d73446fb..8036faa1e 100644 --- a/linux/Documentation/dvb/README.flexcop +++ b/linux/Documentation/dvb/README.flexcop @@ -30,9 +30,9 @@ We should proceed as follows (as long as no one complains): 0) Think before start writing code! 1) rewriting the skystar2.c with the help of the flexcop register descriptions -and splitting up the files to a pci-bus-part and a flexcop-part. +and splitting up the files to a pci-bus-part and a flexcop-part. The new driver will be called b2c2-flexcop-pci.ko/b2c2-flexcop-usb.ko for the -device-specific part and b2c2-flexcop.ko for the common flexcop-functions. +device-specific part and b2c2-flexcop.ko for the common flexcop-functions. 2) Search for errors in the leftover of flexcop-pci.c (compare with pluto2.c and other pci drivers) @@ -44,7 +44,7 @@ done') a wider tester audience. 5) creating an usb-bus-part using the already written flexcop code for the pci -card. +card. Idea: create a kernel-object for the flexcop and export all important functions. This option saves kernel-memory, but maybe a lot of functions have @@ -67,7 +67,7 @@ What seems to be ready? 1) Rewriting 1a) i2c is cut off from the flexcop-pci.c and seems to work 1b) moved tuner and demod stuff from flexcop-pci.c to flexcop-tuner-fe.c -1c) moved lnb and diseqc stuff from flexcop-pci.c to flexcop-tuner-fe.c +1c) moved lnb and diseqc stuff from flexcop-pci.c to flexcop-tuner-fe.c 1e) eeprom (reading MAC address) 1d) sram (no dynamic sll size detection (commented out) (using default as JJ told me)) 1f) misc. register accesses for reading parameters (e.g. resetting, revision) @@ -92,7 +92,7 @@ What to do in the near future? 5c) feeding of ISOC data to the software demux (format of the isochronous data and speed optimization, no real error) -Testing changes +Testing changes --------------- O = item is working @@ -105,19 +105,19 @@ N = item does not apply here item | mt352 | nxt2002 | stv0299 | mt312 | mt352 | nxt2002 | stv0299 | mt312 -------+-------+---------+---------+-------+-------+---------+---------+------- 1a) | O | | | | N | N | N | N -1b) | O | | | | | | O | -1c) | N | N | | | N | N | O | +1b) | O | | | | | | O | +1c) | N | N | | | N | N | O | 1d) | O | O -1e) | O | O -1f) | P +1e) | O | O +1f) | P 1g) | O -1h) | P | -1i) | O | N +1h) | P | +1i) | O | N 1j) | O | N 1l) | O | N 2) | O | N 5a) | N | O -5b)* | N | +5b)* | N | 5c)* | N | * - not done yet @@ -133,7 +133,7 @@ DMA usage currently: address. When the second address is full, the IRQ is triggered again, and the flexcop writes to first address again, and so on. The buffersize of each address is currently 640*188 bytes. - + Problem is, when using hw-pid-filtering and doing some low-bandwidth operation (like scanning) the buffers won't be filled enough to trigger the IRQ. That's why: @@ -177,7 +177,7 @@ Debugging Everything which is identical in the following table, can be put into a common flexcop-module. - PCI USB + PCI USB ------------------------------------------------------------------------------- Different: Register access: accessing IO memory USB control message @@ -235,7 +235,7 @@ flexcop-module. (within the flexcop_device-struct) Initialization process ====================== -b2c2-flexcop.ko is loaded +b2c2-flexcop.ko is loaded b2c2-flexcop-.ko is loaded suppose a device is found: @@ -274,6 +274,11 @@ Acknowledgements (just for the rewriting part) Bjarne Steinsbo thought a lot in the first place of the pci part for this code sharing idea. -Andreas Oberritter for providing a recent PCI initialization template (pluto2.c). +Andreas Oberritter for providing a recent PCI initialization template +(pluto2.c). + +Boleslaw Ciesielski for pointing out a problem with firmware loader. + +Vadim Catana for correcting the USB transfer. comments, critics and ideas to linux-dvb@linuxtv.org or patrick.boettcher@desy.de -- cgit v1.2.3 From 22fb76c38aaef8463c7576ed62fb9dbfd585e0eb Mon Sep 17 00:00:00 2001 From: Patrick Boettcher Date: Tue, 22 Mar 2005 12:36:44 +0000 Subject: - firmware links and new devices --- linux/Documentation/dvb/README.dibusb | 48 ++++++++++++++++++++--------------- 1 file changed, 27 insertions(+), 21 deletions(-) (limited to 'linux/Documentation/dvb') diff --git a/linux/Documentation/dvb/README.dibusb b/linux/Documentation/dvb/README.dibusb index 5d7bfbfca..116900a86 100644 --- a/linux/Documentation/dvb/README.dibusb +++ b/linux/Documentation/dvb/README.dibusb @@ -55,7 +55,7 @@ Others: - Grandtec USB DVB-T http://www.grand.com.tw/ -- Avermedia AverTV DVBT USB (2) +- AVerMedia AverTV DVBT USB http://www.avermedia.com/ - DiBcom USB DVB-T reference device (non-public) @@ -63,13 +63,13 @@ Others: Supported devices USB2.0 ======================== -- Twinhan MagicBox II (2) +- Twinhan MagicBox II (1) http://www.twinhan.com/product_terrestrial_7.asp -- Hanftek UMT-010 (1) +- Hanftek UMT-010 http://www.globalsources.com/si/6008819757082/ProductDetail/Digital-TV/product_id-100046529 -- Typhoon/Yakumo/HAMA DVB-T mobile USB2.0 (1) +- Typhoon/Yakumo/HAMA DVB-T mobile USB2.0 http://www.yakumo.de/produkte/index.php?pid=1&ag=DVB-T - Artec T1 USB TVBOX (FX2) (2) @@ -81,14 +81,17 @@ Supported devices USB2.0 - DiBcom USB2.0 DVB-T reference device (non-public) +- AVerMedia AverTV DVB-T USB2.0 (1) + 1) It is working almost. 2) No test reports received yet. - 0. NEWS: + 2005-03-21 - added support for the AVerMedia AverTV DVB-T USB2.0 device (Thanks to Glen Harris and Jiun-Kuei Jung, AVerMedia) + 2005-03-12 - added support for the Typhoon/Yakumo/HAMA DVB-T USB2.0 device 2005-02-11 - added support for the KWorld/ADSTech Instant DVB-T USB2.0. Thanks a lot to Joachim von Caron 2005-02-02 - added support for the Hauppauge Win-TV Nova-T USB2 - 2005-01-31 - distorted streaming is finally gone for USB1.1 devices + 2005-01-31 - distorted streaming is gone for USB1.1 devices 2005-01-13 - moved the mirrored pid_filter_table back to dvb-dibusb - first almost working version for HanfTek UMT-010 - found out, that Yakumo/HAMA/Typhoon are predessors of the HanfTek UMT-010 @@ -153,24 +156,22 @@ The driver is included in the kernel since Linux 2.6.10. The USB driver needs to download a firmware to start working. -You can either use "get_dvb_firmware dibusb" to download the firmware or you -can get it directly via - -for USB1.1 (AN2135) -http://www.linuxtv.org/cgi-bin/viewcvs.cgi/*checkout*/dvb-kernel/firmware/dvb-dibusb-5.0.0.11.fw +for USB1.1 (AN2135) you need: dvb-dibusb-5.0.0.11.fw +for USB2.0 HanfTek: dvb-dibusb-umt-2.fw +for USB2.0 DiBcom: dvb-dibusb-6.0.0.5.fw +for USB2.0 AVerMedia AverTV DVB-T USB2: dvb-dibusb-avertv-usb2-1.fw -for USB1.1 (AN2235) (a few Artec T1 devices) -http://www.linuxtv.org/cgi-bin/viewcvs.cgi/*checkout*/dvb-kernel/firmware/dvb-dibusb-an2235-1.fw +The files can be found on http://www.linuxtv.org/download/firmware/ . -for USB2.0 (FX2) Hauppauge, DiBcom -http://www.linuxtv.org/cgi-bin/viewcvs.cgi/*checkout*/dvb-kernel/firmware/dvb-dibusb-6.0.0.5.fw +We do not have the permission to publish the following firmware-files. +You'll need to extract them from the windows drivers. -for USB2.0 ADSTech/Kworld USB2.0 -http://www.linuxtv.org/cgi-bin/viewcvs.cgi/*checkout*/dvb-kernel/firmware/dvb-dibusb-adstech-usb2-1.fw - -for USB2.0 HanfTek -http://www.linuxtv.org/cgi-bin/viewcvs.cgi/*checkout*/dvb-kernel/firmware/dvb-dibusb-an2235-1.fw +You should be able to use "get_dvb_firmware dibusb" to get the firmware: +for USB1.1 (AN2235) (a few Artec T1 devices): dvb-dibusb-an2235-1.fw +for USB2.0 Hauppauge: dvb-dibusb-nova-t-1.fw +for USB2.0 ADSTech/Kworld USB2.0: dvb-dibusb-adstech-usb2-1.fw +for USB2.0 Yakumo/Typhoon/Hama: dvb-dtt200u-1.fw 1.2. Compiling @@ -196,6 +197,7 @@ modinfo dvb-dibusb modprobe dib3000-common debug= modprobe dib3000mb debug= modprobe dib3000mc debug= +modprobe mt352 debug= modprobe dvb-dibusb debug= should do the trick. @@ -210,7 +212,7 @@ in vdr is working now also. 2. Known problems and bugs -- Don't remove the USB device while running an DVB application, your system will die. +- Don't remove the USB device while running an DVB application, your system will die most likely. 2.1. Adding support for devices @@ -273,6 +275,10 @@ Patches, comments and suggestions are very very welcome. Gunnar Wittich and Joachim von Caron for their trust for giving me root-shells on their machines to implement support for new devices. + Glen Harris for bringing up, that there is a new dibusb-device and Jiun-Kuei + Jung from AVerMedia who kindly provided a special firmware to get the device + up and running in Linux. + Some guys on the linux-dvb mailing list for encouraging me Peter Schildmann >peter.schildmann-nospam-at-web.de< for his -- cgit v1.2.3 From 2a60b8cb5906336c337e5831e6628a97095063f3 Mon Sep 17 00:00:00 2001 From: Patrick Boettcher Date: Tue, 22 Mar 2005 12:40:33 +0000 Subject: - typo --- linux/Documentation/dvb/README.dibusb | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'linux/Documentation/dvb') diff --git a/linux/Documentation/dvb/README.dibusb b/linux/Documentation/dvb/README.dibusb index 116900a86..af7683d1d 100644 --- a/linux/Documentation/dvb/README.dibusb +++ b/linux/Documentation/dvb/README.dibusb @@ -83,12 +83,12 @@ Supported devices USB2.0 - AVerMedia AverTV DVB-T USB2.0 (1) -1) It is working almost. +1) It is working almost - work-in-progress. 2) No test reports received yet. 0. NEWS: 2005-03-21 - added support for the AVerMedia AverTV DVB-T USB2.0 device (Thanks to Glen Harris and Jiun-Kuei Jung, AVerMedia) - 2005-03-12 - added support for the Typhoon/Yakumo/HAMA DVB-T USB2.0 device + 2005-03-14 - added support for the Typhoon/Yakumo/HAMA DVB-T mobile USB2.0 2005-02-11 - added support for the KWorld/ADSTech Instant DVB-T USB2.0. Thanks a lot to Joachim von Caron 2005-02-02 - added support for the Hauppauge Win-TV Nova-T USB2 2005-01-31 - distorted streaming is gone for USB1.1 devices -- cgit v1.2.3 From 68d4a468a95777934e2659e8f4bb4095a55969ca Mon Sep 17 00:00:00 2001 From: Patrick Boettcher Date: Tue, 29 Mar 2005 23:32:46 +0000 Subject: added support for the AVerMedia DVB-T USB2.0 device (slightly modified clone of the USB2.0 device by DiBcom) Thanks to Glen Harris for his patience and to Jiun-Kuei Jung from AVerMedia. --- linux/Documentation/dvb/README.dibusb | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'linux/Documentation/dvb') diff --git a/linux/Documentation/dvb/README.dibusb b/linux/Documentation/dvb/README.dibusb index af7683d1d..61225a7d7 100644 --- a/linux/Documentation/dvb/README.dibusb +++ b/linux/Documentation/dvb/README.dibusb @@ -81,13 +81,13 @@ Supported devices USB2.0 - DiBcom USB2.0 DVB-T reference device (non-public) -- AVerMedia AverTV DVB-T USB2.0 (1) +- AVerMedia AverTV DVB-T USB2.0 1) It is working almost - work-in-progress. 2) No test reports received yet. 0. NEWS: - 2005-03-21 - added support for the AVerMedia AverTV DVB-T USB2.0 device (Thanks to Glen Harris and Jiun-Kuei Jung, AVerMedia) + 2005-03-28 - added support for the AVerMedia AverTV DVB-T USB2.0 device (Thanks to Glen Harris and Jiun-Kuei Jung, AVerMedia) 2005-03-14 - added support for the Typhoon/Yakumo/HAMA DVB-T mobile USB2.0 2005-02-11 - added support for the KWorld/ADSTech Instant DVB-T USB2.0. Thanks a lot to Joachim von Caron 2005-02-02 - added support for the Hauppauge Win-TV Nova-T USB2 -- cgit v1.2.3 From 201fa3b5e4bf5879ef6b24ac555b4c8c1e378282 Mon Sep 17 00:00:00 2001 From: Patrick Boettcher Date: Wed, 30 Mar 2005 12:40:31 +0000 Subject: Added support for the TwinhanDTV Alpha/MagicBox II USB2 DVB-T device in conjunction with a neat dvb-usb-lib. All dibusb-drivers will be merged to it in the near future. --- linux/Documentation/dvb/README.dvb-usb | 305 +++++++++++++++++++++++++++++++++ 1 file changed, 305 insertions(+) create mode 100644 linux/Documentation/dvb/README.dvb-usb (limited to 'linux/Documentation/dvb') diff --git a/linux/Documentation/dvb/README.dvb-usb b/linux/Documentation/dvb/README.dvb-usb new file mode 100644 index 000000000..0a5c1bc5a --- /dev/null +++ b/linux/Documentation/dvb/README.dvb-usb @@ -0,0 +1,305 @@ +Documentation for dvb-usb-lib module and its devices + +Idea behind the dvb-usb-lib +=========================== + +In March 2005 I got the new Twinhan USB2.0 DVB-T device. They provided specs and a firmware. + +Quite keen I wanted to put the driver (with some quirks of course) into dibusb. +After reading some specs and doing some USB snooping, it realized, that the +dibusb-driver would be a complete mess afterwards. So I decided to do it in a +different way: With the help of a dvb-usb-lib. + +The dvb-usb-lib basically contains generic functions which every particular DVB +USB device would need to handle if it would be on its own. + +- Transport Stream URB handling in conjunction with dvb-demux-feed-control + (bulk and isoc (TODO) are supported) +- registering the device for the DVB-API +- registering an I2C-adapter if applicable +- remote-control/input-device handling (TODO) +- firmware requesting and loading (currently just for the Cypress USB + controller) + +The source code of the particular DVB USB devices does just the communication +with the device via the bus. The connection between the DVB-API-functionality +is done via callbacks, assigned in a static device-description (struct +dvb_usb_device) each device-driver has to have. + +For an example have a look in drivers/media/dvb/dvb-usb/vp7045*. + +Objective is to migrate all the usb-devices (dibusb, cinergyT2, maybe the +ttusb; flexcop-usb already benefits from the generic flexcop-device) to use +the dvb-usb-lib. + +The following list is mix of dibusb-devices and real dvb-usb-devices. Sooner or +later all device will be handled by dvb-usb. Then this line can be removed too. + +Supported devices USB1.1 +======================== + +Produced and reselled by Twinhan: +--------------------------------- +- TwinhanDTV USB-Ter DVB-T Device (VP7041) + http://www.twinhan.com/product_terrestrial_3.asp + +- TwinhanDTV Magic Box (VP7041e) + http://www.twinhan.com/product_terrestrial_4.asp + +- HAMA DVB-T USB device + http://www.hama.de/portal/articleId*110620/action*2598 + +- CTS Portable (Chinese Television System) (2) + http://www.2cts.tv/ctsportable/ + +- Unknown USB DVB-T device with vendor ID Hyper-Paltek + + +Produced and reselled by KWorld: +-------------------------------- +- KWorld V-Stream XPERT DTV DVB-T USB + http://www.kworld.com.tw/en/product/DVBT-USB/DVBT-USB.html + +- JetWay DTV DVB-T USB + http://www.jetway.com.tw/evisn/product/lcd-tv/DVT-USB/dtv-usb.htm + +- ADSTech Instant TV DVB-T USB + http://www.adstech.com/products/PTV-333/intro/PTV-333_intro.asp?pid=PTV-333 + + +Others: +------- +- Ultima Electronic/Artec T1 USB TVBOX (AN2135, AN2235, AN2235 with Panasonic Tuner) + http://82.161.246.249/products-tvbox.html + +- Compro Videomate DVB-U2000 - DVB-T USB (2) + http://www.comprousa.com/products/vmu2000.htm + +- Grandtec USB DVB-T + http://www.grand.com.tw/ + +- AVerMedia AverTV DVBT USB + http://www.avermedia.com/ + +- DiBcom USB DVB-T reference device (non-public) + + +Supported devices USB2.0-only +============================= +- Twinhan MagicBox II + http://www.twinhan.com/product_terrestrial_7.asp + +- TwinhanDTV Alpha + http://www.twinhan.com/product_terrestrial_8.asp + +- Hanftek UMT-010 + http://www.globalsources.com/si/6008819757082/ProductDetail/Digital-TV/product_id-100046529 + + +Supported devices USB2.0 and USB1.1 +============================= +- Typhoon/Yakumo/HAMA DVB-T mobile USB2.0 + http://www.yakumo.de/produkte/index.php?pid=1&ag=DVB-T + +- Artec T1 USB TVBOX (FX2) (2) + +- Hauppauge WinTV NOVA-T USB2 + http://www.hauppauge.com/ + +- KWorld/ADSTech Instant DVB-T USB2.0 (DiB3000M-B) + +- DiBcom USB2.0 DVB-T reference device (non-public) + +- AVerMedia AverTV DVB-T USB2.0 + +1) It is working almost - work-in-progress. +2) No test reports received yet. + +0. History & News: + 2005-03-30 - first commit of the dvb-usb-module based on the dibusb-source. First device is a new driver for the + TwinhanDTV Alpha / MagicBox II USB2.0-only DVB-T device. + + (change to dvb-usb from dvb-dibusb) + 2005-03-28 - added support for the AVerMedia AverTV DVB-T USB2.0 device (Thanks to Glen Harris and Jiun-Kuei Jung, AVerMedia) + 2005-03-14 - added support for the Typhoon/Yakumo/HAMA DVB-T mobile USB2.0 + 2005-02-11 - added support for the KWorld/ADSTech Instant DVB-T USB2.0. Thanks a lot to Joachim von Caron + 2005-02-02 - added support for the Hauppauge Win-TV Nova-T USB2 + 2005-01-31 - distorted streaming is gone for USB1.1 devices + 2005-01-13 - moved the mirrored pid_filter_table back to dvb-dibusb + - first almost working version for HanfTek UMT-010 + - found out, that Yakumo/HAMA/Typhoon are predessors of the HanfTek UMT-010 + 2005-01-10 - refactoring completed, now everything is very delightful + - tuner quirks for some weird devices (Artec T1 AN2235 device has sometimes a + Panasonic Tuner assembled). Tunerprobing implemented. Thanks a lot to Gunnar Wittich. + 2004-12-29 - after several days of struggling around bug of no returning URBs fixed. + 2004-12-26 - refactored the dibusb-driver, splitted into separate files + - i2c-probing enabled + 2004-12-06 - possibility for demod i2c-address probing + - new usb IDs (Compro, Artec) + 2004-11-23 - merged changes from DiB3000MC_ver2.1 + - revised the debugging + - possibility to deliver the complete TS for USB2.0 + 2004-11-21 - first working version of the dib3000mc/p frontend driver. + 2004-11-12 - added additional remote control keys. Thanks to Uwe Hanke. + 2004-11-07 - added remote control support. Thanks to David Matthews. + 2004-11-05 - added support for a new devices (Grandtec/Avermedia/Artec) + - merged my changes (for dib3000mb/dibusb) to the FE_REFACTORING, because it became HEAD + - moved transfer control (pid filter, fifo control) from usb driver to frontend, it seems + better settled there (added xfer_ops-struct) + - created a common files for frontends (mc/p/mb) + 2004-09-28 - added support for a new device (Unkown, vendor ID is Hyper-Paltek) + 2004-09-20 - added support for a new device (Compro DVB-U2000), thanks + to Amaury Demol for reporting + - changed usb TS transfer method (several urbs, stopping transfer + before setting a new pid) + 2004-09-13 - added support for a new device (Artec T1 USB TVBOX), thanks + to Christian Motschke for reporting + 2004-09-05 - released the dibusb device and dib3000mb-frontend driver + + (old news for vp7041.c) + 2004-07-15 - found out, by accident, that the device has a TUA6010XS for + PLL + 2004-07-12 - figured out, that the driver should also work with the + CTS Portable (Chinese Television System) + 2004-07-08 - firmware-extraction-2.422-problem solved, driver is now working + properly with firmware extracted from 2.422 + - #if for 2.6.4 (dvb), compile issue + - changed firmware handling, see vp7041.txt sec 1.1 + 2004-07-02 - some tuner modifications, v0.1, cleanups, first public + 2004-06-28 - now using the dvb_dmx_swfilter_packets, everything + runs fine now + 2004-06-27 - able to watch and switching channels (pre-alpha) + - no section filtering yet + 2004-06-06 - first TS received, but kernel oops :/ + 2004-05-14 - firmware loader is working + 2004-05-11 - start writing the driver + +1. How to use? +NOTE: This driver was developed using Linux 2.6.6., +it is working with 2.6.7 and above. + +Linux 2.4.x support is not planned, but patches are very welcome. + +NOTE: I'm using Debian testing, so the following explaination (especially +the hotplug-path) needn't match your system, but probably it will :). + +The driver is included in the kernel since Linux 2.6.10. + +1.1. Firmware + +The USB driver needs to download a firmware to start working. + +for USB1.1 (AN2135) you need: dvb-dibusb-5.0.0.11.fw +for USB2.0 HanfTek: dvb-dibusb-umt-2.fw +for USB2.0 DiBcom: dvb-dibusb-6.0.0.5.fw +for USB2.0 AVerMedia AverTV DVB-T USB2: dvb-dibusb-avertv-usb2-1.fw +for USB2.0 TwinhanDTV Alpha/MagicBox II: dvb-usb-vp7045-01.fw + +The files can be found on http://www.linuxtv.org/download/firmware/ . + +We do not have the permission to publish the following firmware-files. +You'll need to extract them from the windows drivers. + +You should be able to use "get_dvb_firmware dibusb" to get the firmware: + +for USB1.1 (AN2235) (a few Artec T1 devices): dvb-dibusb-an2235-1.fw +for USB2.0 Hauppauge: dvb-dibusb-nova-t-1.fw +for USB2.0 ADSTech/Kworld USB2.0: dvb-dibusb-adstech-usb2-1.fw +for USB2.0 Yakumo/Typhoon/Hama: dvb-dtt200u-1.fw + +1.2. Compiling + +Since the driver is in the linux kernel, activating the driver in +your favorite config-environment should sufficient. I recommend +to compile the driver as module. Hotplug does the rest. + +1.3. Loading the drivers + +Hotplug is able to load the driver, when it is needed (because you plugged +in the device). + +If you want to enable debug output, you have to load the driver manually and +from withing the dvb-kernel cvs repository. + +first have a look, which debug level are available: + +modinfo dvb-usb +modinfo dvb-usb-vp7045 +etc. + +modprobe dvb-usb debug= +modprobe dvb-usb-vp7045 debug= +etc. + +should do the trick. + +When the driver is loaded successfully, the firmware file was in +the right place and the device is connected, the "Power"-LED should be +turned on. + +At this point you should be able to start a dvb-capable application. I'm use +(t|s)zap, mplayer and dvbscan to test the basics. VDR-xine provides the +long-term test scenario. + +2. Known problems and bugs + +- Don't remove the USB device while running an DVB application, your system + will go crazy or die most likely. + +2.1. Adding support for devices + +TODO + +2.2. USB1.1 Bandwidth limitation + +A lot of the currently supported devices are USB1.1 and thus they have a +maximum bandwidth of about 5-6 MBit/s when connected to a USB2.0 hub. +This is not enough for receiving the complete transport stream of a +DVB-T channel (which is about 16 MBit/s). Normally this is not a +problem, if you only want to watch TV (this does not apply for HDTV), +but watching a channel while recording another channel on the same +frequency simply does not work very well. This applies to all USB1.1 +DVB-T devices, not just the dvb-usb-devices) + +The bug, where the TS is distorted by a heavy usage of the device is gone +definitely. All dvb-usb-devices I was using (Twinhan, Kworld, DiBcom) are +working like charm now with VDR. Sometimes I even was able to record a channel +and watch another one. + +2.3. Comments + +Patches, comments and suggestions are very very welcome. + +3. Acknowledgements + Amaury Demol (ademol@dibcom.fr) and Francois Kanounnikoff from DiBcom for + providing specs, code and help, on which the dvb-dibusb, dib3000mb and + dib3000mc are based. + + David Matthews for identifying a new device type (Artec T1 with AN2235) + and for extending dibusb with remote control event handling. Thank you. + + Alex Woods for frequently answering question about usb and dvb + stuff, a big thank you. + + Bernd Wagner for helping with huge bug reports and discussions. + + Gunnar Wittich and Joachim von Caron for their trust for giving me + root-shells on their machines to implement support for new devices. + + Glen Harris for bringing up, that there is a new dibusb-device and Jiun-Kuei + Jung from AVerMedia who kindly provided a special firmware to get the device + up and running in Linux. + + Jennifer Chen, Jeff and Jack from Twinhan for kindly supporting me by + writing the vp7045-driver. + + Some guys on the linux-dvb mailing list for encouraging me + + Peter Schildmann >peter.schildmann-nospam-at-web.de< for his + user-level firmware loader, which saves a lot of time + (when writing the vp7041 driver) + + Ulf Hermenau for helping me out with traditional chinese. + + André Smoktun and Christian Frömmel for supporting me with + hardware and listening to my problems very patient. -- cgit v1.2.3 From ffc743c9033fec93aaa735d39a7d927448db2818 Mon Sep 17 00:00:00 2001 From: Patrick Boettcher Date: Thu, 31 Mar 2005 09:07:31 +0000 Subject: ported the Yakumo/Hama/Typhoon driver to dvb-usb --- linux/Documentation/dvb/README.dvb-usb | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) (limited to 'linux/Documentation/dvb') diff --git a/linux/Documentation/dvb/README.dvb-usb b/linux/Documentation/dvb/README.dvb-usb index 0a5c1bc5a..c37e48d35 100644 --- a/linux/Documentation/dvb/README.dvb-usb +++ b/linux/Documentation/dvb/README.dvb-usb @@ -20,6 +20,8 @@ USB device would need to handle if it would be on its own. - remote-control/input-device handling (TODO) - firmware requesting and loading (currently just for the Cypress USB controller) +- other functions/methods which can be shared by several drivers (such as + bulk-control-commands) The source code of the particular DVB USB devices does just the communication with the device via the bus. The connection between the DVB-API-functionality @@ -86,10 +88,10 @@ Others: Supported devices USB2.0-only ============================= -- Twinhan MagicBox II +- Twinhan MagicBox II (3) http://www.twinhan.com/product_terrestrial_7.asp -- TwinhanDTV Alpha +- TwinhanDTV Alpha (3) http://www.twinhan.com/product_terrestrial_8.asp - Hanftek UMT-010 @@ -98,7 +100,7 @@ Supported devices USB2.0-only Supported devices USB2.0 and USB1.1 ============================= -- Typhoon/Yakumo/HAMA DVB-T mobile USB2.0 +- Typhoon/Yakumo/HAMA DVB-T mobile USB2.0 (3) http://www.yakumo.de/produkte/index.php?pid=1&ag=DVB-T - Artec T1 USB TVBOX (FX2) (2) @@ -114,8 +116,10 @@ Supported devices USB2.0 and USB1.1 1) It is working almost - work-in-progress. 2) No test reports received yet. +3) porting for dvb-usb done. 0. History & News: + 2005-03-31 - ported the Yakumo/Hama/Typhoon DVB-T USB2.0 device to dvb-usb 2005-03-30 - first commit of the dvb-usb-module based on the dibusb-source. First device is a new driver for the TwinhanDTV Alpha / MagicBox II USB2.0-only DVB-T device. @@ -205,7 +209,7 @@ You should be able to use "get_dvb_firmware dibusb" to get the firmware: for USB1.1 (AN2235) (a few Artec T1 devices): dvb-dibusb-an2235-1.fw for USB2.0 Hauppauge: dvb-dibusb-nova-t-1.fw for USB2.0 ADSTech/Kworld USB2.0: dvb-dibusb-adstech-usb2-1.fw -for USB2.0 Yakumo/Typhoon/Hama: dvb-dtt200u-1.fw +for USB2.0 Yakumo/Typhoon/Hama: dvb-usb-dtt200u-01.fw 1.2. Compiling -- cgit v1.2.3 From 861784e76607eafbfb13c6ce1e3b87204b3978da Mon Sep 17 00:00:00 2001 From: Patrick Boettcher Date: Sat, 2 Apr 2005 14:42:56 +0000 Subject: re-enabled and improved commonly used remote control code for dvb-usb --- linux/Documentation/dvb/README.dvb-usb | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'linux/Documentation/dvb') diff --git a/linux/Documentation/dvb/README.dvb-usb b/linux/Documentation/dvb/README.dvb-usb index c37e48d35..9cf8ff4a2 100644 --- a/linux/Documentation/dvb/README.dvb-usb +++ b/linux/Documentation/dvb/README.dvb-usb @@ -119,11 +119,12 @@ Supported devices USB2.0 and USB1.1 3) porting for dvb-usb done. 0. History & News: - 2005-03-31 - ported the Yakumo/Hama/Typhoon DVB-T USB2.0 device to dvb-usb + 2005-04-02 - re-enabled and improved remote control code. + 2005-03-31 - ported the Yakumo/Hama/Typhoon DVB-T USB2.0 device to dvb-usb. 2005-03-30 - first commit of the dvb-usb-module based on the dibusb-source. First device is a new driver for the TwinhanDTV Alpha / MagicBox II USB2.0-only DVB-T device. - (change to dvb-usb from dvb-dibusb) + (change from dvb-dibusb to dvb-usb) 2005-03-28 - added support for the AVerMedia AverTV DVB-T USB2.0 device (Thanks to Glen Harris and Jiun-Kuei Jung, AVerMedia) 2005-03-14 - added support for the Typhoon/Yakumo/HAMA DVB-T mobile USB2.0 2005-02-11 - added support for the KWorld/ADSTech Instant DVB-T USB2.0. Thanks a lot to Joachim von Caron -- cgit v1.2.3 From 4d3c314ecc71edc11e3213e7169f27b5675bf12a Mon Sep 17 00:00:00 2001 From: Michael Hunold Date: Mon, 4 Apr 2005 13:05:12 +0000 Subject: - update bt8xx documentation, thanks to Uwe Bugla --- linux/Documentation/dvb/bt8xx.txt | 29 +++++++++-------------------- 1 file changed, 9 insertions(+), 20 deletions(-) (limited to 'linux/Documentation/dvb') diff --git a/linux/Documentation/dvb/bt8xx.txt b/linux/Documentation/dvb/bt8xx.txt index e3cacf4f2..d84df8072 100644 --- a/linux/Documentation/dvb/bt8xx.txt +++ b/linux/Documentation/dvb/bt8xx.txt @@ -17,34 +17,23 @@ Because of this, you need to enable "Device drivers" => "Multimedia devices" => "Video For Linux" => "BT848 Video For Linux" +Furthermore you need to enable +"Device drivers" => "Multimedia devices" => "Digital Video Broadcasting Devices" + => "DVB for Linux" "DVB Core Support" "Nebula/Pinnacle PCTV/TwinHan PCI Cards" + 2) Loading Modules ================== In general you need to load the bttv driver, which will handle the gpio and -i2c communication for us. Next you need the common dvb-bt8xx device driver -and one frontend driver. - -The bttv driver will HANG YOUR SYSTEM IF YOU DO NOT SPECIFY THE CORRECT -CARD ID! - -(If you don't get your card running and you suspect that the card id you're -using is wrong, have a look at "bttv-cards.c" for a list of possible card -ids.) - -Pay attention to failures when you load the frontend drivers -(e.g. dmesg, /var/log/messages). +i2c communication for us, plus the common dvb-bt8xx device driver. +The frontends for Nebula (nxt6000), Pinnacle PCTV (cx24110) and +TwinHan (dst) are loaded automatically by the dvb-bt8xx device driver. 3a) Nebula / Pinnacle PCTV -------------------------- - $ modprobe bttv i2c_hw=1 card=0x68 - $ modprobe dvb-bt8xx - -For Nebula cards use the "nxt6000" frontend driver: - $ modprobe nxt6000 - -For Pinnacle PCTV cards use the "cx24110" frontend driver: - $ modprobe cx24110 + $ modprobe bttv (normally bttv is being loaded automatically by kmod) + $ modprobe dvb-bt8xx (or just place dvb-bt8xx in /etc/modules for automatic loading) 3b) TwinHan ----------- -- cgit v1.2.3 From 5763fb92a09f21f9bccad093fc465720399a8a4b Mon Sep 17 00:00:00 2001 From: Manu Abraham Date: Mon, 4 Apr 2005 18:08:15 +0000 Subject: Merged the twinhan-exp branch to the trunk --- linux/Documentation/dvb/ci.txt | 219 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 219 insertions(+) create mode 100644 linux/Documentation/dvb/ci.txt (limited to 'linux/Documentation/dvb') diff --git a/linux/Documentation/dvb/ci.txt b/linux/Documentation/dvb/ci.txt new file mode 100644 index 000000000..0d15fae24 --- /dev/null +++ b/linux/Documentation/dvb/ci.txt @@ -0,0 +1,219 @@ +* For the user +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +NOTE: This document describes the usage of the high level CI API as +in accordance to the Linux DVB API. This is a not a documentation for the, +existing low level CI API. +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +To utilize the High Level CI capabilities, + +(1*) This point is valid only for the Twinhan/clones + For the Twinhan/Twinhan clones, the dst_ca module handles the CI + hardware handling.This module is loaded automatically if a CI + (Common Interface, that holds the CAM (Conditional Access Module) + is detected. + +(2) one requires a userspace application, ca_zap. This small userland + application is in charge of sending the descrambling related information + to the CAM. + +This application requires the following to function properly as of now. + + (a) Tune to a valid channel, with szap. + eg: $ szap -c channels.conf -r "TMC" -x + + (b) a channels.conf containing a valid PMT PID + + eg: TMC:11996:h:0:27500:278:512:650:321 + + here 278 is a valid PMT PID. the rest of the values are the + same ones that szap uses. + + (c) after running a szap, you have to run ca_zap, for the + descrambler to function, + + eg: $ ca_zap patched_channels.conf "TMC" + + The patched means a patch to apply to scan, such that scan can + generate a channels.conf_with pmt, which has this PMT PID info + (NOTE: szap cannot use this channels.conf with the PMT_PID) + + + (d) Hopeflly Enjoy your favourite subscribed channel as you do with + a FTA card. + +(3) Currently ca_zap, and dst_test, both are meant for demonstration + purposes only, they can become full fledged applications if necessary. + + +* Cards that fall in this category +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +At present the cards that fall in this category are the Twinhan and it's +clones, these cards are available as VVMER, Tomato, Hercules, Orange and +so on. + +* CI modules that are supported +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +The CI module support is largely dependant upon the firmware on the cards +Some cards do support almost all of the available CI modules. There is +nothing much that can be done in order to make additional CI modules +working with these cards. + +Modules that have been tested by this driver at present are + +(1) Irdeto 1 and 2 from SCM +(2) Viaccess from SCM +(3) Dragoncam + +* The High level CI API +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +* For the programmer +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +With the High Level CI approach any new card with almost any random +architecture can be implemented with this style, the definitions +insidethe switch statement can be easily adapted for any card, thereby +eliminating the need for any additional ioctls. + +The disadvantage is that the driver/hardware has to manage the rest. For +the application programmer it would be as simple as sending/receiving an +array to/from the CI ioctls as defined in the Linux DVB API. No changes +have been made in the API to accomodate this feature. + + +* Why the need for another CI interface ? +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +This is one of the most commonly asked question. Well a nice question. +Strictly speaking this is not a new interface. + +The CI interface is defined in the DVB API in ca.h as + +typedef struct ca_slot_info { + int num; /* slot number */ + + int type; /* CA interface this slot supports */ +#define CA_CI 1 /* CI high level interface */ +#define CA_CI_LINK 2 /* CI link layer level interface */ +#define CA_CI_PHYS 4 /* CI physical layer level interface */ +#define CA_DESCR 8 /* built-in descrambler */ +#define CA_SC 128 /* simple smart card interface */ + + unsigned int flags; +#define CA_CI_MODULE_PRESENT 1 /* module (or card) inserted */ +#define CA_CI_MODULE_READY 2 +} ca_slot_info_t; + + + +This CI interface follows the CI high level interface, which is not +implemented by most applications. Hence this area is revisited. + +This CI interface is quite different in the case that it tries to +accomodate all other CI based devices, that fall into the other categories + +This means that this CI interface handles the EN50221 style tags in the +Application layer only and no session management is taken care of by the +application. The driver/hardware will take care of all that. + +This interface is purely an EN50221 interface exchanging APDU's. This +means that no session management, link layer or a transport layer do +exist in this case in the application to driver communication. It is +as simple as that. The driver/hardware has to take care of that. + + +With this High Level CI interface, the interface can be defined with the +regular ioctls. + +All these ioctls are also valid for the High level CI interface + +#define CA_RESET _IO('o', 128) +#define CA_GET_CAP _IOR('o', 129, ca_caps_t) +#define CA_GET_SLOT_INFO _IOR('o', 130, ca_slot_info_t) +#define CA_GET_DESCR_INFO _IOR('o', 131, ca_descr_info_t) +#define CA_GET_MSG _IOR('o', 132, ca_msg_t) +#define CA_SEND_MSG _IOW('o', 133, ca_msg_t) +#define CA_SET_DESCR _IOW('o', 134, ca_descr_t) +#define CA_SET_PID _IOW('o', 135, ca_pid_t) + + +On querying the device, the device yields information thus + +CA_GET_SLOT_INFO +---------------------------- +Command = [info] +APP: Number=[1] +APP: Type=[1] +APP: flags=[1] +APP: CI High level interface +APP: CA/CI Module Present + +CA_GET_CAP +---------------------------- +Command = [caps] +APP: Slots=[1] +APP: Type=[1] +APP: Descrambler keys=[16] +APP: Type=[1] + +CA_SEND_MSG +---------------------------- +Descriptors(Program Level)=[ 09 06 06 04 05 50 ff f1] +Found CA descriptor @ program level + +(20) ES type=[2] ES pid=[201] ES length =[0 (0x0)] +(25) ES type=[4] ES pid=[301] ES length =[0 (0x0)] +ca_message length is 25 (0x19) bytes +EN50221 CA MSG=[ 9f 80 32 19 03 01 2d d1 f0 08 01 09 06 06 04 05 50 ff f1 02 e0 c9 00 00 04 e1 2d 00 00] + + +Not all ioctl's are implemented in the driver from the API, the other +features of the hardware that cannot be implemented by the API are achieved +using the CA_GET_MSG and CA_SEND_MSG ioctls. An EN50221 style wrapper is +used to exchange the data to maintain compatibility with other hardware. + + +/* a message to/from a CI-CAM */ +typedef struct ca_msg { + unsigned int index; + unsigned int type; + unsigned int length; + unsigned char msg[256]; +} ca_msg_t; + + +The flow of data can be described thus, + + + + + + App (User) + ----- + parse + | + | + v + en50221 APDU (package) + -------------------------------------- + | | | High Level CI driver + | | | + | v | + | en50221 APDU (unpackage) | + | | | + | | | + | v | + | sanity checks | + | | | + | | | + | v | + | do (H/W dep) | + -------------------------------------- + | Hardware + | + v + + + + +The High Level CI interface uses the EN50221 DVB standard, following a +standard ensures futureproofness. -- cgit v1.2.3 From 4e4da24aa36487071bd874fc63d387258299ceb0 Mon Sep 17 00:00:00 2001 From: Patrick Boettcher Date: Sun, 17 Apr 2005 14:37:15 +0000 Subject: - ported all dibusb drivers to fit into the dvb-usb-frameword - created dvb-pll-entries for the tuner used with the dibusb-drivers - removed all traces of the dibusb driver - adapted the dib3000-frontends to get along with the dvb-pll-changes --- linux/Documentation/dvb/README.dibusb | 291 --------------------------------- linux/Documentation/dvb/README.dvb-usb | 69 ++++---- 2 files changed, 32 insertions(+), 328 deletions(-) delete mode 100644 linux/Documentation/dvb/README.dibusb (limited to 'linux/Documentation/dvb') diff --git a/linux/Documentation/dvb/README.dibusb b/linux/Documentation/dvb/README.dibusb deleted file mode 100644 index 61225a7d7..000000000 --- a/linux/Documentation/dvb/README.dibusb +++ /dev/null @@ -1,291 +0,0 @@ -Documentation for dib3000* frontend drivers and dibusb device driver -==================================================================== - -Copyright (C) 2004-5 Patrick Boettcher (patrick.boettcher@desy.de), - -dibusb and dib3000mb/mc drivers based on GPL code, which has - -Copyright (C) 2004 Amaury Demol for DiBcom (ademol@dibcom.fr) - -This program is free software; you can redistribute it and/or -modify it under the terms of the GNU General Public License as -published by the Free Software Foundation, version 2. - - -Supported devices USB1.1 -======================== - -Produced and reselled by Twinhan: ---------------------------------- -- TwinhanDTV USB-Ter DVB-T Device (VP7041) - http://www.twinhan.com/product_terrestrial_3.asp - -- TwinhanDTV Magic Box (VP7041e) - http://www.twinhan.com/product_terrestrial_4.asp - -- HAMA DVB-T USB device - http://www.hama.de/portal/articleId*110620/action*2598 - -- CTS Portable (Chinese Television System) (2) - http://www.2cts.tv/ctsportable/ - -- Unknown USB DVB-T device with vendor ID Hyper-Paltek - - -Produced and reselled by KWorld: --------------------------------- -- KWorld V-Stream XPERT DTV DVB-T USB - http://www.kworld.com.tw/en/product/DVBT-USB/DVBT-USB.html - -- JetWay DTV DVB-T USB - http://www.jetway.com.tw/evisn/product/lcd-tv/DVT-USB/dtv-usb.htm - -- ADSTech Instant TV DVB-T USB - http://www.adstech.com/products/PTV-333/intro/PTV-333_intro.asp?pid=PTV-333 - - -Others: -------- -- Ultima Electronic/Artec T1 USB TVBOX (AN2135, AN2235, AN2235 with Panasonic Tuner) - http://82.161.246.249/products-tvbox.html - -- Compro Videomate DVB-U2000 - DVB-T USB (2) - http://www.comprousa.com/products/vmu2000.htm - -- Grandtec USB DVB-T - http://www.grand.com.tw/ - -- AVerMedia AverTV DVBT USB - http://www.avermedia.com/ - -- DiBcom USB DVB-T reference device (non-public) - - -Supported devices USB2.0 -======================== -- Twinhan MagicBox II (1) - http://www.twinhan.com/product_terrestrial_7.asp - -- Hanftek UMT-010 - http://www.globalsources.com/si/6008819757082/ProductDetail/Digital-TV/product_id-100046529 - -- Typhoon/Yakumo/HAMA DVB-T mobile USB2.0 - http://www.yakumo.de/produkte/index.php?pid=1&ag=DVB-T - -- Artec T1 USB TVBOX (FX2) (2) - -- Hauppauge WinTV NOVA-T USB2 - http://www.hauppauge.com/ - -- KWorld/ADSTech Instant DVB-T USB2.0 (DiB3000M-B) - -- DiBcom USB2.0 DVB-T reference device (non-public) - -- AVerMedia AverTV DVB-T USB2.0 - -1) It is working almost - work-in-progress. -2) No test reports received yet. - -0. NEWS: - 2005-03-28 - added support for the AVerMedia AverTV DVB-T USB2.0 device (Thanks to Glen Harris and Jiun-Kuei Jung, AVerMedia) - 2005-03-14 - added support for the Typhoon/Yakumo/HAMA DVB-T mobile USB2.0 - 2005-02-11 - added support for the KWorld/ADSTech Instant DVB-T USB2.0. Thanks a lot to Joachim von Caron - 2005-02-02 - added support for the Hauppauge Win-TV Nova-T USB2 - 2005-01-31 - distorted streaming is gone for USB1.1 devices - 2005-01-13 - moved the mirrored pid_filter_table back to dvb-dibusb - - first almost working version for HanfTek UMT-010 - - found out, that Yakumo/HAMA/Typhoon are predessors of the HanfTek UMT-010 - 2005-01-10 - refactoring completed, now everything is very delightful - - tuner quirks for some weird devices (Artec T1 AN2235 device has sometimes a - Panasonic Tuner assembled). Tunerprobing implemented. Thanks a lot to Gunnar Wittich. - 2004-12-29 - after several days of struggling around bug of no returning URBs fixed. - 2004-12-26 - refactored the dibusb-driver, splitted into separate files - - i2c-probing enabled - 2004-12-06 - possibility for demod i2c-address probing - - new usb IDs (Compro, Artec) - 2004-11-23 - merged changes from DiB3000MC_ver2.1 - - revised the debugging - - possibility to deliver the complete TS for USB2.0 - 2004-11-21 - first working version of the dib3000mc/p frontend driver. - 2004-11-12 - added additional remote control keys. Thanks to Uwe Hanke. - 2004-11-07 - added remote control support. Thanks to David Matthews. - 2004-11-05 - added support for a new devices (Grandtec/Avermedia/Artec) - - merged my changes (for dib3000mb/dibusb) to the FE_REFACTORING, because it became HEAD - - moved transfer control (pid filter, fifo control) from usb driver to frontend, it seems - better settled there (added xfer_ops-struct) - - created a common files for frontends (mc/p/mb) - 2004-09-28 - added support for a new device (Unkown, vendor ID is Hyper-Paltek) - 2004-09-20 - added support for a new device (Compro DVB-U2000), thanks - to Amaury Demol for reporting - - changed usb TS transfer method (several urbs, stopping transfer - before setting a new pid) - 2004-09-13 - added support for a new device (Artec T1 USB TVBOX), thanks - to Christian Motschke for reporting - 2004-09-05 - released the dibusb device and dib3000mb-frontend driver - - (old news for vp7041.c) - 2004-07-15 - found out, by accident, that the device has a TUA6010XS for - PLL - 2004-07-12 - figured out, that the driver should also work with the - CTS Portable (Chinese Television System) - 2004-07-08 - firmware-extraction-2.422-problem solved, driver is now working - properly with firmware extracted from 2.422 - - #if for 2.6.4 (dvb), compile issue - - changed firmware handling, see vp7041.txt sec 1.1 - 2004-07-02 - some tuner modifications, v0.1, cleanups, first public - 2004-06-28 - now using the dvb_dmx_swfilter_packets, everything - runs fine now - 2004-06-27 - able to watch and switching channels (pre-alpha) - - no section filtering yet - 2004-06-06 - first TS received, but kernel oops :/ - 2004-05-14 - firmware loader is working - 2004-05-11 - start writing the driver - -1. How to use? -NOTE: This driver was developed using Linux 2.6.6., -it is working with 2.6.7 and above. - -Linux 2.4.x support is not planned, but patches are very welcome. - -NOTE: I'm using Debian testing, so the following explaination (especially -the hotplug-path) needn't match your system, but probably it will :). - -The driver is included in the kernel since Linux 2.6.10. - -1.1. Firmware - -The USB driver needs to download a firmware to start working. - -for USB1.1 (AN2135) you need: dvb-dibusb-5.0.0.11.fw -for USB2.0 HanfTek: dvb-dibusb-umt-2.fw -for USB2.0 DiBcom: dvb-dibusb-6.0.0.5.fw -for USB2.0 AVerMedia AverTV DVB-T USB2: dvb-dibusb-avertv-usb2-1.fw - -The files can be found on http://www.linuxtv.org/download/firmware/ . - -We do not have the permission to publish the following firmware-files. -You'll need to extract them from the windows drivers. - -You should be able to use "get_dvb_firmware dibusb" to get the firmware: - -for USB1.1 (AN2235) (a few Artec T1 devices): dvb-dibusb-an2235-1.fw -for USB2.0 Hauppauge: dvb-dibusb-nova-t-1.fw -for USB2.0 ADSTech/Kworld USB2.0: dvb-dibusb-adstech-usb2-1.fw -for USB2.0 Yakumo/Typhoon/Hama: dvb-dtt200u-1.fw - -1.2. Compiling - -Since the driver is in the linux kernel, activating the driver in -your favorite config-environment should sufficient. I recommend -to compile the driver as module. Hotplug does the rest. - -1.3. Loading the drivers - -Hotplug is able to load the driver, when it is needed (because you plugged -in the device). - -If you want to enable debug output, you have to load the driver manually and -from withing the dvb-kernel cvs repository. - -first have a look, which debug level are available: - -modinfo dib3000mb -modinfo dib3000-common -modinfo dib3000mc -modinfo dvb-dibusb - -modprobe dib3000-common debug= -modprobe dib3000mb debug= -modprobe dib3000mc debug= -modprobe mt352 debug= -modprobe dvb-dibusb debug= - -should do the trick. - -When the driver is loaded successfully, the firmware file was in -the right place and the device is connected, the "Power"-LED should be -turned on. - -At this point you should be able to start a dvb-capable application. For myself -I used mplayer, dvbscan, tzap and kaxtv, they are working. Using the device -in vdr is working now also. - -2. Known problems and bugs - -- Don't remove the USB device while running an DVB application, your system will die most likely. - -2.1. Adding support for devices - -It is not possible to determine the range of devices based on the DiBcom -reference designs. This is because the reference design of DiBcom can be sold -to thirds, without telling DiBcom (so done with the Twinhan VP7041 and -the HAMA device). - -When you think you have a device like this and the driver does not recognizes it, -please send the ****load*.inf and the ****cap*.inf of the Windows driver to me. - -Sometimes the Vendor or Product ID is identical to the ones of Twinhan, even -though it is not a Twinhan device (e.g. HAMA), then please send me the name -of the device. I will add it to this list in order to make this clear to -others. - -If you are familar with C you can also add the VID and PID of the device to -the dvb-dibusb-core.c-file and create a patch and send it over to me or to -the linux-dvb mailing list, _after_ you have tried compiling and modprobing -it. - -2.2. USB1.1 Bandwidth limitation - -Most of the currently supported devices are USB1.1 and thus they have a -maximum bandwidth of about 5-6 MBit/s when connected to a USB2.0 hub. -This is not enough for receiving the complete transport stream of a -DVB-T channel (which can be about 16 MBit/s). Normally this is not a -problem, if you only want to watch TV (this does not apply for HDTV), -but watching a channel while recording another channel on the same -frequency simply does not work very well. This applies to all USB1.1 -DVB-T devices, not just dibusb) - -Update: For the USB1.1 and VDR some work has been done (patches and comments -are still very welcome). Maybe the problem is solved in the meantime because I -now use the dmx_sw_filter function instead of dmx_sw_filter_packet. I hope the -linux-dvb software filter is able to get the best of the garbled TS. - -The bug, where the TS is distorted by a heavy usage of the device is gone -definitely. All dibusb-devices I was using (Twinhan, Kworld, DiBcom) are -working like charm now with VDR. Sometimes I even was able to record a channel -and watch another one. - -2.3. Comments - -Patches, comments and suggestions are very very welcome. - -3. Acknowledgements - Amaury Demol (ademol@dibcom.fr) and Francois Kanounnikoff from DiBcom for - providing specs, code and help, on which the dvb-dibusb, dib3000mb and - dib3000mc are based. - - David Matthews for identifying a new device type (Artec T1 with AN2235) - and for extending dibusb with remote control event handling. Thank you. - - Alex Woods for frequently answering question about usb and dvb - stuff, a big thank you. - - Bernd Wagner for helping with huge bug reports and discussions. - - Gunnar Wittich and Joachim von Caron for their trust for giving me - root-shells on their machines to implement support for new devices. - - Glen Harris for bringing up, that there is a new dibusb-device and Jiun-Kuei - Jung from AVerMedia who kindly provided a special firmware to get the device - up and running in Linux. - - Some guys on the linux-dvb mailing list for encouraging me - - Peter Schildmann >peter.schildmann-nospam-at-web.de< for his - user-level firmware loader, which saves a lot of time - (when writing the vp7041 driver) - - Ulf Hermenau for helping me out with traditional chinese. - - André Smoktun and Christian Frömmel for supporting me with - hardware and listening to my problems very patient diff --git a/linux/Documentation/dvb/README.dvb-usb b/linux/Documentation/dvb/README.dvb-usb index 9cf8ff4a2..5173cacd1 100644 --- a/linux/Documentation/dvb/README.dvb-usb +++ b/linux/Documentation/dvb/README.dvb-usb @@ -1,27 +1,26 @@ -Documentation for dvb-usb-lib module and its devices +Documentation for dvb-usb-framework module and its devices -Idea behind the dvb-usb-lib -=========================== +Idea behind the dvb-usb-framework +================================= In March 2005 I got the new Twinhan USB2.0 DVB-T device. They provided specs and a firmware. Quite keen I wanted to put the driver (with some quirks of course) into dibusb. After reading some specs and doing some USB snooping, it realized, that the dibusb-driver would be a complete mess afterwards. So I decided to do it in a -different way: With the help of a dvb-usb-lib. +different way: With the help of a dvb-usb-framework. -The dvb-usb-lib basically contains generic functions which every particular DVB -USB device would need to handle if it would be on its own. +The framework provides generic functions (mostly kernel API calls), such as: - Transport Stream URB handling in conjunction with dvb-demux-feed-control (bulk and isoc (TODO) are supported) - registering the device for the DVB-API - registering an I2C-adapter if applicable -- remote-control/input-device handling (TODO) +- remote-control/input-device handling - firmware requesting and loading (currently just for the Cypress USB controller) - other functions/methods which can be shared by several drivers (such as - bulk-control-commands) + functions for bulk-control-commands) The source code of the particular DVB USB devices does just the communication with the device via the bus. The connection between the DVB-API-functionality @@ -34,8 +33,8 @@ Objective is to migrate all the usb-devices (dibusb, cinergyT2, maybe the ttusb; flexcop-usb already benefits from the generic flexcop-device) to use the dvb-usb-lib. -The following list is mix of dibusb-devices and real dvb-usb-devices. Sooner or -later all device will be handled by dvb-usb. Then this line can be removed too. +TODO: dynamic enabling and disabled of the pid-filter in regard to number of +feeds requested. Supported devices USB1.1 ======================== @@ -88,10 +87,10 @@ Others: Supported devices USB2.0-only ============================= -- Twinhan MagicBox II (3) +- Twinhan MagicBox II http://www.twinhan.com/product_terrestrial_7.asp -- TwinhanDTV Alpha (3) +- TwinhanDTV Alpha http://www.twinhan.com/product_terrestrial_8.asp - Hanftek UMT-010 @@ -100,8 +99,11 @@ Supported devices USB2.0-only Supported devices USB2.0 and USB1.1 ============================= -- Typhoon/Yakumo/HAMA DVB-T mobile USB2.0 (3) +- Typhoon/Yakumo/HAMA/Yuan DVB-T mobile USB2.0 http://www.yakumo.de/produkte/index.php?pid=1&ag=DVB-T + http://www.yuan.com.tw/en/products/vdo_ub300.html + http://www.hama.de/portal/articleId*114663/action*2563 + http://www.anubisline.com/english/articlec.asp?id=50502&catid=002 - Artec T1 USB TVBOX (FX2) (2) @@ -112,13 +114,13 @@ Supported devices USB2.0 and USB1.1 - DiBcom USB2.0 DVB-T reference device (non-public) -- AVerMedia AverTV DVB-T USB2.0 +- AVerMedia AverTV A800 DVB-T USB2.0 1) It is working almost - work-in-progress. 2) No test reports received yet. -3) porting for dvb-usb done. 0. History & News: + 2005-04-17 - all dibusb devices ported to make use of the dvb-usb-framework 2005-04-02 - re-enabled and improved remote control code. 2005-03-31 - ported the Yakumo/Hama/Typhoon DVB-T USB2.0 device to dvb-usb. 2005-03-30 - first commit of the dvb-usb-module based on the dibusb-source. First device is a new driver for the @@ -180,36 +182,26 @@ Supported devices USB2.0 and USB1.1 2004-05-11 - start writing the driver 1. How to use? -NOTE: This driver was developed using Linux 2.6.6., -it is working with 2.6.7 and above. - -Linux 2.4.x support is not planned, but patches are very welcome. - -NOTE: I'm using Debian testing, so the following explaination (especially -the hotplug-path) needn't match your system, but probably it will :). - -The driver is included in the kernel since Linux 2.6.10. - 1.1. Firmware -The USB driver needs to download a firmware to start working. +Most of the USB drivers need to download a firmware to start working. -for USB1.1 (AN2135) you need: dvb-dibusb-5.0.0.11.fw -for USB2.0 HanfTek: dvb-dibusb-umt-2.fw -for USB2.0 DiBcom: dvb-dibusb-6.0.0.5.fw -for USB2.0 AVerMedia AverTV DVB-T USB2: dvb-dibusb-avertv-usb2-1.fw +for USB1.1 (AN2135) you need: dvb-usb-dibusb-5.0.0.11.fw +for USB2.0 HanfTek: dvb-usb-umt-010-02.fw +for USB2.0 DiBcom: dvb-usb-dibusb-6.0.0.8.fw +for USB2.0 AVerMedia AverTV DVB-T USB2: dvb-usb-avertv-a800-01.fw for USB2.0 TwinhanDTV Alpha/MagicBox II: dvb-usb-vp7045-01.fw The files can be found on http://www.linuxtv.org/download/firmware/ . -We do not have the permission to publish the following firmware-files. +We do not have the permission (yet) to publish the following firmware-files. You'll need to extract them from the windows drivers. -You should be able to use "get_dvb_firmware dibusb" to get the firmware: +You should be able to use "get_dvb_firmware dvb-usb" to get the firmware: -for USB1.1 (AN2235) (a few Artec T1 devices): dvb-dibusb-an2235-1.fw -for USB2.0 Hauppauge: dvb-dibusb-nova-t-1.fw -for USB2.0 ADSTech/Kworld USB2.0: dvb-dibusb-adstech-usb2-1.fw +for USB1.1 (AN2235) (a few Artec T1 devices): dvb-usb-dibusb-an2235-01.fw +for USB2.0 Hauppauge: dvb-usb-nova-t-usb2-01.fw +for USB2.0 ADSTech/Kworld USB2.0: dvb-usb-adstech-usb2-01.fw for USB2.0 Yakumo/Typhoon/Hama: dvb-usb-dtt200u-01.fw 1.2. Compiling @@ -218,6 +210,9 @@ Since the driver is in the linux kernel, activating the driver in your favorite config-environment should sufficient. I recommend to compile the driver as module. Hotplug does the rest. +If you use dvb-kernel enter the build-2.6 directory run 'make' and 'insmod.sh +load' afterwards. + 1.3. Loading the drivers Hotplug is able to load the driver, when it is needed (because you plugged @@ -288,14 +283,14 @@ Patches, comments and suggestions are very very welcome. Bernd Wagner for helping with huge bug reports and discussions. - Gunnar Wittich and Joachim von Caron for their trust for giving me + Gunnar Wittich and Joachim von Caron for their trust for providing root-shells on their machines to implement support for new devices. Glen Harris for bringing up, that there is a new dibusb-device and Jiun-Kuei Jung from AVerMedia who kindly provided a special firmware to get the device up and running in Linux. - Jennifer Chen, Jeff and Jack from Twinhan for kindly supporting me by + Jennifer Chen, Jeff and Jack from Twinhan for kindly supporting by writing the vp7045-driver. Some guys on the linux-dvb mailing list for encouraging me -- cgit v1.2.3 From 5af7b9c8ec3954437d1293908f9cf33cf82bb6e4 Mon Sep 17 00:00:00 2001 From: Andreas Oberritter Date: Mon, 25 Apr 2005 21:43:54 +0000 Subject: dvb-fe-tda10046.fw was extracted one byte too large --- linux/Documentation/dvb/get_dvb_firmware | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'linux/Documentation/dvb') diff --git a/linux/Documentation/dvb/get_dvb_firmware b/linux/Documentation/dvb/get_dvb_firmware index 139affac9..27916ea1c 100644 --- a/linux/Documentation/dvb/get_dvb_firmware +++ b/linux/Documentation/dvb/get_dvb_firmware @@ -107,7 +107,7 @@ sub tda10045 { sub tda10046 { my $sourcefile = "tt_budget_217g.zip"; my $url = "http://www.technotrend.de/new/217g/$sourcefile"; - my $hash = "a25b579e37109af60f4a36c37893957c"; + my $hash = "6a7e1e2f2644b162ff0502367553c72d"; my $outfile = "dvb-fe-tda10046.fw"; my $tmpdir = tempdir(DIR => "/tmp", CLEANUP => 1); @@ -115,7 +115,7 @@ sub tda10046 { wgetfile($sourcefile, $url); unzip($sourcefile, $tmpdir); - extract("$tmpdir/software/OEM/PCI/App/ttlcdacc.dll", 0x3f731, 24479, "$tmpdir/fwtmp"); + extract("$tmpdir/software/OEM/PCI/App/ttlcdacc.dll", 0x3f731, 24478, "$tmpdir/fwtmp"); verify("$tmpdir/fwtmp", $hash); copy("$tmpdir/fwtmp", $outfile); -- cgit v1.2.3 From 129880a6df432ecd06fbe5a1ed773683b719fc83 Mon Sep 17 00:00:00 2001 From: Patrick Boettcher Date: Wed, 27 Apr 2005 11:31:27 +0000 Subject: some readme updates --- linux/Documentation/dvb/README.dvb-usb | 5 +- linux/Documentation/dvb/README.flexcop | 121 ++++++--------------------------- 2 files changed, 25 insertions(+), 101 deletions(-) (limited to 'linux/Documentation/dvb') diff --git a/linux/Documentation/dvb/README.dvb-usb b/linux/Documentation/dvb/README.dvb-usb index 5173cacd1..c7ed01b9f 100644 --- a/linux/Documentation/dvb/README.dvb-usb +++ b/linux/Documentation/dvb/README.dvb-usb @@ -33,7 +33,7 @@ Objective is to migrate all the usb-devices (dibusb, cinergyT2, maybe the ttusb; flexcop-usb already benefits from the generic flexcop-device) to use the dvb-usb-lib. -TODO: dynamic enabling and disabled of the pid-filter in regard to number of +TODO: dynamic enabling and disabling of the pid-filter in regard to number of feeds requested. Supported devices USB1.1 @@ -93,6 +93,9 @@ Supported devices USB2.0-only - TwinhanDTV Alpha http://www.twinhan.com/product_terrestrial_8.asp +- DigitalNow TinyUSB 2 DVB-t Receiver + http://www.digitalnow.com.au/DigitalNow%20tinyUSB2%20Specifications.html + - Hanftek UMT-010 http://www.globalsources.com/si/6008819757082/ProductDetail/Digital-TV/product_id-100046529 diff --git a/linux/Documentation/dvb/README.flexcop b/linux/Documentation/dvb/README.flexcop index 8036faa1e..a50c70f9c 100644 --- a/linux/Documentation/dvb/README.flexcop +++ b/linux/Documentation/dvb/README.flexcop @@ -2,26 +2,20 @@ This README escorted the skystar2-driver rewriting procedure. It describes the state of the new flexcop-driver set and some internals are written down here too. -How to do something in here? -============================ - -make -f Makefile.t -make -C ../build-2.6 -./in.sh # load the drivers -./rm.sh # unload the drivers - -Please read this file, if you want to contribute. - This document hopefully describes things about the flexcop and its -device-offsprings. Goal is to write a easy-to-write and easy-to-read set of +device-offsprings. Goal was to write an easy-to-write and easy-to-read set of drivers based on the skystar2.c and other information. -This directory is temporary. It is used for rewriting the skystar2.c and to -create shared code, which then can be used by the usb box as well. - Remark: flexcop-pci.c was a copy of skystar2.c, but every line has been touched and rewritten. +History & News +============== + 2005-04-01 - correct USB ISOC transfers (thanks to Vadim Catana) + + + + General coding processing ========================= @@ -81,16 +75,15 @@ non-static where possible, moved code to proper places) 2) Search for errors in the leftover of flexcop-pci.c (partially done) 5a) add MAC address reading +5c) feeding of ISOC data to the software demux (format of the isochronous data +and speed optimization, no real error) (thanks to Vadim Catana) What to do in the near future? -------------------------------------- (no special order here) - 5) USB driver 5b) optimize isoc-transfer (submitting/killing isoc URBs when transfer is starting) -5c) feeding of ISOC data to the software demux (format of the isochronous data -and speed optimization, no real error) Testing changes --------------- @@ -118,7 +111,7 @@ item | mt352 | nxt2002 | stv0299 | mt312 | mt352 | nxt2002 | stv0299 | mt312 2) | O | N 5a) | N | O 5b)* | N | -5c)* | N | +5c) | N | O * - not done yet @@ -155,17 +148,21 @@ working) SOLUTION: also index 0 was affected, because net_translation is done for these indexes by default -5b) isochronous transfer does only work in the first attempt (for the Sky2PC USB, -Air2PC is working) -SOLUTION: the flexcop was going asleep and never really woke up again (don't -know if this need fixes, see flexcop-fe-tuner.c:flexcop_sleep) +5b) isochronous transfer does only work in the first attempt (for the Sky2PC +USB, Air2PC is working) SOLUTION: the flexcop was going asleep and never really +woke up again (don't know if this need fixes, see +flexcop-fe-tuner.c:flexcop_sleep) + +NEWS: when the driver is loaded and unloaded and loaded again (w/o doing +anything in the while the driver is loaded the first time), no transfers take +place anymore. Improvements when rewriting (refactoring) is done ================================================= - split sleeping of the flexcop (misc_204.ACPI3_sig = 1;) from lnb_control (enable sleeping for other demods than dvb-s) -- add support for CableStar (stv0297 Microtune 203x/ALPS) +- add support for CableStar (stv0297 Microtune 203x/ALPS) (almost done, incompatibilities with the Nexus-CA) Debugging --------- @@ -192,82 +189,6 @@ Sram destinations: accessing registers Tuner/Demod: I2C bus DVB-stuff: can be written for common use -Restrictions: -============ - -We need to create a bus-specific-struct and a flexcop-struct. - -bus-specific-struct: - -struct flexcop_pci -... - -struct flexcop_usb -... - - -struct flexcop_device { - void *bus_specific; /* container for bus-specific struct */ -... -} - -PCI i2c can read/write max 4 bytes at a time, USB can more - -Functions -========= - -Syntax ------- - -- Flexcop functions will be called "flexcop(_[a-z0-9]+)+" and exported as such - if needed. -- Flexcop-device functions will be called "flexcop_device(_[a-z0-9]+)+" and - exported as such if needed. -- Both will be compiled to b2c2-flexcop.ko and their source can be found in the - flexcop*.[hc] - -Callbacks and exports ---------------------- - -Bus-specific functions will be given as callbacks (function pointers) to the -flexcop-module. (within the flexcop_device-struct) - -Initialization process -====================== - -b2c2-flexcop.ko is loaded -b2c2-flexcop-.ko is loaded - -suppose a device is found: -malloc flexcop and the bus-specific variables (via flexcop_device_malloc) -fill the bus-specific variable -fill the flexcop variable (especially the bus-specific callbacks) -bus-specific initialization - - ... -do the common initialization (via flexcop_device_initialize) - - reset the card - - determine flexcop type (II, IIB, III) - - hw_filters (bus dependent) - - 0x204 - - set sram size - - create the dvb-stuff - - create i2c stuff - - frontend-initialization -done -bus specific: - - media_destination (this and the following 3 are bus specific) - - cai_dest - - cao_dest - - net_destination - -Bugs fixed while rewriting the driver -===================================== - -- EEPROM access (to read the MAC address) was fixed to death some time last - year. (fixed here and in skystar2.c) (Bjarne, this was the piece of code - (fix-chipaddr) we were wondering about) - - Acknowledgements (just for the rewriting part) ================ @@ -281,4 +202,4 @@ Boleslaw Ciesielski for pointing out a problem with firmware loader. Vadim Catana for correcting the USB transfer. -comments, critics and ideas to linux-dvb@linuxtv.org or patrick.boettcher@desy.de +comments, critics and ideas to linux-dvb@linuxtv.org. -- cgit v1.2.3 From f27037eb4e93e726092bd5864c0bc2ecb8f5b749 Mon Sep 17 00:00:00 2001 From: Manu Abraham Date: Tue, 3 May 2005 20:24:18 +0000 Subject: Updated documentation --- linux/Documentation/dvb/bt8xx.txt | 42 +++++++++++++++------------------------ 1 file changed, 16 insertions(+), 26 deletions(-) (limited to 'linux/Documentation/dvb') diff --git a/linux/Documentation/dvb/bt8xx.txt b/linux/Documentation/dvb/bt8xx.txt index d84df8072..d64430bf4 100644 --- a/linux/Documentation/dvb/bt8xx.txt +++ b/linux/Documentation/dvb/bt8xx.txt @@ -35,45 +35,35 @@ TwinHan (dst) are loaded automatically by the dvb-bt8xx device driver. $ modprobe bttv (normally bttv is being loaded automatically by kmod) $ modprobe dvb-bt8xx (or just place dvb-bt8xx in /etc/modules for automatic loading) -3b) TwinHan ------------ + +3b) TwinHan and Clones +-------------------------- $ modprobe bttv i2c_hw=1 card=0x71 $ modprobe dvb-bt8xx $ modprobe dst -The value 0x71 will override the PCI type detection for dvb-bt8xx, which -is necessary for TwinHan cards.# +The value 0x71 will override the PCI type detection for dvb-bt8xx, +which is necessary for TwinHan cards. -If you're having an older card (blue color circuit) and card=0x71 locks your -machine, try using 0x68, too. If that does not work, ask on the DVB mailing list. +If you're having an older card (blue color circuit) and card=0x71 locks +your machine, try using 0x68, too. If that does not work, ask on the +mailing list. -The DST module takes a couple of useful parameters, in case the -dst drivers fails to detect your type of card correctly. +The DST module takes a couple of useful parameters. -dst_type takes values 0 (satellite), 1 (terrestial TV), 2 (cable). +verbose takes values 0 to 5. These values control the verbosity level. -dst_type_flags takes bit combined values: -1 = new tuner type packets. You can use this if your card is detected - and you have debug and you continually see the tuner packets not - working (make sure not a basic problem like dish alignment etc.) +debug takes values 0 and 1. You can either disable or enable debugging. -2 = TS 204. If your card tunes OK, but the picture is terrible, seemingly - breaking up in one half continually, and crc fails a lot, then - this is worth a try (or trying to turn off) +dst_addons takes values 0 and 0x20. A value of 0 means it is a FTA card. +0x20 means it has a Conditional Access slot. -4 = has symdiv. Some cards, mostly without new tuner packets, require - a symbol division algorithm. Doesn't apply to terrestial TV. - -You can also specify a value to have the autodetected values turned off -(e.g. 0). The autodected values are determined bythe cards 'response +The autodected values are determined bythe cards 'response string' which you can see in your logs e.g. -dst_check_ci: recognize DST-MOT - -or +dst_get_device_id: Recognise [DSTMCI] -dst_check_ci: unable to recognize DSTXCI or STXCI -- -Authors: Richard Walker, Jamie Honan, Michael Hunold +Authors: Richard Walker, Jamie Honan, Michael Hunold, Manu Abraham -- cgit v1.2.3 From e58d054bc80c2e5b13ecb9bf1626336f91960a0e Mon Sep 17 00:00:00 2001 From: Johannes Stezenbach Date: Thu, 26 May 2005 19:40:43 +0000 Subject: remove trailing whitespace --- linux/Documentation/dvb/ci.txt | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) (limited to 'linux/Documentation/dvb') diff --git a/linux/Documentation/dvb/ci.txt b/linux/Documentation/dvb/ci.txt index 0d15fae24..62e0701b5 100644 --- a/linux/Documentation/dvb/ci.txt +++ b/linux/Documentation/dvb/ci.txt @@ -2,7 +2,7 @@ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ NOTE: This document describes the usage of the high level CI API as in accordance to the Linux DVB API. This is a not a documentation for the, -existing low level CI API. +existing low level CI API. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ To utilize the High Level CI capabilities, @@ -11,7 +11,7 @@ To utilize the High Level CI capabilities, For the Twinhan/Twinhan clones, the dst_ca module handles the CI hardware handling.This module is loaded automatically if a CI (Common Interface, that holds the CAM (Conditional Access Module) - is detected. + is detected. (2) one requires a userspace application, ca_zap. This small userland application is in charge of sending the descrambling related information @@ -37,8 +37,8 @@ This application requires the following to function properly as of now. The patched means a patch to apply to scan, such that scan can generate a channels.conf_with pmt, which has this PMT PID info (NOTE: szap cannot use this channels.conf with the PMT_PID) - - + + (d) Hopeflly Enjoy your favourite subscribed channel as you do with a FTA card. @@ -65,7 +65,7 @@ Modules that have been tested by this driver at present are (2) Viaccess from SCM (3) Dragoncam -* The High level CI API +* The High level CI API ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * For the programmer -- cgit v1.2.3 From c33c04cb9b84732497bd7a67a7257cc27f2b8641 Mon Sep 17 00:00:00 2001 From: Johannes Stezenbach Date: Thu, 26 May 2005 19:41:29 +0000 Subject: fix dvb-usb-dibusb-5.0.0.11.fw download link remove trailing whitespace --- linux/Documentation/dvb/get_dvb_firmware | 48 ++++++++++++++++---------------- 1 file changed, 24 insertions(+), 24 deletions(-) (limited to 'linux/Documentation/dvb') diff --git a/linux/Documentation/dvb/get_dvb_firmware b/linux/Documentation/dvb/get_dvb_firmware index 27916ea1c..603c71a2c 100644 --- a/linux/Documentation/dvb/get_dvb_firmware +++ b/linux/Documentation/dvb/get_dvb_firmware @@ -57,12 +57,12 @@ sub sp8870 { my $tmpdir = tempdir(DIR => "/tmp", CLEANUP => 1); checkstandard(); - + wgetfile($sourcefile, $url); unzip($sourcefile, $tmpdir); verify("$tmpdir/software/OEM/HE/App/boot/SC_MAIN.MC", $hash); copy("$tmpdir/software/OEM/HE/App/boot/SC_MAIN.MC", $outfile); - + $outfile; } @@ -73,16 +73,16 @@ sub sp887x { my $hash = "237938d53a7f834c05c42b894ca68ac3"; my $outfile = "dvb-fe-sp887x.fw"; my $tmpdir = tempdir(DIR => "/tmp", CLEANUP => 1); - + checkstandard(); checkunshield(); - + wgetfile($sourcefile, $url); unzip($sourcefile, $tmpdir); unshield("$tmpdir/$cabfile", $tmpdir); verify("$tmpdir/ZEnglish/sc_main.mc", $hash); copy("$tmpdir/ZEnglish/sc_main.mc", $outfile); - + $outfile; } @@ -93,14 +93,14 @@ sub tda10045 { my $outfile = "dvb-fe-tda10045.fw"; my $tmpdir = tempdir(DIR => "/tmp", CLEANUP => 1); - checkstandard(); - + checkstandard(); + wgetfile($sourcefile, $url); unzip($sourcefile, $tmpdir); extract("$tmpdir/software/OEM/PCI/App/ttlcdacc.dll", 0x37ef9, 30555, "$tmpdir/fwtmp"); verify("$tmpdir/fwtmp", $hash); copy("$tmpdir/fwtmp", $outfile); - + $outfile; } @@ -112,13 +112,13 @@ sub tda10046 { my $tmpdir = tempdir(DIR => "/tmp", CLEANUP => 1); checkstandard(); - + wgetfile($sourcefile, $url); unzip($sourcefile, $tmpdir); extract("$tmpdir/software/OEM/PCI/App/ttlcdacc.dll", 0x3f731, 24478, "$tmpdir/fwtmp"); verify("$tmpdir/fwtmp", $hash); copy("$tmpdir/fwtmp", $outfile); - + $outfile; } @@ -129,11 +129,11 @@ sub av7110 { my $outfile = "dvb-ttpci-01.fw"; checkstandard(); - + wgetfile($sourcefile, $url); verify($sourcefile, $hash); copy($sourcefile, $outfile); - + $outfile; } @@ -145,7 +145,7 @@ sub dec2000t { my $tmpdir = tempdir(DIR => "/tmp", CLEANUP => 1); checkstandard(); - + wgetfile($sourcefile, $url); unzip($sourcefile, $tmpdir); verify("$tmpdir/software/OEM/STB/App/Boot/STB_PC_T.bin", $hash); @@ -162,7 +162,7 @@ sub dec2540t { my $tmpdir = tempdir(DIR => "/tmp", CLEANUP => 1); checkstandard(); - + wgetfile($sourcefile, $url); unzip($sourcefile, $tmpdir); verify("$tmpdir/software/OEM/STB/App/Boot/STB_PC_X.bin", $hash); @@ -179,7 +179,7 @@ sub dec3000s { my $tmpdir = tempdir(DIR => "/tmp", CLEANUP => 1); checkstandard(); - + wgetfile($sourcefile, $url); unzip($sourcefile, $tmpdir); verify("$tmpdir/software/OEM/STB/App/Boot/STB_PC_S.bin", $hash); @@ -194,9 +194,9 @@ sub vp7041 { my $hash = "e88c9372d1f66609a3e7b072c53fbcfe"; my $outfile = "dvb-vp7041-2.422.fw"; my $tmpdir = tempdir(DIR => "/tmp", CLEANUP => 1); - + checkstandard(); - + wgetfile($sourcefile, $url); unzip($sourcefile, $tmpdir); extract("$tmpdir/VisionDTV/Drivers/Win2K&XP/UDTTload.sys", 12503, 3036, "$tmpdir/fwtmp1"); @@ -223,8 +223,8 @@ sub vp7041 { } sub dibusb { - my $url = "http://www.linuxtv.org/cgi-bin/viewcvs.cgi/*checkout*/dvb-kernel/firmware/dvb-dibusb-5.0.0.11.fw"; - my $outfile = "dvb-dibusb-5.0.0.11.fw"; + my $url = "http://www.linuxtv.org/downloads/firmware/dvb-usb-dibusb-5.0.0.11.fw"; + my $outfile = "dvb-usb-dibusb-5.0.0.11.fw"; my $hash = "fa490295a527360ca16dcdf3224ca243"; checkstandard(); @@ -243,7 +243,7 @@ sub nxt2002 { my $tmpdir = tempdir(DIR => "/tmp", CLEANUP => 1); checkstandard(); - + wgetfile($sourcefile, $url); unzip($sourcefile, $tmpdir); verify("$tmpdir/SkyNETU.sys", $hash); @@ -349,14 +349,14 @@ sub verify { sub copy { my ($from, $to) = @_; - + system("cp -f \"$from\" \"$to\"") and die ("cp failed"); } sub extract { my ($infile, $offset, $length, $outfile) = @_; my ($chunklength, $buf, $rcount); - + open INFILE, "<$infile"; open OUTFILE, ">$outfile"; sysseek(INFILE, $offset, SEEK_SET); @@ -364,7 +364,7 @@ sub extract { # Calc chunk size $chunklength = 2048; $chunklength = $length if ($chunklength > $length); - + $rcount = sysread(INFILE, $buf, $chunklength); die "Ran out of data\n" if ($rcount != $chunklength); syswrite(OUTFILE, $buf); @@ -377,7 +377,7 @@ sub extract { sub appendfile { my ($FH, $infile) = @_; my ($buf); - + open INFILE, "<$infile"; while(1) { $rcount = sysread(INFILE, $buf, 2048); -- cgit v1.2.3 From 6a9989d687e31f9f4d15a641cce3e5489aa92148 Mon Sep 17 00:00:00 2001 From: Patrick Boettcher Date: Wed, 8 Jun 2005 22:19:02 +0000 Subject: removed device listing (they are all in the linuxtv wiki now) misc updates Signed-off-by: Patrick Boettcher --- linux/Documentation/dvb/README.dvb-usb | 100 +++++---------------------------- 1 file changed, 15 insertions(+), 85 deletions(-) (limited to 'linux/Documentation/dvb') diff --git a/linux/Documentation/dvb/README.dvb-usb b/linux/Documentation/dvb/README.dvb-usb index c7ed01b9f..5811d48e4 100644 --- a/linux/Documentation/dvb/README.dvb-usb +++ b/linux/Documentation/dvb/README.dvb-usb @@ -13,14 +13,17 @@ different way: With the help of a dvb-usb-framework. The framework provides generic functions (mostly kernel API calls), such as: - Transport Stream URB handling in conjunction with dvb-demux-feed-control - (bulk and isoc (TODO) are supported) + (bulk and isoc are supported) - registering the device for the DVB-API - registering an I2C-adapter if applicable - remote-control/input-device handling - firmware requesting and loading (currently just for the Cypress USB - controller) + controllers) - other functions/methods which can be shared by several drivers (such as functions for bulk-control-commands) +- TODO: a I2C-chunker. It creates device-specific chunks of register-accesses + depending on length of a register and the number of values that can be + multi-written and multi-read. The source code of the particular DVB USB devices does just the communication with the device via the bus. The connection between the DVB-API-functionality @@ -36,93 +39,17 @@ the dvb-usb-lib. TODO: dynamic enabling and disabling of the pid-filter in regard to number of feeds requested. -Supported devices USB1.1 +Supported devices ======================== -Produced and reselled by Twinhan: ---------------------------------- -- TwinhanDTV USB-Ter DVB-T Device (VP7041) - http://www.twinhan.com/product_terrestrial_3.asp +See the LinuxTV DVB Wiki at www.linuxtv.org for a complete list of +cards/drivers/firmwares: -- TwinhanDTV Magic Box (VP7041e) - http://www.twinhan.com/product_terrestrial_4.asp - -- HAMA DVB-T USB device - http://www.hama.de/portal/articleId*110620/action*2598 - -- CTS Portable (Chinese Television System) (2) - http://www.2cts.tv/ctsportable/ - -- Unknown USB DVB-T device with vendor ID Hyper-Paltek - - -Produced and reselled by KWorld: --------------------------------- -- KWorld V-Stream XPERT DTV DVB-T USB - http://www.kworld.com.tw/en/product/DVBT-USB/DVBT-USB.html - -- JetWay DTV DVB-T USB - http://www.jetway.com.tw/evisn/product/lcd-tv/DVT-USB/dtv-usb.htm - -- ADSTech Instant TV DVB-T USB - http://www.adstech.com/products/PTV-333/intro/PTV-333_intro.asp?pid=PTV-333 - - -Others: -------- -- Ultima Electronic/Artec T1 USB TVBOX (AN2135, AN2235, AN2235 with Panasonic Tuner) - http://82.161.246.249/products-tvbox.html - -- Compro Videomate DVB-U2000 - DVB-T USB (2) - http://www.comprousa.com/products/vmu2000.htm - -- Grandtec USB DVB-T - http://www.grand.com.tw/ - -- AVerMedia AverTV DVBT USB - http://www.avermedia.com/ - -- DiBcom USB DVB-T reference device (non-public) - - -Supported devices USB2.0-only -============================= -- Twinhan MagicBox II - http://www.twinhan.com/product_terrestrial_7.asp - -- TwinhanDTV Alpha - http://www.twinhan.com/product_terrestrial_8.asp - -- DigitalNow TinyUSB 2 DVB-t Receiver - http://www.digitalnow.com.au/DigitalNow%20tinyUSB2%20Specifications.html - -- Hanftek UMT-010 - http://www.globalsources.com/si/6008819757082/ProductDetail/Digital-TV/product_id-100046529 - - -Supported devices USB2.0 and USB1.1 -============================= -- Typhoon/Yakumo/HAMA/Yuan DVB-T mobile USB2.0 - http://www.yakumo.de/produkte/index.php?pid=1&ag=DVB-T - http://www.yuan.com.tw/en/products/vdo_ub300.html - http://www.hama.de/portal/articleId*114663/action*2563 - http://www.anubisline.com/english/articlec.asp?id=50502&catid=002 - -- Artec T1 USB TVBOX (FX2) (2) - -- Hauppauge WinTV NOVA-T USB2 - http://www.hauppauge.com/ - -- KWorld/ADSTech Instant DVB-T USB2.0 (DiB3000M-B) - -- DiBcom USB2.0 DVB-T reference device (non-public) - -- AVerMedia AverTV A800 DVB-T USB2.0 - -1) It is working almost - work-in-progress. -2) No test reports received yet. +http://www.linuxtv.org/wiki/index.php/DVB_USB 0. History & News: + 2005-05-30 - added basic isochronous support to the dvb-usb-framework + added support for Conexant Hybrid reference design and Nebula DigiTV USB 2005-04-17 - all dibusb devices ported to make use of the dvb-usb-framework 2005-04-02 - re-enabled and improved remote control code. 2005-03-31 - ported the Yakumo/Hama/Typhoon DVB-T USB2.0 device to dvb-usb. @@ -289,6 +216,9 @@ Patches, comments and suggestions are very very welcome. Gunnar Wittich and Joachim von Caron for their trust for providing root-shells on their machines to implement support for new devices. + Allan Third and Michael Hutchinson for their help to write the Nebula + digitv-driver. + Glen Harris for bringing up, that there is a new dibusb-device and Jiun-Kuei Jung from AVerMedia who kindly provided a special firmware to get the device up and running in Linux. @@ -305,4 +235,4 @@ Patches, comments and suggestions are very very welcome. Ulf Hermenau for helping me out with traditional chinese. André Smoktun and Christian Frömmel for supporting me with - hardware and listening to my problems very patient. + hardware and listening to my problems very patiently. -- cgit v1.2.3 From 707e3bebfe2385c751332a7b6f9280845c4a143a Mon Sep 17 00:00:00 2001 From: Patrick Boettcher Date: Thu, 16 Jun 2005 15:19:07 +0000 Subject: added keymap for Twinhan's remote control Signed-off-by: Michael Paxton Signed-off-by: Patrick Boettcher --- linux/Documentation/dvb/README.dvb-usb | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'linux/Documentation/dvb') diff --git a/linux/Documentation/dvb/README.dvb-usb b/linux/Documentation/dvb/README.dvb-usb index 5811d48e4..4dfe812ca 100644 --- a/linux/Documentation/dvb/README.dvb-usb +++ b/linux/Documentation/dvb/README.dvb-usb @@ -226,7 +226,9 @@ Patches, comments and suggestions are very very welcome. Jennifer Chen, Jeff and Jack from Twinhan for kindly supporting by writing the vp7045-driver. - Some guys on the linux-dvb mailing list for encouraging me + Michael Paxton for submitting remote control keymaps. + + Some guys on the linux-dvb mailing list for encouraging me. Peter Schildmann >peter.schildmann-nospam-at-web.de< for his user-level firmware loader, which saves a lot of time -- cgit v1.2.3 From 87b45299446d815c436f7a17c19e4b00d75b5b5a Mon Sep 17 00:00:00 2001 From: Patrick Boettcher Date: Fri, 1 Jul 2005 10:50:32 +0000 Subject: updated the readme file to point to the DVB USB wikipage to find out which firmware necessary minor updates --- linux/Documentation/dvb/README.dvb-usb | 28 ++++++++++------------------ 1 file changed, 10 insertions(+), 18 deletions(-) (limited to 'linux/Documentation/dvb') diff --git a/linux/Documentation/dvb/README.dvb-usb b/linux/Documentation/dvb/README.dvb-usb index 4dfe812ca..ac0797ea6 100644 --- a/linux/Documentation/dvb/README.dvb-usb +++ b/linux/Documentation/dvb/README.dvb-usb @@ -48,6 +48,7 @@ cards/drivers/firmwares: http://www.linuxtv.org/wiki/index.php/DVB_USB 0. History & News: + 2005-06-30 - added support for WideView WT-220U (Thanks to Steve Chang) 2005-05-30 - added basic isochronous support to the dvb-usb-framework added support for Conexant Hybrid reference design and Nebula DigiTV USB 2005-04-17 - all dibusb devices ported to make use of the dvb-usb-framework @@ -64,7 +65,7 @@ http://www.linuxtv.org/wiki/index.php/DVB_USB 2005-01-31 - distorted streaming is gone for USB1.1 devices 2005-01-13 - moved the mirrored pid_filter_table back to dvb-dibusb - first almost working version for HanfTek UMT-010 - - found out, that Yakumo/HAMA/Typhoon are predessors of the HanfTek UMT-010 + - found out, that Yakumo/HAMA/Typhoon are predecessors of the HanfTek UMT-010 2005-01-10 - refactoring completed, now everything is very delightful - tuner quirks for some weird devices (Artec T1 AN2235 device has sometimes a Panasonic Tuner assembled). Tunerprobing implemented. Thanks a lot to Gunnar Wittich. @@ -114,25 +115,13 @@ http://www.linuxtv.org/wiki/index.php/DVB_USB 1. How to use? 1.1. Firmware -Most of the USB drivers need to download a firmware to start working. +Most of the USB drivers need to download a firmware to the device before start +working. -for USB1.1 (AN2135) you need: dvb-usb-dibusb-5.0.0.11.fw -for USB2.0 HanfTek: dvb-usb-umt-010-02.fw -for USB2.0 DiBcom: dvb-usb-dibusb-6.0.0.8.fw -for USB2.0 AVerMedia AverTV DVB-T USB2: dvb-usb-avertv-a800-01.fw -for USB2.0 TwinhanDTV Alpha/MagicBox II: dvb-usb-vp7045-01.fw +Have a look at the Wikipage for the DVB-USB-drivers to find out, which firmware +you need for your device: -The files can be found on http://www.linuxtv.org/download/firmware/ . - -We do not have the permission (yet) to publish the following firmware-files. -You'll need to extract them from the windows drivers. - -You should be able to use "get_dvb_firmware dvb-usb" to get the firmware: - -for USB1.1 (AN2235) (a few Artec T1 devices): dvb-usb-dibusb-an2235-01.fw -for USB2.0 Hauppauge: dvb-usb-nova-t-usb2-01.fw -for USB2.0 ADSTech/Kworld USB2.0: dvb-usb-adstech-usb2-01.fw -for USB2.0 Yakumo/Typhoon/Hama: dvb-usb-dtt200u-01.fw +http://www.linuxtv.org/wiki/index.php/DVB_USB 1.2. Compiling @@ -226,6 +215,9 @@ Patches, comments and suggestions are very very welcome. Jennifer Chen, Jeff and Jack from Twinhan for kindly supporting by writing the vp7045-driver. + Steve Chang from WideView for providing information for new devices and + firmware files. + Michael Paxton for submitting remote control keymaps. Some guys on the linux-dvb mailing list for encouraging me. -- cgit v1.2.3 From 37029c256cae66ff0b0f2e128299ab214e89288e Mon Sep 17 00:00:00 2001 From: Michael Krufky Date: Sun, 21 Aug 2005 18:19:09 +0000 Subject: update bt8xx documentation with the newer Kconfig description of dvb-bt8xx --- linux/Documentation/dvb/bt8xx.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'linux/Documentation/dvb') diff --git a/linux/Documentation/dvb/bt8xx.txt b/linux/Documentation/dvb/bt8xx.txt index d64430bf4..40252003f 100644 --- a/linux/Documentation/dvb/bt8xx.txt +++ b/linux/Documentation/dvb/bt8xx.txt @@ -19,7 +19,7 @@ Because of this, you need to enable Furthermore you need to enable "Device drivers" => "Multimedia devices" => "Digital Video Broadcasting Devices" - => "DVB for Linux" "DVB Core Support" "Nebula/Pinnacle PCTV/TwinHan PCI Cards" + => "DVB for Linux" "DVB Core Support" "BT8xx based PCI cards" 2) Loading Modules ================== -- cgit v1.2.3 From cdc16665eebc0dff428b6901c3cb795ce4618c65 Mon Sep 17 00:00:00 2001 From: Manu Abraham Date: Fri, 2 Sep 2005 20:41:03 +0000 Subject: Updated Documentation Signed-off-by: Manu Abraham --- linux/Documentation/dvb/bt8xx.txt | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) (limited to 'linux/Documentation/dvb') diff --git a/linux/Documentation/dvb/bt8xx.txt b/linux/Documentation/dvb/bt8xx.txt index 40252003f..011f152a4 100644 --- a/linux/Documentation/dvb/bt8xx.txt +++ b/linux/Documentation/dvb/bt8xx.txt @@ -52,10 +52,15 @@ mailing list. The DST module takes a couple of useful parameters. -verbose takes values 0 to 5. These values control the verbosity level. - -debug takes values 0 and 1. You can either disable or enable debugging. - +verbose takes values 0 to 4. These values control the verbosity level, +and can be used to debug also. + +verbose=0 means complete disabling of messages + 1 only error messages are displayed + 2 notifications are also displayed + 3 informational messages are also displayed + 4 debug setting + dst_addons takes values 0 and 0x20. A value of 0 means it is a FTA card. 0x20 means it has a Conditional Access slot. -- cgit v1.2.3 From 69701527795829922fdb18c3e8a426e7ab52d7e3 Mon Sep 17 00:00:00 2001 From: Manu Abraham Date: Fri, 2 Sep 2005 20:44:31 +0000 Subject: Updated documentation Signed-off-by: Manu Abraham --- linux/Documentation/dvb/ci.txt | 9 +-------- 1 file changed, 1 insertion(+), 8 deletions(-) (limited to 'linux/Documentation/dvb') diff --git a/linux/Documentation/dvb/ci.txt b/linux/Documentation/dvb/ci.txt index 62e0701b5..95f0e73b2 100644 --- a/linux/Documentation/dvb/ci.txt +++ b/linux/Documentation/dvb/ci.txt @@ -23,7 +23,6 @@ This application requires the following to function properly as of now. eg: $ szap -c channels.conf -r "TMC" -x (b) a channels.conf containing a valid PMT PID - eg: TMC:11996:h:0:27500:278:512:650:321 here 278 is a valid PMT PID. the rest of the values are the @@ -31,13 +30,7 @@ This application requires the following to function properly as of now. (c) after running a szap, you have to run ca_zap, for the descrambler to function, - - eg: $ ca_zap patched_channels.conf "TMC" - - The patched means a patch to apply to scan, such that scan can - generate a channels.conf_with pmt, which has this PMT PID info - (NOTE: szap cannot use this channels.conf with the PMT_PID) - + eg: $ ca_zap channels.conf "TMC" (d) Hopeflly Enjoy your favourite subscribed channel as you do with a FTA card. -- cgit v1.2.3 From 6b68749fb9ab4db1bcd3f98ca2c665dc058a514a Mon Sep 17 00:00:00 2001 From: Johannes Stezenbach Date: Sun, 4 Sep 2005 14:04:12 +0000 Subject: remove trailing whitespace --- linux/Documentation/dvb/bt8xx.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'linux/Documentation/dvb') diff --git a/linux/Documentation/dvb/bt8xx.txt b/linux/Documentation/dvb/bt8xx.txt index 011f152a4..cb63b7a93 100644 --- a/linux/Documentation/dvb/bt8xx.txt +++ b/linux/Documentation/dvb/bt8xx.txt @@ -60,7 +60,7 @@ verbose=0 means complete disabling of messages 2 notifications are also displayed 3 informational messages are also displayed 4 debug setting - + dst_addons takes values 0 and 0x20. A value of 0 means it is a FTA card. 0x20 means it has a Conditional Access slot. -- cgit v1.2.3 From 78528530491b2ee2a36e8375bdcfc191c85c167f Mon Sep 17 00:00:00 2001 From: Manu Abraham Date: Sun, 16 Oct 2005 23:44:48 +0000 Subject: Updated Documentation Signed-off-by: Manu Abraham --- linux/Documentation/dvb/bt8xx.txt | 43 +++++++++++++++++++++++++++++++++++---- 1 file changed, 39 insertions(+), 4 deletions(-) (limited to 'linux/Documentation/dvb') diff --git a/linux/Documentation/dvb/bt8xx.txt b/linux/Documentation/dvb/bt8xx.txt index cb63b7a93..ac3af17f2 100644 --- a/linux/Documentation/dvb/bt8xx.txt +++ b/linux/Documentation/dvb/bt8xx.txt @@ -33,20 +33,23 @@ TwinHan (dst) are loaded automatically by the dvb-bt8xx device driver. -------------------------- $ modprobe bttv (normally bttv is being loaded automatically by kmod) - $ modprobe dvb-bt8xx (or just place dvb-bt8xx in /etc/modules for automatic loading) + $ modprobe dvb-bt8xx + +(or just place dvb-bt8xx in /etc/modules for automatic loading) 3b) TwinHan and Clones -------------------------- - $ modprobe bttv i2c_hw=1 card=0x71 + $ modprobe bttv card=0x71 $ modprobe dvb-bt8xx $ modprobe dst The value 0x71 will override the PCI type detection for dvb-bt8xx, -which is necessary for TwinHan cards. +which is necessary for TwinHan cards. Omission of this parameter might result +in a system lockup. -If you're having an older card (blue color circuit) and card=0x71 locks +If you're having an older card (blue color PCB) and card=0x71 locks up your machine, try using 0x68, too. If that does not work, ask on the mailing list. @@ -69,6 +72,38 @@ string' which you can see in your logs e.g. dst_get_device_id: Recognise [DSTMCI] +If you need to sent in bug reports on the dst, please do send in a complete +log with the verbose=4 module parameter. For general usage, the default setting +of verbose=1 is ideal. + + +4) Multiple cards +-------------------------- + +If you happen to be running multiple cards, it would be advisable to load +the bttv module with the card id. This would help to solve any module loading +problems that you might face. + +for example, if you happen to have a Twinhan and clones alongwith a FusionHDTV5 +card + + $ modprobe bttv card=0x71 card=0x87 + +Here the order of the card id is important and should be the same as that of the +physical order of the cards. Here card=0x71 represents the Twinhan and clones +and card=0x87 represents Fusion HDTV5. + +Some examples of card-id's + +Pinnacle Sat 0x5e +Nebula Digi TV 0x68 +PC HDTV 0x70 +Twinhan 0x71 +Fusion HDTV5 0x87 + +For a full list of card-id's, you can see the exported card-id's from +bttv-cards.c in linux-2.6.x/drivers/media/video/bttv.h +If you have problems with this please do ask on the mailing list. -- Authors: Richard Walker, Jamie Honan, Michael Hunold, Manu Abraham -- cgit v1.2.3 From 5ab23e12791e328261b4186ad615195d23e88af2 Mon Sep 17 00:00:00 2001 From: Michael Krufky Date: Mon, 17 Oct 2005 06:13:42 +0000 Subject: - Updated documentation for FusionHDTV Lite cards. We must differentiate the bt8xx based "Lite" cards from the cx2388x based "Gold" cards. - Provide location of CARDLIST.bttv Documentation, rather than instructing users to look at bttv.h - Include card decimal id numbers. These are valid for module arguments, and might be easier for some people to remember, rather than hex. Signed-off-by: Michael Krufky --- linux/Documentation/dvb/bt8xx.txt | 41 ++++++++++++++++++++++----------------- 1 file changed, 23 insertions(+), 18 deletions(-) (limited to 'linux/Documentation/dvb') diff --git a/linux/Documentation/dvb/bt8xx.txt b/linux/Documentation/dvb/bt8xx.txt index ac3af17f2..454671f5a 100644 --- a/linux/Documentation/dvb/bt8xx.txt +++ b/linux/Documentation/dvb/bt8xx.txt @@ -1,5 +1,5 @@ -How to get the Nebula, PCTV and Twinhan DST cards working -========================================================= +How to get the Nebula, PCTV, FusionHDTV Lite and Twinhan DST cards working +========================================================================== This class of cards has a bt878a as the PCI interface, and require the bttv driver. @@ -26,11 +26,12 @@ Furthermore you need to enable In general you need to load the bttv driver, which will handle the gpio and i2c communication for us, plus the common dvb-bt8xx device driver. -The frontends for Nebula (nxt6000), Pinnacle PCTV (cx24110) and -TwinHan (dst) are loaded automatically by the dvb-bt8xx device driver. +The frontends for Nebula (nxt6000), Pinnacle PCTV (cx24110), TwinHan (dst), +FusionHDTV DVB-T Lite (mt352) and FusionHDTV5 Lite (lgdt330x) are loaded +automatically by the dvb-bt8xx device driver. -3a) Nebula / Pinnacle PCTV --------------------------- +3a) Nebula / Pinnacle PCTV / FusionHDTV Lite +--------------------------------------------- $ modprobe bttv (normally bttv is being loaded automatically by kmod) $ modprobe dvb-bt8xx @@ -67,8 +68,8 @@ verbose=0 means complete disabling of messages dst_addons takes values 0 and 0x20. A value of 0 means it is a FTA card. 0x20 means it has a Conditional Access slot. -The autodected values are determined bythe cards 'response -string' which you can see in your logs e.g. +The autodetected values are determined by the cards 'response string' +which you can see in your logs e.g. dst_get_device_id: Recognise [DSTMCI] @@ -84,25 +85,29 @@ If you happen to be running multiple cards, it would be advisable to load the bttv module with the card id. This would help to solve any module loading problems that you might face. -for example, if you happen to have a Twinhan and clones alongwith a FusionHDTV5 -card +For example, if you have a Twinhan and Clones card along with a FusionHDTV5 Lite $ modprobe bttv card=0x71 card=0x87 Here the order of the card id is important and should be the same as that of the physical order of the cards. Here card=0x71 represents the Twinhan and clones -and card=0x87 represents Fusion HDTV5. +and card=0x87 represents Fusion HDTV5 Lite. These arguments can also be +specified in decimal, rather than hex: + + $ modprobe bttv card=113 card=135 Some examples of card-id's -Pinnacle Sat 0x5e -Nebula Digi TV 0x68 -PC HDTV 0x70 -Twinhan 0x71 -Fusion HDTV5 0x87 +Pinnacle Sat 0x5e (94) +Nebula Digi TV 0x68 (104) +PC HDTV 0x70 (112) +Twinhan 0x71 (113) +FusionHDTV DVB-T Lite 0x80 (128) +FusionHDTV5 Lite 0x87 (135) + +For a full list of card-id's, see the V4L Documentation within the kernel +source: linux/Documentation/video4linux/CARDLIST.bttv -For a full list of card-id's, you can see the exported card-id's from -bttv-cards.c in linux-2.6.x/drivers/media/video/bttv.h If you have problems with this please do ask on the mailing list. -- -- cgit v1.2.3 From 8986d215104a954362dbae6a7595da6bdbd467f3 Mon Sep 17 00:00:00 2001 From: Michael Krufky Date: Thu, 27 Oct 2005 04:11:59 +0000 Subject: From: Kirk Lapray * nxt200x.c, nxt200x.h - New frontend module that supports both NXT2002 and NXT2004. So far, only tested on NXT2004. After testing on NXT2002, we should deprecate the nxt2002 module, and implement this one instead on the applicable cards. * get_dvb_firmware: - Added support for the NXT2004 firmware. This firmware works with both the ATI HDTV Wonder and the AVerTVHD MCE a180. This was originally written by Jean-Francois Thibert * dvb-pll.c - Fixed minimum frequency for tuv1236d. It seems that the data sheets are wrong. Signed-off-by: Kirk Lapray Signed-off-by: Michael Krufky --- linux/Documentation/dvb/get_dvb_firmware | 19 ++++++++++++++++++- 1 file changed, 18 insertions(+), 1 deletion(-) (limited to 'linux/Documentation/dvb') diff --git a/linux/Documentation/dvb/get_dvb_firmware b/linux/Documentation/dvb/get_dvb_firmware index 603c71a2c..310f8273b 100644 --- a/linux/Documentation/dvb/get_dvb_firmware +++ b/linux/Documentation/dvb/get_dvb_firmware @@ -22,7 +22,7 @@ use File::Temp qw/ tempdir /; use IO::Handle; @components = ( "sp8870", "sp887x", "tda10045", "tda10046", "av7110", "dec2000t", - "dec2540t", "dec3000s", "vp7041", "dibusb", "nxt2002", + "dec2540t", "dec3000s", "vp7041", "dibusb", "nxt2002", "nxt2004", "or51211", "or51132_qam", "or51132_vsb"); # Check args @@ -252,6 +252,23 @@ sub nxt2002 { $outfile; } +sub nxt2004 { + my $sourcefile = "AVerTVHD_MCE_A180_Drv_v1.2.2.16.zip"; + my $url = "http://www.aver.com/support/Drivers/$sourcefile"; + my $hash = "111cb885b1e009188346d72acfed024c"; + my $outfile = "dvb-fe-nxt2004.fw"; + my $tmpdir = tempdir(DIR => "/tmp", CLEANUP => 1); + + checkstandard(); + + wgetfile($sourcefile, $url); + unzip($sourcefile, $tmpdir); + verify("$tmpdir/3xHybrid.sys", $hash); + extract("$tmpdir/3xHybrid.sys", 465304, 9584, $outfile); + + $outfile; +} + sub or51211 { my $fwfile = "dvb-fe-or51211.fw"; my $url = "http://linuxtv.org/downloads/firmware/$fwfile"; -- cgit v1.2.3 From 743baccbfae73966173e13010473e6ec04313d1f Mon Sep 17 00:00:00 2001 From: Michael Krufky Date: Sat, 29 Oct 2005 00:58:11 +0000 Subject: Updated documentation to include "hybrid" v4l/dvb and ATSC cards. Signed-off-by: Michael Krufky --- linux/Documentation/dvb/cards.txt | 37 ++++++++++++++++++++++++++++++++ linux/Documentation/dvb/contributors.txt | 6 ++++++ 2 files changed, 43 insertions(+) (limited to 'linux/Documentation/dvb') diff --git a/linux/Documentation/dvb/cards.txt b/linux/Documentation/dvb/cards.txt index efdc4ee9d..19329cf7b 100644 --- a/linux/Documentation/dvb/cards.txt +++ b/linux/Documentation/dvb/cards.txt @@ -41,6 +41,12 @@ o Frontends drivers: - dib3000mb : DiBcom 3000-MB demodulator DVB-S/C/T: - dst : TwinHan DST Frontend + ATSC: + - nxt200x : Nxtwave NXT2002 & NXT2004 + - or51211 : or51211 based (pcHDTV HD2000 card) + - or51132 : or51132 based (pcHDTV HD3000 card) + - bcm3510 : Broadcom BCM3510 + - lgdt330x : LG Electronics DT3302 & DT3303 o Cards based on the Phillips saa7146 multimedia PCI bridge chip: @@ -62,6 +68,10 @@ o Cards based on the Conexant Bt8xx PCI bridge: - Nebula Electronics DigiTV - TwinHan DST - Avermedia DVB-T + - ChainTech digitop DST-1000 DVB-S + - pcHDTV HD-2000 TV + - DViCO FusionHDTV DVB-T Lite + - DViCO FusionHDTV5 Lite o Technotrend / Hauppauge DVB USB devices: - Nova USB @@ -83,3 +93,30 @@ o DiBcom DVB-T USB based devices: - DiBcom USB2.0 DVB-T reference device (non-public) o Experimental support for the analog module of the Siemens DVB-C PCI card + +o Cards based on the Conexant cx2388x PCI bridge: + - ADS Tech Instant TV DVB-T PCI + - ATI HDTV Wonder + - digitalnow DNTV Live! DVB-T + - DViCO FusionHDTV DVB-T1 + - DViCO FusionHDTV DVB-T Plus + - DViCO FusionHDTV3 Gold-Q + - DViCO FusionHDTV3 Gold-T + - DViCO FusionHDTV5 Gold + - Hauppauge Nova-T DVB-T + - KWorld/VStream XPert DVB-T + - pcHDTV HD3000 HDTV + - TerraTec Cinergy 1400 DVB-T + - WinFast DTV1000-T + +o Cards based on the Phillips saa7134 PCI bridge: + - Medion 7134 + - Pinnacle PCTV 300i DVB-T + PAL + - LifeView FlyDVB-T DUO + - Typhoon DVB-T Duo Digital/Analog Cardbus + - Philips TOUGH DVB-T reference design + - Philips EUROPA V3 reference design + - Compro Videomate DVB-T300 + - Compro Videomate DVB-T200 + - AVerMedia AVerTVHD MCE A180 + diff --git a/linux/Documentation/dvb/contributors.txt b/linux/Documentation/dvb/contributors.txt index c9d5ce370..ba05a1878 100644 --- a/linux/Documentation/dvb/contributors.txt +++ b/linux/Documentation/dvb/contributors.txt @@ -75,5 +75,11 @@ Ernst Peinlich Peter Beutner for the IR code for the ttusb-dec driver +Wilson Michaels + for the lgdt330x frontend driver, and various bugfixes + +Michael Krufky + for maintaining v4l/dvb inter-tree dependencies + (If you think you should be in this list, but you are not, drop a line to the DVB mailing list) -- cgit v1.2.3 From 38315a6dde8aa37301bc26a689679d00df23287a Mon Sep 17 00:00:00 2001 From: Michael Krufky Date: Sat, 29 Oct 2005 17:11:37 +0000 Subject: Added nxt200x authors to contributors file. Signed-off-by: Michael Krufky --- linux/Documentation/dvb/contributors.txt | 11 +++++++++++ 1 file changed, 11 insertions(+) (limited to 'linux/Documentation/dvb') diff --git a/linux/Documentation/dvb/contributors.txt b/linux/Documentation/dvb/contributors.txt index ba05a1878..d75fd06d3 100644 --- a/linux/Documentation/dvb/contributors.txt +++ b/linux/Documentation/dvb/contributors.txt @@ -81,5 +81,16 @@ Wilson Michaels Michael Krufky for maintaining v4l/dvb inter-tree dependencies +Taylor Jacob + for the nxt2002 frontend driver + +Jean-Francois Thibert + for the nxt2004 frontend driver + +Kirk Lapray + for the or51211 and or51132 frontend drivers, and + for merging the nxt2002 and nxt2004 modules into a + single nxt200x frontend driver. + (If you think you should be in this list, but you are not, drop a line to the DVB mailing list) -- cgit v1.2.3 From 38bfb0fc9ee7ce1725379991e222ab2d39a4fd5e Mon Sep 17 00:00:00 2001 From: Mauro Carvalho Chehab Date: Sat, 26 Nov 2005 23:46:56 +0000 Subject: Whitespaces cleanups. Signed-off-by: Mauro Carvalho Chehab --- linux/Documentation/dvb/README.dvb-usb | 50 ++++++++++++++++---------------- linux/Documentation/dvb/README.flexcop | 2 +- linux/Documentation/dvb/avermedia.txt | 2 +- linux/Documentation/dvb/bt8xx.txt | 4 +-- linux/Documentation/dvb/cards.txt | 8 ++--- linux/Documentation/dvb/contributors.txt | 6 ++-- linux/Documentation/dvb/get_dvb_firmware | 2 +- linux/Documentation/dvb/readme.txt | 4 +-- 8 files changed, 39 insertions(+), 39 deletions(-) (limited to 'linux/Documentation/dvb') diff --git a/linux/Documentation/dvb/README.dvb-usb b/linux/Documentation/dvb/README.dvb-usb index ac0797ea6..46b78b733 100644 --- a/linux/Documentation/dvb/README.dvb-usb +++ b/linux/Documentation/dvb/README.dvb-usb @@ -50,12 +50,12 @@ http://www.linuxtv.org/wiki/index.php/DVB_USB 0. History & News: 2005-06-30 - added support for WideView WT-220U (Thanks to Steve Chang) 2005-05-30 - added basic isochronous support to the dvb-usb-framework - added support for Conexant Hybrid reference design and Nebula DigiTV USB + added support for Conexant Hybrid reference design and Nebula DigiTV USB 2005-04-17 - all dibusb devices ported to make use of the dvb-usb-framework 2005-04-02 - re-enabled and improved remote control code. 2005-03-31 - ported the Yakumo/Hama/Typhoon DVB-T USB2.0 device to dvb-usb. 2005-03-30 - first commit of the dvb-usb-module based on the dibusb-source. First device is a new driver for the - TwinhanDTV Alpha / MagicBox II USB2.0-only DVB-T device. + TwinhanDTV Alpha / MagicBox II USB2.0-only DVB-T device. (change from dvb-dibusb to dvb-usb) 2005-03-28 - added support for the AVerMedia AverTV DVB-T USB2.0 device (Thanks to Glen Harris and Jiun-Kuei Jung, AVerMedia) @@ -64,50 +64,50 @@ http://www.linuxtv.org/wiki/index.php/DVB_USB 2005-02-02 - added support for the Hauppauge Win-TV Nova-T USB2 2005-01-31 - distorted streaming is gone for USB1.1 devices 2005-01-13 - moved the mirrored pid_filter_table back to dvb-dibusb - - first almost working version for HanfTek UMT-010 - - found out, that Yakumo/HAMA/Typhoon are predecessors of the HanfTek UMT-010 + - first almost working version for HanfTek UMT-010 + - found out, that Yakumo/HAMA/Typhoon are predecessors of the HanfTek UMT-010 2005-01-10 - refactoring completed, now everything is very delightful - - tuner quirks for some weird devices (Artec T1 AN2235 device has sometimes a - Panasonic Tuner assembled). Tunerprobing implemented. Thanks a lot to Gunnar Wittich. + - tuner quirks for some weird devices (Artec T1 AN2235 device has sometimes a + Panasonic Tuner assembled). Tunerprobing implemented. Thanks a lot to Gunnar Wittich. 2004-12-29 - after several days of struggling around bug of no returning URBs fixed. 2004-12-26 - refactored the dibusb-driver, splitted into separate files - - i2c-probing enabled + - i2c-probing enabled 2004-12-06 - possibility for demod i2c-address probing - - new usb IDs (Compro, Artec) + - new usb IDs (Compro, Artec) 2004-11-23 - merged changes from DiB3000MC_ver2.1 - - revised the debugging - - possibility to deliver the complete TS for USB2.0 + - revised the debugging + - possibility to deliver the complete TS for USB2.0 2004-11-21 - first working version of the dib3000mc/p frontend driver. 2004-11-12 - added additional remote control keys. Thanks to Uwe Hanke. 2004-11-07 - added remote control support. Thanks to David Matthews. 2004-11-05 - added support for a new devices (Grandtec/Avermedia/Artec) - - merged my changes (for dib3000mb/dibusb) to the FE_REFACTORING, because it became HEAD - - moved transfer control (pid filter, fifo control) from usb driver to frontend, it seems - better settled there (added xfer_ops-struct) - - created a common files for frontends (mc/p/mb) + - merged my changes (for dib3000mb/dibusb) to the FE_REFACTORING, because it became HEAD + - moved transfer control (pid filter, fifo control) from usb driver to frontend, it seems + better settled there (added xfer_ops-struct) + - created a common files for frontends (mc/p/mb) 2004-09-28 - added support for a new device (Unkown, vendor ID is Hyper-Paltek) 2004-09-20 - added support for a new device (Compro DVB-U2000), thanks - to Amaury Demol for reporting - - changed usb TS transfer method (several urbs, stopping transfer - before setting a new pid) + to Amaury Demol for reporting + - changed usb TS transfer method (several urbs, stopping transfer + before setting a new pid) 2004-09-13 - added support for a new device (Artec T1 USB TVBOX), thanks - to Christian Motschke for reporting + to Christian Motschke for reporting 2004-09-05 - released the dibusb device and dib3000mb-frontend driver (old news for vp7041.c) 2004-07-15 - found out, by accident, that the device has a TUA6010XS for - PLL + PLL 2004-07-12 - figured out, that the driver should also work with the - CTS Portable (Chinese Television System) + CTS Portable (Chinese Television System) 2004-07-08 - firmware-extraction-2.422-problem solved, driver is now working - properly with firmware extracted from 2.422 - - #if for 2.6.4 (dvb), compile issue - - changed firmware handling, see vp7041.txt sec 1.1 + properly with firmware extracted from 2.422 + - #if for 2.6.4 (dvb), compile issue + - changed firmware handling, see vp7041.txt sec 1.1 2004-07-02 - some tuner modifications, v0.1, cleanups, first public 2004-06-28 - now using the dvb_dmx_swfilter_packets, everything - runs fine now + runs fine now 2004-06-27 - able to watch and switching channels (pre-alpha) - - no section filtering yet + - no section filtering yet 2004-06-06 - first TS received, but kernel oops :/ 2004-05-14 - firmware loader is working 2004-05-11 - start writing the driver diff --git a/linux/Documentation/dvb/README.flexcop b/linux/Documentation/dvb/README.flexcop index a50c70f9c..5515469de 100644 --- a/linux/Documentation/dvb/README.flexcop +++ b/linux/Documentation/dvb/README.flexcop @@ -174,7 +174,7 @@ Debugging Everything which is identical in the following table, can be put into a common flexcop-module. - PCI USB + PCI USB ------------------------------------------------------------------------------- Different: Register access: accessing IO memory USB control message diff --git a/linux/Documentation/dvb/avermedia.txt b/linux/Documentation/dvb/avermedia.txt index 09020ebd2..2dc260b2b 100644 --- a/linux/Documentation/dvb/avermedia.txt +++ b/linux/Documentation/dvb/avermedia.txt @@ -1,6 +1,6 @@ HOWTO: Get An Avermedia DVB-T working under Linux - ______________________________________________ + ______________________________________________ Table of Contents Assumptions and Introduction diff --git a/linux/Documentation/dvb/bt8xx.txt b/linux/Documentation/dvb/bt8xx.txt index 454671f5a..df6c05453 100644 --- a/linux/Documentation/dvb/bt8xx.txt +++ b/linux/Documentation/dvb/bt8xx.txt @@ -27,7 +27,7 @@ Furthermore you need to enable In general you need to load the bttv driver, which will handle the gpio and i2c communication for us, plus the common dvb-bt8xx device driver. The frontends for Nebula (nxt6000), Pinnacle PCTV (cx24110), TwinHan (dst), -FusionHDTV DVB-T Lite (mt352) and FusionHDTV5 Lite (lgdt330x) are loaded +FusionHDTV DVB-T Lite (mt352) and FusionHDTV5 Lite (lgdt330x) are loaded automatically by the dvb-bt8xx device driver. 3a) Nebula / Pinnacle PCTV / FusionHDTV Lite @@ -91,7 +91,7 @@ For example, if you have a Twinhan and Clones card along with a FusionHDTV5 Lite Here the order of the card id is important and should be the same as that of the physical order of the cards. Here card=0x71 represents the Twinhan and clones -and card=0x87 represents Fusion HDTV5 Lite. These arguments can also be +and card=0x87 represents Fusion HDTV5 Lite. These arguments can also be specified in decimal, rather than hex: $ modprobe bttv card=113 card=135 diff --git a/linux/Documentation/dvb/cards.txt b/linux/Documentation/dvb/cards.txt index 19329cf7b..9e1009244 100644 --- a/linux/Documentation/dvb/cards.txt +++ b/linux/Documentation/dvb/cards.txt @@ -16,7 +16,7 @@ Hardware supported by the linuxtv.org DVB drivers shielding, and the whole metal box has its own part number. -o Frontends drivers: +o Frontends drivers: - dvb_dummy_fe: for testing... DVB-S: - ves1x93 : Alps BSRV2 (ves1893 demodulator) and dbox2 (ves1993) @@ -24,7 +24,7 @@ o Frontends drivers: - grundig_29504-491 : Grundig 29504-491 (Philips TDA8083 demodulator), tsa5522 PLL - mt312 : Zarlink mt312 or Mitel vp310 demodulator, sl1935 or tsa5059 PLL - stv0299 : Alps BSRU6 (tsa5059 PLL), LG TDQB-S00x (tsa5059 PLL), - LG TDQF-S001F (sl1935 PLL), Philips SU1278 (tua6100 PLL), + LG TDQF-S001F (sl1935 PLL), Philips SU1278 (tua6100 PLL), Philips SU1278SH (tsa5059 PLL), Samsung TBMU24112IMB DVB-C: - ves1820 : various (ves1820 demodulator, sp5659c or spXXXX PLL) @@ -35,8 +35,8 @@ o Frontends drivers: - grundig_29504-401 : Grundig 29504-401 (LSI L64781 demodulator), tsa5060 PLL - tda1004x : Philips tda10045h (td1344 or tdm1316l PLL) - nxt6000 : Alps TDME7 (MITEL SP5659 PLL), Alps TDED4 (TI ALP510 PLL), - Comtech DVBT-6k07 (SP5730 PLL) - (NxtWave Communications NXT6000 demodulator) + Comtech DVBT-6k07 (SP5730 PLL) + (NxtWave Communications NXT6000 demodulator) - sp887x : Microtune 7202D - dib3000mb : DiBcom 3000-MB demodulator DVB-S/C/T: diff --git a/linux/Documentation/dvb/contributors.txt b/linux/Documentation/dvb/contributors.txt index d75fd06d3..4c33cced5 100644 --- a/linux/Documentation/dvb/contributors.txt +++ b/linux/Documentation/dvb/contributors.txt @@ -15,7 +15,7 @@ Michael Holzt Diego Picciani for CyberLogin for Linux which allows logging onto EON - (in case you are wondering where CyberLogin is, EON changed its login + (in case you are wondering where CyberLogin is, EON changed its login procedure and CyberLogin is no longer used.) Martin Schaller @@ -57,7 +57,7 @@ Augusto Cardoso Davor Emard for his work on the budget drivers, the demux code, the module unloading problems, ... - + Hans-Frieder Vogt for his work on calculating and checking the crc's for the TechnoTrend/Hauppauge DEC driver firmware @@ -90,7 +90,7 @@ Jean-Francois Thibert Kirk Lapray for the or51211 and or51132 frontend drivers, and for merging the nxt2002 and nxt2004 modules into a - single nxt200x frontend driver. + single nxt200x frontend driver. (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/get_dvb_firmware b/linux/Documentation/dvb/get_dvb_firmware index 310f8273b..a0f409dca 100644 --- a/linux/Documentation/dvb/get_dvb_firmware +++ b/linux/Documentation/dvb/get_dvb_firmware @@ -260,7 +260,7 @@ sub nxt2004 { my $tmpdir = tempdir(DIR => "/tmp", CLEANUP => 1); checkstandard(); - + wgetfile($sourcefile, $url); unzip($sourcefile, $tmpdir); verify("$tmpdir/3xHybrid.sys", $hash); diff --git a/linux/Documentation/dvb/readme.txt b/linux/Documentation/dvb/readme.txt index 754c98c6a..f5c50b22d 100644 --- a/linux/Documentation/dvb/readme.txt +++ b/linux/Documentation/dvb/readme.txt @@ -20,7 +20,7 @@ http://linuxtv.org/downloads/ What's inside this directory: -"cards.txt" +"cards.txt" contains a list of supported hardware. "contributors.txt" @@ -37,7 +37,7 @@ that require it. contains detailed informations about the TT DEC2000/DEC3000 USB DVB hardware. -"bt8xx.txt" +"bt8xx.txt" contains detailed installation instructions for the various bt8xx based "budget" DVB cards (Nebula, Pinnacle PCTV, Twinhan DST) -- cgit v1.2.3 From 0cce55a9254344c5ea98881cbab79546083207d6 Mon Sep 17 00:00:00 2001 From: Mauro Carvalho Chehab Date: Thu, 8 Dec 2005 11:00:24 +0000 Subject: Documentation fix and keep debug code at kernel From: Mauro Carvalho Chehab kernel-sync - Removed inexistent site - keep debug #if 0 at kernel patches Signed-off-by: Mauro Carvalho Chehab --- linux/Documentation/dvb/faq.txt | 1 - 1 file changed, 1 deletion(-) (limited to 'linux/Documentation/dvb') diff --git a/linux/Documentation/dvb/faq.txt b/linux/Documentation/dvb/faq.txt index 3bf51e45c..a42132d60 100644 --- a/linux/Documentation/dvb/faq.txt +++ b/linux/Documentation/dvb/faq.txt @@ -60,7 +60,6 @@ Some very frequently asked questions about linuxtv-dvb Metzler Bros. DVB development; alternate drivers and DVB utilities, include dvb-mpegtools and tuxzap. - http://www.linuxstb.org/ http://sourceforge.net/projects/dvbtools/ Dave Chapman's dvbtools package, including dvbstream and dvbtune -- cgit v1.2.3 From 90019d346efd7c172caf5de5e4452a14cdc8cc3c Mon Sep 17 00:00:00 2001 From: Mauro Carvalho Chehab Date: Thu, 8 Dec 2005 15:50:06 +0000 Subject: syncronizes some changes between v4l and dvb - Updated firmware names - kfree (NULL) is valid. - assert_spin_locked() is the new way - small fixes to make in sync with kernel Signed-off-by: Mauro Carvalho Chehab --- linux/Documentation/dvb/get_dvb_firmware | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'linux/Documentation/dvb') diff --git a/linux/Documentation/dvb/get_dvb_firmware b/linux/Documentation/dvb/get_dvb_firmware index a0f409dca..08e96ff55 100644 --- a/linux/Documentation/dvb/get_dvb_firmware +++ b/linux/Documentation/dvb/get_dvb_firmware @@ -223,8 +223,8 @@ sub vp7041 { } sub dibusb { - my $url = "http://www.linuxtv.org/downloads/firmware/dvb-usb-dibusb-5.0.0.11.fw"; - my $outfile = "dvb-usb-dibusb-5.0.0.11.fw"; + my $url = "http://www.linuxtv.org/downloads/firmware/dvb-dibusb-5.0.0.11.fw"; + my $outfile = "dvb-dibusb-5.0.0.11.fw"; my $hash = "fa490295a527360ca16dcdf3224ca243"; checkstandard(); -- cgit v1.2.3 From 58915ac9386f618879a8e23f6816c100ed40fad6 Mon Sep 17 00:00:00 2001 From: Michael Krufky Date: Tue, 27 Dec 2005 13:07:35 +0000 Subject: make the firmware dir documentation and comments consistent in the v4l-dvb tree. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Ville Skyttä Signed-off-by: Michael Krufky --- linux/Documentation/dvb/avermedia.txt | 3 ++- linux/Documentation/dvb/get_dvb_firmware | 6 +++++- linux/Documentation/dvb/ttusb-dec.txt | 3 ++- 3 files changed, 9 insertions(+), 3 deletions(-) (limited to 'linux/Documentation/dvb') diff --git a/linux/Documentation/dvb/avermedia.txt b/linux/Documentation/dvb/avermedia.txt index 2dc260b2b..068070ff1 100644 --- a/linux/Documentation/dvb/avermedia.txt +++ b/linux/Documentation/dvb/avermedia.txt @@ -150,7 +150,8 @@ Getting the card going The frontend module sp887x.o, requires an external firmware. Please use the command "get_dvb_firmware sp887x" to download - it. Then copy it to /usr/lib/hotplug/firmware. + it. Then copy it to /usr/lib/hotplug/firmware or /lib/firmware/ + (depending on configuration of firmware hotplug). Receiving DVB-T in Australia diff --git a/linux/Documentation/dvb/get_dvb_firmware b/linux/Documentation/dvb/get_dvb_firmware index 08e96ff55..4e5e6a979 100644 --- a/linux/Documentation/dvb/get_dvb_firmware +++ b/linux/Documentation/dvb/get_dvb_firmware @@ -34,7 +34,11 @@ for ($i=0; $i < scalar(@components); $i++) { if ($cid eq $components[$i]) { $outfile = eval($cid); die $@ if $@; - print STDERR "Firmware $outfile extracted successfully. Now copy it to either /lib/firmware or /usr/lib/hotplug/firmware/ (depending on your hotplug version).\n"; + print STDERR < Date: Tue, 3 Jan 2006 06:09:53 +0000 Subject: Add DViCO Bluebird firmware to dvb_get_firmware script - Add DViCO Bluebird firmware to dvb_get_firmware script, for FusionHDTV USB devices. - Use usb alt setting 0 for EP4 transfer (dvb-t), - Use usb alt setting 7 for EP2 transfer (atsc) - Added comment to lgdt330x.c to indicate support for DViCO FusionHDTV5 USB Gold. Thanks to: Jeff Lee Signed-off-by: Michael Krufky --- linux/Documentation/dvb/get_dvb_firmware | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) (limited to 'linux/Documentation/dvb') diff --git a/linux/Documentation/dvb/get_dvb_firmware b/linux/Documentation/dvb/get_dvb_firmware index 4e5e6a979..e339a180a 100644 --- a/linux/Documentation/dvb/get_dvb_firmware +++ b/linux/Documentation/dvb/get_dvb_firmware @@ -23,7 +23,7 @@ use IO::Handle; @components = ( "sp8870", "sp887x", "tda10045", "tda10046", "av7110", "dec2000t", "dec2540t", "dec3000s", "vp7041", "dibusb", "nxt2002", "nxt2004", - "or51211", "or51132_qam", "or51132_vsb"); + "or51211", "or51132_qam", "or51132_vsb", "bluebird"); # Check args syntax() if (scalar(@ARGV) != 1); @@ -312,6 +312,19 @@ sub or51132_vsb { $fwfile; } +sub bluebird { + my $url = "http://www.linuxtv.org/~mkrufky/dvb-usb-bluebird-01.fw"; + my $outfile = "dvb-usb-bluebird-01.fw"; + my $hash = "658397cb9eba9101af9031302671f49d"; + + checkstandard(); + + wgetfile($outfile, $url); + verify($outfile,$hash); + + $outfile; +} + # --------------------------------------------------------------- # Utilities -- cgit v1.2.3 From 1faa3dcb3917ba99177697e1b8b4473e388744f8 Mon Sep 17 00:00:00 2001 From: Michael Krufky Date: Mon, 9 Jan 2006 16:28:24 +0000 Subject: Bluebird firmware hosting moved to common dvb firmware dir on linuxtv.org - get_dvb_firmware script updated accordingly: - my $url = "http://www.linuxtv.org/~mkrufky/dvb-usb-bluebird-01.fw"; + my $url = "http://www.linuxtv.org/download/dvb/firmware/dvb-usb-blue$ Signed-off-by: Michael Krufky --- linux/Documentation/dvb/get_dvb_firmware | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'linux/Documentation/dvb') diff --git a/linux/Documentation/dvb/get_dvb_firmware b/linux/Documentation/dvb/get_dvb_firmware index e339a180a..75c28a174 100644 --- a/linux/Documentation/dvb/get_dvb_firmware +++ b/linux/Documentation/dvb/get_dvb_firmware @@ -313,7 +313,7 @@ sub or51132_vsb { } sub bluebird { - my $url = "http://www.linuxtv.org/~mkrufky/dvb-usb-bluebird-01.fw"; + my $url = "http://www.linuxtv.org/download/dvb/firmware/dvb-usb-bluebird-01.fw"; my $outfile = "dvb-usb-bluebird-01.fw"; my $hash = "658397cb9eba9101af9031302671f49d"; -- cgit v1.2.3 From a1ab2e924af1ff44efe63c57697da630e09ac3c8 Mon Sep 17 00:00:00 2001 From: Hartmut Hackmann Date: Fri, 3 Feb 2006 01:10:12 +0200 Subject: Added support for the LifeView FlyDVB-T LR301 card From: Giampiero Giancipoli Additionally to the card support, this changeset adds the option tda10046lifeview to get_dvb_firmware to download tda10046 firmware from LifeView's site. Signed-off-by: Giampiero Giancipoli Signed-off-by: Hartmut Hackmann --- linux/Documentation/dvb/get_dvb_firmware | 23 +++++++++++++++++++++-- 1 file changed, 21 insertions(+), 2 deletions(-) (limited to 'linux/Documentation/dvb') diff --git a/linux/Documentation/dvb/get_dvb_firmware b/linux/Documentation/dvb/get_dvb_firmware index 75c28a174..bb55f49f2 100644 --- a/linux/Documentation/dvb/get_dvb_firmware +++ b/linux/Documentation/dvb/get_dvb_firmware @@ -21,8 +21,9 @@ use File::Temp qw/ tempdir /; use IO::Handle; -@components = ( "sp8870", "sp887x", "tda10045", "tda10046", "av7110", "dec2000t", - "dec2540t", "dec3000s", "vp7041", "dibusb", "nxt2002", "nxt2004", +@components = ( "sp8870", "sp887x", "tda10045", "tda10046", + "tda10046lifeview", "av7110", "dec2000t", "dec2540t", + "dec3000s", "vp7041", "dibusb", "nxt2002", "nxt2004", "or51211", "or51132_qam", "or51132_vsb", "bluebird"); # Check args @@ -126,6 +127,24 @@ sub tda10046 { $outfile; } +sub tda10046lifeview { + my $sourcefile = "Drv_2.11.02.zip"; + my $url = "http://www.lifeview.com.tw/drivers/pci_card/FlyDVB-T/$sourcefile"; + my $hash = "1ea24dee4eea8fe971686981f34fd2e0"; + my $outfile = "dvb-fe-tda10046.fw"; + my $tmpdir = tempdir(DIR => "/tmp", CLEANUP => 1); + + checkstandard(); + + wgetfile($sourcefile, $url); + unzip($sourcefile, $tmpdir); + extract("$tmpdir/LVHybrid.sys", 0x8b088, 24602, "$tmpdir/fwtmp"); + verify("$tmpdir/fwtmp", $hash); + copy("$tmpdir/fwtmp", $outfile); + + $outfile; +} + sub av7110 { my $sourcefile = "dvb-ttpci-01.fw-261d"; my $url = "http://www.linuxtv.org/downloads/firmware/$sourcefile"; -- cgit v1.2.3 From 6ded7c2f0a2e6b7858b850ec736c5558256f8ad9 Mon Sep 17 00:00:00 2001 From: Michael Krufky Date: Thu, 9 Feb 2006 23:31:27 -0500 Subject: bt8xx documentation authors fix From: Michael Krufky - use one Author per line, which allows us to add more authors later without creating a mess. - Add Michael Krufky, responsible for the following changes: http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=2cbeddc976645262dbe036d6ec0825f96af70da3 Signed-off-by: Michael Krufky --- linux/Documentation/dvb/bt8xx.txt | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'linux/Documentation/dvb') diff --git a/linux/Documentation/dvb/bt8xx.txt b/linux/Documentation/dvb/bt8xx.txt index df6c05453..52ed46206 100644 --- a/linux/Documentation/dvb/bt8xx.txt +++ b/linux/Documentation/dvb/bt8xx.txt @@ -111,4 +111,8 @@ source: linux/Documentation/video4linux/CARDLIST.bttv If you have problems with this please do ask on the mailing list. -- -Authors: Richard Walker, Jamie Honan, Michael Hunold, Manu Abraham +Authors: Richard Walker, + Jamie Honan, + Michael Hunold, + Manu Abraham, + Michael Krufky -- cgit v1.2.3 From 845d893fdb9277b6688dec7371dc1eaa2d079e15 Mon Sep 17 00:00:00 2001 From: Manu Abraham Date: Sun, 26 Feb 2006 15:51:37 +0400 Subject: Documentation update From: Uwe Bugla Signed-off-by: Uwe Bugla Signed-off-by: Manu Abraham --- linux/Documentation/dvb/avermedia.txt | 10 +++------- linux/Documentation/dvb/readme.txt | 32 +++++++++++++++++++++----------- 2 files changed, 24 insertions(+), 18 deletions(-) (limited to 'linux/Documentation/dvb') diff --git a/linux/Documentation/dvb/avermedia.txt b/linux/Documentation/dvb/avermedia.txt index 068070ff1..8bab8461a 100644 --- a/linux/Documentation/dvb/avermedia.txt +++ b/linux/Documentation/dvb/avermedia.txt @@ -1,4 +1,3 @@ - HOWTO: Get An Avermedia DVB-T working under Linux ______________________________________________ @@ -137,11 +136,8 @@ Getting the card going To power up the card, load the following modules in the following order: - * insmod dvb-core.o - * modprobe bttv.o - * insmod bt878.o - * insmod dvb-bt8xx.o - * insmod sp887x.o + * modprobe bttv (normally loaded automatically) + * modprobe dvb-bt8xx (or place dvb-bt8xx in /etc/modules) Insertion of these modules into the running kernel will activate the appropriate DVB device nodes. It is then possible @@ -302,4 +298,4 @@ Further Update Many thanks to Nigel Pearson for the updates to this document since the recent revision of the driver. - January 29th 2004 + February 14th 2006 diff --git a/linux/Documentation/dvb/readme.txt b/linux/Documentation/dvb/readme.txt index f5c50b22d..0b0380c91 100644 --- a/linux/Documentation/dvb/readme.txt +++ b/linux/Documentation/dvb/readme.txt @@ -20,11 +20,23 @@ http://linuxtv.org/downloads/ What's inside this directory: +"avermedia.txt" +contains detailed information about the +Avermedia DVB-T cards. See also "bt8xx.txt". + +"bt8xx.txt" +contains detailed information about the +various bt8xx based "budget" DVB cards. + "cards.txt" contains a list of supported hardware. +"ci.txt" +contains detailed information about the +CI module as part from TwinHan cards and Clones. + "contributors.txt" -is the who-is-who of DVB development +is the who-is-who of DVB development. "faq.txt" contains frequently asked questions and their answers. @@ -34,19 +46,17 @@ script to download and extract firmware for those devices that require it. "ttusb-dec.txt" -contains detailed informations about the +contains detailed information about the TT DEC2000/DEC3000 USB DVB hardware. -"bt8xx.txt" -contains detailed installation instructions for the -various bt8xx based "budget" DVB cards -(Nebula, Pinnacle PCTV, Twinhan DST) - -"README.dibusb" -contains detailed information about adapters -based on DiBcom reference design. - "udev.txt" how to get DVB and udev up and running. +"README.dvb-usb" +contains detailed information about the DVB USB cards. + +"README.flexcop" +contains detailed information about the +Technisat- and Flexcop B2C2 drivers. + Good luck and have fun! -- cgit v1.2.3 From c97b5f3c89ba552280529a6da6418013796b062d Mon Sep 17 00:00:00 2001 From: Manu Abraham Date: Fri, 17 Mar 2006 03:37:05 +0400 Subject: bt8xx documentation update From: Uwe Bugla Signed-off-by: Uwe Bugla Signed-off-by: Manu Abraham --- linux/Documentation/dvb/bt8xx.txt | 140 ++++++++++++++------------------------ 1 file changed, 50 insertions(+), 90 deletions(-) (limited to 'linux/Documentation/dvb') diff --git a/linux/Documentation/dvb/bt8xx.txt b/linux/Documentation/dvb/bt8xx.txt index 52ed46206..4e7614e60 100644 --- a/linux/Documentation/dvb/bt8xx.txt +++ b/linux/Documentation/dvb/bt8xx.txt @@ -1,118 +1,78 @@ -How to get the Nebula, PCTV, FusionHDTV Lite and Twinhan DST cards working -========================================================================== +How to get the bt8xx cards working +================================== -This class of cards has a bt878a as the PCI interface, and -require the bttv driver. +1) General information +====================== -Please pay close attention to the warning about the bttv module -options below for the DST card. +This class of cards has a bt878a as the PCI interface, and require the bttv driver +for accessing the i2c bus and the gpio pins of the bt8xx chipset. +Please see Documentation/dvb/cards.txt => o Cards based on the Conexant Bt8xx PCI bridge: -1) General informations -======================= - -These drivers require the bttv driver to provide the means to access -the i2c bus and the gpio pins of the bt8xx chipset. - -Because of this, you need to enable -"Device drivers" => "Multimedia devices" - => "Video For Linux" => "BT848 Video For Linux" - -Furthermore you need to enable -"Device drivers" => "Multimedia devices" => "Digital Video Broadcasting Devices" - => "DVB for Linux" "DVB Core Support" "BT8xx based PCI cards" +Compiling kernel please enable: +a.)"Device drivers" => "Multimedia devices" => "Video For Linux" => "BT848 Video For Linux" +b.)"Device drivers" => "Multimedia devices" => "Digital Video Broadcasting Devices" + => "DVB for Linux" "DVB Core Support" "Bt8xx based PCI Cards" 2) Loading Modules ================== -In general you need to load the bttv driver, which will handle the gpio and -i2c communication for us, plus the common dvb-bt8xx device driver. -The frontends for Nebula (nxt6000), Pinnacle PCTV (cx24110), TwinHan (dst), -FusionHDTV DVB-T Lite (mt352) and FusionHDTV5 Lite (lgdt330x) are loaded -automatically by the dvb-bt8xx device driver. - -3a) Nebula / Pinnacle PCTV / FusionHDTV Lite ---------------------------------------------- - - $ modprobe bttv (normally bttv is being loaded automatically by kmod) - $ modprobe dvb-bt8xx - -(or just place dvb-bt8xx in /etc/modules for automatic loading) - - -3b) TwinHan and Clones --------------------------- +In default cases bttv is loaded automatically. +To load the backend either place dvb-bt8xx in etc/modules, or apply manually: - $ modprobe bttv card=0x71 - $ modprobe dvb-bt8xx - $ modprobe dst + $ modprobe dvb-bt8xx -The value 0x71 will override the PCI type detection for dvb-bt8xx, -which is necessary for TwinHan cards. Omission of this parameter might result -in a system lockup. +All frontends will be loaded automatically. +People running udev please see Documentation/dvb/udev.txt. -If you're having an older card (blue color PCB) and card=0x71 locks up -your machine, try using 0x68, too. If that does not work, ask on the -mailing list. +In the following cases overriding the PCI type detection for dvb-bt8xx might be necessary: -The DST module takes a couple of useful parameters. +2a) Running TwinHan and Clones +------------------------------ -verbose takes values 0 to 4. These values control the verbosity level, -and can be used to debug also. + $ modprobe bttv card=113 + $ modprobe dvb-bt8xx + $ modprobe dst -verbose=0 means complete disabling of messages - 1 only error messages are displayed - 2 notifications are also displayed - 3 informational messages are also displayed - 4 debug setting +Useful parameters for verbosity level and debugging the dst module: -dst_addons takes values 0 and 0x20. A value of 0 means it is a FTA card. -0x20 means it has a Conditional Access slot. +verbose=0: messages are disabled + 1: only error messages are displayed + 2: notifications are displayed + 3: other useful messages are displayed + 4: debug setting +dst_addons=0: card is a free to air (FTA) card only + 0x20: card has a conditional access slot for scrambled channels -The autodetected values are determined by the cards 'response string' -which you can see in your logs e.g. +The autodetected values are determined by the cards' "response string". +In your logs see f. ex.: dst_get_device_id: Recognize [DSTMCI]. +For bug reports please send in a complete log with verbose=4 activated. +Please also see Documentation/dvb/ci.txt. -dst_get_device_id: Recognise [DSTMCI] - -If you need to sent in bug reports on the dst, please do send in a complete -log with the verbose=4 module parameter. For general usage, the default setting -of verbose=1 is ideal. - - -4) Multiple cards +2b) Running multiple cards -------------------------- -If you happen to be running multiple cards, it would be advisable to load -the bttv module with the card id. This would help to solve any module loading -problems that you might face. - -For example, if you have a Twinhan and Clones card along with a FusionHDTV5 Lite +Examples of card ID's: - $ modprobe bttv card=0x71 card=0x87 - -Here the order of the card id is important and should be the same as that of the -physical order of the cards. Here card=0x71 represents the Twinhan and clones -and card=0x87 represents Fusion HDTV5 Lite. These arguments can also be -specified in decimal, rather than hex: +Pinnacle PCTV Sat: 94 +Nebula Electronics Digi TV: 104 +pcHDTV HD-2000 TV: 112 +Twinhan DST and clones: 113 +Avermedia AverTV DVB-T 771: 123 +Avermedia AverTV DVB-T 761: 124 +DViCO FusionHDTV DVB-T Lite: 128 +DViCO FusionHDTV 5 Lite: 135 +Notice: The order of the card ID should be uprising: +Example: $ modprobe bttv card=113 card=135 + $ modprobe dvb-bt8xx -Some examples of card-id's - -Pinnacle Sat 0x5e (94) -Nebula Digi TV 0x68 (104) -PC HDTV 0x70 (112) -Twinhan 0x71 (113) -FusionHDTV DVB-T Lite 0x80 (128) -FusionHDTV5 Lite 0x87 (135) - -For a full list of card-id's, see the V4L Documentation within the kernel -source: linux/Documentation/video4linux/CARDLIST.bttv - -If you have problems with this please do ask on the mailing list. +For a full list of card ID's please see Documentation/video4linux/CARDLIST.bttv. +In case of further problems send questions to the mailing list: www.linuxdvb.org. --- Authors: Richard Walker, Jamie Honan, Michael Hunold, Manu Abraham, + Uwe Bugla, Michael Krufky -- cgit v1.2.3 From e1c612678e9a079e98493af7f01dfe7b68767721 Mon Sep 17 00:00:00 2001 From: Michael Krufky Date: Wed, 22 Mar 2006 19:50:44 -0500 Subject: Documentation/dvb/get_dvb_firmware: fix firmware URL From: Adrian Bunk Date: Tue, 21 Mar 2006 23:43:59 +0000 (+0100) Subject: Documentation/dvb/get_dvb_firmware: fix firmware URL X-Git-Url: http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commitdiff;h=d7f2baaadc0e2da3b4dff76494f9cf46d48ad301 Documentation/dvb/get_dvb_firmware: fix firmware URL This patch fixes a wrong URL in Documentation/dvb/get_dvb_firmware. This patch fixes kernel Bugzilla #4301. kernel-sync Signed-off-by: Adrian Bunk Signed-off-by: Michael Krufky --- linux/Documentation/dvb/get_dvb_firmware | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'linux/Documentation/dvb') diff --git a/linux/Documentation/dvb/get_dvb_firmware b/linux/Documentation/dvb/get_dvb_firmware index bb55f49f2..15fc8fbef 100644 --- a/linux/Documentation/dvb/get_dvb_firmware +++ b/linux/Documentation/dvb/get_dvb_firmware @@ -246,7 +246,7 @@ sub vp7041 { } sub dibusb { - my $url = "http://www.linuxtv.org/downloads/firmware/dvb-dibusb-5.0.0.11.fw"; + my $url = "http://www.linuxtv.org/downloads/firmware/dvb-usb-dibusb-5.0.0.11.fw"; my $outfile = "dvb-dibusb-5.0.0.11.fw"; my $hash = "fa490295a527360ca16dcdf3224ca243"; -- cgit v1.2.3 From 67b2932b4991e24b17b20ecff3e664db6358e685 Mon Sep 17 00:00:00 2001 From: Michael Krufky Date: Sun, 23 Apr 2006 00:55:38 -0400 Subject: get_dvb_firmware: download nxt2002 firmware from new driver location From: Michael Krufky BBTI has updated their driver, and removed the old one from their website. This patch updates the get_dvb_firmware script to download the firmware from the new driver location. Signed-off-by: Michael Krufky --- linux/Documentation/dvb/get_dvb_firmware | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'linux/Documentation/dvb') diff --git a/linux/Documentation/dvb/get_dvb_firmware b/linux/Documentation/dvb/get_dvb_firmware index 15fc8fbef..4820366b6 100644 --- a/linux/Documentation/dvb/get_dvb_firmware +++ b/linux/Documentation/dvb/get_dvb_firmware @@ -259,9 +259,9 @@ sub dibusb { } sub nxt2002 { - my $sourcefile = "Broadband4PC_4_2_11.zip"; + my $sourcefile = "Technisat_DVB-PC_4_4_COMPACT.zip"; my $url = "http://www.bbti.us/download/windows/$sourcefile"; - my $hash = "c6d2ea47a8f456d887ada0cfb718ff2a"; + my $hash = "476befae8c7c1bb9648954060b1eec1f"; my $outfile = "dvb-fe-nxt2002.fw"; my $tmpdir = tempdir(DIR => "/tmp", CLEANUP => 1); @@ -269,8 +269,8 @@ sub nxt2002 { wgetfile($sourcefile, $url); unzip($sourcefile, $tmpdir); - verify("$tmpdir/SkyNETU.sys", $hash); - extract("$tmpdir/SkyNETU.sys", 375832, 5908, $outfile); + verify("$tmpdir/SkyNET.sys", $hash); + extract("$tmpdir/SkyNET.sys", 331624, 5908, $outfile); $outfile; } -- cgit v1.2.3 From f106aa84891b69e72192532635789eca94094c59 Mon Sep 17 00:00:00 2001 From: Mauro Carvalho Chehab Date: Wed, 4 Oct 2006 10:17:11 -0300 Subject: Several typo fixes applied at kernel tree From: Mauro Carvalho Chehab This patch includes at the v4l-dvb tree several documentation fixes applied at kernel tree. kernel-sync: Signed-off-by: Mauro Carvalho Chehab --- linux/Documentation/dvb/avermedia.txt | 4 ++-- linux/Documentation/dvb/cards.txt | 2 +- linux/Documentation/dvb/ci.txt | 4 ++-- linux/Documentation/dvb/faq.txt | 6 +++--- 4 files changed, 8 insertions(+), 8 deletions(-) (limited to 'linux/Documentation/dvb') diff --git a/linux/Documentation/dvb/avermedia.txt b/linux/Documentation/dvb/avermedia.txt index 8bab8461a..e44c009ac 100644 --- a/linux/Documentation/dvb/avermedia.txt +++ b/linux/Documentation/dvb/avermedia.txt @@ -45,9 +45,9 @@ Assumptions and Introduction by circuitry on the card and is often presented uncompressed. For a PAL TV signal encoded at a resolution of 768x576 24-bit color pixels over 25 frames per second - a fair amount of data - is generated and must be proceesed by the PC before it can be + is generated and must be processed by the PC before it can be displayed on the video monitor screen. Some Analogue TV cards - for PC's have onboard MPEG2 encoders which permit the raw + for PCs have onboard MPEG2 encoders which permit the raw digital data stream to be presented to the PC in an encoded and compressed form - similar to the form that is used in Digital TV. diff --git a/linux/Documentation/dvb/cards.txt b/linux/Documentation/dvb/cards.txt index 9e1009244..ca58e339d 100644 --- a/linux/Documentation/dvb/cards.txt +++ b/linux/Documentation/dvb/cards.txt @@ -5,7 +5,7 @@ Hardware supported by the linuxtv.org DVB drivers frontends (i.e. tuner / demodulator units) used, usually without changing the product name, revision number or specs. Some cards are also available in versions with different frontends for - DVB-S/DVB-C/DVB-T. Thus the frontend drivers are listed seperately. + DVB-S/DVB-C/DVB-T. Thus the frontend drivers are listed separately. Note 1: There is no guarantee that every frontend driver works out of the box with every card, because of different wiring. diff --git a/linux/Documentation/dvb/ci.txt b/linux/Documentation/dvb/ci.txt index 95f0e73b2..531239b29 100644 --- a/linux/Documentation/dvb/ci.txt +++ b/linux/Documentation/dvb/ci.txt @@ -32,7 +32,7 @@ This application requires the following to function properly as of now. descrambler to function, eg: $ ca_zap channels.conf "TMC" - (d) Hopeflly Enjoy your favourite subscribed channel as you do with + (d) Hopefully enjoy your favourite subscribed channel as you do with a FTA card. (3) Currently ca_zap, and dst_test, both are meant for demonstration @@ -65,7 +65,7 @@ Modules that have been tested by this driver at present are ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ With the High Level CI approach any new card with almost any random architecture can be implemented with this style, the definitions -insidethe switch statement can be easily adapted for any card, thereby +inside the switch statement can be easily adapted for any card, thereby eliminating the need for any additional ioctls. The disadvantage is that the driver/hardware has to manage the rest. For diff --git a/linux/Documentation/dvb/faq.txt b/linux/Documentation/dvb/faq.txt index a42132d60..dbcedf583 100644 --- a/linux/Documentation/dvb/faq.txt +++ b/linux/Documentation/dvb/faq.txt @@ -5,7 +5,7 @@ Some very frequently asked questions about linuxtv-dvb It's not a bug, it's a feature. Because the frontends have significant power requirements (and hence get very hot), they are powered down if they are unused (i.e. if the frontend device - is closed). The dvb-core.o module paramter "dvb_shutdown_timeout" + is closed). The dvb-core.o module parameter "dvb_shutdown_timeout" allow you to change the timeout (default 5 seconds). Setting the timeout to 0 disables the timeout feature. @@ -138,7 +138,7 @@ Some very frequently asked questions about linuxtv-dvb - v4l2-common: common functions for Video4Linux-2 drivers - - v4l1-compat: backward compatiblity layer for Video4Linux-1 legacy + - v4l1-compat: backward compatibility layer for Video4Linux-1 legacy applications - dvb-core: DVB core module. This provides you with the @@ -153,7 +153,7 @@ Some very frequently asked questions about linuxtv-dvb - video-buf: capture helper module for the saa7146_vv driver. This one is responsible to handle capture buffers. - - dvb-ttpci: The main driver for AV7110 based, full-featued + - dvb-ttpci: The main driver for AV7110 based, full-featured DVB-S/C/T cards eof -- cgit v1.2.3 From e15e01fa2f6bcb896a7e55d5e96d4b1802193132 Mon Sep 17 00:00:00 2001 From: Mauro Carvalho Chehab Date: Sun, 12 Nov 2006 15:19:15 -0200 Subject: Added information about Technisat Sky2Pc cards From: Paolo Ciarrocchi Signed-off-by: Paolo Ciarrocchi Acked-by: Daniele Vallini Signed-off-by: Mauro Carvalho Chehab --- linux/Documentation/dvb/cards.txt | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'linux/Documentation/dvb') diff --git a/linux/Documentation/dvb/cards.txt b/linux/Documentation/dvb/cards.txt index ca58e339d..cc09187a5 100644 --- a/linux/Documentation/dvb/cards.txt +++ b/linux/Documentation/dvb/cards.txt @@ -22,10 +22,10 @@ o Frontends drivers: - ves1x93 : Alps BSRV2 (ves1893 demodulator) and dbox2 (ves1993) - cx24110 : Conexant HM1221/HM1811 (cx24110 or cx24106 demod, cx24108 PLL) - grundig_29504-491 : Grundig 29504-491 (Philips TDA8083 demodulator), tsa5522 PLL - - mt312 : Zarlink mt312 or Mitel vp310 demodulator, sl1935 or tsa5059 PLL + - mt312 : Zarlink mt312 or Mitel vp310 demodulator, sl1935 or tsa5059 PLLi, Technisat Sky2Pc with bios Rev. 2.3 - stv0299 : Alps BSRU6 (tsa5059 PLL), LG TDQB-S00x (tsa5059 PLL), LG TDQF-S001F (sl1935 PLL), Philips SU1278 (tua6100 PLL), - Philips SU1278SH (tsa5059 PLL), Samsung TBMU24112IMB + Philips SU1278SH (tsa5059 PLL), Samsung TBMU24112IMB, Technisat Sky2Pc with bios Rev. 2.6 DVB-C: - ves1820 : various (ves1820 demodulator, sp5659c or spXXXX PLL) - at76c651 : Atmel AT76c651(B) with DAT7021 PLL -- cgit v1.2.3 From b6893c1c0a9345aa661d24496e494400283c2c46 Mon Sep 17 00:00:00 2001 From: Mauro Carvalho Chehab Date: Sat, 16 Dec 2006 16:24:35 -0200 Subject: Backporting some typo fixes from kernel From: Mauro Carvalho Chehab kernel-sync: Signed-off-by: Mauro Carvalho Chehab --- linux/Documentation/dvb/ci.txt | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'linux/Documentation/dvb') diff --git a/linux/Documentation/dvb/ci.txt b/linux/Documentation/dvb/ci.txt index 531239b29..2ecd83458 100644 --- a/linux/Documentation/dvb/ci.txt +++ b/linux/Documentation/dvb/ci.txt @@ -71,7 +71,7 @@ eliminating the need for any additional ioctls. The disadvantage is that the driver/hardware has to manage the rest. For the application programmer it would be as simple as sending/receiving an array to/from the CI ioctls as defined in the Linux DVB API. No changes -have been made in the API to accomodate this feature. +have been made in the API to accommodate this feature. * Why the need for another CI interface ? @@ -102,7 +102,7 @@ This CI interface follows the CI high level interface, which is not implemented by most applications. Hence this area is revisited. This CI interface is quite different in the case that it tries to -accomodate all other CI based devices, that fall into the other categories +accommodate all other CI based devices, that fall into the other categories. This means that this CI interface handles the EN50221 style tags in the Application layer only and no session management is taken care of by the -- cgit v1.2.3 From 86f937203f18d8759d1b87cc3f2f4ab9a7e619e7 Mon Sep 17 00:00:00 2001 From: Mauro Carvalho Chehab Date: Sun, 13 May 2007 09:18:12 -0300 Subject: Backport kernel changeset be2a608bd08ec00e19e14b322e07f443d2711084 From: Mauro Carvalho Chehab kernel-sync: The original patch is from John Anthony Kazos Jr : Convert files within the Documentation directory to UTF-8. Signed-off-by: Mauro Carvalho Chehab --- linux/Documentation/dvb/README.dvb-usb | 2 +- linux/Documentation/dvb/contributors.txt | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) (limited to 'linux/Documentation/dvb') diff --git a/linux/Documentation/dvb/README.dvb-usb b/linux/Documentation/dvb/README.dvb-usb index 46b78b733..bf2a9cdfe 100644 --- a/linux/Documentation/dvb/README.dvb-usb +++ b/linux/Documentation/dvb/README.dvb-usb @@ -228,5 +228,5 @@ Patches, comments and suggestions are very very welcome. Ulf Hermenau for helping me out with traditional chinese. - André Smoktun and Christian Frömmel for supporting me with + André Smoktun and Christian Frömmel for supporting me with hardware and listening to my problems very patiently. diff --git a/linux/Documentation/dvb/contributors.txt b/linux/Documentation/dvb/contributors.txt index 4c33cced5..4865addeb 100644 --- a/linux/Documentation/dvb/contributors.txt +++ b/linux/Documentation/dvb/contributors.txt @@ -66,7 +66,7 @@ Michael Dreher Andreas 'randy' Weinberger for the support of the Fujitsu-Siemens Activy budget DVB-S -Kenneth Aafløy +Kenneth Aafløy for adding support for Typhoon DVB-S budget card Ernst Peinlich -- cgit v1.2.3 From 95263698c3eb229c83ff42cb48e40ac91b172e3f Mon Sep 17 00:00:00 2001 From: Mauro Carvalho Chehab Date: Sat, 26 May 2007 07:56:29 -0300 Subject: Documentation/dvb/bt8xx.txt update From: Uwe Bugla This patch synchronizes the Documentation for bt8xx-based cards to the actual state of kernel 2.6.22-rc1. Signed-off-by: Uwe Bugla Signed-off-by: Manu Abraham Signed-off-by: Andrew Morton Signed-off-by: Mauro Carvalho Chehab --- linux/Documentation/dvb/bt8xx.txt | 32 ++++++++++++++++++++------------ 1 file changed, 20 insertions(+), 12 deletions(-) (limited to 'linux/Documentation/dvb') diff --git a/linux/Documentation/dvb/bt8xx.txt b/linux/Documentation/dvb/bt8xx.txt index 4e7614e60..ecb47adda 100644 --- a/linux/Documentation/dvb/bt8xx.txt +++ b/linux/Documentation/dvb/bt8xx.txt @@ -9,19 +9,29 @@ for accessing the i2c bus and the gpio pins of the bt8xx chipset. Please see Documentation/dvb/cards.txt => o Cards based on the Conexant Bt8xx PCI bridge: Compiling kernel please enable: -a.)"Device drivers" => "Multimedia devices" => "Video For Linux" => "BT848 Video For Linux" -b.)"Device drivers" => "Multimedia devices" => "Digital Video Broadcasting Devices" - => "DVB for Linux" "DVB Core Support" "Bt8xx based PCI Cards" +a.)"Device drivers" => "Multimedia devices" => "Video For Linux" => "Enable Video for Linux API 1 (DEPRECATED)" +b.)"Device drivers" => "Multimedia devices" => "Video For Linux" => "Video Capture Adapters" => "BT848 Video For Linux" +c.)"Device drivers" => "Multimedia devices" => "Digital Video Broadcasting Devices" => "DVB for Linux" "DVB Core Support" "Bt8xx based PCI Cards" -2) Loading Modules -================== +Please use the following options with care as deselection of drivers which are in fact necessary +may result in DVB devices that cannot be tuned due to lack of driver support: +You can save RAM by deselecting every frontend module that your DVB card does not need. + +First please remove the static dependency of DVB card drivers on all frontend modules for all possible card variants by enabling: +d.) "Device drivers" => "Multimedia devices" => "Digital Video Broadcasting Devices" + => "DVB for Linux" "DVB Core Support" "Load and attach frontend modules as needed" -In default cases bttv is loaded automatically. -To load the backend either place dvb-bt8xx in etc/modules, or apply manually: +If you know the frontend driver that your card needs please enable: +e.)"Device drivers" => "Multimedia devices" => "Digital Video Broadcasting Devices" + => "DVB for Linux" "DVB Core Support" "Customise DVB Frontends" => "Customise the frontend modules to build" + Then please select your card-specific frontend module. - $ modprobe dvb-bt8xx +2) Loading Modules +================== -All frontends will be loaded automatically. +Regular case: If the bttv driver detects a bt8xx-based DVB card, all frontend and backend modules will be loaded automatically. +Exceptions are: +- Old TwinHan DST cards or clones with or without CA slot and not containing an Eeprom. People running udev please see Documentation/dvb/udev.txt. In the following cases overriding the PCI type detection for dvb-bt8xx might be necessary: @@ -30,7 +40,6 @@ In the following cases overriding the PCI type detection for dvb-bt8xx might be ------------------------------ $ modprobe bttv card=113 - $ modprobe dvb-bt8xx $ modprobe dst Useful parameters for verbosity level and debugging the dst module: @@ -65,10 +74,9 @@ DViCO FusionHDTV 5 Lite: 135 Notice: The order of the card ID should be uprising: Example: $ modprobe bttv card=113 card=135 - $ modprobe dvb-bt8xx For a full list of card ID's please see Documentation/video4linux/CARDLIST.bttv. -In case of further problems send questions to the mailing list: www.linuxdvb.org. +In case of further problems please subscribe and send questions to the mailing list: linux-dvb@linuxtv.org. Authors: Richard Walker, Jamie Honan, -- cgit v1.2.3 From 23e841b39ea1e2efa0116b5d9312fd37d2b93577 Mon Sep 17 00:00:00 2001 From: Michael Krufky Date: Fri, 15 Jun 2007 18:14:52 -0400 Subject: get_dvb_firmware: update script for new location of sp8870 firmware From: Michael Krufky This url is no longer valid: http://www.technotrend.de/new/217g/tt_Premium_217g.zip Replace with: http://www.softwarepatch.pl/9999ccd06a4813cb827dbb0005071c71/tt_Premium_217g.zip Thanks-to: Tobias Stoeber Signed-off-by: Michael Krufky --- linux/Documentation/dvb/get_dvb_firmware | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) mode change 100644 => 100755 linux/Documentation/dvb/get_dvb_firmware (limited to 'linux/Documentation/dvb') diff --git a/linux/Documentation/dvb/get_dvb_firmware b/linux/Documentation/dvb/get_dvb_firmware old mode 100644 new mode 100755 index 4820366b6..e32f79e05 --- a/linux/Documentation/dvb/get_dvb_firmware +++ b/linux/Documentation/dvb/get_dvb_firmware @@ -56,7 +56,7 @@ syntax(); sub sp8870 { my $sourcefile = "tt_Premium_217g.zip"; - my $url = "http://www.technotrend.de/new/217g/$sourcefile"; + my $url = "http://www.softwarepatch.pl/9999ccd06a4813cb827dbb0005071c71/$sourcefile"; my $hash = "53970ec17a538945a6d8cb608a7b3899"; my $outfile = "dvb-fe-sp8870.fw"; my $tmpdir = tempdir(DIR => "/tmp", CLEANUP => 1); -- cgit v1.2.3 From db11322b5fc23a96710a22a662cf1a41f77e3cf9 Mon Sep 17 00:00:00 2001 From: Marco Gittler Date: Thu, 5 Jul 2007 00:18:34 +0200 Subject: Firmware extract and loading for opera dvb-usb update From: Marco Gittler Better way of creating and loading the firmware used. Update for get_dvb_firmware script to extract the files for opera usb-box Help file for creating the firmware added Signed-off-by: Marco Gittler --- linux/Documentation/dvb/get_dvb_firmware | 61 +++++++++++++++++++++++++++++- linux/Documentation/dvb/opera-firmware.txt | 27 +++++++++++++ 2 files changed, 87 insertions(+), 1 deletion(-) create mode 100644 linux/Documentation/dvb/opera-firmware.txt (limited to 'linux/Documentation/dvb') diff --git a/linux/Documentation/dvb/get_dvb_firmware b/linux/Documentation/dvb/get_dvb_firmware index e32f79e05..b4d306ae9 100755 --- a/linux/Documentation/dvb/get_dvb_firmware +++ b/linux/Documentation/dvb/get_dvb_firmware @@ -24,7 +24,8 @@ use IO::Handle; @components = ( "sp8870", "sp887x", "tda10045", "tda10046", "tda10046lifeview", "av7110", "dec2000t", "dec2540t", "dec3000s", "vp7041", "dibusb", "nxt2002", "nxt2004", - "or51211", "or51132_qam", "or51132_vsb", "bluebird"); + "or51211", "or51132_qam", "or51132_vsb", "bluebird", + "opera1"); # Check args syntax() if (scalar(@ARGV) != 1); @@ -210,6 +211,45 @@ sub dec3000s { $outfile; } +sub opera1{ + my $tmpdir = tempdir(DIR => "/tmp", CLEANUP => 0); + + checkstandard(); + my $fwfile1="dvb-usb-opera1-fpga-01.fw"; + my $fwfile2="dvb-usb-opera-01.fw"; + extract("2830SCap2.sys", 0x62e8, 55024, "$tmpdir/opera1-fpga.fw"); + extract("2830SLoad2.sys",0x3178,0x3685-0x3178,"$tmpdir/fw1part1"); + extract("2830SLoad2.sys",0x0980,0x3150-0x0980,"$tmpdir/fw1part2"); + delzero("$tmpdir/fw1part1","$tmpdir/fw1part1-1"); + delzero("$tmpdir/fw1part2","$tmpdir/fw1part2-1"); + verify("$tmpdir/fw1part1-1","5e0909858fdf0b5b09ad48b9fe622e70"); + verify("$tmpdir/fw1part2-1","d6e146f321427e931df2c6fcadac37a1"); + verify("$tmpdir/opera1-fpga.fw","0f8133f5e9051f5f3c1928f7e5a1b07d"); + + my $RES1="\x01\x92\x7f\x00\x01\x00"; + my $RES0="\x01\x92\x7f\x00\x00\x00"; + my $DAT1="\x01\x00\xe6\x00\x01\x00"; + my $DAT0="\x01\x00\xe6\x00\x00\x00"; + open FW,">$tmpdir/opera.fw"; + print FW "$RES1"; + print FW "$DAT1"; + print FW "$RES1"; + print FW "$DAT1"; + appendfile(FW,"$tmpdir/fw1part1-1"); + print FW "$RES0"; + print FW "$DAT0"; + print FW "$RES1"; + print FW "$DAT1"; + appendfile(FW,"$tmpdir/fw1part2-1"); + print FW "$RES1"; + print FW "$DAT1"; + print FW "$RES0"; + print FW "$DAT0"; + copy ("$tmpdir/opera1-fpga.fw",$fwfile1); + copy ("$tmpdir/opera.fw",$fwfile2); + + $fwfile1.",".$fwfile2; +} sub vp7041 { my $sourcefile = "2.422.zip"; @@ -440,6 +480,25 @@ sub appendfile { close(INFILE); } +sub delzero{ + my ($infile,$outfile) =@_; + + open INFILE,"<$infile"; + open OUTFILE,">$outfile"; + while (1){ + $rcount=sysread(INFILE,$buf,22); + $len=ord(substr($buf,0,1)); + print OUTFILE substr($buf,0,1); + print OUTFILE substr($buf,2,$len+3); + last if ($rcount<1); + printf OUTFILE "%c",0; +#print $len." ".length($buf)."\n"; + + } + close(INFILE); + close(OUTFILE); +} + sub syntax() { print STDERR "syntax: get_dvb_firmware \n"; print STDERR "Supported components:\n"; diff --git a/linux/Documentation/dvb/opera-firmware.txt b/linux/Documentation/dvb/opera-firmware.txt new file mode 100644 index 000000000..93e784c26 --- /dev/null +++ b/linux/Documentation/dvb/opera-firmware.txt @@ -0,0 +1,27 @@ +To extract the firmware for the Opera DVB-S1 USB-Box +you need to copy the files: + +2830SCap2.sys +2830SLoad2.sys + +from the windriver disk into this directory. + +Then run + +./get_dvb_firware opera1 + +and after that you have 2 files: + +dvb-usb-opera-01.fw +dvb-usb-opera1-fpga-01.fw + +in here. + +Copy them into /lib/firmware/ . + +After that the driver can load the firmware +(if you have enabled firmware loading +in kernel config and have hotplug running). + + +Marco Gittler \ No newline at end of file -- cgit v1.2.3 From 2bc24235b9f12fa355db7616769861d075052f81 Mon Sep 17 00:00:00 2001 From: Michael Krufky Date: Wed, 15 Aug 2007 16:37:16 -0400 Subject: get_dvb_firmware: update script for new location of tda10046 firmware From: Andreas Arens Update get_dvb_firmware script for the new location of the tda10046 firmware. The old location doesn't work anymore. Signed-off-by: Andreas Arens Signed-off-by: Michael Krufky --- linux/Documentation/dvb/get_dvb_firmware | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) (limited to 'linux/Documentation/dvb') diff --git a/linux/Documentation/dvb/get_dvb_firmware b/linux/Documentation/dvb/get_dvb_firmware index b4d306ae9..f2e908d7f 100755 --- a/linux/Documentation/dvb/get_dvb_firmware +++ b/linux/Documentation/dvb/get_dvb_firmware @@ -111,21 +111,21 @@ sub tda10045 { } sub tda10046 { - my $sourcefile = "tt_budget_217g.zip"; - my $url = "http://www.technotrend.de/new/217g/$sourcefile"; - my $hash = "6a7e1e2f2644b162ff0502367553c72d"; - my $outfile = "dvb-fe-tda10046.fw"; - my $tmpdir = tempdir(DIR => "/tmp", CLEANUP => 1); + my $sourcefile = "TT_PCI_2.19h_28_11_2006.zip"; + my $url = "http://technotrend-online.com/download/software/219/$sourcefile"; + my $hash = "6a7e1e2f2644b162ff0502367553c72d"; + my $outfile = "dvb-fe-tda10046.fw"; + my $tmpdir = tempdir(DIR => "/tmp", CLEANUP => 1); - checkstandard(); + checkstandard(); - wgetfile($sourcefile, $url); - unzip($sourcefile, $tmpdir); - extract("$tmpdir/software/OEM/PCI/App/ttlcdacc.dll", 0x3f731, 24478, "$tmpdir/fwtmp"); - verify("$tmpdir/fwtmp", $hash); - copy("$tmpdir/fwtmp", $outfile); + wgetfile($sourcefile, $url); + unzip($sourcefile, $tmpdir); + extract("$tmpdir/TT_PCI_2.19h_28_11_2006/software/OEM/PCI/App/ttlcdacc.dll", 0x65389, 24478, "$tmpdir/fwtmp"); + verify("$tmpdir/fwtmp", $hash); + copy("$tmpdir/fwtmp", $outfile); - $outfile; + $outfile; } sub tda10046lifeview { -- cgit v1.2.3 From 41a0d4ee71a7cc6c77dab97f0719c2f91a52e618 Mon Sep 17 00:00:00 2001 From: Mauro Carvalho Chehab Date: Thu, 23 Aug 2007 16:37:49 -0300 Subject: Adapt drivers to use the newer videobuf modules PCI-dependent videobuf_foo methods were renamed as videobuf_pci_foo. Also, videobuf_dmabuf is now part of videobuf-dma-sg private struct. So, to access it, a subroutine call is needed. This patch renames all occurences of those function calls to be consistent with the video-buf split. Signed-off-by: Mauro Carvalho Chehab http://thread.gmane.org/gmane.comp.video.video4linux/34978/focus=34981 Reviewed-by: Ricardo Cerqueira --- linux/Documentation/dvb/faq.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'linux/Documentation/dvb') diff --git a/linux/Documentation/dvb/faq.txt b/linux/Documentation/dvb/faq.txt index dbcedf583..2511a335a 100644 --- a/linux/Documentation/dvb/faq.txt +++ b/linux/Documentation/dvb/faq.txt @@ -150,7 +150,7 @@ Some very frequently asked questions about linuxtv-dvb - saa7146_vv: SAA7146 video and vbi functions. These are only needed for full-featured cards. - - video-buf: capture helper module for the saa7146_vv driver. This + - videobuf-dma-sg: capture helper module for the saa7146_vv driver. This one is responsible to handle capture buffers. - dvb-ttpci: The main driver for AV7110 based, full-featured -- cgit v1.2.3 From b89d5946e0d1e7c1d93eb6cb2edda3f4eb9b83a5 Mon Sep 17 00:00:00 2001 From: Mauro Carvalho Chehab Date: Mon, 21 Jan 2008 15:15:19 +0000 Subject: bt878: remove handcrafted PCI subsystem ID check From: Akinobu Mita This patch moves the subsystem ID and subsystem vendor ID check from probing function to the PCI generic function by describing subsystem IDs in pci_device_id table. This enables to add new PCI IDs to a device driver pci_ids table at runtime by new_id file in sysfs pci driver tree. Signed-off-by: Akinobu Mita Signed-off-by: Manu Abraham Signed-off-by: Mauro Carvalho Chehab --- linux/Documentation/dvb/bt8xx.txt | 12 ++++++++++++ 1 file changed, 12 insertions(+) (limited to 'linux/Documentation/dvb') diff --git a/linux/Documentation/dvb/bt8xx.txt b/linux/Documentation/dvb/bt8xx.txt index ecb47adda..b7b1d1b1d 100644 --- a/linux/Documentation/dvb/bt8xx.txt +++ b/linux/Documentation/dvb/bt8xx.txt @@ -78,6 +78,18 @@ Example: For a full list of card ID's please see Documentation/video4linux/CARDLIST.bttv. In case of further problems please subscribe and send questions to the mailing list: linux-dvb@linuxtv.org. +2c) Probing the cards with broken PCI subsystem ID +-------------------------------------------------- +There are some TwinHan cards that the EEPROM has become corrupted for some +reason. The cards do not have correct PCI subsystem ID. But we can force +probing the cards with broken PCI subsystem ID + + $ echo 109e 0878 $subvendor $subdevice > \ + /sys/bus/pci/drivers/bt878/new_id + +109e: PCI_VENDOR_ID_BROOKTREE +0878: PCI_DEVICE_ID_BROOKTREE_878 + Authors: Richard Walker, Jamie Honan, Michael Hunold, -- cgit v1.2.3 From 12583b9f4af4d04cce76742c9859bff4068e6345 Mon Sep 17 00:00:00 2001 From: Patrick Boettcher Date: Wed, 10 Dec 2008 22:27:39 +0100 Subject: [PATCH] short help for Technisat cards to select the right configuration From: Patrick Boettcher This patch adds a short help for Technisat cards to help the user selecting the right configuration for his card(s). Priority: normal Signed-off-by: Uwe Bugla Signed-off-by: Patrick Boettcher --- linux/Documentation/dvb/technisat.txt | 69 +++++++++++++++++++++++++++++++++++ 1 file changed, 69 insertions(+) create mode 100644 linux/Documentation/dvb/technisat.txt (limited to 'linux/Documentation/dvb') diff --git a/linux/Documentation/dvb/technisat.txt b/linux/Documentation/dvb/technisat.txt new file mode 100644 index 000000000..cdf6ee4b2 --- /dev/null +++ b/linux/Documentation/dvb/technisat.txt @@ -0,0 +1,69 @@ +How to set up the Technisat devices +=================================== + +1) Find out what device you have +================================ + +First start your linux box with a shipped kernel: +lspci -vvv for a PCI device (lsusb -vvv for an USB device) will show you for example: +02:0b.0 Network controller: Techsan Electronics Co Ltd B2C2 FlexCopII DVB chip / Technisat SkyStar2 DVB card (rev 02) + +dmesg | grep frontend may show you for example: +DVB: registering frontend 0 (Conexant CX24123/CX24109)... + +2) Kernel compilation: +====================== + +If the Technisat is the only TV device in your box get rid of unnecessary modules and check this one: +"Multimedia devices" => "Customise analog and hybrid tuner modules to build" +In this directory uncheck every driver which is activated there. + +Then please activate: +2a) Main module part: + +a.)"Multimedia devices" => "DVB/ATSC adapters" => "Technisat/B2C2 FlexcopII(b) and FlexCopIII adapters" +b.)"Multimedia devices" => "DVB/ATSC adapters" => "Technisat/B2C2 FlexcopII(b) and FlexCopIII adapters" => "Technisat/B2C2 Air/Sky/Cable2PC PCI" in case of a PCI card OR +c.)"Multimedia devices" => "DVB/ATSC adapters" => "Technisat/B2C2 FlexcopII(b) and FlexCopIII adapters" => "Technisat/B2C2 Air/Sky/Cable2PC USB" in case of an USB 1.1 adapter +d.)"Multimedia devices" => "DVB/ATSC adapters" => "Technisat/B2C2 FlexcopII(b) and FlexCopIII adapters" => "Enable debug for the B2C2 FlexCop drivers" +Notice: d.) is helpful for troubleshooting + +2b) Frontend module part: + +1.) Revision 2.3: +a.)"Multimedia devices" => "Customise DVB frontends" => "Customise the frontend modules to build" +b.)"Multimedia devices" => "Customise DVB frontends" => "Zarlink VP310/MT312/ZL10313 based" + +2.) Revision 2.6: +a.)"Multimedia devices" => "Customise DVB frontends" => "Customise the frontend modules to build" +b.)"Multimedia devices" => "Customise DVB frontends" => "ST STV0299 based" + +3.) Revision 2.7: +a.)"Multimedia devices" => "Customise DVB frontends" => "Customise the frontend modules to build" +b.)"Multimedia devices" => "Customise DVB frontends" => "Samsung S5H1420 based" +c.)"Multimedia devices" => "Customise DVB frontends" => "Integrant ITD1000 Zero IF tuner for DVB-S/DSS" +d.)"Multimedia devices" => "Customise DVB frontends" => "ISL6421 SEC controller" + +4.) Revision 2.8: +a.)"Multimedia devices" => "Customise DVB frontends" => "Customise the frontend modules to build" +b.)"Multimedia devices" => "Customise DVB frontends" => "Conexant CX24113/CX24128 tuner for DVB-S/DSS" +c.)"Multimedia devices" => "Customise DVB frontends" => "Conexant CX24123 based" +d.)"Multimedia devices" => "Customise DVB frontends" => "ISL6421 SEC controller" + +5.) DVB-T card: +a.)"Multimedia devices" => "Customise DVB frontends" => "Customise the frontend modules to build" +b.)"Multimedia devices" => "Customise DVB frontends" => "Zarlink MT352 based" + +6.) DVB-C card: +a.)"Multimedia devices" => "Customise DVB frontends" => "Customise the frontend modules to build" +b.)"Multimedia devices" => "Customise DVB frontends" => "ST STV0297 based" + +7.) ATSC card 1st generation: +a.)"Multimedia devices" => "Customise DVB frontends" => "Customise the frontend modules to build" +b.)"Multimedia devices" => "Customise DVB frontends" => "Broadcom BCM3510" + +8.) ATSC card 2nd generation: +a.)"Multimedia devices" => "Customise DVB frontends" => "Customise the frontend modules to build" +b.)"Multimedia devices" => "Customise DVB frontends" => "NxtWave Communications NXT2002/NXT2004 based" +c.)"Multimedia devices" => "Customise DVB frontends" => "LG Electronics LGDT3302/LGDT3303 based" + +Author: Uwe Bugla December 2008 -- cgit v1.2.3