^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1) .. SPDX-License-Identifier: GPL-2.0
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 2)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 3) Digital TV Conditional Access Interface
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 4) =======================================
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 5)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 6)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 7) .. note::
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 8)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 9) This documentation is outdated.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 10)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 11) This document describes the usage of the high level CI API as
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 12) in accordance to the Linux DVB API. This is a not a documentation for the,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 13) existing low level CI API.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 14)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 15) .. note::
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 16)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 17) For the Twinhan/Twinhan clones, the dst_ca module handles the CI
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 18) hardware handling. This module is loaded automatically if a CI
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 19) (Common Interface, that holds the CAM (Conditional Access Module)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 20) is detected.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 21)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 22) ca_zap
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 23) ~~~~~~
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 24)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 25) A userspace application, like ``ca_zap`` is required to handle encrypted
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 26) MPEG-TS streams.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 27)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 28) The ``ca_zap`` userland application is in charge of sending the
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 29) descrambling related information to the Conditional Access Module (CAM).
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 30)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 31) This application requires the following to function properly as of now.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 32)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 33) a) Tune to a valid channel, with szap.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 34)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 35) eg: $ szap -c channels.conf -r "TMC" -x
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 36)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 37) b) a channels.conf containing a valid PMT PID
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 38)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 39) eg: TMC:11996:h:0:27500:278:512:650:321
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 40)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 41) here 278 is a valid PMT PID. the rest of the values are the
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 42) same ones that szap uses.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 43)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 44) c) after running a szap, you have to run ca_zap, for the
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 45) descrambler to function,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 46)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 47) eg: $ ca_zap channels.conf "TMC"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 48)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 49) d) Hopefully enjoy your favourite subscribed channel as you do with
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 50) a FTA card.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 51)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 52) .. note::
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 53)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 54) Currently ca_zap, and dst_test, both are meant for demonstration
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 55) purposes only, they can become full fledged applications if necessary.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 56)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 57)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 58) Cards that fall in this category
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 59) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 60)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 61) At present the cards that fall in this category are the Twinhan and its
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 62) clones, these cards are available as VVMER, Tomato, Hercules, Orange and
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 63) so on.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 64)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 65) CI modules that are supported
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 66) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 67)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 68) The CI module support is largely dependent upon the firmware on the cards
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 69) Some cards do support almost all of the available CI modules. There is
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 70) nothing much that can be done in order to make additional CI modules
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 71) working with these cards.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 72)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 73) Modules that have been tested by this driver at present are
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 74)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 75) (1) Irdeto 1 and 2 from SCM
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 76) (2) Viaccess from SCM
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 77) (3) Dragoncam