The patch number 9666 was added via Mauro Carvalho Chehab <[EMAIL PROTECTED]>
to http://linuxtv.org/hg/v4l-dvb master development tree.

Kernel patches in this development tree may be modified to be backward
compatible with older kernels. Compatibility modifications will be
removed before inclusion into the mainstream Kernel

If anyone has any objections, please let us know by sending a message to:
        [EMAIL PROTECTED]

------

From: Mauro Carvalho Chehab  <[EMAIL PROTECTED]>
merge: http://linuxtv.org/hg/~anttip/af9015


Priority: normal

Signed-off-by: Mauro Carvalho Chehab <[EMAIL PROTECTED]>


---

 linux/drivers/media/dvb/dvb-usb/af9015.c |   18 ++++--
 linux/drivers/media/dvb/dvb-usb/af9015.h |   64 +++++++++++++++++++++++
 2 files changed, 76 insertions(+), 6 deletions(-)

diff -r 97a734555057 -r 2642ea0d2c54 linux/drivers/media/dvb/dvb-usb/af9015.c
--- a/linux/drivers/media/dvb/dvb-usb/af9015.c  Thu Nov 20 10:58:02 2008 -0200
+++ b/linux/drivers/media/dvb/dvb-usb/af9015.c  Thu Nov 20 11:00:09 2008 -0200
@@ -680,12 +680,6 @@ static int af9015_download_firmware(stru
                err("firmware boot failed:%d", ret);
                goto error;
        }
-
-       /* firmware is running, reconnect device in the usb bus */
-       req.cmd = RECONNECT_USB;
-       ret = af9015_rw_udev(udev, &req);
-       if (ret)
-               err("reconnect failed: %d", ret);
 
 error:
        return ret;
@@ -738,6 +732,16 @@ static int af9015_read_config(struct usb
                                  af9015_ir_table_mygictv;
                                af9015_config.ir_table_size =
                                  ARRAY_SIZE(af9015_ir_table_mygictv);
+                               break;
+                       case AF9015_REMOTE_DIGITTRADE_DVB_T:
+                               af9015_properties[i].rc_key_map =
+                                 af9015_rc_keys_digittrade;
+                               af9015_properties[i].rc_key_map_size =
+                                 ARRAY_SIZE(af9015_rc_keys_digittrade);
+                               af9015_config.ir_table =
+                                 af9015_ir_table_digittrade;
+                               af9015_config.ir_table_size =
+                                 ARRAY_SIZE(af9015_ir_table_digittrade);
                                break;
                        }
                } else {
@@ -1219,6 +1223,7 @@ static struct dvb_usb_device_properties 
                .usb_ctrl = DEVICE_SPECIFIC,
                .download_firmware = af9015_download_firmware,
                .firmware = "dvb-usb-af9015.fw",
+               .no_reconnect = 1,
 
                .size_of_priv = sizeof(struct af9015_state), \
 
@@ -1317,6 +1322,7 @@ static struct dvb_usb_device_properties 
                .usb_ctrl = DEVICE_SPECIFIC,
                .download_firmware = af9015_download_firmware,
                .firmware = "dvb-usb-af9015.fw",
+               .no_reconnect = 1,
 
                .size_of_priv = sizeof(struct af9015_state), \
 
diff -r 97a734555057 -r 2642ea0d2c54 linux/drivers/media/dvb/dvb-usb/af9015.h
--- a/linux/drivers/media/dvb/dvb-usb/af9015.h  Thu Nov 20 10:58:02 2008 -0200
+++ b/linux/drivers/media/dvb/dvb-usb/af9015.h  Thu Nov 20 11:00:09 2008 -0200
@@ -123,6 +123,7 @@ enum af9015_remote {
        AF9015_REMOTE_A_LINK_DTU_M,
        AF9015_REMOTE_MSI_DIGIVOX_MINI_II_V3,
        AF9015_REMOTE_MYGICTV_U718,
+       AF9015_REMOTE_DIGITTRADE_DVB_T,
 };
 
 /* Leadtek WinFast DTV Dongle Gold */
@@ -596,4 +597,67 @@ static u8 af9015_ir_table_avermedia[] = 
        0x03, 0xfc, 0x03, 0xfc, 0x0e, 0x05, 0x00,
 };
 
