On Wed, Jul 06, 2011 at 06:12:49PM -0600, Grant Likely wrote: > On Wed, Jul 6, 2011 at 5:26 PM, Stephen Warren <swarren@xxxxxxxxxx> wrote: > > Grant Likely wrote at Wednesday, July 06, 2011 12:56 PM: > >> On Thu, Jun 30, 2011 at 03:07:23PM +0500, G, Manjunath Kondaiah wrote: > >> > Add I2C and it's child device nodes for beagle board. > >> > The I2C1 controller child devices are not populated and it > >> > should be handled along with OMAP clock changes. > > ... > >> > diff --git a/arch/arm/boot/dts/omap3-beagle.dts b/arch/arm/boot/dts/omap3-beagle.dts > > ... > >> > + i2c@48070000 { > > ... > >> > + clock-frequency = <2600>; > >> > + status = "disabled"; > >> > >> Drop 'status' when you move this node definition to > >> arch/arm/boot/dts/omap3.dtsi. Board overlay files that include the > >> omap3.dtsi should explicitly disable any devices that it does not use > >> (which is opposite to what tegra currently does, but I'm going to > >> change that). > > > > Purely out of idle curiosity: What's the benefit of one way over the other? > > Mostly consistency. Most of the experience we have with the flattened > device tree up to this point hasn't bothered with the 'status' > property. It is only when AMP and hypervisors cam online that it > became important to use a status property, and that only when the > kernel needs to be told that the device does indeed exist, but it must > not be touched. I'd like to continue that pattern for new DT users > with the default assumption that a device is enabled unless the board > .dts explicitly disables it. > When going this way with my i.mx53 related dts files, I feel I like the opposite way. i.mx53 has many number of peripherals inside, while individual board might only use small portion there. For example, i.mx53 has 5 uart controller instances inside, while quick start (aka loco) board only uses one. With the way you suggest here, we will have the following in imx53.dtsi. uart0: uart@... { ... }; uart1: uart@... { ... }; uart2: uart@... { ... }; uart3: uart@... { ... }; uart4: uart@... { ... }; And we will have to tell the 4 we do not use on quick start board in imx53-qs.dtsi uart1: uart@... { ... status = "disabled"; }; uart2: uart@... { ... status = "disabled"; }; uart3: uart@... { ... status = "disabled"; }; uart4: uart@... { ... status = "disabled"; }; Besides the bothering that we have to list so many unused controllers in individual board dts file, it's also hard to tell which controllers are actually available on the board. People have to look at imx53.dts to get a full list and then exclude the ones in imx53-<board>.dts as "disabled". And if we go the way opposite, adding "disabled" status for everyone in imx53.dts, we will only need to specify the peripherals that are actually available on board with "okay" status in imx53-<board>.dts. And it's much more clear for people to see what peripherals are available on individual board. So I'm going the way than you suggested. Please let me know if you strongly dislikes it. -- Regards, Shawn -- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html