@@ -558,6 +558,27 @@
.amux = EM28XX_AMUX_LINE_IN,
} },
},
+ [EM2861_BOARD_GADMEI_UTV330PLUS] = {
+ .name = "Gadmei UTV330+",
+ .tuner_type = TUNER_TNF_5335MF,
+ .tda9887_conf = TDA9887_PRESENT,
+ .ir_codes = ir_codes_gadmei_rm008z,
+ .decoder = EM28XX_SAA711X,
+ .xclk = EM28XX_XCLK_FREQUENCY_12MHZ,
+ .input = { {
+ .type = EM28XX_VMUX_TELEVISION,
+ .vmux = SAA7115_COMPOSITE2,
+ .amux = EM28XX_AMUX_VIDEO,
+ }, {
+ .type = EM28XX_VMUX_COMPOSITE1,
+ .vmux = SAA7115_COMPOSITE0,
+ .amux = EM28XX_AMUX_LINE_IN,
+ }, {
+ .type = EM28XX_VMUX_SVIDEO,
+ .vmux = SAA7115_SVIDEO3,
+ .amux = EM28XX_AMUX_LINE_IN,
+ } },
+ },
[EM2860_BOARD_TERRATEC_HYBRID_XS] = {
.name = "Terratec Cinergy A Hybrid XS",
.valid = EM28XX_BOARD_NOT_VALIDATED,
@@ -1665,6 +1686,7 @@
{0xf51200e3, EM2800_BOARD_VGEAR_POCKETTV, TUNER_LG_PAL_NEW_TAPC},
{0x1ba50080, EM2860_BOARD_SAA711X_REFERENCE_DESIGN, TUNER_ABSENT},
{0xc51200e3, EM2820_BOARD_GADMEI_TVR200, TUNER_LG_PAL_NEW_TAPC},
+ {0x4ba50080, EM2861_BOARD_GADMEI_UTV330PLUS, TUNER_TNF_5335MF},
};
/* I2C possible address to saa7115, tvp5150, msp3400, tvaudio */
@@ -108,6 +108,7 @@
#define EM2882_BOARD_KWORLD_ATSC_315U 69
#define EM2882_BOARD_EVGA_INDTUBE 70
#define EM2820_BOARD_SILVERCREST_WEBCAM 71
+#define EM2861_BOARD_GADMEI_UTV330PLUS 72
/* Limits minimum and default number of buffers */
#define EM28XX_MIN_BUF 4
@@ -2773,3 +2773,46 @@
[0x13] = KEY_CAMERA,
};
EXPORT_SYMBOL_GPL(ir_codes_evga_indtube);
+
+/* GADMEI UTV330+ RM008Z remote
+ Shine Liu <shinel@foxmail.com>
+ */
+IR_KEYTAB_TYPE ir_codes_gadmei_rm008z[IR_KEYTAB_SIZE] = {
+ [ 0x14 ] = KEY_ESC, /* POWER OFF */
+ [ 0x0c ] = KEY_M, /* MUTE */
+
+ [ 0x18 ] = KEY_PLAY, /* TV */
+ [ 0x0e ] = KEY_VIDEO, /* AV */
+ [ 0x0b ] = KEY_AUDIO, /* SV */
+ [ 0x0f ] = KEY_RADIO, /* FM */
+
+ [ 0x00 ] = KEY_1,
+ [ 0x01 ] = KEY_2,
+ [ 0x02 ] = KEY_3,
+ [ 0x03 ] = KEY_4,
+ [ 0x04 ] = KEY_5,
+ [ 0x05 ] = KEY_6,
+ [ 0x06 ] = KEY_7,
+ [ 0x07 ] = KEY_8,
+ [ 0x08 ] = KEY_9,
+ [ 0x09 ] = KEY_0,
+ [ 0x0a ] = KEY_D, /* OSD */
+ [ 0x1c ] = KEY_BACKSPACE, /* LAST */
+
+ [ 0x0d ] = KEY_PLAY, /* PLAY */
+ [ 0x1e ] = KEY_S, /* SNAPSHOT */
+ [ 0x1a ] = KEY_RECORD, /* RECORD */
+ [ 0x17 ] = KEY_STOP, /* STOP */
+
+ [ 0x1f ] = KEY_UP, /* UP */
+ [ 0x44 ] = KEY_DOWN, /* DOWN */
+ [ 0x46 ] = KEY_TAB, /* BACK */
+ [ 0x4a ] = KEY_F, /* FULLSECREEN */
+
+ [ 0x10 ] = KEY_RIGHT, /* VOLUMEUP */
+ [ 0x11 ] = KEY_LEFT, /* VOLUMEDOWN */
+ [ 0x12 ] = KEY_UP, /* CHANNELUP */
+ [ 0x13 ] = KEY_DOWN, /* CHANNELDOWN */
+ [ 0x15 ] = KEY_ENTER, /* OK */
+};
+EXPORT_SYMBOL_GPL(ir_codes_gadmei_rm008z);
@@ -163,6 +163,7 @@
extern IR_KEYTAB_TYPE ir_codes_kaiomy[IR_KEYTAB_SIZE];
extern IR_KEYTAB_TYPE ir_codes_dm1105_nec[IR_KEYTAB_SIZE];
extern IR_KEYTAB_TYPE ir_codes_evga_indtube[IR_KEYTAB_SIZE];
+extern IR_KEYTAB_TYPE ir_codes_gadmei_rm008z[IR_KEYTAB_SIZE];
#endif
@@ -67,3 +67,4 @@
69 -> KWorld ATSC 315U HDTV TV Box (em2882) [eb1a:a313]
70 -> Evga inDtube (em2882)
71 -> Silvercrest Webcam 1.3mpix (em2820/em2840)
+ 72 -> Gadmei UTV330+ (em2861) [eb1a:2861]
Hi Devin, Thanks for your suggestion. From the dmesg, I got the information: em28xx #0: Board i2c devicelist hash is 0x4ba50080 I've regenerated the patch used the i2c hash value 0x4ba50080. |-------------------------------------------------------------------| |Sorry for the last wrong mail, "ir_codes_gadimei_rm008z" should be | |"ir_codes_gadmei_rm008z". This patch is correct. | |-------------------------------------------------------------------| Best regard, Shine Signed-off-by: Shine Liu <shinel@foxmail.com> ----------------------------------------------------------- -- To unsubscribe from this list: send the line "unsubscribe linux-media" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html