Hi all, The slave address could be set by the I2C slave backend so I can't use it to setup the controller. A boolean property was my initial approach then Andy and Wolfram Sang suggested the use of compatible strings and later It was suggested to use a property to select mode but I can do it again if it's the best way. Can you please tell me where should it be documented? Luis -----Original Message----- From: Rob Herring [mailto:robh@xxxxxxxxxx] Sent: Monday, December 12, 2016 17:02 To: Luis Oliveira <Luis.Oliveira@xxxxxxxxxxxx> Cc: wsa@xxxxxxxxxxxxx; mark.rutland@xxxxxxx; jarkko.nikula@xxxxxxxxxxxxxxx; andriy.shevchenko@xxxxxxxxxxxxxxx; mika.westerberg@xxxxxxxxxxxxxxx; linux-i2c@xxxxxxxxxxxxxxx; devicetree@xxxxxxxxxxxxxxx; linux-kernel@xxxxxxxxxxxxxxx; Ramiro.Oliveira@xxxxxxxxxxxx; Joao.Pinto@xxxxxxxxxxxx; CARLOS.PALMINHA@xxxxxxxxxxxx Subject: Re: [PATCH v4 3/5] i2c: designware: Add slave definitions On Wed, Dec 07, 2016 at 05:55:50PM +0000, Luis Oliveira wrote: > - Add slave definitions to i2c-designware-core > - Changes in Kconfig to auto-enable I2C_SLAVE when compiling the > modules > - Add mode property to designware-core.txt that enable the "slave" selection: > - "mode" is an optional property that could be "slave" or "master" > - if "mode" is not set the block is considered master by default > > Signed-off-by: Luis Oliveira <lolivei@xxxxxxxxxxxx> > --- > Changes V3->V4: (Andy Shevchenko) > - created a common property for modes > - placed the generic dependency first > > .../devicetree/bindings/i2c/i2c-designware.txt | 4 ++++ > drivers/i2c/busses/Kconfig | 1 + > drivers/i2c/busses/i2c-designware-common.c | 6 +++++ > drivers/i2c/busses/i2c-designware-core.h | 26 ++++++++++++++++++++++ > 4 files changed, 37 insertions(+) > > diff --git a/Documentation/devicetree/bindings/i2c/i2c-designware.txt > b/Documentation/devicetree/bindings/i2c/i2c-designware.txt > index fee26dc3e858..8ed2b532cd54 100644 > --- a/Documentation/devicetree/bindings/i2c/i2c-designware.txt > +++ b/Documentation/devicetree/bindings/i2c/i2c-designware.txt > @@ -20,6 +20,9 @@ Optional properties : > - i2c-sda-falling-time-ns : should contain the SDA falling time in nanoseconds. > This value which is by default 300ns is used to compute the tHIGH period. > > + - mode : should be either: > + - "master" to setup the hardware block as a I2C master > + - "slave" to setup the hardware block as a I2C slave This should be documented in a common location. Can't it be a boolean to enable slave mode? Or don't you need to set the slave address? That could be enough to enable slave mode and there's already one example doing that. Rob -- To unsubscribe from this list: send the line "unsubscribe devicetree" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html