Re: [PATCH 09/14] i2c: Add Device Tree support to the Nomadik I2Cdriver

From: Lee Jones
Date: Fri Jun 15 2012 - 07:43:59 EST


On 15/06/12 11:32, Russell King - ARM Linux wrote:
On Thu, Jun 14, 2012 at 07:57:32PM +0100, Lee Jones wrote:
On 14/06/12 19:36, Mark Brown wrote:
On Wed, Jun 13, 2012 at 01:28:17PM +0100, Lee Jones wrote:

Device Tree. However, we have just as much control by keeping them
in separate structs in the C file and selecting the right one using
the compatible sting.

You're not understanding Linus' point. The compatible string isn't
useful here because properties like the maximum clock rate of the bus
depend on the board design, not the silicon. The controller may be
perfectly happy to run at a given rate but other devices on the bus or
the electrical engineering of the PCB itself may restrict this further.

And you're not understanding mine. ;)

You can have multiple compatible strings for a single driver. Which one
you reference from the Device Tree will dictate which group of settings
are used, including variation of clock rates.

However, if you list these settings separately, rather than selecting them
based on a compatible string, it means when other board designs come along,
you don't have to modify the kernel code to provide yet another compatible
to settings translation in the code - you can keep all that information
entirely within DT with no kernel code mods.

I thought that was partly the point of DT...

Right. See my most recent emails on the subject. :)

--
Lee Jones
Linaro ST-Ericsson Landing Team Lead
M: +44 77 88 633 515
Linaro.org â Open source software for ARM SoCs
Follow Linaro: Facebook | Twitter | Blog
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/