[DVB patch 28/37] DST: reorganize Twinhan DST driver to support CI

[DVB patch 28/37] DST: reorganize Twinhan DST driver to support CI

Post by Johannes S » Tue, 10 May 2005 05:00:17


reorganize Twinhan DST driver to support CI
- add support for more cards
(Manu Abraham)

Signed-off-by: Johannes Stezenbach < XXXX@XXXXX.COM >
---

Documentation/dvb/ci.txt | 219 ++++++++
drivers/media/dvb/bt8xx/Kconfig | 3
drivers/media/dvb/bt8xx/Makefile | 4
drivers/media/dvb/bt8xx/bt878.c | 18
drivers/media/dvb/bt8xx/dst.c | 842 ++++++++++++++++++++++-----------
drivers/media/dvb/bt8xx/dst.h | 40 -
drivers/media/dvb/bt8xx/dst_ca.c | 868 +++++++++++++++++++++++++++++++++++
drivers/media/dvb/bt8xx/dst_ca.h | 58 ++
drivers/media/dvb/bt8xx/dst_common.h | 153 ++++++
drivers/media/dvb/bt8xx/dst_priv.h | 1
drivers/media/dvb/bt8xx/dvb-bt8xx.c | 95 ++-
drivers/media/dvb/bt8xx/dvb-bt8xx.h | 2
12 files changed, 1924 insertions(+), 379 deletions(-)

Index: linux-2.6.12-rc4/Documentation/dvb/ci.txt
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
+++ linux-2.6.12-rc4/Documentation/dvb/ci.txt 2005-05-08 18:13:30.000000000 +0200
@@ -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.