Prev: [111/116] [PATCH] sh: Fix zImage boot using fixed PMB.
Next: [029/156] sparc64: Make prom entry spinlock NMI safe.
From: Greg KH on 30 Mar 2010 20:00 2.6.33-stable review patch. If anyone has any objections, please let us know. ------------------ From: Jean Delvare <khali(a)linux-fr.org> commit c074c39d62306efa5ba7c69c1a1531bc7333d252 upstream. Experience has shown that the block buffer can only be used for SMBus (not I2C) block transactions, even though the datasheet doesn't mention this limitation. Reported-by: Felix Rubinstein <felixru(a)gmail.com> Signed-off-by: Jean Delvare <khali(a)linux-fr.org> Cc: Oleg Ryjkov <oryjkov(a)gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh(a)suse.de> --- drivers/i2c/busses/i2c-i801.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) --- a/drivers/i2c/busses/i2c-i801.c +++ b/drivers/i2c/busses/i2c-i801.c @@ -415,9 +415,11 @@ static int i801_block_transaction(union data->block[0] = 32; /* max for SMBus block reads */ } + /* Experience has shown that the block buffer can only be used for + SMBus (not I2C) block transactions, even though the datasheet + doesn't mention this limitation. */ if ((i801_features & FEATURE_BLOCK_BUFFER) - && !(command == I2C_SMBUS_I2C_BLOCK_DATA - && read_write == I2C_SMBUS_READ) + && command != I2C_SMBUS_I2C_BLOCK_DATA && i801_set_block_buffer_mode() == 0) result = i801_block_transaction_by_block(data, read_write, hwpec); -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo(a)vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/ |