On Thu, Mar 03, 2016 at 09:38:37AM +0900, Simon Horman wrote: > In the case of Renesas R-Car hardware we know that there are generations of > SoCs, e.g. Gen 2 and Gen 3. But beyond that its not clear what the > relationship between IP blocks might be. For example, I believe that > r8a7790 is older than r8a7791 but that doesn't imply that the latter is a > descendant of the former or vice versa. > > We can, however, by examining the documentation and behaviour of the > hardware at run-time observe that the current driver implementation appears > to be compatible with the IP blocks on SoCs within a given generation. > > For the above reasons and convenience when enabling new SoCs a > per-generation fallback compatibility string scheme being adopted for > drivers for Renesas SoCs. > > Signed-off-by: Simon Horman <horms+renesas@xxxxxxxxxxxx> > --- > v2 > * Use renesas,rcar-gen2-usb-phy rather than renesas,usb-phy-gen2 as > the new compatibility string to fit in with the preferred scheme > for new compatibility string names. > --- > Documentation/devicetree/bindings/phy/rcar-gen2-phy.txt | 8 +++++++- > drivers/phy/phy-rcar-gen2.c | 1 + > 2 files changed, 8 insertions(+), 1 deletion(-) > > diff --git a/Documentation/devicetree/bindings/phy/rcar-gen2-phy.txt b/Documentation/devicetree/bindings/phy/rcar-gen2-phy.txt > index d564ba4f1cf6..feb1c3c102c2 100644 > --- a/Documentation/devicetree/bindings/phy/rcar-gen2-phy.txt > +++ b/Documentation/devicetree/bindings/phy/rcar-gen2-phy.txt > @@ -7,6 +7,12 @@ Required properties: > - compatible: "renesas,usb-phy-r8a7790" if the device is a part of R8A7790 SoC. > "renesas,usb-phy-r8a7791" if the device is a part of R8A7791 SoC. > "renesas,usb-phy-r8a7794" if the device is a part of R8A7794 SoC. > + "renesas,rcar-gen2-usb-phy" for a generic R-Car Gen2 compatible device. > + > + When compatible with the generic version, nodes must list the > + SoC-specific version corresponding to the platform first > + followed by the generic version. > + > - reg: offset and length of the register block. > - #address-cells: number of address cells for the USB channel subnodes, must > be <1>. > @@ -34,7 +40,7 @@ the USB channel; see the selector meanings below: > Example (Lager board): > > usb-phy@e6590100 { > - compatible = "renesas,usb-phy-r8a7790"; > + compatible = "renesas,usb-phy-r8a7790","renesas,rcar-gen2-usb-phy"; Space here ^ Otherwise, Acked-by: Rob Herring <robh@xxxxxxxxxx>