|
@@ -153,12 +153,6 @@ static int i2c_powermac_master_xfer( struct i2c_adapter *adap,
|
|
|
int read;
|
|
|
int addrdir;
|
|
|
|
|
|
- if (num != 1) {
|
|
|
- dev_err(&adap->dev,
|
|
|
- "Multi-message I2C transactions not supported\n");
|
|
|
- return -EOPNOTSUPP;
|
|
|
- }
|
|
|
-
|
|
|
if (msgs->flags & I2C_M_TEN)
|
|
|
return -EINVAL;
|
|
|
read = (msgs->flags & I2C_M_RD) != 0;
|
|
@@ -205,6 +199,9 @@ static const struct i2c_algorithm i2c_powermac_algorithm = {
|
|
|
.functionality = i2c_powermac_func,
|
|
|
};
|
|
|
|
|
|
+static struct i2c_adapter_quirks i2c_powermac_quirks = {
|
|
|
+ .max_num_msgs = 1,
|
|
|
+};
|
|
|
|
|
|
static int i2c_powermac_remove(struct platform_device *dev)
|
|
|
{
|
|
@@ -434,6 +431,7 @@ static int i2c_powermac_probe(struct platform_device *dev)
|
|
|
|
|
|
platform_set_drvdata(dev, adapter);
|
|
|
adapter->algo = &i2c_powermac_algorithm;
|
|
|
+ adapter->quirks = &i2c_powermac_quirks;
|
|
|
i2c_set_adapdata(adapter, bus);
|
|
|
adapter->dev.parent = &dev->dev;
|
|
|
|