From: Matt Johnston Date: Mon, 15 Nov 2021 02:49:24 +0000 (+0800) Subject: i2c: npcm7xx: Allow 255 byte block SMBus transfers X-Git-Tag: block-5.17-2022-01-21~91^2~452^2~2 X-Git-Url: https://git.kernel.dk/?a=commitdiff_plain;h=3ef2de27a05a2dc7425431d9aa780e08e56ddb7f;p=linux-block.git i2c: npcm7xx: Allow 255 byte block SMBus transfers 255 byte support has been tested on a npcm750 board Signed-off-by: Matt Johnston Reviewed-by: Tali Perry Reviewed-by: Patrick Venture Signed-off-by: David S. Miller --- diff --git a/drivers/i2c/busses/i2c-npcm7xx.c b/drivers/i2c/busses/i2c-npcm7xx.c index 2ad166355ec9..6d60f65add85 100644 --- a/drivers/i2c/busses/i2c-npcm7xx.c +++ b/drivers/i2c/busses/i2c-npcm7xx.c @@ -1399,7 +1399,7 @@ static void npcm_i2c_irq_master_handler_read(struct npcm_i2c *bus) if (bus->read_block_use) { /* first byte in block protocol is the size: */ data = npcm_i2c_rd_byte(bus); - data = clamp_val(data, 1, I2C_SMBUS_BLOCK_MAX); + data = clamp_val(data, 1, I2C_SMBUS_V3_BLOCK_MAX); bus->rd_size = data + block_extra_bytes_size; bus->rd_buf[bus->rd_ind++] = data; @@ -2187,6 +2187,7 @@ static u32 npcm_i2c_functionality(struct i2c_adapter *adap) I2C_FUNC_SMBUS_EMUL | I2C_FUNC_SMBUS_BLOCK_DATA | I2C_FUNC_SMBUS_PEC | + I2C_FUNC_SMBUS_V3_BLOCK | I2C_FUNC_SLAVE; }