diff options
author | Gerd Knorr <kraxel@suse.de> | 2005-05-25 12:31:26 -0700 |
---|---|---|
committer | Linus Torvalds <torvalds@ppc970.osdl.org> | 2005-05-25 15:31:27 -0700 |
commit | 5daf05fbf73fc199e7a93a818e504856d07c5586 (patch) | |
tree | 8e4eeb3012164f9aea42b7880460299bf7a09880 | |
parent | 1b981021e88c8c28dc6a22cb1a327d8dc9296473 (diff) | |
download | op-kernel-dev-5daf05fbf73fc199e7a93a818e504856d07c5586.zip op-kernel-dev-5daf05fbf73fc199e7a93a818e504856d07c5586.tar.gz |
[PATCH] v4l: bttv i2c oops fix
Don't try to access the i2c bus if the register wasn't successful.
Signed-off-by: Gerd Knorr <kraxel@suse.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-rw-r--r-- | drivers/media/video/bttv-i2c.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/media/video/bttv-i2c.c b/drivers/media/video/bttv-i2c.c index e3f477d..c2368bc 100644 --- a/drivers/media/video/bttv-i2c.c +++ b/drivers/media/video/bttv-i2c.c @@ -363,6 +363,9 @@ int bttv_I2CWrite(struct bttv *btv, unsigned char addr, unsigned char b1, /* read EEPROM content */ void __devinit bttv_readee(struct bttv *btv, unsigned char *eedata, int addr) { + memset(eedata, 0, 256); + if (0 != btv->i2c_rc) + return; btv->i2c_client.addr = addr >> 1; tveeprom_read(&btv->i2c_client, eedata, 256); } |