]> www.infradead.org Git - users/willy/xarray.git/commitdiff
i2c: designware: Fix the functionality flags of the slave-only interface
authorJean Delvare <jdelvare@suse.de>
Fri, 31 May 2024 09:17:48 +0000 (11:17 +0200)
committerAndi Shyti <andi.shyti@kernel.org>
Wed, 12 Jun 2024 16:07:34 +0000 (17:07 +0100)
When an I2C adapter acts only as a slave, it should not claim to
support I2C master capabilities.

Fixes: 5b6d721b266a ("i2c: designware: enable SLAVE in platform module")
Signed-off-by: Jean Delvare <jdelvare@suse.de>
Cc: Luis Oliveira <lolivei@synopsys.com>
Cc: Jarkko Nikula <jarkko.nikula@linux.intel.com>
Cc: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Cc: Mika Westerberg <mika.westerberg@linux.intel.com>
Cc: Jan Dabros <jsd@semihalf.com>
Cc: Andi Shyti <andi.shyti@kernel.org>
Reviewed-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Acked-by: Jarkko Nikula <jarkko.nikula@linux.intel.com>
Tested-by: Jarkko Nikula <jarkko.nikula@linux.intel.com>
Signed-off-by: Andi Shyti <andi.shyti@kernel.org>
drivers/i2c/busses/i2c-designware-slave.c

index 2e079cf20bb5b40c09004bdc02a8124352fab958..78e2c47e3d7da78b1fa8a109d18d6380fefdf678 100644 (file)
@@ -220,7 +220,7 @@ static const struct i2c_algorithm i2c_dw_algo = {
 
 void i2c_dw_configure_slave(struct dw_i2c_dev *dev)
 {
-       dev->functionality = I2C_FUNC_SLAVE | DW_IC_DEFAULT_FUNCTIONALITY;
+       dev->functionality = I2C_FUNC_SLAVE;
 
        dev->slave_cfg = DW_IC_CON_RX_FIFO_FULL_HLD_CTRL |
                         DW_IC_CON_RESTART_EN | DW_IC_CON_STOP_DET_IFADDRESSED;