[PATCH] UBUNTU: [Upstream] lirc - Fix Hauppauge TV Card is detected as Leadtek IR
bdrung at ubuntu.com
bdrung at ubuntu.com
Mon Aug 16 02:31:02 UTC 2010
From: Benjamin Drung <bdrung at ubuntu.com>
OriginalLocation: http://lirc.cvs.sourceforge.net/viewvc/lirc/lirc/drivers/lirc_i2c/lirc_i2c.c?r1=1.71&r2=1.72
BugLink: http://bugs.launchpad.net/bugs/550369
Signed-off-by: Benjamin Drung <bdrung at ubuntu.com>
---
ubuntu/lirc/lirc_i2c/lirc_i2c.c | 32 +++++++++++++++++---------------
1 files changed, 17 insertions(+), 15 deletions(-)
diff --git a/ubuntu/lirc/lirc_i2c/lirc_i2c.c b/ubuntu/lirc/lirc_i2c/lirc_i2c.c
index dca6b51..2db5a64 100644
--- a/ubuntu/lirc/lirc_i2c/lirc_i2c.c
+++ b/ubuntu/lirc/lirc_i2c/lirc_i2c.c
@@ -491,20 +491,23 @@ static int ir_probe(struct i2c_client *client, const struct i2c_device_id *id)
ir->l.add_to_buf = add_to_buf_pv951;
break;
case 0x71:
-#ifdef I2C_HW_B_CX2341X
- if (adap->id == (I2C_ALGO_BIT | I2C_HW_B_BT848) ||
- adap->id == (I2C_ALGO_BIT | I2C_HW_B_CX2341X)) {
-#else
- if (adap->id == (I2C_ALGO_BIT | I2C_HW_B_BT848)) {
+
+
+
+#ifdef I2C_HW_B_CX2388x
+ /* Leadtek Winfast PVR2000 or Hauppauge HVR-1300 */
+ if (adap->id == (I2C_ALGO_BIT | I2C_HW_B_CX2388x))
+ strlcpy(ir->c.name, "Hauppauge HVR1300", I2C_NAME_SIZE);
+ else
#endif
+ {
/*
* The PVR150 IR receiver uses the same protocol as
* other Hauppauge cards, but the data flow is
* different, so we need to deal with it by its own.
*/
strlcpy(ir->c.name, "Hauppauge PVR150", I2C_NAME_SIZE);
- } else /* I2C_HW_B_CX2388x */
- strlcpy(ir->c.name, "Hauppauge HVR1300", I2C_NAME_SIZE);
+ }
ir->l.code_length = 13;
ir->l.add_to_buf = add_to_buf_haup_pvr150;
break;
@@ -515,19 +518,18 @@ static int ir_probe(struct i2c_client *client, const struct i2c_device_id *id)
break;
case 0x18:
case 0x1a:
-#ifdef I2C_HW_B_CX2341X
- if (adap->id == (I2C_ALGO_BIT | I2C_HW_B_BT848) ||
- adap->id == (I2C_ALGO_BIT | I2C_HW_B_CX2341X)) {
+#ifdef I2C_HW_B_CX2388x
+ if (adap->id == (I2C_ALGO_BIT | I2C_HW_B_CX2388x)) {
+ strlcpy(ir->c.name, "Leadtek IR", I2C_NAME_SIZE);
+ ir->l.code_length = 8;
+ ir->l.add_to_buf = add_to_buf_pvr2000;
+ } else {
#else
- if (adap->id == (I2C_ALGO_BIT | I2C_HW_B_BT848)) {
+ {
#endif
strlcpy(ir->c.name, "Hauppauge IR", I2C_NAME_SIZE);
ir->l.code_length = 13;
ir->l.add_to_buf = add_to_buf_haup;
- } else { /* I2C_HW_B_CX2388x */
- strlcpy(ir->c.name, "Leadtek IR", I2C_NAME_SIZE);
- ir->l.code_length = 8;
- ir->l.add_to_buf = add_to_buf_pvr2000;
}
break;
case 0x30:
--
1.7.0.4
More information about the kernel-team
mailing list