"cell-index" vs. "index" vs. no index in I2C device nodes

David Gibson dwg at au1.ibm.com
Thu Jun 5 12:41:40 EST 2008


On Wed, Jun 04, 2008 at 09:19:42PM -0500, Josh Boyer wrote:
> On Wed, 4 Jun 2008 10:43:51 -0500
> Scott Wood <scottwood at freescale.com> wrote:
> 
> > On Wed, Jun 04, 2008 at 10:24:15AM -0500, Timur Tabi wrote:
> > > Stefan Roese wrote:
> > > > I'm wondering what is currently recommended in the I2C device tree nodes? The 
> > > > current IBM I2C driver (i2c-ibm_iic.c) checks "index" and most FSL dts files 
> > > > use "cell-index". Some 4xx dts files implement "cell-index" some have no 
> > > > index at all.
> > > > 
> > > > So what should be used here. Please advise and I'll prepare a patch for it.
> > > 
> > > I just posted a patch for the FSL I2C driver to check for cell-index.  I'm under
> > > the impression that cell-index is the standard for enumerating devices in the
> > > device tree.
> > 
> > No, it's the standard for correlating devices with portions of a shared
> > register block elsewhere.  Your use in the I2C node is merely a hack to
> > deal with Linux wanting to deal with indices rather than pointers,
> > combined with a lack of a decent way to look up a device struct from the
> > device node.
> 
> So if possible, I'd like to eliminate the *index stuff all together
> from the 4xx driver.  The private data structure contains an idx
> parameter, but this can be populated based on probe order or something.
> 
> >From a device tree perspective, index and cell-index are both
> incorrect.  The IIC macros don't share register blocks with anything,
> are enumerated as unique instances per macro in the device tree, and
> should be able to be distinguished by "regs" and/or unit address.
> 
> Does anyone disagree with that?

Hear, hear.

Aliases can also provide a reasonable way of enumerating devices, if
"reg" isn't suitable on its own.  Though obviously, drivers will need
some sort of fallback if suitable aliases don't exist in the tree.

-- 
David Gibson			| I'll have my music baroque, and my code
david AT gibson.dropbear.id.au	| minimalist, thank you.  NOT _the_ _other_
				| _way_ _around_!
http://www.ozlabs.org/~dgibson



More information about the Linuxppc-dev mailing list