- compatible: "renesas,etheravb-r8a7790" if the device is a part of R8A7790 SoC.
              "renesas,etheravb-r8a7794" if the device is a part of R8A7794 SoC.
              "renesas,etheravb-r8a7795" if the device is a part of R8A7795 SoC.
+             "renesas,etheravb-rcar-gen2" for generic R-Car Gen 2 compatible interface.
+             "renesas,etheravb-rcar-gen3" for generic R-Car Gen 3 compatible interface.
+
+             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 (1) the register block and (2) the stream buffer.
 - interrupts: A list of interrupt-specifiers, one for each entry in
              interrupt-names.
 Example:
 
        ethernet@e6800000 {
-               compatible = "renesas,etheravb-r8a7795";
+               compatible = "renesas,etheravb-r8a7795", "renesas,etheravb-rcar-gen3";
                reg = <0 0xe6800000 0 0x800>, <0 0xe6a00000 0 0x10000>;
                interrupt-parent = <&gic>;
                interrupts = <GIC_SPI 39 IRQ_TYPE_LEVEL_HIGH>,
 
 static const struct of_device_id ravb_match_table[] = {
        { .compatible = "renesas,etheravb-r8a7790", .data = (void *)RCAR_GEN2 },
        { .compatible = "renesas,etheravb-r8a7794", .data = (void *)RCAR_GEN2 },
+       { .compatible = "renesas,etheravb-rcar-gen2", .data = (void *)RCAR_GEN2 },
        { .compatible = "renesas,etheravb-r8a7795", .data = (void *)RCAR_GEN3 },
+       { .compatible = "renesas,etheravb-rcar-gen3", .data = (void *)RCAR_GEN3 },
        { }
 };
 MODULE_DEVICE_TABLE(of, ravb_match_table);