aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/media/usb/tm6000/tm6000-input.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/media/usb/tm6000/tm6000-input.c')
-rw-r--r--drivers/media/usb/tm6000/tm6000-input.c20
1 files changed, 11 insertions, 9 deletions
diff --git a/drivers/media/usb/tm6000/tm6000-input.c b/drivers/media/usb/tm6000/tm6000-input.c
index dffbd4bd47b1..8a6bbf1d80e1 100644
--- a/drivers/media/usb/tm6000/tm6000-input.c
+++ b/drivers/media/usb/tm6000/tm6000-input.c
@@ -109,12 +109,12 @@ static int tm6000_ir_config(struct tm6000_IR *ir)
109 */ 109 */
110 110
111 switch (ir->rc_type) { 111 switch (ir->rc_type) {
112 case RC_TYPE_NEC: 112 case RC_BIT_NEC:
113 leader = 900; /* ms */ 113 leader = 900; /* ms */
114 pulse = 700; /* ms - the actual value would be 562 */ 114 pulse = 700; /* ms - the actual value would be 562 */
115 break; 115 break;
116 default: 116 default:
117 case RC_TYPE_RC5: 117 case RC_BIT_RC5:
118 leader = 900; /* ms - from the NEC decoding */ 118 leader = 900; /* ms - from the NEC decoding */
119 pulse = 1780; /* ms - The actual value would be 1776 */ 119 pulse = 1780; /* ms - The actual value would be 1776 */
120 break; 120 break;
@@ -122,12 +122,12 @@ static int tm6000_ir_config(struct tm6000_IR *ir)
122 122
123 pulse = ir_clock_mhz * pulse; 123 pulse = ir_clock_mhz * pulse;
124 leader = ir_clock_mhz * leader; 124 leader = ir_clock_mhz * leader;
125 if (ir->rc_type == RC_TYPE_NEC) 125 if (ir->rc_type == RC_BIT_NEC)
126 leader = leader | 0x8000; 126 leader = leader | 0x8000;
127 127
128 dprintk(2, "%s: %s, %d MHz, leader = 0x%04x, pulse = 0x%06x \n", 128 dprintk(2, "%s: %s, %d MHz, leader = 0x%04x, pulse = 0x%06x \n",
129 __func__, 129 __func__,
130 (ir->rc_type == RC_TYPE_NEC) ? "NEC" : "RC-5", 130 (ir->rc_type == RC_BIT_NEC) ? "NEC" : "RC-5",
131 ir_clock_mhz, leader, pulse); 131 ir_clock_mhz, leader, pulse);
132 132
133 /* Remote WAKEUP = enable, normal mode, from IR decoder output */ 133 /* Remote WAKEUP = enable, normal mode, from IR decoder output */
@@ -297,7 +297,7 @@ static void tm6000_ir_stop(struct rc_dev *rc)
297 cancel_delayed_work_sync(&ir->work); 297 cancel_delayed_work_sync(&ir->work);
298} 298}
299 299
300static int tm6000_ir_change_protocol(struct rc_dev *rc, u64 rc_type) 300static int tm6000_ir_change_protocol(struct rc_dev *rc, u64 *rc_type)
301{ 301{
302 struct tm6000_IR *ir = rc->priv; 302 struct tm6000_IR *ir = rc->priv;
303 303
@@ -306,10 +306,10 @@ static int tm6000_ir_change_protocol(struct rc_dev *rc, u64 rc_type)
306 306
307 dprintk(2, "%s\n",__func__); 307 dprintk(2, "%s\n",__func__);
308 308
309 if ((rc->rc_map.scan) && (rc_type == RC_TYPE_NEC)) 309 if ((rc->rc_map.scan) && (*rc_type == RC_BIT_NEC))
310 ir->key_addr = ((rc->rc_map.scan[0].scancode >> 8) & 0xffff); 310 ir->key_addr = ((rc->rc_map.scan[0].scancode >> 8) & 0xffff);
311 311
312 ir->rc_type = rc_type; 312 ir->rc_type = *rc_type;
313 313
314 tm6000_ir_config(ir); 314 tm6000_ir_config(ir);
315 /* TODO */ 315 /* TODO */
@@ -398,6 +398,7 @@ int tm6000_ir_init(struct tm6000_core *dev)
398 struct tm6000_IR *ir; 398 struct tm6000_IR *ir;
399 struct rc_dev *rc; 399 struct rc_dev *rc;
400 int err = -ENOMEM; 400 int err = -ENOMEM;
401 u64 rc_type;
401 402
402 if (!enable_ir) 403 if (!enable_ir)
403 return -ENODEV; 404 return -ENODEV;
@@ -421,7 +422,7 @@ int tm6000_ir_init(struct tm6000_core *dev)
421 ir->rc = rc; 422 ir->rc = rc;
422 423
423 /* input setup */ 424 /* input setup */
424 rc->allowed_protos = RC_TYPE_RC5 | RC_TYPE_NEC; 425 rc->allowed_protos = RC_BIT_RC5 | RC_BIT_NEC;
425 /* Neded, in order to support NEC remotes with 24 or 32 bits */ 426 /* Neded, in order to support NEC remotes with 24 or 32 bits */
426 rc->scanmask = 0xffff; 427 rc->scanmask = 0xffff;
427 rc->priv = ir; 428 rc->priv = ir;
@@ -444,7 +445,8 @@ int tm6000_ir_init(struct tm6000_core *dev)
444 usb_make_path(dev->udev, ir->phys, sizeof(ir->phys)); 445 usb_make_path(dev->udev, ir->phys, sizeof(ir->phys));
445 strlcat(ir->phys, "/input0", sizeof(ir->phys)); 446 strlcat(ir->phys, "/input0", sizeof(ir->phys));
446 447
447 tm6000_ir_change_protocol(rc, RC_TYPE_UNKNOWN); 448 rc_type = RC_BIT_UNKNOWN;
449 tm6000_ir_change_protocol(rc, &rc_type);
448 450
449 rc->input_name = ir->name; 451 rc->input_name = ir->name;
450 rc->input_phys = ir->phys; 452 rc->input_phys = ir->phys;