Re: [PATCH 2/3] [media] saa7134: Remove legacy IR decoding logic inside the module

2010-11-14 Thread Jarod Wilson
On Nov 13, 2010, at 2:33 PM, Mauro Carvalho Chehab wrote:

> The only IR left still using the old raw decoders on saa7134 is ENCORE
> FM 5.3. As it is now using the standard rc-core raw decoders, lots
> of old code can be removed from saa7134.
> 
> Signed-off-by: Mauro Carvalho Chehab 

Acked-by: Jarod Wilson 

-- 
Jarod Wilson
ja...@wilsonet.com



--
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/3] [media] saa7134: Remove legacy IR decoding logic inside the module

2010-11-13 Thread Mauro Carvalho Chehab
The only IR left still using the old raw decoders on saa7134 is ENCORE
FM 5.3. As it is now using the standard rc-core raw decoders, lots
of old code can be removed from saa7134.

Signed-off-by: Mauro Carvalho Chehab 

diff --git a/drivers/media/video/saa7134/saa7134-input.c 
b/drivers/media/video/saa7134/saa7134-input.c
index 4878f46..72562b8 100644
--- a/drivers/media/video/saa7134/saa7134-input.c
+++ b/drivers/media/video/saa7134/saa7134-input.c
@@ -54,11 +54,8 @@ MODULE_PARM_DESC(disable_other_ir, "disable full codes of "
 #define i2cdprintk(fmt, arg...)if (ir_debug) \
printk(KERN_DEBUG "%s/ir: " fmt, ir->name , ## arg)
 
-/* Helper functions for RC5 and NEC decoding at GPIO16 or GPIO18 */
-static int saa7134_rc5_irq(struct saa7134_dev *dev);
-static int saa7134_nec_irq(struct saa7134_dev *dev);
+/* Helper function for raw decoding at GPIO16 or GPIO18 */
 static int saa7134_raw_decode_irq(struct saa7134_dev *dev);
-static void nec_task(unsigned long data);
 
 /*  GPIO generic keycode builder  */
 
@@ -397,12 +394,8 @@ void saa7134_input_irq(struct saa7134_dev *dev)
if (!ir->running)
return;
 
-   if (ir->nec_gpio) {
-   saa7134_nec_irq(dev);
-   } else if (!ir->polling && !ir->rc5_gpio && !ir->raw_decode) {
+   if (!ir->polling && !ir->raw_decode) {
build_key(dev);
-   } else if (ir->rc5_gpio) {
-   saa7134_rc5_irq(dev);
} else if (ir->raw_decode) {
saa7134_raw_decode_irq(dev);
}
@@ -448,17 +441,6 @@ static int __saa7134_ir_start(void *priv)
(unsigned long)dev);
ir->timer.expires  = jiffies + HZ;
add_timer(&ir->timer);
-   } else if (ir->rc5_gpio) {
-   /* set timer_end for code completion */
-   init_timer(&ir->timer_end);
-   ir->timer_end.function = ir_rc5_timer_end;
-   ir->timer_end.data = (unsigned long)ir;
-   ir->shift_by = 2;
-   ir->start = 0x2;
-   ir->addr = 0x17;
-   ir->rc5_remote_gap = ir_rc5_remote_gap;
-   } else if (ir->nec_gpio) {
-   tasklet_init(&ir->tlet, nec_task, (unsigned long)dev);
} else if (ir->raw_decode) {
/* set timer_end for code completion */
init_timer(&ir->timer_end);
@@ -486,10 +468,6 @@ static void __saa7134_ir_stop(void *priv)
return;
if (dev->remote->polling)
del_timer_sync(&dev->remote->timer);
-   else if (ir->rc5_gpio)
-   del_timer_sync(&ir->timer_end);
-   else if (ir->nec_gpio)
-   tasklet_kill(&ir->tlet);
else if (ir->raw_decode) {
del_timer_sync(&ir->timer_end);
ir->active = 0;
@@ -531,40 +509,6 @@ static void saa7134_ir_close(struct rc_dev *rc)
__saa7134_ir_stop(dev);
 }
 
-
-static int saa7134_ir_change_protocol(struct rc_dev *rc, u64 ir_type)
-{
-   struct saa7134_dev *dev = rc->priv;
-   struct card_ir *ir = dev->remote;
-   u32 nec_gpio, rc5_gpio;
-
-   if (ir_type == IR_TYPE_RC5) {
-   dprintk("Changing protocol to RC5\n");
-   nec_gpio = 0;
-   rc5_gpio = 1;
-   } else if (ir_type == IR_TYPE_NEC) {
-   dprintk("Changing protocol to NEC\n");
-   nec_gpio = 1;
-   rc5_gpio = 0;
-   } else {
-   dprintk("IR protocol type %ud is not supported\n",
-   (unsigned)ir_type);
-   return -EINVAL;
-   }
-
-   if (ir->running) {
-   saa7134_ir_stop(dev);
-   ir->nec_gpio = nec_gpio;
-   ir->rc5_gpio = rc5_gpio;
-   saa7134_ir_start(dev);
-   } else {
-   ir->nec_gpio = nec_gpio;
-   ir->rc5_gpio = rc5_gpio;
-   }
-
-   return 0;
-}
-
 int saa7134_input_init1(struct saa7134_dev *dev)
 {
struct card_ir *ir;
@@ -574,10 +518,7 @@ int saa7134_input_init1(struct saa7134_dev *dev)
u32 mask_keydown = 0;
u32 mask_keyup   = 0;
int polling  = 0;
-   int rc5_gpio = 0;
-   int nec_gpio = 0;
int raw_decode   = 0;
-   int allow_protocol_change = 0;
int err;
 
if (dev->has_remote != SAA7134_REMOTE_GPIO)
@@ -830,8 +771,6 @@ int saa7134_input_init1(struct saa7134_dev *dev)
ir->mask_keydown = mask_keydown;
ir->mask_keyup   = mask_keyup;
ir->polling  = polling;
-   ir->rc5_gpio = rc5_gpio;
-   ir->nec_gpio = nec_gpio;
ir->raw_decode   = raw_decode;
 
/* init input device */
@@ -846,11 +785,6 @@ int saa7134_input_init1(struct saa7134_dev *dev)
if (raw_decode)
rc->driver_type = RC_DRIVER_IR_RAW;
 
-   if (!raw_decode && allow_protocol_change) {
-   rc->allowed_protos = IR_TYPE_RC5