diff options
Diffstat (limited to 'linux/drivers/media/video/saa7111.c')
-rw-r--r-- | linux/drivers/media/video/saa7111.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/linux/drivers/media/video/saa7111.c b/linux/drivers/media/video/saa7111.c index 7dc3bae14..456e2fdf1 100644 --- a/linux/drivers/media/video/saa7111.c +++ b/linux/drivers/media/video/saa7111.c @@ -150,6 +150,14 @@ static int saa7111_attach(struct i2c_adapter *adap, int addr, unsigned short fla } static int saa7111_probe(struct i2c_adapter *adap) { + /* probing unknown devices on any Matrox i2c-bus takes ages due to the + slow bit banging algorithm used. because of the fact a saa7111(a) + is *never* present on a Matrox gfx card, we can skip such adapters + here */ + if( 0 != (adap->id & I2C_HW_B_G400)) { + return -ENODEV; + } + printk("saa7111: probing %s i2c adapter [id=0x%x]\n", adap->name,adap->id); return i2c_probe(adap, &addr_data, saa7111_attach); |