Re: [PATCH v2 v2 1/3] dt-bindings: i2c: extend existing opencore bindings.

From: Andrew Lunn
Date: Tue May 07 2019 - 11:25:47 EST

> +or
> + /*
> + An Opencore based I2C node in FU540-C000 chip from SiFive
> + This chip has a hardware erratum for broken IRQ
> + so it's recommended not to define interrupt in the device node
> + */
> + i2c@10030000 {
> + compatible = "sifive,i2c0","sifive,fu540-c000-i2c";

The most specific compatible comes first.

You also need to be forward thinking. The next revision of the silicon
could have the bug fixed. You can then use plain "sifive,i2c0" to
indicate just polling is needed, not bug workaround. But for that to
work, you need "sifive,fu540-c000-i2c" first.