]> git.kernelconcepts.de Git - karo-tx-linux.git/blobdiff - drivers/media/video/saa7134/saa7134-input.c
V4L/DVB: video/saa7134: change dprintk() to i2cdprintk()
[karo-tx-linux.git] / drivers / media / video / saa7134 / saa7134-input.c
index 867f027c3feb35e19b37f4a95761fb457d9dbf23..0b336ca6d55b9a281c3e346193389587a2534852 100644 (file)
@@ -141,8 +141,8 @@ static int get_key_flydvb_trio(struct IR_i2c *ir, u32 *ir_key, u32 *ir_raw)
        struct saa7134_dev *dev = ir->c->adapter->algo_data;
 
        if (dev == NULL) {
-               dprintk("get_key_flydvb_trio: "
-                        "gir->c->adapter->algo_data is NULL!\n");
+               i2cdprintk("get_key_flydvb_trio: "
+                          "ir->c->adapter->algo_data is NULL!\n");
                return -EIO;
        }
 
@@ -195,8 +195,8 @@ static int get_key_msi_tvanywhere_plus(struct IR_i2c *ir, u32 *ir_key,
        /* <dev> is needed to access GPIO. Used by the saa_readl macro. */
        struct saa7134_dev *dev = ir->c->adapter->algo_data;
        if (dev == NULL) {
-               dprintk("get_key_msi_tvanywhere_plus: "
-                       "gir->c->adapter->algo_data is NULL!\n");
+               i2cdprintk("get_key_msi_tvanywhere_plus: "
+                          "ir->c->adapter->algo_data is NULL!\n");
                return -EIO;
        }
 
@@ -657,12 +657,19 @@ int saa7134_input_init1(struct saa7134_dev *dev)
                saa_setb(SAA7134_GPIO_GPSTATUS0, 0x4);
                break;
        case SAA7134_BOARD_AVERMEDIA_M135A:
-               ir_codes     = RC_MAP_AVERMEDIA_M135A_RM_JX;
+               ir_codes     = RC_MAP_AVERMEDIA_M135A;
                mask_keydown = 0x0040000;       /* Enable GPIO18 line on both edges */
                mask_keyup   = 0x0040000;
                mask_keycode = 0xffff;
                raw_decode   = 1;
                break;
+       case SAA7134_BOARD_AVERMEDIA_M733A:
+               ir_codes     = RC_MAP_AVERMEDIA_M733A_RM_K6;
+               mask_keydown = 0x0040000;
+               mask_keyup   = 0x0040000;
+               mask_keycode = 0xffff;
+               raw_decode   = 1;
+               break;
        case SAA7134_BOARD_AVERMEDIA_777:
        case SAA7134_BOARD_AVERMEDIA_A16AR:
                ir_codes     = RC_MAP_AVERMEDIA;
@@ -815,7 +822,6 @@ int saa7134_input_init1(struct saa7134_dev *dev)
                mask_keyup   = 0x020000;
                polling      = 50; /* ms */
                break;
-       break;
        }
        if (NULL == ir_codes) {
                printk("%s: Oops: IR config error [card=%d]\n",
@@ -855,6 +861,9 @@ int saa7134_input_init1(struct saa7134_dev *dev)
        ir->props.open = saa7134_ir_open;
        ir->props.close = saa7134_ir_close;
 
+       if (raw_decode)
+               ir->props.driver_type = RC_DRIVER_IR_RAW;
+
        if (!raw_decode && allow_protocol_change) {
                ir->props.allowed_protos = IR_TYPE_RC5 | IR_TYPE_NEC;
                ir->props.change_protocol = saa7134_ir_change_protocol;
@@ -880,11 +889,6 @@ int saa7134_input_init1(struct saa7134_dev *dev)
        err = ir_input_register(ir->dev, ir_codes, &ir->props, MODULE_NAME);
        if (err)
                goto err_out_free;
-       if (raw_decode) {
-               err = ir_raw_event_register(ir->dev);
-               if (err)
-                       goto err_out_free;
-       }
 
        /* the remote isn't as bouncy as a keyboard */
        ir->dev->rep[REP_DELAY] = repeat_delay;
@@ -904,7 +908,6 @@ void saa7134_input_fini(struct saa7134_dev *dev)
                return;
 
        saa7134_ir_stop(dev);
-       ir_raw_event_unregister(dev->remote->dev);
        ir_input_unregister(dev->remote->dev);
        kfree(dev->remote);
        dev->remote = NULL;
@@ -985,6 +988,8 @@ void saa7134_probe_i2c_ir(struct saa7134_dev *dev)
        case SAA7134_BOARD_BEHOLD_M6_EXTRA:
        case SAA7134_BOARD_BEHOLD_H6:
        case SAA7134_BOARD_BEHOLD_X7:
+       case SAA7134_BOARD_BEHOLD_H7:
+       case SAA7134_BOARD_BEHOLD_A7:
                dev->init_data.name = "BeholdTV";
                dev->init_data.get_key = get_key_beholdm6xx;
                dev->init_data.ir_codes = RC_MAP_BEHOLD;
@@ -1021,7 +1026,7 @@ static int saa7134_raw_decode_irq(struct saa7134_dev *dev)
        saa_clearb(SAA7134_GPIO_GPMODE3, SAA7134_GPIO_GPRESCAN);
        saa_setb(SAA7134_GPIO_GPMODE3, SAA7134_GPIO_GPRESCAN);
        space = saa_readl(SAA7134_GPIO_GPSTATUS0 >> 2) & ir->mask_keydown;
-       ir_raw_event_store(dev->remote->dev, space ? IR_SPACE : IR_PULSE);
+       ir_raw_event_store_edge(dev->remote->dev, space ? IR_SPACE : IR_PULSE);
 
 
        /*