Browse Source

rtc-pcf8583: Check for i2c adapter functionality

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>
Jean Delvare 17 years ago
parent
commit
c018664c51
1 changed files with 3 additions and 0 deletions
  1. 3 0
      drivers/rtc/rtc-pcf8583.c

+ 3 - 0
drivers/rtc/rtc-pcf8583.c

@@ -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);
 	pcf = kzalloc(sizeof(*pcf), GFP_KERNEL);
 	if (!pcf)
 	if (!pcf)
 		return -ENOMEM;
 		return -ENOMEM;