On Thu, 2016-12-22 at 14:59 +0000, Luis Oliveira wrote: > On 13-Dec-16 14:11, Rob Herring wrote: > > Something like this: > > > > of_for_each_child_node(child) { > > of_property_read_u32(child, "reg", ®); > > if (reg & I2C_OWN_SLAVE_ADDRESS)) > > im_a_slave = true; > > } > > > > ...rather than testing "mode" is equal to "slave". > > > > Rob > > > > Hi Rob, Andy, > > I'm struggling to implement your suggestion @Rob. I checked the > tegra124-jetson-tk1.dts that uses that approach but I have some > doubts. > > My DT is as follows > > i2c@0x2000 { > compatible = "snps,designware-i2c"; > reg = <0x2000 0x100>; > clock-frequency = <400000>; > clocks = <&i2cclk>; > interrupts = <0>; > > I could add something like this: > > eeprom@64 { > compatible = "linux,slave-24c02"; > reg = <(I2C_OWN_SLAVE_ADDRESS | 0x64)>; > } > > But I think this is different form what I was doing before. I have two > questions: > > - This way the I2C controller is identified as a slave controller or > just the > subnode eeprom? > - This way looks like my slave address will be fixed > > In the previous Patch v3 submission @Andy suggested a property that > selects mode > that I did and it's working. And you @Rob suggested to do it a common > property. > It is implemented in the DT like: > > mode = "slave"; > > So before I do this changes can you please agree both if you still > think this is > the best approach? I'm a bit lost in the discussion (and TBH busy by something else), so I would agree on whatever you and Rob make an agreement on. -- Andy Shevchenko <andriy.shevchenko@xxxxxxxxxxxxxxx> Intel Finland Oy -- To unsubscribe from this list: send the line "unsubscribe linux-i2c" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html