1c66ec88fSEmmanuel Vadot# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) 2c66ec88fSEmmanuel Vadot%YAML 1.2 3c66ec88fSEmmanuel Vadot--- 4c66ec88fSEmmanuel Vadot$id: http://devicetree.org/schemas/media/renesas,vsp1.yaml# 5c66ec88fSEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml# 6c66ec88fSEmmanuel Vadot 7c66ec88fSEmmanuel Vadottitle: Renesas VSP Video Processing Engine 8c66ec88fSEmmanuel Vadot 9c66ec88fSEmmanuel Vadotmaintainers: 10c66ec88fSEmmanuel Vadot - Laurent Pinchart <laurent.pinchart@ideasonboard.com> 11c66ec88fSEmmanuel Vadot 12c66ec88fSEmmanuel Vadotdescription: 13c66ec88fSEmmanuel Vadot The VSP is a video processing engine that supports up-/down-scaling, alpha 14c66ec88fSEmmanuel Vadot blending, color space conversion and various other image processing features. 15c66ec88fSEmmanuel Vadot It can be found in the Renesas R-Car Gen2, R-Car Gen3, RZ/G1, and RZ/G2 SoCs. 16c66ec88fSEmmanuel Vadot 17c66ec88fSEmmanuel Vadotproperties: 18c66ec88fSEmmanuel Vadot compatible: 19fac71e4eSEmmanuel Vadot oneOf: 20fac71e4eSEmmanuel Vadot - enum: 217ef62cebSEmmanuel Vadot - renesas,r9a07g044-vsp2 # RZ/G2L 22c66ec88fSEmmanuel Vadot - renesas,vsp1 # R-Car Gen2 and RZ/G1 23c66ec88fSEmmanuel Vadot - renesas,vsp2 # R-Car Gen3 and RZ/G2 24fac71e4eSEmmanuel Vadot - items: 25fac71e4eSEmmanuel Vadot - enum: 26*b2d2a78aSEmmanuel Vadot - renesas,r9a07g043u-vsp2 # RZ/G2UL 27fac71e4eSEmmanuel Vadot - renesas,r9a07g054-vsp2 # RZ/V2L 28fac71e4eSEmmanuel Vadot - const: renesas,r9a07g044-vsp2 # RZ/G2L fallback 29c66ec88fSEmmanuel Vadot 30c66ec88fSEmmanuel Vadot reg: 31c66ec88fSEmmanuel Vadot maxItems: 1 32c66ec88fSEmmanuel Vadot 33c66ec88fSEmmanuel Vadot interrupts: 34c66ec88fSEmmanuel Vadot maxItems: 1 35c66ec88fSEmmanuel Vadot 367ef62cebSEmmanuel Vadot clocks: true 377ef62cebSEmmanuel Vadot clock-names: true 38c66ec88fSEmmanuel Vadot 39c66ec88fSEmmanuel Vadot power-domains: 40c66ec88fSEmmanuel Vadot maxItems: 1 41c66ec88fSEmmanuel Vadot 42c66ec88fSEmmanuel Vadot resets: 43c66ec88fSEmmanuel Vadot maxItems: 1 44c66ec88fSEmmanuel Vadot 45c66ec88fSEmmanuel Vadot renesas,fcp: 46c66ec88fSEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/phandle 47c66ec88fSEmmanuel Vadot description: 48c66ec88fSEmmanuel Vadot A phandle referencing the FCP that handles memory accesses for the VSP. 49c66ec88fSEmmanuel Vadot 50c66ec88fSEmmanuel Vadotrequired: 51c66ec88fSEmmanuel Vadot - compatible 52c66ec88fSEmmanuel Vadot - reg 53c66ec88fSEmmanuel Vadot - interrupts 54c66ec88fSEmmanuel Vadot - clocks 55c66ec88fSEmmanuel Vadot - power-domains 56c66ec88fSEmmanuel Vadot - resets 57c66ec88fSEmmanuel Vadot 58c66ec88fSEmmanuel VadotadditionalProperties: false 59c66ec88fSEmmanuel Vadot 607ef62cebSEmmanuel VadotallOf: 617ef62cebSEmmanuel Vadot - if: 62c66ec88fSEmmanuel Vadot properties: 63c66ec88fSEmmanuel Vadot compatible: 647ef62cebSEmmanuel Vadot contains: 657ef62cebSEmmanuel Vadot const: renesas,vsp1 66c66ec88fSEmmanuel Vadot then: 67c66ec88fSEmmanuel Vadot properties: 68c66ec88fSEmmanuel Vadot renesas,fcp: false 69c66ec88fSEmmanuel Vadot else: 70c66ec88fSEmmanuel Vadot required: 71c66ec88fSEmmanuel Vadot - renesas,fcp 72c66ec88fSEmmanuel Vadot 737ef62cebSEmmanuel Vadot - if: 747ef62cebSEmmanuel Vadot properties: 757ef62cebSEmmanuel Vadot compatible: 767ef62cebSEmmanuel Vadot contains: 777ef62cebSEmmanuel Vadot const: renesas,r9a07g044-vsp2 787ef62cebSEmmanuel Vadot then: 797ef62cebSEmmanuel Vadot properties: 807ef62cebSEmmanuel Vadot clocks: 817ef62cebSEmmanuel Vadot items: 827ef62cebSEmmanuel Vadot - description: Main clock 837ef62cebSEmmanuel Vadot - description: Register access clock 847ef62cebSEmmanuel Vadot - description: Video clock 857ef62cebSEmmanuel Vadot clock-names: 867ef62cebSEmmanuel Vadot items: 877ef62cebSEmmanuel Vadot - const: aclk 887ef62cebSEmmanuel Vadot - const: pclk 897ef62cebSEmmanuel Vadot - const: vclk 907ef62cebSEmmanuel Vadot required: 917ef62cebSEmmanuel Vadot - clock-names 927ef62cebSEmmanuel Vadot else: 937ef62cebSEmmanuel Vadot properties: 947ef62cebSEmmanuel Vadot clocks: 957ef62cebSEmmanuel Vadot maxItems: 1 967ef62cebSEmmanuel Vadot clock-names: false 977ef62cebSEmmanuel Vadot 98c66ec88fSEmmanuel Vadotexamples: 99c66ec88fSEmmanuel Vadot # R8A7790 (R-Car H2) VSP1-S 100c66ec88fSEmmanuel Vadot - | 101c66ec88fSEmmanuel Vadot #include <dt-bindings/clock/renesas-cpg-mssr.h> 102c66ec88fSEmmanuel Vadot #include <dt-bindings/interrupt-controller/arm-gic.h> 103c66ec88fSEmmanuel Vadot #include <dt-bindings/power/r8a7790-sysc.h> 104c66ec88fSEmmanuel Vadot 105c66ec88fSEmmanuel Vadot vsp@fe928000 { 106c66ec88fSEmmanuel Vadot compatible = "renesas,vsp1"; 107c66ec88fSEmmanuel Vadot reg = <0xfe928000 0x8000>; 108c66ec88fSEmmanuel Vadot interrupts = <GIC_SPI 267 IRQ_TYPE_LEVEL_HIGH>; 109c66ec88fSEmmanuel Vadot clocks = <&cpg CPG_MOD 131>; 110c66ec88fSEmmanuel Vadot power-domains = <&sysc R8A7790_PD_ALWAYS_ON>; 111c66ec88fSEmmanuel Vadot resets = <&cpg 131>; 112c66ec88fSEmmanuel Vadot }; 113c66ec88fSEmmanuel Vadot 114c66ec88fSEmmanuel Vadot # R8A77951 (R-Car H3) VSP2-BC 115c66ec88fSEmmanuel Vadot - | 116c66ec88fSEmmanuel Vadot #include <dt-bindings/clock/renesas-cpg-mssr.h> 117c66ec88fSEmmanuel Vadot #include <dt-bindings/interrupt-controller/arm-gic.h> 118c66ec88fSEmmanuel Vadot #include <dt-bindings/power/r8a7795-sysc.h> 119c66ec88fSEmmanuel Vadot 120c66ec88fSEmmanuel Vadot vsp@fe920000 { 121c66ec88fSEmmanuel Vadot compatible = "renesas,vsp2"; 122c66ec88fSEmmanuel Vadot reg = <0xfe920000 0x8000>; 123c66ec88fSEmmanuel Vadot interrupts = <GIC_SPI 465 IRQ_TYPE_LEVEL_HIGH>; 124c66ec88fSEmmanuel Vadot clocks = <&cpg CPG_MOD 624>; 125c66ec88fSEmmanuel Vadot power-domains = <&sysc R8A7795_PD_A3VP>; 126c66ec88fSEmmanuel Vadot resets = <&cpg 624>; 127c66ec88fSEmmanuel Vadot 128c66ec88fSEmmanuel Vadot renesas,fcp = <&fcpvb1>; 129c66ec88fSEmmanuel Vadot }; 130c66ec88fSEmmanuel Vadot... 131