For Hauppauge 24xxx devices, the IR receiver is a custom piece of
logic that is very specific to the device.  The pvrusb2 driver can
virtualize this to make it look like a more normal IR receiver found
in other Hauppauge devices.  The decision of whether or not to enable
this virtualization however is a device-specific attribute, thus this
changeset.
Signed-off-by: Mike Isely <isely@pobox.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
                .flag_has_cx25840 = !0,
                .flag_has_wm8775 = !0,
                .flag_has_hauppauge_rom = !0,
+               .flag_has_hauppauge_custom_ir = !0,
                .signal_routing_scheme = PVR2_ROUTING_SCHEME_HAUPPAUGE,
        },
 };
 
        /* Device has a wm8775 - this enables special additional logic to
           ensure that it is found. */
        char flag_has_wm8775;
+
+       /* Device has IR hardware that can be faked into looking like a
+          normal Hauppauge i2c IR receiver. */
+       char flag_has_hauppauge_custom_ir;
 };
 
 extern const struct pvr2_device_desc pvr2_device_descriptions[];
 
                printk(KERN_INFO "%s: IR disabled\n",hdw->name);
                hdw->i2c_func[0x18] = i2c_black_hole;
        } else if (ir_mode[hdw->unit_number] == 1) {
-               if (hdw->hdw_desc->flag_has_cx25840) {
+               if (hdw->hdw_desc->flag_has_hauppauge_custom_ir) {
                        hdw->i2c_func[0x18] = i2c_24xxx_ir;
                }
        }