On Tue, 19 Oct 2021 17:41:49 +0200 Andrew Lunn <andrew@xxxxxxx> wrote: > > When people update the kernel version don't they update also the devicetree? > > DT is ABI. Driver writers should not break old blobs running on new > kernels. Often the DT blob is updated with the kernel, but it is not > required. It could be stored in a hard to reach place, shared with > u-boot etc. Right, but conversely if someone reads the DT bindings that exists today, specifies phy-mode = "rgmii-rxid" or phy-mmode = "rmgii-txid", this person will get incorrect behavior. Sure a behavior that is backward compatible with older DTs, but a terribly wrong one when you write a new DT and read the DT binding documentation. This is exactly the problem that happened to us. I know that those properties are considered obsolete, but even though they are considered as such, they are still supported, but for this particular MAC driver, with an inverted meaning compared to what the DT binding documentation says. What wins: DT ABI backward compatibility, or correctness of the DT binding ? :-) Best regards, Thomas -- Thomas Petazzoni, co-owner and CEO, Bootlin Embedded Linux and Kernel engineering and training https://bootlin.com