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,fcp.yaml# 5c66ec88fSEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml# 6c66ec88fSEmmanuel Vadot 7c66ec88fSEmmanuel Vadottitle: Renesas R-Car Frame Compression Processor (FCP) 8c66ec88fSEmmanuel Vadot 9c66ec88fSEmmanuel Vadotmaintainers: 10c66ec88fSEmmanuel Vadot - Laurent Pinchart <laurent.pinchart@ideasonboard.com> 11c66ec88fSEmmanuel Vadot 12c66ec88fSEmmanuel Vadotdescription: | 13c66ec88fSEmmanuel Vadot The FCP is a companion module of video processing modules in the Renesas 14c66ec88fSEmmanuel Vadot R-Car Gen3 and RZ/G2 SoCs. It provides data compression and decompression, 15c66ec88fSEmmanuel Vadot data caching, and conversion of AXI transactions in order to reduce the 16c66ec88fSEmmanuel Vadot memory bandwidth. 17c66ec88fSEmmanuel Vadot 18c66ec88fSEmmanuel Vadot There are three types of FCP: FCP for Codec (FCPC), FCP for VSP (FCPV) and 19c66ec88fSEmmanuel Vadot FCP for FDP (FCPF). Their configuration and behaviour depend on the module 20c66ec88fSEmmanuel Vadot they are paired with. These DT bindings currently support the FCPV and FCPF. 21c66ec88fSEmmanuel Vadot 22c66ec88fSEmmanuel Vadotproperties: 23c66ec88fSEmmanuel Vadot compatible: 24*fac71e4eSEmmanuel Vadot oneOf: 25*fac71e4eSEmmanuel Vadot - enum: 26c66ec88fSEmmanuel Vadot - renesas,fcpv # FCP for VSP 27c66ec88fSEmmanuel Vadot - renesas,fcpf # FCP for FDP 28*fac71e4eSEmmanuel Vadot - items: 29*fac71e4eSEmmanuel Vadot - enum: 30*fac71e4eSEmmanuel Vadot - renesas,r9a07g044-fcpvd # RZ/G2{L,LC} 31*fac71e4eSEmmanuel Vadot - renesas,r9a07g054-fcpvd # RZ/V2L 32*fac71e4eSEmmanuel Vadot - const: renesas,fcpv # Generic FCP for VSP fallback 33c66ec88fSEmmanuel Vadot 34c66ec88fSEmmanuel Vadot reg: 35c66ec88fSEmmanuel Vadot maxItems: 1 36c66ec88fSEmmanuel Vadot 37*fac71e4eSEmmanuel Vadot clocks: true 38*fac71e4eSEmmanuel Vadot 39*fac71e4eSEmmanuel Vadot clock-names: true 40c66ec88fSEmmanuel Vadot 41c66ec88fSEmmanuel Vadot iommus: 42c66ec88fSEmmanuel Vadot maxItems: 1 43c66ec88fSEmmanuel Vadot 44c66ec88fSEmmanuel Vadot power-domains: 45c66ec88fSEmmanuel Vadot maxItems: 1 46c66ec88fSEmmanuel Vadot 47c66ec88fSEmmanuel Vadot resets: 48c66ec88fSEmmanuel Vadot maxItems: 1 49c66ec88fSEmmanuel Vadot 50c66ec88fSEmmanuel Vadotrequired: 51c66ec88fSEmmanuel Vadot - compatible 52c66ec88fSEmmanuel Vadot - reg 53c66ec88fSEmmanuel Vadot - clocks 54c66ec88fSEmmanuel Vadot - power-domains 55c66ec88fSEmmanuel Vadot - resets 56c66ec88fSEmmanuel Vadot 57c66ec88fSEmmanuel VadotadditionalProperties: false 58c66ec88fSEmmanuel Vadot 59*fac71e4eSEmmanuel VadotallOf: 60*fac71e4eSEmmanuel Vadot - if: 61*fac71e4eSEmmanuel Vadot properties: 62*fac71e4eSEmmanuel Vadot compatible: 63*fac71e4eSEmmanuel Vadot contains: 64*fac71e4eSEmmanuel Vadot enum: 65*fac71e4eSEmmanuel Vadot - renesas,r9a07g044-fcpvd 66*fac71e4eSEmmanuel Vadot - renesas,r9a07g054-fcpvd 67*fac71e4eSEmmanuel Vadot then: 68*fac71e4eSEmmanuel Vadot properties: 69*fac71e4eSEmmanuel Vadot clocks: 70*fac71e4eSEmmanuel Vadot items: 71*fac71e4eSEmmanuel Vadot - description: Main clock 72*fac71e4eSEmmanuel Vadot - description: Register access clock 73*fac71e4eSEmmanuel Vadot - description: Video clock 74*fac71e4eSEmmanuel Vadot clock-names: 75*fac71e4eSEmmanuel Vadot items: 76*fac71e4eSEmmanuel Vadot - const: aclk 77*fac71e4eSEmmanuel Vadot - const: pclk 78*fac71e4eSEmmanuel Vadot - const: vclk 79*fac71e4eSEmmanuel Vadot required: 80*fac71e4eSEmmanuel Vadot - clock-names 81*fac71e4eSEmmanuel Vadot else: 82*fac71e4eSEmmanuel Vadot properties: 83*fac71e4eSEmmanuel Vadot clocks: 84*fac71e4eSEmmanuel Vadot maxItems: 1 85*fac71e4eSEmmanuel Vadot clock-names: false 86*fac71e4eSEmmanuel Vadot 87c66ec88fSEmmanuel Vadotexamples: 88c66ec88fSEmmanuel Vadot # R8A7795 (R-Car H3) FCP for VSP-D1 89c66ec88fSEmmanuel Vadot - | 90c66ec88fSEmmanuel Vadot #include <dt-bindings/clock/renesas-cpg-mssr.h> 91c66ec88fSEmmanuel Vadot #include <dt-bindings/power/r8a7795-sysc.h> 92c66ec88fSEmmanuel Vadot 93c66ec88fSEmmanuel Vadot fcp@fea2f000 { 94c66ec88fSEmmanuel Vadot compatible = "renesas,fcpv"; 95c66ec88fSEmmanuel Vadot reg = <0xfea2f000 0x200>; 96c66ec88fSEmmanuel Vadot clocks = <&cpg CPG_MOD 602>; 97c66ec88fSEmmanuel Vadot power-domains = <&sysc R8A7795_PD_ALWAYS_ON>; 98c66ec88fSEmmanuel Vadot resets = <&cpg 602>; 99c66ec88fSEmmanuel Vadot iommus = <&ipmmu_vi0 9>; 100c66ec88fSEmmanuel Vadot }; 101c66ec88fSEmmanuel Vadot... 102