V4L/DVB (9611): em28xx: experimental support for HVR-950 IR

Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
diff --git a/drivers/media/video/em28xx/em28xx-input.c b/drivers/media/video/em28xx/em28xx-input.c
index afd6760..f724cae 100644
--- a/drivers/media/video/em28xx/em28xx-input.c
+++ b/drivers/media/video/em28xx/em28xx-input.c
@@ -270,6 +270,11 @@
 
 	/* detect & configure */
 	switch (dev->model) {
+	case EM2883_BOARD_HAUPPAUGE_WINTV_HVR_950:
+		ir_type          = IR_TYPE_OTHER;
+		ir_codes         = ir_codes_hauppauge_new;
+		ir->mask_keycode = 0x007f0000;
+		break;
 	}
 
 	if (NULL == ir_codes) {
@@ -277,10 +282,6 @@
 		goto err_out_free;
 	}
 
-	/* Get the current key status, to avoid adding an
-	   unexistent key code */
-	ir->last_gpio    = ir->get_key(ir);
-
 	/* init input device */
 	snprintf(ir->name, sizeof(ir->name), "em28xx IR (%s)",
 						dev->name);
@@ -301,6 +302,10 @@
 	ir->dev = dev;
 	dev->ir = ir;
 
+	/* Get the current key status, to avoid adding an
+	   unexistent key code */
+	ir->last_gpio    = ir->get_key(ir);
+
 	em28xx_ir_start(ir);
 
 	/* all done */