|
@@ -739,6 +739,7 @@ static int ir_probe(struct i2c_client *client, const struct i2c_device_id *id)
|
|
|
struct rc_dev *rc = NULL;
|
|
|
struct i2c_adapter *adap = client->adapter;
|
|
|
unsigned short addr = client->addr;
|
|
|
+ bool probe_tx = (id->driver_data & FLAG_TX) != 0;
|
|
|
int err;
|
|
|
|
|
|
if ((id->driver_data & FLAG_HDPVR) && !enable_hdpvr) {
|
|
@@ -800,6 +801,7 @@ static int ir_probe(struct i2c_client *client, const struct i2c_device_id *id)
|
|
|
rc_proto = RC_PROTO_BIT_RC5 | RC_PROTO_BIT_RC6_MCE |
|
|
|
RC_PROTO_BIT_RC6_6A_32;
|
|
|
ir_codes = RC_MAP_HAUPPAUGE;
|
|
|
+ probe_tx = true;
|
|
|
break;
|
|
|
}
|
|
|
|
|
@@ -892,7 +894,7 @@ static int ir_probe(struct i2c_client *client, const struct i2c_device_id *id)
|
|
|
|
|
|
INIT_DELAYED_WORK(&ir->work, ir_work);
|
|
|
|
|
|
- if (id->driver_data & FLAG_TX) {
|
|
|
+ if (probe_tx) {
|
|
|
ir->tx_c = i2c_new_dummy(client->adapter, 0x70);
|
|
|
if (!ir->tx_c) {
|
|
|
dev_err(&client->dev, "failed to setup tx i2c address");
|