media: don't do a 31 bit shift on a signed int
[sfrench/cifs-2.6.git] / drivers / media / pci / bt8xx / bttv-input.c
index 9adfac4d5187db03ea311f4425ae1bd429b0fd10..492bc85c2700ea8d58302d5291e39b96a3ca6824 100644 (file)
@@ -84,7 +84,7 @@ static void ir_enltv_handle_key(struct bttv *btv)
        data = ir_extract_bits(gpio, ir->mask_keycode);
 
        /* Check if it is keyup */
-       keyup = (gpio & ir->mask_keyup) ? 1 << 31 : 0;
+       keyup = (gpio & ir->mask_keyup) ? 1UL << 31 : 0;
 
        if ((ir->last_gpio & 0x7f) != data) {
                dprintk("gpio=0x%x code=%d | %s\n",
@@ -95,7 +95,7 @@ static void ir_enltv_handle_key(struct bttv *btv)
                if (keyup)
                        rc_keyup(ir->dev);
        } else {
-               if ((ir->last_gpio & 1 << 31) == keyup)
+               if ((ir->last_gpio & 1UL << 31) == keyup)
                        return;
 
                dprintk("(cnt) gpio=0x%x code=%d | %s\n",