summaryrefslogtreecommitdiff
path: root/linux/drivers/media/video/saa7134
diff options
context:
space:
mode:
authorMauro Carvalho Chehab <mchehab@redhat.com>2009-02-12 06:43:11 +0000
committerMauro Carvalho Chehab <mchehab@redhat.com>2009-02-12 06:43:11 +0000
commitd5e10736ed6dd53b02e973042f407a3316c28533 (patch)
treef936784dedf459caccb7f0e0ed07e312f1f70488 /linux/drivers/media/video/saa7134
parente07511c36db32bec6bd0fde4e996001b6e5709e0 (diff)
downloadmediapointer-dvb-s2-d5e10736ed6dd53b02e973042f407a3316c28533.tar.gz
mediapointer-dvb-s2-d5e10736ed6dd53b02e973042f407a3316c28533.tar.bz2
Added support for AVerMedia Cardbus Hybrid remote control
From: Oldřich Jedlička <oldium.pro@seznam.cz> Added support for I2C device at address 0x40 and subaddress 0x0d/0x0b that provides remote control key reading support for AVerMedia Cardbus Hybrid card, possibly for other AVerMedia Cardbus cards. The I2C address 0x40 doesn't like the SAA7134's 0xfd quirk, so it was disabled. Signed-off-by: Oldřich Jedlička <oldium.pro@seznam.cz> [mchehab@redhat.com: CodingStyle fixes] Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
Diffstat (limited to 'linux/drivers/media/video/saa7134')
-rw-r--r--linux/drivers/media/video/saa7134/saa7134-cards.c5
-rw-r--r--linux/drivers/media/video/saa7134/saa7134-i2c.c2
2 files changed, 6 insertions, 1 deletions
diff --git a/linux/drivers/media/video/saa7134/saa7134-cards.c b/linux/drivers/media/video/saa7134/saa7134-cards.c
index e565d437b..9db045cf5 100644
--- a/linux/drivers/media/video/saa7134/saa7134-cards.c
+++ b/linux/drivers/media/video/saa7134/saa7134-cards.c
@@ -6120,6 +6120,11 @@ int saa7134_board_init1(struct saa7134_dev *dev)
msleep(10);
break;
case SAA7134_BOARD_AVERMEDIA_CARDBUS_506:
+ saa7134_set_gpio(dev, 23, 0);
+ msleep(10);
+ saa7134_set_gpio(dev, 23, 1);
+ dev->has_remote = SAA7134_REMOTE_I2C;
+ break;
case SAA7134_BOARD_AVERMEDIA_M103:
saa7134_set_gpio(dev, 23, 0);
msleep(10);
diff --git a/linux/drivers/media/video/saa7134/saa7134-i2c.c b/linux/drivers/media/video/saa7134/saa7134-i2c.c
index 4b4d5ef76..b77ccb5a0 100644
--- a/linux/drivers/media/video/saa7134/saa7134-i2c.c
+++ b/linux/drivers/media/video/saa7134/saa7134-i2c.c
@@ -260,7 +260,7 @@ static int saa7134_i2c_xfer(struct i2c_adapter *i2c_adap,
addr = msgs[i].addr << 1;
if (msgs[i].flags & I2C_M_RD)
addr |= 1;
- if (i > 0 && msgs[i].flags & I2C_M_RD) {
+ if (i > 0 && msgs[i].flags & I2C_M_RD && msgs[i].addr != 0x40) {
/* workaround for a saa7134 i2c bug
* needed to talk to the mt352 demux
* thanks to pinnacle for the hint */