V4L/DVB (13234): IR device at I2C address 0x7a

The i2c core prevents us from probing I2C address 0x7a because it's
not a valid 7-bit address (reserved for 10-bit addressing.) So we must
stop probing this address, and explicitly list all adapters which use
it. Under the assumption that only the Upmost Purple TV adapter uses
this invalid address, this fix should do the trick.

Signed-off-by: Jean Delvare <khali@linux-fr.org>
Acked-by: hermann pitton <hermann-pitton@arcor.de>
Acked-by: Jarod Wilson <jarod@redhat.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
This commit is contained in:
Jean Delvare 2009-10-02 08:47:22 -03:00 committed by Mauro Carvalho Chehab
parent 43e16ea241
commit aef02aa1e2

View File

@ -697,7 +697,7 @@ void saa7134_probe_i2c_ir(struct saa7134_dev *dev)
{ {
struct i2c_board_info info; struct i2c_board_info info;
const unsigned short addr_list[] = { const unsigned short addr_list[] = {
0x7a, 0x47, 0x71, 0x2d, 0x47, 0x71, 0x2d,
I2C_CLIENT_END I2C_CLIENT_END
}; };
@ -737,6 +737,7 @@ void saa7134_probe_i2c_ir(struct saa7134_dev *dev)
dev->init_data.name = "Purple TV"; dev->init_data.name = "Purple TV";
dev->init_data.get_key = get_key_purpletv; dev->init_data.get_key = get_key_purpletv;
dev->init_data.ir_codes = &ir_codes_purpletv_table; dev->init_data.ir_codes = &ir_codes_purpletv_table;
info.addr = 0x7a;
break; break;
case SAA7134_BOARD_MSI_TVATANYWHERE_PLUS: case SAA7134_BOARD_MSI_TVATANYWHERE_PLUS:
dev->init_data.name = "MSI TV@nywhere Plus"; dev->init_data.name = "MSI TV@nywhere Plus";