HLCI support for VDR

2010-06-26 Thread Anssi Kolehmainen
Hi,

I was wondering are there any plans to add HLCI (High-level CI) support to
VDR. Currently it only supports LLCI (Link-level CI) and therefore is unusable
with my FireDTV card.

I tried MythTV and it has implemented both HLCI and LLCI. It works just fine
so it might be somewhat easy to cut'n'paste the code (at least if you know
what the whole CI thing does).

[Actually the mythtv dvbci.cpp has copyright notice on top claiming it to be
from vdr :) ]

-- 
Anssi Kolehmainen
anssi.kolehmai...@iki.fi
040-5085390
--
To unsubscribe from this list: send the line unsubscribe linux-media in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Firedtv stops working after a while

2009-11-04 Thread Anssi Kolehmainen
Hi,

I have Firedtv DVB-C/CI adapter and for some reason it stops working
after a while. Typically it takes something like 5 hours (which makes
debugging fun).  I have vdr 1.7.9 as the dvb viewer (with xine plugin),
kernel 2.6.31 x86_64, latest v4l-dvb drivers from hg and the few
remaining patches from firesat.kurelid.se.

Vdr spews following to syslog [1]:
Nov  4 03:00:42 maxwell vdr: [26241] frontend 0 timed out while tuning to 
channel 400, tp 266
Nov  4 03:13:35 maxwell vdr: [26242] ERROR: can't set filter (pid=18, tid=40, 
mask=C0): Input/output error
Nov  4 03:13:36 maxwell vdr: [26241] frontend 0 lost lock on channel 180, tp 322
Nov  4 03:13:37 maxwell vdr: [26242] ERROR: can't set filter (pid=0, tid=00, 
mask=FF): Input/output error
Nov  4 03:13:39 maxwell vdr: [26241] frontend 0 timed out while tuning to 
channel 180, tp 322
Nov  4 03:13:40 maxwell vdr: [26241] frontend 0 regained lock on channel 180, 
tp 322
Nov  4 03:13:52 maxwell vdr: [26242] ERROR: can't set filter (pid=16, tid=40, 
mask=FF): Device or resource busy
Nov  4 03:13:52 maxwell vdr: [26242] ERROR: can't set filter (pid=3306, tid=02, 
mask=FF): Device or resource busy
Nov  4 03:13:53 maxwell vdr: [26242] ERROR: can't set filter (pid=3306, tid=02, 
mask=FF): Device or resource busy

whereas kernel says [2]:
3[548957.448338] firedtv 0012870036002e6f-0: FCP response timed out
3[548957.448343] firedtv 0012870036002e6f-0: can't set PIDs
4[548974.380505] DVB (dvb_dmxdev_filter_start): could not alloc feed
4[548974.380864] DVB (dvb_dmxdev_filter_start): could not alloc feed
 + lots of fancy FCP communication debugging thanks to firedtv debug=-1

Kernel-time 548975 corresponds with real time 03:13:35. Computer
start was at 1256748240. I had to log kernel messages to separate file
so it wouldn't eat all space with syslog files.

Trivial workaround is to rmmod firedtv + modprobe firedtv but it is
rather annoying.  The freeze might be connected to vdr doing EPG scan
and trying to check all channels but manually triggering that scan
doesn't cause any malfunctions.

Any ideas what I should try?

1: http://aketzu.net/firedtv-syslog.bz2
2: http://aketzu.net/firedtv-kmsg.bz2 (206M uncompressed, 14M compressed)

-- 
Anssi Kolehmainen
anssi.kolehmai...@iki.fi
040-5085390
--
To unsubscribe from this list: send the line unsubscribe linux-media in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[PATCH] support for channel numbers in scan with Finnish DVB-C Welho

2009-02-02 Thread Anssi Kolehmainen
Hi,

Attached is small patch to enable channel numbering for FI DVB-C Welho
(similar to UK Freeview). Works for me though resulting list needs to be
sorted before using or else VDR gets channel numbers wrong.

-- 
Anssi Kolehmainen
anssi.kolehmai...@iki.fi
040-5085390
diff -r 98d3c06e5ef9 util/scan/scan.c
--- a/util/scan/scan.c	Tue Jan 27 12:39:11 2009 +0100
+++ b/util/scan/scan.c	Mon Feb 02 20:52:30 2009 +0200
@@ -363,6 +363,16 @@
 		}
 		buf += 4;
 	}
+}
+
+static void parse_cable_fi_channel_number (const unsigned char *buf, struct service *s)
+{
+	//We should have four bytes of data
+	if (buf[1] != 0x04)
+		return;
+
+	s-channel_num = buf[3];
+	verbosedebug(Channel number is %d\n, s-channel_num);
 }
 
 
@@ -685,6 +695,13 @@
 			 * problems when 0x83 is something entirely different... */
 			if (t == NIT  vdr_dump_channum)
 parse_terrestrial_uk_channel_number (buf, data);
+			break;
+		
+		case 0x91:
+			/* 0x91 is also in private range so parse only when we want
+			 * channel numbers */
+			if (t == SDT  vdr_dump_channum)
+parse_cable_fi_channel_number (buf, data);
 			break;
 
 		default:
@@ -2103,7 +2120,7 @@
 			Vdr version 1.3.x and up implies -p.\n
 		-l lnb-type (DVB-S Only) (use -l help to print types) or \n
 		-l low[,high[,switch]] in Mhz\n
-		-u  UK DVB-T Freeview channel numbering for VDR\n\n
+		-u  UK DVB-T Freeview / FI DVB-C Welho channel numbering for VDR\n\n
 		-P do not use ATSC PSIP tables for scanning\n
 		(but only PAT and PMT) (applies for ATSC only)\n
 		-A N	check for ATSC 1=Terrestrial [default], 2=Cable or 3=both\n