rtc-pcf8583: Check for i2c adapter functionality
authorJean Delvare <khali@linux-fr.org>
Tue, 16 Oct 2007 08:28:18 +0000 (01:28 -0700)
committerLinus Torvalds <torvalds@woody.linux-foundation.org>
Tue, 16 Oct 2007 16:43:13 +0000 (09:43 -0700)
Not all i2c adapters support I2C-level messaging.  Check that the adapter
does before probing for a PCF8583 chip, as the driver makes use of
i2c_transfer and i2c_master_send.

Signed-off-by: Jean Delvare <khali@linux-fr.org>
Signed-off-by: Alessandro Zummo <a.zummo@towertech.it>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
drivers/rtc/rtc-pcf8583.c

index d48b033745868bb28f801b957dc874d3328acd78..556d0e7da35bd04dc44df605ca22e77f95793d25 100644 (file)
@@ -332,6 +332,9 @@ static int pcf8583_probe(struct i2c_adapter *adap, int addr, int kind)
                }
        };
 
+       if (!i2c_check_functionality(adap, I2C_FUNC_I2C))
+               return 0;
+
        pcf = kzalloc(sizeof(*pcf), GFP_KERNEL);
        if (!pcf)
                return -ENOMEM;