On Wed, 2009-09-30 at 22:14 +0200, Jean Delvare wrote:
> The i2c-powermac driver doesn't support arbitrary multi-message I2C
> transactions, only SMBus ones. Make it clear by returning an error if
> a multi-message I2C transaction is attempted. This is better than only
> processing the first message, because most callers won't recover from
> the short transaction. Anyone wishing to issue multi-message
> transactions should use the SMBus API instead of the raw I2C API.
> 
> Signed-off-by: Jean Delvare <[email protected]>

Acked-by: Benjamin Herrenschmidt <[email protected]>

> Cc: Paul Mackerras <[email protected]>
> ---
>  drivers/i2c/busses/i2c-powermac.c |    6 ++++++
>  1 file changed, 6 insertions(+)
> 
> --- linux-2.6.32-rc1.orig/drivers/i2c/busses/i2c-powermac.c   2009-06-10 
> 05:05:27.000000000 +0200
> +++ linux-2.6.32-rc1/drivers/i2c/busses/i2c-powermac.c        2009-09-30 
> 20:29:42.000000000 +0200
> @@ -146,6 +146,12 @@ static int i2c_powermac_master_xfer(     str
>       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;
> 
> 


--
To unsubscribe from this list: send the line "unsubscribe linux-i2c" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to