diff options
author | Mike Isely <isely@pobox.com> | 2007-11-25 23:09:42 -0600 |
---|---|---|
committer | Mike Isely <isely@pobox.com> | 2007-11-25 23:09:42 -0600 |
commit | fa5023bc58b70398ee8da40d7496bc0a24476f52 (patch) | |
tree | 7f56ad5bb798e0c40f42acfba527ebf4dc04d831 /linux | |
parent | b47742c14ba54360223cf7cbc4929deceaf1bc58 (diff) | |
download | mediapointer-dvb-s2-fa5023bc58b70398ee8da40d7496bc0a24476f52.tar.gz mediapointer-dvb-s2-fa5023bc58b70398ee8da40d7496bc0a24476f52.tar.bz2 |
pvrusb2: Use of virtual IR chip is a device-specific attribute
From: Mike Isely <isely@pobox.com>
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>
Diffstat (limited to 'linux')
-rw-r--r-- | linux/drivers/media/video/pvrusb2/pvrusb2-devattr.c | 1 | ||||
-rw-r--r-- | linux/drivers/media/video/pvrusb2/pvrusb2-devattr.h | 4 | ||||
-rw-r--r-- | linux/drivers/media/video/pvrusb2/pvrusb2-i2c-core.c | 2 |
3 files changed, 6 insertions, 1 deletions
diff --git a/linux/drivers/media/video/pvrusb2/pvrusb2-devattr.c b/linux/drivers/media/video/pvrusb2/pvrusb2-devattr.c index 464a13a06..6ba0b79e3 100644 --- a/linux/drivers/media/video/pvrusb2/pvrusb2-devattr.c +++ b/linux/drivers/media/video/pvrusb2/pvrusb2-devattr.c @@ -85,6 +85,7 @@ const struct pvr2_device_desc pvr2_device_descriptions[] = { .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, }, }; diff --git a/linux/drivers/media/video/pvrusb2/pvrusb2-devattr.h b/linux/drivers/media/video/pvrusb2/pvrusb2-devattr.h index 05eb2c669..2aff5a3d5 100644 --- a/linux/drivers/media/video/pvrusb2/pvrusb2-devattr.h +++ b/linux/drivers/media/video/pvrusb2/pvrusb2-devattr.h @@ -84,6 +84,10 @@ struct pvr2_device_desc { /* 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[]; diff --git a/linux/drivers/media/video/pvrusb2/pvrusb2-i2c-core.c b/linux/drivers/media/video/pvrusb2/pvrusb2-i2c-core.c index 713c7011c..98d918420 100644 --- a/linux/drivers/media/video/pvrusb2/pvrusb2-i2c-core.c +++ b/linux/drivers/media/video/pvrusb2/pvrusb2-i2c-core.c @@ -1066,7 +1066,7 @@ void pvr2_i2c_core_init(struct pvr2_hdw *hdw) 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; } } |