Re: [PATCH v5 1/4] i2c: busses: i2c-st: Add ST I2C controller

From: Lucas Stach
Date: Thu Oct 17 2013 - 10:53:56 EST


Am Donnerstag, den 17.10.2013, 15:30 +0100 schrieb srinivas kandagatla:
[...]
> Sorry to ask this but, Where is this requirement coming from?
> I have not spotted any thing as such in ePAPR specs.
>
>
> All the spec says is.
> ===
> The compatible property value consists of one or more strings that
> define the specific programming model for the device. This list of
> strings should be used by a client program for device driver selection.
> The property value consists of a concatenated list of null terminated
> strings, *from most specific to most general.* They allow a device to
> express its compatibility with a family of similar devices, potentially
> allowing a single device driver to match against several devices.
> The recommended format is âmanufacturer,modelâ, where manufacturer is a
> string describing the name of the manufacturer (such as an OUI), and
> model specifies the model number.
>
> Example:
> compatible = âfsl,mpc8641-uartâ, âns16550";
> In this example, an operating system would first try to locate a device
> driver that supported fsl,mpc8641-uart. If a driver was not found, it
> would then try to locate a driver that supported the more general
> ns16550 device type.
> ===
>
> The more general compatible string in this case is "st,comms-ssc-i2c",
> rather than the first soc name.
> How can a first SOC name be more general?
>
> As this driver is not very specific to StiH415, it is generic driver for
> ST comms-ssc-i2c block.
>

You just can't know if someone in the future decides to subtly change
the register layout or make some other incompatible change to the
comms-ssc-i2c block.

So as a general rule of thumb you take the first SoC where a particular
IP block appeared as the compatible string, so you can just pick the
name of the SoC where the incompatible change was made as the next
string and not need to invent generic and unspecific comms-ssc-i2c-v2
compatibles.

Regards,
Lucas
--
Pengutronix e.K. | Lucas Stach |
Industrial Linux Solutions | http://www.pengutronix.de/ |
Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-5076 |
Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 |

--
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/