Hi Alexander,
On Thursday 18 June 2015 02:39 PM, Alexander Sverdlin wrote:
> Hi!
>
> On 18/06/15 11:00, ext Sekhar Nori wrote:
>>> + if (davinci_i2c_read_reg(dev, DAVINCI_I2C_ICPID2_REG) == 0x2206) {
>>>> + dev_dbg(dev->dev, "Keystone SoC detected\n");
>>>> + d = 6;
>>>> + }
>> I think its better to use a different compatible string for i2c on
>> keystone devices rather than using a fixed hardcoded IP version.
>
> Yeah, this should have been done from the beginning, when the driver has been
> re-used for Keystone, but this time is already missed, so I don't want
> to introduce huge incompatibility with the existing device-trees.
How is backward compatibility broken? compatible property is a list, so
you would do something like:
compatible = "ti,keystone-i2c", "ti,davinci-i2c";
Newer kernels would keep working with older device tree blobs. Older
kernels wont have the fix, but thats true even now.
> And from the other PoV, device-trees are for something one cannot probe. We
> can probe for Keystone revisions and can free the end-user from this headache
> completely.
Keep in mind that this can invite driver patching whenever version
number is tinkered with in hardware - even for otherwise
software-invsible changes.
Thanks,
Sekhar
--
To unsubscribe from this list: send the line "unsubscribe linux-i2c" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html