Grant Likely wrote: > On 10/15/07, Scott Wood <[EMAIL PROTECTED]> wrote: >> On Mon, Oct 15, 2007 at 10:57:48AM -0600, Grant Likely wrote: >>> Segher is recommending that we use an aliases node as per the open >>> firmware example for this. I think in this case it would look >>> something like this (but I'm not the expert): >>> >>> aliases { >>> IIC0 = "/path/to/bus/[EMAIL PROTECTED]"; >>> IIC1 = "/path/to/bus/[EMAIL PROTECTED]"; >>> }; >> I think this is overly complicated; something like linux,i2c-index in the >> i2c adapter node would be simpler. > > But not perhaps better. Enumeration is a system-wide thing. It does > make sense to group all the device enumerations in one place.
For purposes of generating a Linux bus number, having to scan all aliases for a matching path and turn IIC0/IIC1 into a number is a bit silly. For associating a device node with a human readable label, I'd prefer a "label" property in the device node, rather than doing it backwards with aliases. > As per your point below; if all the i2c devices are children of the > adapter, then yes you are right that the bus number doesn't matter to > the user. But it *does* matter for things like serial and ethernet > ports. And a label property would be great for that. :-) >> Though, I don't see what the problem with the original approach is, as long >> as the numbers are chosen in the same way when registering i2c clients based >> on the children of the adapter node. There's no concept in the hardware >> itself of a bus number. > > Even if you take this approach, the driver still need to know what bus > number to use (as per the i2c infrastructure). It is not sane for an > i2c bus driver to attempt to assign the bus number itself because it > could conflict with another arbitrarily chosen bus number from another > driver. Hence why global bus numbers suck. :-) However, statically chosen numbers should only be done for platform devices, not dynamic things such as PCI, so in practice I don't think it'd be a problem. -Scott _______________________________________________ Linuxppc-dev mailing list Linuxppc-dev@ozlabs.org https://ozlabs.org/mailman/listinfo/linuxppc-dev