Re: Lifeview DVB-T from v4l-dvb and Pinnacle Hybrid USb from v4l-dvb-kernel......help

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 4/4/08, Another Sillyname <anothersname@xxxxxxxxxxxxxx> wrote:
> Aidan
>
> Just to let you know that after tweaking around I've managed to get it
> working stable.  I had to add a sleep in modprobe.conf else the
> em2880-dvb module was trying to load before em28xx had 'settled'.
>
> Just in case you see the problem in the future I added this to my
> modprobe.conf file to fix the problem.....
>
> install em28xx /sbin/modprobe --ignore-install em28xx; /bin/sleep 2;
> /sbin/modprobe em2880-dvb

That really shouldn't happen. What problems were you seeing, exactly?

> I've been reading that once 2.6.25 kernel is released there will be a
> lot more support for the em28 products....hopefully it'll reduce some
> of these issues going forward.

The 2.6.25 code is basically just a slightly older version of v4l-dvb
upstream - it adds (analog only) support for a few devices. While
hopefully analog support for this device should at least make 2.6.26
as long as I get a patch tested and submitted on time, I don't expect
DVB-T support for any em28xx-based device will. Perhaps for 2.6.27,
perhaps not.

(By the way, if it's not too much hassle, could you check if the
attached patch against  http://linuxtv.org/hg/v4l-dvb works for
analog, especially that the device works correctly after being freshly
plugged in and that sound works? It shouldn't need the card= option,
and neither should the latest http://www.makomk.com/hg/v4l-dvb-em28xx.
If you do test the patch, be careful not to load em2880-dvb - it's not
compatible and you won't be able to unload it short of rebooting.)

> Best Regards and once again thanks for your help.
>
> J
diff -r 37d5a01a14ca linux/Documentation/video4linux/CARDLIST.em28xx
--- a/linux/Documentation/video4linux/CARDLIST.em28xx	Wed Apr 02 11:10:59 2008 -0700
+++ b/linux/Documentation/video4linux/CARDLIST.em28xx	Fri Apr 04 17:04:07 2008 +0100
@@ -15,3 +15,4 @@
  14 -> Pixelview Prolink PlayTV USB 2.0         (em2820/em2840)
  15 -> V-Gear PocketTV                          (em2800)
  16 -> Hauppauge WinTV HVR 950                  (em2880)        [2040:6513]
+ 17 -> Pinnacle Hybrid Pro (EM2881)             (em2881)
diff -r 37d5a01a14ca linux/drivers/media/video/em28xx/em28xx-cards.c
--- a/linux/drivers/media/video/em28xx/em28xx-cards.c	Wed Apr 02 11:10:59 2008 -0700
+++ b/linux/drivers/media/video/em28xx/em28xx-cards.c	Fri Apr 04 17:04:07 2008 +0100
@@ -72,6 +72,7 @@
 #define EM2820_BOARD_PROLINK_PLAYTV_USB2	14
 #define EM2800_BOARD_VGEAR_POCKETTV             15
 #define EM2880_BOARD_HAUPPAUGE_WINTV_HVR_950	16
+#define EM2881_BOARD_PINNACLE_HYBRID_PRO	17
 
 struct em28xx_board em28xx_boards[] = {
 	[EM2800_BOARD_UNKNOWN] = {
@@ -405,6 +406,27 @@
 			.amux     = EM28XX_AMUX_LINE_IN,
 		} },
 	},
+	[EM2881_BOARD_PINNACLE_HYBRID_PRO] = {
+		.name         = "Pinnacle Hybrid Pro (EM2881)",
+		.vchannels    = 3,
+		.tuner_type   = TUNER_XC2028,
+		.mts_firmware = 1,
+		.decoder      = EM28XX_TVP5150,
+		.input          = { {
+			.type     = EM28XX_VMUX_TELEVISION,
+			.vmux     = TVP5150_COMPOSITE0,
+			.amux     = 0,
+		}, {
+			.type     = EM28XX_VMUX_COMPOSITE1,
+			.vmux     = TVP5150_COMPOSITE1,
+			.amux     = 1,
+		}, {
+			.type     = EM28XX_VMUX_SVIDEO,
+			.vmux     = TVP5150_SVIDEO,
+			.amux     = 1,
+		} },
+		.analog_gpio = 0x08007d6d,
+	},
 };
 const unsigned int em28xx_bcount = ARRAY_SIZE(em28xx_boards);
 
@@ -458,6 +480,7 @@
 static struct em28xx_hash_table em28xx_eeprom_hash [] = {
 	/* P/N: SA 60002070465 Tuner: TVF7533-MF */
 	{0x6ce05a8f, EM2820_BOARD_PROLINK_PLAYTV_USB2, TUNER_YMEC_TVF_5533MF},
+	{0xb8846b20, EM2881_BOARD_PINNACLE_HYBRID_PRO, TUNER_XC2028},
 };
 
 /* I2C devicelist hash table for devices with generic USB IDs */
@@ -743,6 +766,30 @@
 #endif
 		break;
 	}
+	case EM2881_BOARD_PINNACLE_HYBRID_PRO:
+	{
+		em28xx_write_regs(dev, I2C_CLK_REG, "\x4c", 1);
+		msleep(10);
+		em28xx_write_regs(dev, 0x04, "\x08", 1);
+		msleep(100);
+		em28xx_write_regs(dev, 0x08, "\xfd", 1);
+		msleep(100);
+		em28xx_write_regs(dev, 0x08, "\xfd", 1);
+		msleep(100);
+		em28xx_write_regs(dev, 0x08, "\xff", 1);
+		msleep(5);
+		em28xx_write_regs(dev, XCLK_REG, "\x27", 1); /* switch em2880 rc protocol */
+#if 0
+		em2880_ir_attach(dev,ir_codes_pinnacle2,ARRAY_SIZE(ir_codes_pinnacle2), em2880_get_key_pinnacle);
+#endif
+
+		em28xx_write_regs(dev, 0x08, "\x6d", 1);
+		msleep(10);
+		em28xx_write_regs(dev, 0x08, "\x7d", 1);
+		msleep(10);
+		break;
+	}
+	
 	case EM2820_BOARD_KWORLD_PVRTV2800RF:
 		/* GPIO enables sound on KWORLD PVR TV 2800RF */
 		em28xx_write_regs_req(dev, 0x00, 0x08, "\xf9", 1);
_______________________________________________
linux-dvb mailing list
linux-dvb@xxxxxxxxxxx
http://www.linuxtv.org/cgi-bin/mailman/listinfo/linux-dvb

[Index of Archives]     [Linux Media]     [Video 4 Linux]     [Asterisk]     [Samba]     [Xorg]     [Xfree86]     [Linux USB]

  Powered by Linux