Ура!
Получилось с пультом и под tuxonice-sources-2.6.25-r5
diff -ruN linux-2.6.25-tuxonice-r5/drivers/media/common/ir-keymaps.c linux-2.6.25-tuxonice-r5.patched/drivers/media/common/ir-keymaps.c
--- linux-2.6.25-tuxonice-r5/drivers/media/common/ir-keymaps.c 2008-04-17 06:49:44.000000000 +0400
+++ linux-2.6.25-tuxonice-r5.patched/drivers/media/common/ir-keymaps.c 2008-06-24 18:04:01.000000000 +0400
@@ -1611,6 +1611,77 @@
EXPORT_SYMBOL_GPL(ir_codes_budget_ci_old);
+/* Beholder Intl. Ltd. 2008
+ * Dmitry Belimov
d.belimov@google.com
+ * Keytable is used by BeholdTV Columbus
+ * The "ascii-art picture" below (in comments, first row
+ * is the keycode in hex, and subsequent row(s) shows
+ * the button labels (several variants when appropriate)
+ * helps to descide which keycodes to assign to the buttons.
+ */
+IR_KEYTAB_TYPE ir_codes_behold_columbus[IR_KEYTAB_SIZE] = {
+
+ /* 0x13 0x11 0x1C 0x12 *
+ * Mute Source TV/FM Power *
+ * */
+
+ [ 0x13 ] = KEY_MUTE,
+ [ 0x11 ] = KEY_PROPS,
+ [ 0x1C ] = KEY_TUNER, /* KEY_TV/KEY_RADIO */
+ [ 0x12 ] = KEY_POWER,
+
+ /* 0x01 0x02 0x03 0x0D *
+ * 1 2 3 Stereo *
+ * *
+ * 0x04 0x05 0x06 0x19 *
+ * 4 5 6 Snapshot *
+ * *
+ * 0x07 0x08 0x09 0x10 *
+ * 7 8 9 Zoom *
+ * */
+ [ 0x01 ] = KEY_1,
+ [ 0x02 ] = KEY_2,
+ [ 0x03 ] = KEY_3,
+ [ 0x0D ] = KEY_SETUP, /* Setup key */
+ [ 0x04 ] = KEY_4,
+ [ 0x05 ] = KEY_5,
+ [ 0x06 ] = KEY_6,
+ [ 0x19 ] = KEY_BOOKMARKS, /* Snapshot key */
+ [ 0x07 ] = KEY_7,
+ [ 0x08 ] = KEY_8,
+ [ 0x09 ] = KEY_9,
+ [ 0x10 ] = KEY_ZOOM,
+
+ /* 0x0A 0x00 0x0B 0x0C *
+ * RECALL 0 ChannelUp VolumeUp *
+ * */
+ [ 0x0A ] = KEY_AGAIN,
+ [ 0x00 ] = KEY_0,
+ [ 0x0B ] = KEY_CHANNELUP,
+ [ 0x0C ] = KEY_VOLUMEUP,
+
+ /* 0x1B 0x1D 0x15 0x18 *
+ * Timeshift Record ChannelDown VolumeDown *
+ * */
+
+ [ 0x1B ] = KEY_REWIND,
+ [ 0x1D ] = KEY_RECORD,
+ [ 0x15 ] = KEY_CHANNELDOWN,
+ [ 0x18 ] = KEY_VOLUMEDOWN,
+
+ /* 0x0E 0x1E 0x0F 0x1A *
+ * Stop Pause Previouse Next *
+ * */
+
+ [ 0x0E ] = KEY_STOP,
+ [ 0x1E ] = KEY_PAUSE,
+ [ 0x0F ] = KEY_PREVIOUS,
+ [ 0x1A ] = KEY_NEXT,
+
+};
+
+EXPORT_SYMBOL_GPL(ir_codes_behold_columbus);
+
/*
* Marc Fargas <telenieko>
* this is the remote control that comes with the asus p7131
@@ -2033,3 +2104,4 @@
[0x50] = KEY_BLUE,
};
EXPORT_SYMBOL_GPL(ir_codes_genius_tvgo_a11mce);
+
diff -ruN linux-2.6.25-tuxonice-r5/drivers/media/video/saa7134/saa7134-cards.c linux-2.6.25-tuxonice-r5.patched/drivers/media/video/saa7134/saa7134-cards.c
--- linux-2.6.25-tuxonice-r5/drivers/media/video/saa7134/saa7134-cards.c 2008-04-17 06:49:44.000000000 +0400
+++ linux-2.6.25-tuxonice-r5.patched/drivers/media/video/saa7134/saa7134-cards.c 2008-06-24 17:56:09.000000000 +0400
@@ -5133,12 +5133,25 @@
saa_andorl(SAA7134_GPIO_GPSTATUS0 >> 2, 0x08000000, 0x00000000);
break;
case SAA7134_BOARD_AVERMEDIA_CARDBUS:
- case SAA7134_BOARD_BEHOLD_COLUMBUS_TVFM:
/* power-up tuner chip */
saa_andorl(SAA7134_GPIO_GPMODE0 >> 2, 0xffffffff, 0xffffffff);
saa_andorl(SAA7134_GPIO_GPSTATUS0 >> 2, 0xffffffff, 0xffffffff);
msleep(1);
break;
+case SAA7134_BOARD_BEHOLD_COLUMBUS_TVFM:
+#if 1
+ /* power-down tuner chip */
+ saa_andorl(SAA7134_GPIO_GPMODE0 >> 2, 0x000A8004, 0);
+ saa_andorl(SAA7134_GPIO_GPSTATUS0 >> 2, 0x000A8004, 0);
+#endif
+ msleep(10);
+ /* power-up tuner chip */
+ saa_andorl(SAA7134_GPIO_GPMODE0 >> 2, 0x000A8004, 0x000A8004);
+ saa_andorl(SAA7134_GPIO_GPSTATUS0 >> 2, 0x000A8004, 0x000A8004);
+ msleep(10);
+ /* remote via GPIO */
+ dev->has_remote = SAA7134_REMOTE_GPIO;
+ break;
case SAA7134_BOARD_RTD_VFG7350:
/*
diff -ruN linux-2.6.25-tuxonice-r5/drivers/media/video/saa7134/saa7134-input.c linux-2.6.25-tuxonice-r5.patched/drivers/media/video/saa7134/saa7134-input.c
--- linux-2.6.25-tuxonice-r5/drivers/media/video/saa7134/saa7134-input.c 2008-04-17 06:49:44.000000000 +0400
+++ linux-2.6.25-tuxonice-r5.patched/drivers/media/video/saa7134/saa7134-input.c 2008-06-24 17:46:48.000000000 +0400
@@ -412,6 +412,12 @@
mask_keydown = 0xf00000;
polling = 50; /* ms */
break;
+ case SAA7134_BOARD_BEHOLD_COLUMBUS_TVFM:
+ ir_codes = ir_codes_manli;
+ mask_keycode = 0x003f00;
+ mask_keyup = 0x004000;
+ polling = 50; // ms
+ break;
}
if (NULL == ir_codes) {
printk("%s: Oops: IR config error [card=%d]\n",
diff -ruN linux-2.6.25-tuxonice-r5/drivers/media/video/tea5767.c linux-2.6.25-tuxonice-r5.patched/drivers/media/video/tea5767.c
--- linux-2.6.25-tuxonice-r5/drivers/media/video/tea5767.c 2008-04-17 06:49:44.000000000 +0400
+++ linux-2.6.25-tuxonice-r5.patched/drivers/media/video/tea5767.c 2008-06-24 17:54:45.000000000 +0400
@@ -394,13 +394,13 @@
printk(KERN_WARNING "Chip ID is not zero. It is not a TEA5767\n");
return EINVAL;
}
-
+#if 0 /* Not working for TEA5767 in Beholder Columbus card */
/* It seems that tea5767 returns 0xff after the 5th byte */
if ((buffer[5] != 0xff) || (buffer[6] != 0xff)) {
printk(KERN_WARNING "Returned more than 5 bytes. It is not a TEA5767\n");
return EINVAL;
}
-
+#endif
return 0;
}
diff -ruN linux-2.6.25-tuxonice-r5/include/media/ir-common.h linux-2.6.25-tuxonice-r5.patched/include/media/ir-common.h
--- linux-2.6.25-tuxonice-r5/include/media/ir-common.h 2008-04-17 06:49:44.000000000 +0400
+++ linux-2.6.25-tuxonice-r5.patched/include/media/ir-common.h 2008-06-24 17:49:22.000000000 +0400
@@ -143,6 +143,7 @@
extern IR_KEYTAB_TYPE ir_codes_behold[IR_KEYTAB_SIZE];
extern IR_KEYTAB_TYPE ir_codes_pinnacle_pctv_hd[IR_KEYTAB_SIZE];
extern IR_KEYTAB_TYPE ir_codes_genius_tvgo_a11mce[IR_KEYTAB_SIZE];
+extern IR_KEYTAB_TYPE ir_codes_behold_columbus[IR_KEYTAB_SIZE];
#endif
осталось проковыряться с настройками для tvtime... где то писали на радном сайте tvtime'а
А вот радио никак не хочет...

(((