Re: [PATCH v5 6/7] i2c: designware: enable SLAVE in platform module

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 




On Thu, 2017-01-05 at 12:13 +0000, Luis Oliveira wrote:
> On 28-Dec-16 18:10, Luis Oliveira wrote:
> > On 28-Dec-16 17:10, Andy Shevchenko wrote:
> > > On Wed, 2016-12-28 at 16:41 +0000, Luis Oliveira wrote:
> > > > On 28-Dec-16 16:31, Andy Shevchenko wrote:


> > > So, ACPI has a property to support slave mode for I2CSerialBus()
> > > macro.
> > > 
> > > I would propose to create a helper function in i2c-core.c which
> > > will be
> > > responsible for mode detection
> > > 
> > > ... i2c_slave_mode_detect()
> > > {
> > > ...
> > >  if (IS_BUILTIN(CONFIG_OF) && dev->of_node) {
> > >   ... (use of_*() here) ...
> > >  } else if (IS_BUILTIN(CONFIG_ACPI) && ACPI_HANDLE(dev))
> > >   dev_dbg(..., "ACPI slave is not supported yet\n");
> > >   ... to master ...
> > >  } else {
> > >   ... default to master ...
> > >  }
> > > }
> > > EXPORT_...();
> > > 
> > > Make it as a separate patch.
> > > 
> > 
> > Oh I see, yes it looks good. I will check it. Thanks
> > 
> 
> Hi Andy,
> 
> I implemented a helper function as you proposed and it looks like
> this:
> 
> int i2c_slave_mode_detect(struct device *dev)
> {
> 	struct device_node *child;
> 	u32 reg;
> 	
> 	if (IS_BUILTIN(CONFIG_OF) && dev->of_node) {
> 		for_each_child_of_node(dev->of_node, child) {
> 			of_property_read_u32(child, "reg", &reg);
> 			if (reg & I2C_OWN_SLAVE_ADDRESS)
> 				return 1;
> 		}
> 	} else if (IS_BUILTIN(CONFIG_ACPI) && ACPI_HANDLE(dev))
> 		dev_dbg(dev, "ACPI slave is not supported yet\n");

Curly braces here as well.

> 	else
> 		return 0;

For now this is not needed

> 	return 0;
> }
> 
> Before I submit the patch to the i2c-core.c I wonder if I could have
> some
> comment on the implementation.

Glad you did it. See above. Otherwise looks good to me.


-- 
Andy Shevchenko <andriy.shevchenko@xxxxxxxxxxxxxxx>
Intel Finland Oy
--
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



[Index of Archives]     [Device Tree Compilter]     [Device Tree Spec]     [Linux Driver Backports]     [Video for Linux]     [Linux USB Devel]     [Linux PCI Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Yosemite Backpacking]
  Powered by Linux