Commit f2520106 authored by Hans Verkuil's avatar Hans Verkuil Committed by Mauro Carvalho Chehab

V4L/DVB (4812): Detect presence of IR receiver/IR transmitter in tveeprom

Thanks to input from Steven Toth from Hauppauge the tveeprom module has
been extended to detect the presence of an IR transmitter (aka IR-blaster).
Signed-off-by: default avatarHans Verkuil <hverkuil@xs4all.nl>
Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@infradead.org>
parent c6e53daf
...@@ -430,7 +430,7 @@ void tveeprom_hauppauge_analog(struct i2c_client *c, struct tveeprom *tvee, ...@@ -430,7 +430,7 @@ void tveeprom_hauppauge_analog(struct i2c_client *c, struct tveeprom *tvee,
tvee->has_radio = eeprom_data[i+len-1]; tvee->has_radio = eeprom_data[i+len-1];
/* old style tag, don't know how to detect /* old style tag, don't know how to detect
IR presence, mark as unknown. */ IR presence, mark as unknown. */
tvee->has_ir = 2; tvee->has_ir = -1;
tvee->model = tvee->model =
eeprom_data[i+8] + eeprom_data[i+8] +
(eeprom_data[i+9] << 8); (eeprom_data[i+9] << 8);
...@@ -653,13 +653,14 @@ void tveeprom_hauppauge_analog(struct i2c_client *c, struct tveeprom *tvee, ...@@ -653,13 +653,14 @@ void tveeprom_hauppauge_analog(struct i2c_client *c, struct tveeprom *tvee,
STRM(decoderIC, tvee->decoder_processor), STRM(decoderIC, tvee->decoder_processor),
tvee->decoder_processor); tvee->decoder_processor);
} }
if (tvee->has_ir == 2) if (tvee->has_ir == -1)
tveeprom_info("has %sradio\n", tveeprom_info("has %sradio\n",
tvee->has_radio ? "" : "no "); tvee->has_radio ? "" : "no ");
else else
tveeprom_info("has %sradio, has %sIR remote\n", tveeprom_info("has %sradio, has %sIR receiver, has %sIR transmitter\n",
tvee->has_radio ? "" : "no ", tvee->has_radio ? "" : "no ",
tvee->has_ir ? "" : "no "); (tvee->has_ir & 1) ? "" : "no ",
(tvee->has_ir & 2) ? "" : "no ");
} }
EXPORT_SYMBOL(tveeprom_hauppauge_analog); EXPORT_SYMBOL(tveeprom_hauppauge_analog);
......
...@@ -3,7 +3,7 @@ ...@@ -3,7 +3,7 @@
struct tveeprom { struct tveeprom {
u32 has_radio; u32 has_radio;
u32 has_ir; /* 0: no IR, 1: IR present, 2: unknown */ u32 has_ir; /* bit 0: IR receiver present, bit 1: IR transmitter (blaster) present. -1 == unknown */
u32 has_MAC_address; /* 0: no MAC, 1: MAC present, 2: unknown */ u32 has_MAC_address; /* 0: no MAC, 1: MAC present, 2: unknown */
u32 tuner_type; u32 tuner_type;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment