Hi Wolfram, Thank you for the patch. On Tue, Dec 31, 2019 at 05:13:57PM +0100, Wolfram Sang wrote: > For the new 'alias' feature, we need to scan for devices while holding > the lock. We focus on read_byte transactions for now to keep things > simple. Requesting an alias will be rare, so there is not much overhead. > > Signed-off-by: Wolfram Sang <wsa+renesas@xxxxxxxxxxxxxxxxxxxx> > --- > drivers/i2c/i2c-core-base.c | 17 +++++++++++++++++ > 1 file changed, 17 insertions(+) > > diff --git a/drivers/i2c/i2c-core-base.c b/drivers/i2c/i2c-core-base.c > index 20a726dc78db..51bd953ddfb2 100644 > --- a/drivers/i2c/i2c-core-base.c > +++ b/drivers/i2c/i2c-core-base.c > @@ -2108,6 +2108,23 @@ static int i2c_default_probe(struct i2c_adapter *adap, unsigned short addr) > return err >= 0; > } > > +static int i2c_unlocked_read_byte_probe(struct i2c_adapter *adap, unsigned short addr) > +{ > + union i2c_smbus_data dummy; > + int err; > + > + if (i2c_check_functionality(adap, I2C_FUNC_SMBUS_READ_BYTE)) { > + err = __i2c_smbus_xfer(adap, addr, 0, I2C_SMBUS_READ, 0, > + I2C_SMBUS_BYTE, &dummy); > + } else { > + dev_warn(&adap->dev, "No suitable probing method supported for address 0x%02X\n", This should be wrapped after the first argument. s/02X/02x/ As this function is static and unused in this patch, this may introduce a new warning when bisection. I see little reason to keep this patch standalone, you can squash it with 3/5. It otherwise looks good to me. > + addr); > + err = -EOPNOTSUPP; > + } > + > + return err >= 0; > +} > + > static int i2c_scan_for_client(struct i2c_adapter *adap, unsigned short addr, > int (*probe)(struct i2c_adapter *adap, unsigned short addr)) > { -- Regards, Laurent Pinchart