[PATCH v2 09/12] i2c: designware: no SMBUS_READ_BLOCK_DATA without EMPTYFIFO_HOLD_MASTER

Andy Shevchenko andriy.shevchenko at linux.intel.com
Thu Sep 3 00:39:44 PDT 2026


On Thu, Sep 03, 2026 at 08:38:16AM +0300, Dmitry Guzman wrote:
> Controllers without EMPTYFIFO_HOLD_MASTER feature cannot hold bus with
> empty FIFO. This makes impossible to issue SMBUS block read command:
> it is not known how many bytes must be read until it reads the  first byte

Too many spaces.

> indicates the data length is read. Without EMPTYFIFO_HOLD_MASTER, when
> the first byte is read, TX FIFO gets empty, this causes STOP condition
> and the transfer is terminated.
> 
> Reset SMBUS_READ_BLOCK_DATA bit in functionality mask on such controllers.

...

> +	/* Controllers without EMPTYFIFO_HOLD_MASTER feature cannot issue SMBUS
> +	 * block read because after reading the data length FIFO gets empty and
> +	 * STOP is generated automatically
> +	 */

/*
 * Please, use the regular style for the
 * multi-line comments. This reply can be used
 * as an example.
 */

-- 
With Best Regards,
Andy Shevchenko





More information about the linux-arm-kernel mailing list