[linux-dvb] Re: DVB-CI question

2004-04-22 Thread Andrew de Quincey
On Monday 19 April 2004 17:07, Johannes Stezenbach wrote: Hi, I'm trying to finish my work on the V4 CI API. After a bit of thinking I made the following changes which I just comitted to CVS: - one device node for all slots on one CI controller - define API protocol units to be raw,

[linux-dvb] Re: DVB-CI question

2004-04-22 Thread Johannes Stezenbach
On Thu, Apr 22, 2004 at 12:09:56PM +0100, Andrew de Quincey wrote: On Monday 19 April 2004 17:07, Johannes Stezenbach wrote: Hi, I'm trying to finish my work on the V4 CI API. After a bit of thinking I made the following changes which I just comitted to CVS: - one device node for all

[linux-dvb] Re: DVB-CI question

2004-04-22 Thread Andrew de Quincey
[...] * If we supported more than just link level packets, we would have to extend the read/write interface anyway as we would need a way to specify the type of packet. However, another way of doing this would be for the driver to specify what type of packet must be used on a particular

[linux-dvb] Re: DVB-CI question

2004-04-19 Thread Johannes Stezenbach
Hi, I'm trying to finish my work on the V4 CI API. After a bit of thinking I made the following changes which I just comitted to CVS: - one device node for all slots on one CI controller - define API protocol units to be raw, unfragmented TPDUs, i.e. slightly above link level but not

[linux-dvb] Re: DVB-CI question

2004-04-09 Thread Andrew de Quincey
There's a line #define MAX_TPDU_SIZE 2048 /* Maximum size of TPDU */ in ci_link_layer.h of the firmware (hope I'm not violating the NDA too much here... ;-). Heh. So that is a limit imposed by the firmware/hardware in the av7110. It won't accept a TPDU packet from the host 2048 bytes.

[linux-dvb] Re: DVB-CI question

2004-04-08 Thread Johannes Stezenbach
On Sat, Mar 27, 2004 at 01:18:40PM +, Andrew de Quincey wrote: On Friday 26 March 2004 15:14, Klaus Schmidinger wrote: Strange, from what I know a TPDU can be at most 2048 byte long... Out of interest, where does that 2048 figure come from? I can't see it in EN50221 or R206-001. I'm

[linux-dvb] Re: DVB-CI question

2004-04-08 Thread Andrew de Quincey
On Thursday 08 April 2004 16:04, Johannes Stezenbach wrote: On Sat, Mar 27, 2004 at 01:18:40PM +, Andrew de Quincey wrote: On Friday 26 March 2004 15:14, Klaus Schmidinger wrote: Strange, from what I know a TPDU can be at most 2048 byte long... Out of interest, where does that 2048

[linux-dvb] Re: DVB-CI question

2004-04-08 Thread Klaus Schmidinger
Johannes Stezenbach wrote: On Sat, Mar 27, 2004 at 01:18:40PM +, Andrew de Quincey wrote: On Friday 26 March 2004 15:14, Klaus Schmidinger wrote: Strange, from what I know a TPDU can be at most 2048 byte long... Out of interest, where does that 2048 figure come from? I can't see

[linux-dvb] Re: DVB-CI question

2004-03-27 Thread Andrew de Quincey
On Friday 26 March 2004 15:14, Klaus Schmidinger wrote: Andrew de Quincey wrote: ... Its just it makes the driver's IO routines _really_ complex, as they have to deal with multiple connections, multiple slots, the possibility that the CAM can be yanked out by the user at any time, and

[linux-dvb] Re: DVB-CI question

2004-03-26 Thread Klaus Schmidinger
Andrew de Quincey wrote: I've had to write all this horrendously complicated buffering code in order to support the CAM link level interface in the kernel; i.e. taking the multiplexed packet fragments from multiple connection IDs/slots and reassembling them into full packets. This means the

[linux-dvb] Re: DVB-CI question

2004-03-26 Thread Andrew de Quincey
On Friday 26 March 2004 14:33, Klaus Schmidinger wrote: Andrew de Quincey wrote: I've had to write all this horrendously complicated buffering code in order to support the CAM link level interface in the kernel; i.e. taking the multiplexed packet fragments from multiple connection IDs/slots

[linux-dvb] Re: DVB-CI question

2004-03-26 Thread Andrew de Quincey
No, please; this is really discouraging, like the diseqc mess; I wonder why in the kernel there isn't a diseqc implementation, at least for 1.0 devices and a simple 2/1 or 4/1 configuration. Currently all players have to implement it in userspace, and IMHO this really sucks. Any plan to add

[linux-dvb] Re: DVB-CI question

2004-03-26 Thread Klaus Schmidinger
Andrew de Quincey wrote: ... Its just it makes the driver's IO routines _really_ complex, as they have to deal with multiple connections, multiple slots, the possibility that the CAM can be yanked out by the user at any time, and lots of other things. There is a LOT of complex locking

[linux-dvb] Re: DVB-CI question

2004-03-26 Thread Peter Urbanec
Andrew de Quincey wrote: On Friday 26 March 2004 14:33, Klaus Schmidinger wrote: If it's not hard to do in userspace, why is it so hard in the driver? Why should every application implement this by itself? I'd say this should be done by the driver, and the applications shall exchange complete

[linux-dvb] Re: DVB-CI question

2004-03-26 Thread Andrew de Quincey
On Friday 26 March 2004 15:14, Peter Urbanec wrote: Andrew de Quincey wrote: On Friday 26 March 2004 14:33, Klaus Schmidinger wrote: If it's not hard to do in userspace, why is it so hard in the driver? Why should every application implement this by itself? I'd say this should be done by the

[linux-dvb] Re: DVB-CI question

