Mark, Stephen, On Thu, 5 Sep 2013 12:19:18 +0100, Mark Rutland wrote: > > +Compatible Property > > +------------------- > > + > > +A compatible value identifies a hardware module. It needs to identify the > > +vendor (e.g. NVIDIA), type or name of device (e.g. I2C), and version of the > > +device (e.g. an IP block version number or chip name). The following formats > > +of compatible value are acceptable: > > + > > +* ${vendor},${device}-${version} (e.g. ti,omap4-i2c) > > +* ${vendor},${version}-${device} (e.g. nvidia,tegra20-i2c) > > +* ${vendor},${device}-${version} (e.g. synopsis,dwc3) > > It would be nice to make it clear that the compatible string for a > device should (wherever possible) be the name of the specific IP block, > which isn't completely clear above (e.g. "arm,pl011" is preferred to > "arm,vexpress-v2m-serial"). It would be nice if we could avoid examples > with SoC names for this reason. > > Obviously there will be SoC-specific devices that will have SoC names in > their bindings. But those bindings should be considered carefully. I agree that it would be nice to make it clear that using the name of an SoC family in the compatible string is not a good idea, and that instead the name of the particular SoC that originally introduced the IP block should be used. I.e nvidia,tegra20-i2c is fine, but nvidia,tegra-i2c is not, because we have no idea what I2C controllers will be used on future Tegra SoCs. Best regards, Thomas -- Thomas Petazzoni, Free Electrons Kernel, drivers, real-time and embedded Linux development, consulting, training and support. http://free-electrons.com -- 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