mirror of https://gitee.com/openkylin/linux.git
[media] soc_camera: rcar_vin: add R-Car Gen 2 and 3 fallback compatibility strings
Add fallback compatibility string for R-Car Gen 1 and 2. In the case of Renesas R-Car hardware we know that there are generations of SoCs, e.g. Gen 2 and 3. But beyond that it's unclear 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: Yoshihiro Kaneko <ykaneko0929@gmail.com> Signed-off-by: Simon Horman <horms+renesas@verge.net.au> Acked-by: Geert Uytterhoeven <geert+renesas@glider.be> Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de> Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
This commit is contained in:
parent
345900be58
commit
bd546882ff
|
@ -5,7 +5,7 @@ The rcar_vin device provides video input capabilities for the Renesas R-Car
|
|||
family of devices. The current blocks are always slaves and suppot one input
|
||||
channel which can be either RGB, YUYV or BT656.
|
||||
|
||||
- compatible: Must be one of the following
|
||||
- compatible: Must be one or more of the following
|
||||
- "renesas,vin-r8a7795" for the R8A7795 device
|
||||
- "renesas,vin-r8a7794" for the R8A7794 device
|
||||
- "renesas,vin-r8a7793" for the R8A7793 device
|
||||
|
@ -13,6 +13,13 @@ channel which can be either RGB, YUYV or BT656.
|
|||
- "renesas,vin-r8a7790" for the R8A7790 device
|
||||
- "renesas,vin-r8a7779" for the R8A7779 device
|
||||
- "renesas,vin-r8a7778" for the R8A7778 device
|
||||
- "renesas,rcar-gen2-vin" for a generic R-Car Gen2 compatible device.
|
||||
- "renesas,rcar-gen3-vin" for a generic R-Car Gen3 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: the register base and size for the device registers
|
||||
- interrupts: the interrupt for the device
|
||||
- clocks: Reference to the parent clock
|
||||
|
@ -37,7 +44,7 @@ Device node example
|
|||
};
|
||||
|
||||
vin0: vin@0xe6ef0000 {
|
||||
compatible = "renesas,vin-r8a7790";
|
||||
compatible = "renesas,vin-r8a7790", "renesas,rcar-gen2-vin";
|
||||
clocks = <&mstp8_clks R8A7790_CLK_VIN0>;
|
||||
reg = <0 0xe6ef0000 0 0x1000>;
|
||||
interrupts = <0 188 IRQ_TYPE_LEVEL_HIGH>;
|
||||
|
|
|
@ -1845,6 +1845,8 @@ static const struct of_device_id rcar_vin_of_table[] = {
|
|||
{ .compatible = "renesas,vin-r8a7790", .data = (void *)RCAR_GEN2 },
|
||||
{ .compatible = "renesas,vin-r8a7779", .data = (void *)RCAR_H1 },
|
||||
{ .compatible = "renesas,vin-r8a7778", .data = (void *)RCAR_M1 },
|
||||
{ .compatible = "renesas,rcar-gen3-vin", .data = (void *)RCAR_GEN3 },
|
||||
{ .compatible = "renesas,rcar-gen2-vin", .data = (void *)RCAR_GEN2 },
|
||||
{ },
|
||||
};
|
||||
MODULE_DEVICE_TABLE(of, rcar_vin_of_table);
|
||||
|
|
Loading…
Reference in New Issue