2004-03-26 Thread Andrew de Quincey
On Friday 26 March 2004 15:14, Klaus Schmidinger wrote: Andrew de Quincey wrote: ... Its just it makes the driver's IO routines _really_ complex, as they have to deal with multiple connections, multiple slots, the possibility that the CAM can be yanked out by the user at any time, and

[linux-dvb] Re: DVB-CI question

2004-03-26 Thread Robert Schlabbach
From: Andrew de Quincey [EMAIL PROTECTED] On Friday 26 March 2004 15:14, Peter Urbanec wrote: How about adding another layer? Take all this from the driver, but provide a library implementation that applications can dynamically link to to get the reassembly for free. That way you get the

[linux-dvb] Re: DVB-CI question

2004-03-26 Thread Andrew de Quincey
On Friday 26 March 2004 15:26, Robert Schlabbach wrote: From: Andrew de Quincey [EMAIL PROTECTED] On Friday 26 March 2004 15:14, Peter Urbanec wrote: How about adding another layer? Take all this from the driver, but provide a library implementation that applications can dynamically link

[linux-dvb] Re: DVB-CI question

2004-03-26 Thread Andrew de Quincey
There are libraries about which do some of the work, but they all differ in functionality. Someone needs to pull all the features from each together into a single mid-level library. I ended up re-writing everything in user space from scratch for my company's applications. Unfortunately this

[linux-dvb] Re: DVB-CI question

2004-03-26 Thread Johannes Stezenbach
On Fri, Mar 26, 2004 at 03:27:10PM +, Andrew de Quincey wrote: On Friday 26 March 2004 15:14, Klaus Schmidinger wrote: Andrew de Quincey wrote: ... Its just it makes the driver's IO routines _really_ complex, as they have to deal with multiple connections, multiple slots, the

[linux-dvb] Re: DVB-CI question

2004-03-26 Thread Andrew de Quincey
I'm talking about the layer below that: Each of those TPDU fragments can be further re-fragmented into multiple link layer packets when they're actually written to the CAM. Link layer packets can be up to 65535 bytes. I suppose I could use knowledge of the fact that the higher layers will

[linux-dvb] Re: DVB-CI question

2004-03-26 Thread Johannes Stezenbach
On Fri, Mar 26, 2004 at 03:08:18PM +, Andrew de Quincey wrote: On Friday 26 March 2004 14:33, Klaus Schmidinger wrote: Andrew de Quincey wrote: I've had to write all this horrendously complicated buffering code in order to support the CAM link level interface in the kernel; i.e.

[linux-dvb] Re: DVB-CI question

2004-03-26 Thread Andrew de Quincey
If it were as complicated as you say, userspace would be the right place. But we have the av7110 firmware implementation, and a proprietary STB driver, and while it is admittedly not simple there is *no* locking at all. Because CI is essentially driven by polling (the CAM cannot send data

[linux-dvb] Re: DVB-CI question

2004-03-26 Thread Johannes Stezenbach
Andrew de Quincey wrote: Its the complex list handling for fragment reassembly thats the bit I don't see any reason for having cluttering up the kernel. Theres no high bandwidth data being transferred, so theres no real gain in doing in the kernel. However, in the av7110 instance, I can

[linux-dvb] Re: DVB-CI question

2004-03-26 Thread Andrew de Quincey
On Friday 26 March 2004 17:53, Johannes Stezenbach wrote: Andrew de Quincey wrote: Its the complex list handling for fragment reassembly thats the bit I don't see any reason for having cluttering up the kernel. Theres no high bandwidth data being transferred, so theres no real gain in doing

[linux-dvb] Re: DVB-CI question

2004-03-26 Thread Andrew de Quincey
On Friday 26 March 2004 17:53, Johannes Stezenbach wrote: Andrew de Quincey wrote: Its the complex list handling for fragment reassembly thats the bit I don't see any reason for having cluttering up the kernel. Theres no high bandwidth data being transferred, so theres no real gain in doing

[linux-dvb] Re: DVB-CI question

2004-03-26 Thread Andrew de Quincey
On Friday 26 March 2004 17:53, Johannes Stezenbach wrote: Andrew de Quincey wrote: Its the complex list handling for fragment reassembly thats the bit I don't see any reason for having cluttering up the kernel. Theres no high bandwidth data being transferred, so theres no real gain in doing

[linux-dvb] Re: DVB-CI question

2004-03-26 Thread Ralph Metzler
Andrew de Quincey writes: Sure, thats what I was intending to do. However, I need to finish it first in line with these new ideas (I've kept the old code though, but that does not work as I was still debugging it). I'd like to hear Ralph's or Marcus's opinion, as they originally

[linux-dvb] Re: DVB-CI question

2004-03-26 Thread Andrew de Quincey
On Friday 26 March 2004 18:45, Ralph Metzler wrote: Andrew de Quincey writes: Sure, thats what I was intending to do. However, I need to finish it first in line with these new ideas (I've kept the old code though, but that does not work as I was still debugging it). I'd like to

[linux-dvb] Re: DVB-CI question

2004-03-26 Thread Andrew de Quincey
On Friday 26 March 2004 19:18, Johannes Stezenbach wrote: On Fri, Mar 26, 2004 at 06:17:07PM +, Andrew de Quincey wrote: However, I have some proposals for fixing the IOCTL interface, to support different types of CA device properly, and removing some the cruft. I suggest we then just

[linux-dvb] Re: DVB-CI question

2004-03-26 Thread Johannes Stezenbach
On Fri, Mar 26, 2004 at 07:41:17PM +, Andrew de Quincey wrote: On Friday 26 March 2004 19:18, Johannes Stezenbach wrote: On Fri, Mar 26, 2004 at 06:17:07PM +, Andrew de Quincey wrote: However, I have some proposals for fixing the IOCTL interface, to support different types of CA