+/* Digittrade DVB-T USB Stick */
+static struct dvb_usb_rc_key af9015_rc_keys_digittrade[] = {
+       { 0x01, 0x0f, KEY_LAST },       /* RETURN */
+       { 0x05, 0x17, KEY_TEXT },       /* TELETEXT */
+       { 0x01, 0x08, KEY_EPG },        /* EPG */
+       { 0x05, 0x13, KEY_POWER },      /* POWER */
+       { 0x01, 0x09, KEY_ZOOM },       /* FULLSCREEN */
+       { 0x00, 0x40, KEY_AUDIO },      /* DUAL SOUND */
+       { 0x00, 0x2c, KEY_PRINT },      /* SNAPSHOT */
+       { 0x05, 0x16, KEY_SUBTITLE },   /* SUBTITLE */
+       { 0x00, 0x52, KEY_CHANNELUP },  /* CH Up */
+       { 0x00, 0x51, KEY_CHANNELDOWN },/* Ch Dn */
+       { 0x00, 0x57, KEY_VOLUMEUP },   /* Vol Up */
+       { 0x00, 0x56, KEY_VOLUMEDOWN }, /* Vol Dn */
+       { 0x01, 0x10, KEY_MUTE },       /* MUTE */
+       { 0x00, 0x27, KEY_0 },
+       { 0x00, 0x1e, KEY_1 },
+       { 0x00, 0x1f, KEY_2 },
+       { 0x00, 0x20, KEY_3 },
+       { 0x00, 0x21, KEY_4 },
+       { 0x00, 0x22, KEY_5 },
+       { 0x00, 0x23, KEY_6 },
+       { 0x00, 0x24, KEY_7 },
+       { 0x00, 0x25, KEY_8 },
+       { 0x00, 0x26, KEY_9 },
+       { 0x01, 0x17, KEY_PLAYPAUSE },  /* TIMESHIFT */
+       { 0x01, 0x15, KEY_RECORD },     /* RECORD */
+       { 0x03, 0x13, KEY_PLAY },       /* PLAY */
+       { 0x01, 0x16, KEY_STOP },       /* STOP */
+       { 0x01, 0x13, KEY_PAUSE },      /* PAUSE */
+};
+
+static u8 af9015_ir_table_digittrade[] = {
+       0x00, 0xff, 0x06, 0xf9, 0x13, 0x05, 0x00,
+       0x00, 0xff, 0x4d, 0xb2, 0x17, 0x01, 0x00,
+       0x00, 0xff, 0x1f, 0xe0, 0x2c, 0x00, 0x00,
+       0x00, 0xff, 0x0a, 0xf5, 0x15, 0x01, 0x00,
+       0x00, 0xff, 0x0e, 0xf1, 0x16, 0x01, 0x00,
+       0x00, 0xff, 0x09, 0xf6, 0x09, 0x01, 0x00,
+       0x00, 0xff, 0x01, 0xfe, 0x08, 0x01, 0x00,
+       0x00, 0xff, 0x05, 0xfa, 0x10, 0x01, 0x00,
+       0x00, 0xff, 0x02, 0xfd, 0x56, 0x00, 0x00,
+       0x00, 0xff, 0x40, 0xbf, 0x57, 0x00, 0x00,
+       0x00, 0xff, 0x19, 0xe6, 0x52, 0x00, 0x00,
+       0x00, 0xff, 0x17, 0xe8, 0x51, 0x00, 0x00,
+       0x00, 0xff, 0x10, 0xef, 0x0f, 0x01, 0x00,
+       0x00, 0xff, 0x54, 0xab, 0x27, 0x00, 0x00,
+       0x00, 0xff, 0x1b, 0xe4, 0x1e, 0x00, 0x00,
+       0x00, 0xff, 0x11, 0xee, 0x1f, 0x00, 0x00,
+       0x00, 0xff, 0x15, 0xea, 0x20, 0x00, 0x00,
+       0x00, 0xff, 0x12, 0xed, 0x21, 0x00, 0x00,
+       0x00, 0xff, 0x16, 0xe9, 0x22, 0x00, 0x00,
+       0x00, 0xff, 0x4c, 0xb3, 0x23, 0x00, 0x00,
+       0x00, 0xff, 0x48, 0xb7, 0x24, 0x00, 0x00,
+       0x00, 0xff, 0x04, 0xfb, 0x25, 0x00, 0x00,
+       0x00, 0xff, 0x00, 0xff, 0x26, 0x00, 0x00,
+       0x00, 0xff, 0x1e, 0xe1, 0x13, 0x03, 0x00,
+       0x00, 0xff, 0x1a, 0xe5, 0x13, 0x01, 0x00,
+       0x00, 0xff, 0x03, 0xfc, 0x17, 0x05, 0x00,
+       0x00, 0xff, 0x0d, 0xf2, 0x16, 0x05, 0x00,
+       0x00, 0xff, 0x1d, 0xe2, 0x40, 0x00, 0x00,
+};
+
 #endif


---

Patch is available at: 
http://linuxtv.org/hg/v4l-dvb/rev/2642ea0d2c548fedc4d82560b91a30bff071fa9b

_______________________________________________
linuxtv-commits mailing list
linuxtv-commits@linuxtv.org
http://www.linuxtv.org/cgi-bin/mailman/listinfo/linuxtv-commits

Reply via email to