[linux-dvb] Reading CIS via CiMax
bora.sahin at ttnet.net.tr
bora.sahin at ttnet.net.tr
Fri Jan 19 17:28:39 CET 2007
Hi,
I have a MIPS based SoC and my task is to interface this board to a CAM
module, specifically to the CryptoWorks...
Before I didnt have any knowledge about this topic so I searched the internet
how I can do that and noticed CAM modules are interfaced to the host
microprocessor via a common interface bus -> EN 50221. This is both a
hardware and software standard. It look likes PCMCIA but not exactly. In fact
at the beginning I thought it is the same as with PCMCIA but a friend said
mechanically same but as signalling different. He advised using a CI
controller if you want to be in the safe side. Am I correct up to here?
In my SoC there is a external bus which NOR, NAND, I/O and PCMCIA devices can
be connected. You select the device type for the bus and signalling changes.
After the light of above infos, I found I need a CI controller chip e.g. like
CiMax. CiMax converts SRAM-like interfaces to a common interface, which CAM
modules can be inserted. This is the hardware part. The problem here is that
which mode should I configure the bus: PCMCIA or I/O? I think I/O is enough?
For the software part, one should write "dvb_ca_en50221 struct functions" to
access the CAM module. For example, at the initialization phase CIS-card
information structure- is read.
read_attribute_mem
write_attribute_mem
hooks provides the necessary functionality but I am not sure how to fill that
functions using CiMax. From the datasheet I noticed that when I want to read
the attribute memory I have to set a register in the CiMax and then access to
the related bus in an ordinary way. More specifically; CIS offset is 0, CiMax
gets AD[25:15] as input that means that CIS address should be aligned to 64K
boundary. So a readl() to this address should return a CIS tuple. If there is
someone who used CiMax before can he/she verify me?
Thanks in advance...
--
Bora SAHIN
More information about the linux-dvb
mailing list