V4L/DVB (6699): pvrusb2: Use of virtual IR chip is a device-specific attribute
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>
This commit is contained in:
parent
f5174af201
commit
056d1a8992
|
@ -85,6 +85,7 @@ const struct pvr2_device_desc pvr2_device_descriptions[] = {
|
||||||
.flag_has_cx25840 = !0,
|
.flag_has_cx25840 = !0,
|
||||||
.flag_has_wm8775 = !0,
|
.flag_has_wm8775 = !0,
|
||||||
.flag_has_hauppauge_rom = !0,
|
.flag_has_hauppauge_rom = !0,
|
||||||
|
.flag_has_hauppauge_custom_ir = !0,
|
||||||
.signal_routing_scheme = PVR2_ROUTING_SCHEME_HAUPPAUGE,
|
.signal_routing_scheme = PVR2_ROUTING_SCHEME_HAUPPAUGE,
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
|
|
|
@ -84,6 +84,10 @@ struct pvr2_device_desc {
|
||||||
/* Device has a wm8775 - this enables special additional logic to
|
/* Device has a wm8775 - this enables special additional logic to
|
||||||
ensure that it is found. */
|
ensure that it is found. */
|
||||||
char flag_has_wm8775;
|
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[];
|
extern const struct pvr2_device_desc pvr2_device_descriptions[];
|
||||||
|
|
|
@ -980,7 +980,7 @@ void pvr2_i2c_core_init(struct pvr2_hdw *hdw)
|
||||||
printk(KERN_INFO "%s: IR disabled\n",hdw->name);
|
printk(KERN_INFO "%s: IR disabled\n",hdw->name);
|
||||||
hdw->i2c_func[0x18] = i2c_black_hole;
|
hdw->i2c_func[0x18] = i2c_black_hole;
|
||||||
} else if (ir_mode[hdw->unit_number] == 1) {
|
} 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;
|
hdw->i2c_func[0x18] = i2c_24xxx_ir;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue