Device tree and driver probes
In a Linux device tree file (DTS), how does a compatible
entry work if multiple options are given? It doesn’t seem like this is a choice between these entries, but layering devices is also possible (e.g. I have a line compatible = “vendor,controller-uart”, “vendor, controller
-serial” seems to put the driver controller-serial
and controller-uart
are all correlated (as far as code is concerned, controller-serial actually calls things from controller-uart
.)
Where is this concept explained? I couldn’t find an explanation for this in the generic device tree docs.
Solution
To answer my own question (from the information in this document): This is my misunderstanding. This is actually a choice, and the use of the second device type specified under compatible in the code is the implementation detail of the driver in question.