Re: [PATCH 2/4] media: dvb/af9015, factor out remote setting

2010-01-24 Thread Antti Palosaari

On 01/22/2010 05:10 PM, Jiri Slaby wrote:

This is just a code shuffle without functional changes. For easier
review of later changes, i.e. preparation.

Signed-off-by: Jiri Slabyjsl...@suse.cz
Cc: Antti Palosaaricr...@iki.fi
Cc: Mauro Carvalho Chehabmche...@redhat.com
Cc: linux-media@vger.kernel.org


Acked-by: Antti Palosaari cr...@iki.fi

--
http://palosaari.fi/
--
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 2/4] media: dvb/af9015, factor out remote setting

2010-01-22 Thread Jiri Slaby
This is just a code shuffle without functional changes. For easier
review of later changes, i.e. preparation.

Signed-off-by: Jiri Slaby jsl...@suse.cz
Cc: Antti Palosaari cr...@iki.fi
Cc: Mauro Carvalho Chehab mche...@redhat.com
Cc: linux-media@vger.kernel.org
---
 drivers/media/dvb/dvb-usb/af9015.c |  305 ++-
 1 files changed, 157 insertions(+), 148 deletions(-)

diff --git a/drivers/media/dvb/dvb-usb/af9015.c 
b/drivers/media/dvb/dvb-usb/af9015.c
index 616b3ba..adba90d 100644
--- a/drivers/media/dvb/dvb-usb/af9015.c
+++ b/drivers/media/dvb/dvb-usb/af9015.c
@@ -732,12 +732,166 @@ error:
return ret;
 }
 
+static void af9015_set_remote_config(struct usb_device *udev,
+   struct dvb_usb_device_properties *props)
+{
+   if (dvb_usb_af9015_remote) {
+   /* load remote defined as module param */
+   switch (dvb_usb_af9015_remote) {
+   case AF9015_REMOTE_A_LINK_DTU_M:
+   props-rc_key_map =
+ af9015_rc_keys_a_link;
+   props-rc_key_map_size =
+ ARRAY_SIZE(af9015_rc_keys_a_link);
+   af9015_config.ir_table = af9015_ir_table_a_link;
+   af9015_config.ir_table_size =
+ ARRAY_SIZE(af9015_ir_table_a_link);
+   break;
+   case AF9015_REMOTE_MSI_DIGIVOX_MINI_II_V3:
+   props-rc_key_map =
+ af9015_rc_keys_msi;
+   props-rc_key_map_size =
+ ARRAY_SIZE(af9015_rc_keys_msi);
+   af9015_config.ir_table = af9015_ir_table_msi;
+   af9015_config.ir_table_size =
+ ARRAY_SIZE(af9015_ir_table_msi);
+   break;
+   case AF9015_REMOTE_MYGICTV_U718:
+   props-rc_key_map =
+ af9015_rc_keys_mygictv;
+   props-rc_key_map_size =
+ ARRAY_SIZE(af9015_rc_keys_mygictv);
+   af9015_config.ir_table =
+ af9015_ir_table_mygictv;
+   af9015_config.ir_table_size =
+ ARRAY_SIZE(af9015_ir_table_mygictv);
+   break;
+   case AF9015_REMOTE_DIGITTRADE_DVB_T:
+   props-rc_key_map =
+ af9015_rc_keys_digittrade;
+   props-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;
+   case AF9015_REMOTE_AVERMEDIA_KS:
+   props-rc_key_map =
+ af9015_rc_keys_avermedia;
+   props-rc_key_map_size =
+ ARRAY_SIZE(af9015_rc_keys_avermedia);
+   af9015_config.ir_table =
+ af9015_ir_table_avermedia_ks;
+   af9015_config.ir_table_size =
+ ARRAY_SIZE(af9015_ir_table_avermedia_ks);
+   break;
+   }
+   } else {
+   switch (le16_to_cpu(udev-descriptor.idVendor)) {
+   case USB_VID_LEADTEK:
+   props-rc_key_map =
+ af9015_rc_keys_leadtek;
+   props-rc_key_map_size =
+ ARRAY_SIZE(af9015_rc_keys_leadtek);
+   af9015_config.ir_table =
+ af9015_ir_table_leadtek;
+   af9015_config.ir_table_size =
+ ARRAY_SIZE(af9015_ir_table_leadtek);
+   break;
+   case USB_VID_VISIONPLUS:
+   props-rc_key_map =
+ af9015_rc_keys_twinhan;
+   props-rc_key_map_size =
+ ARRAY_SIZE(af9015_rc_keys_twinhan);
+   af9015_config.ir_table =
+ af9015_ir_table_twinhan;
+   af9015_config.ir_table_size =
+ ARRAY_SIZE(af9015_ir_table_twinhan);
+   break;
+   case USB_VID_KWORLD_2:
+   /* TODO: use correct rc keys */
+   props-rc_key_map =
+ af9015_rc_keys_twinhan;
+   props-rc_key_map_size =
+ ARRAY_SIZE(af9015_rc_keys_twinhan);
+   af9015_config.ir_table = af9015_ir_table_kworld;
+   af9015_config.ir_table_size =
+ ARRAY_SIZE(af9015_ir_table_kworld);
+   break;
+