1538af6e5SAakarsh Jain# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause 2538af6e5SAakarsh Jain%YAML 1.2 3538af6e5SAakarsh Jain--- 4538af6e5SAakarsh Jain$id: http://devicetree.org/schemas/media/samsung,s5p-mfc.yaml# 5538af6e5SAakarsh Jain$schema: http://devicetree.org/meta-schemas/core.yaml# 6538af6e5SAakarsh Jain 7538af6e5SAakarsh Jaintitle: Samsung Exynos Multi Format Codec (MFC) 8538af6e5SAakarsh Jain 9538af6e5SAakarsh Jainmaintainers: 10538af6e5SAakarsh Jain - Marek Szyprowski <m.szyprowski@samsung.com> 11538af6e5SAakarsh Jain - Aakarsh Jain <aakarsh.jain@samsung.com> 12538af6e5SAakarsh Jain 13538af6e5SAakarsh Jaindescription: 14538af6e5SAakarsh Jain Multi Format Codec (MFC) is the IP present in Samsung SoCs which 15538af6e5SAakarsh Jain supports high resolution decoding and encoding functionalities. 16538af6e5SAakarsh Jain 17538af6e5SAakarsh Jainproperties: 18538af6e5SAakarsh Jain compatible: 19538af6e5SAakarsh Jain oneOf: 20538af6e5SAakarsh Jain - enum: 21538af6e5SAakarsh Jain - samsung,exynos5433-mfc # Exynos5433 22538af6e5SAakarsh Jain - samsung,mfc-v5 # Exynos4 23538af6e5SAakarsh Jain - samsung,mfc-v6 # Exynos5 24538af6e5SAakarsh Jain - samsung,mfc-v7 # Exynos5420 25538af6e5SAakarsh Jain - samsung,mfc-v8 # Exynos5800 26538af6e5SAakarsh Jain - samsung,mfc-v10 # Exynos7880 273253a8cdSAakarsh Jain - tesla,fsd-mfc # Tesla FSD 28538af6e5SAakarsh Jain - items: 29538af6e5SAakarsh Jain - enum: 30538af6e5SAakarsh Jain - samsung,exynos3250-mfc # Exynos3250 31538af6e5SAakarsh Jain - const: samsung,mfc-v7 # Fall back for Exynos3250 32538af6e5SAakarsh Jain 33538af6e5SAakarsh Jain reg: 34538af6e5SAakarsh Jain maxItems: 1 35538af6e5SAakarsh Jain 36538af6e5SAakarsh Jain clocks: 37538af6e5SAakarsh Jain minItems: 1 38538af6e5SAakarsh Jain maxItems: 3 39538af6e5SAakarsh Jain 40538af6e5SAakarsh Jain clock-names: 41538af6e5SAakarsh Jain minItems: 1 42538af6e5SAakarsh Jain maxItems: 3 43538af6e5SAakarsh Jain 44538af6e5SAakarsh Jain interrupts: 45538af6e5SAakarsh Jain maxItems: 1 46538af6e5SAakarsh Jain 47538af6e5SAakarsh Jain iommus: 48538af6e5SAakarsh Jain minItems: 1 49538af6e5SAakarsh Jain maxItems: 2 50538af6e5SAakarsh Jain 51538af6e5SAakarsh Jain iommu-names: 52538af6e5SAakarsh Jain minItems: 1 53*a1499b75SRob Herring items: 54*a1499b75SRob Herring - const: left 55*a1499b75SRob Herring - const: right 56538af6e5SAakarsh Jain 57538af6e5SAakarsh Jain power-domains: 58538af6e5SAakarsh Jain maxItems: 1 59538af6e5SAakarsh Jain 60538af6e5SAakarsh Jain memory-region: 61538af6e5SAakarsh Jain minItems: 1 62538af6e5SAakarsh Jain maxItems: 2 63538af6e5SAakarsh Jain 64538af6e5SAakarsh Jainrequired: 65538af6e5SAakarsh Jain - compatible 66538af6e5SAakarsh Jain - reg 67538af6e5SAakarsh Jain - clocks 68538af6e5SAakarsh Jain - clock-names 69538af6e5SAakarsh Jain - interrupts 70538af6e5SAakarsh Jain 71538af6e5SAakarsh JainadditionalProperties: false 72538af6e5SAakarsh Jain 73538af6e5SAakarsh JainallOf: 74538af6e5SAakarsh Jain - if: 75538af6e5SAakarsh Jain properties: 76538af6e5SAakarsh Jain compatible: 77538af6e5SAakarsh Jain contains: 78538af6e5SAakarsh Jain enum: 79538af6e5SAakarsh Jain - samsung,exynos3250-mfc 80538af6e5SAakarsh Jain then: 81538af6e5SAakarsh Jain properties: 82538af6e5SAakarsh Jain clocks: 83538af6e5SAakarsh Jain maxItems: 2 84538af6e5SAakarsh Jain clock-names: 85538af6e5SAakarsh Jain items: 86538af6e5SAakarsh Jain - const: mfc 87538af6e5SAakarsh Jain - const: sclk_mfc 88538af6e5SAakarsh Jain iommus: 89538af6e5SAakarsh Jain maxItems: 1 90*a1499b75SRob Herring iommu-names: false 91538af6e5SAakarsh Jain 92538af6e5SAakarsh Jain - if: 93538af6e5SAakarsh Jain properties: 94538af6e5SAakarsh Jain compatible: 95538af6e5SAakarsh Jain contains: 96538af6e5SAakarsh Jain enum: 97538af6e5SAakarsh Jain - samsung,exynos5433-mfc 98538af6e5SAakarsh Jain then: 99538af6e5SAakarsh Jain properties: 100538af6e5SAakarsh Jain clocks: 101538af6e5SAakarsh Jain maxItems: 3 102538af6e5SAakarsh Jain clock-names: 103538af6e5SAakarsh Jain items: 104538af6e5SAakarsh Jain - const: pclk 105538af6e5SAakarsh Jain - const: aclk 106538af6e5SAakarsh Jain - const: aclk_xiu 107538af6e5SAakarsh Jain iommus: 108*a1499b75SRob Herring minItems: 2 109*a1499b75SRob Herring iommu-names: 110*a1499b75SRob Herring minItems: 2 111538af6e5SAakarsh Jain 112538af6e5SAakarsh Jain - if: 113538af6e5SAakarsh Jain properties: 114538af6e5SAakarsh Jain compatible: 115538af6e5SAakarsh Jain contains: 116538af6e5SAakarsh Jain enum: 117538af6e5SAakarsh Jain - samsung,mfc-v5 118538af6e5SAakarsh Jain then: 119538af6e5SAakarsh Jain properties: 120538af6e5SAakarsh Jain clocks: 121538af6e5SAakarsh Jain maxItems: 2 122538af6e5SAakarsh Jain clock-names: 123538af6e5SAakarsh Jain items: 124538af6e5SAakarsh Jain - const: mfc 125538af6e5SAakarsh Jain - const: sclk_mfc 126538af6e5SAakarsh Jain iommus: 127*a1499b75SRob Herring minItems: 2 128*a1499b75SRob Herring iommu-names: 129*a1499b75SRob Herring minItems: 2 130538af6e5SAakarsh Jain 131538af6e5SAakarsh Jain - if: 132538af6e5SAakarsh Jain properties: 133538af6e5SAakarsh Jain compatible: 134538af6e5SAakarsh Jain contains: 135538af6e5SAakarsh Jain enum: 136538af6e5SAakarsh Jain - samsung,mfc-v6 137538af6e5SAakarsh Jain - samsung,mfc-v8 138538af6e5SAakarsh Jain then: 139538af6e5SAakarsh Jain properties: 140538af6e5SAakarsh Jain clocks: 141538af6e5SAakarsh Jain maxItems: 1 142538af6e5SAakarsh Jain clock-names: 143538af6e5SAakarsh Jain items: 144538af6e5SAakarsh Jain - const: mfc 145538af6e5SAakarsh Jain iommus: 146*a1499b75SRob Herring minItems: 2 147*a1499b75SRob Herring iommu-names: 148*a1499b75SRob Herring minItems: 2 149538af6e5SAakarsh Jain 150538af6e5SAakarsh Jain - if: 151538af6e5SAakarsh Jain properties: 152538af6e5SAakarsh Jain compatible: 153538af6e5SAakarsh Jain contains: 154538af6e5SAakarsh Jain enum: 155538af6e5SAakarsh Jain - samsung,mfc-v7 156538af6e5SAakarsh Jain then: 157538af6e5SAakarsh Jain properties: 158538af6e5SAakarsh Jain clocks: 159538af6e5SAakarsh Jain minItems: 1 160538af6e5SAakarsh Jain maxItems: 2 161538af6e5SAakarsh Jain 1623253a8cdSAakarsh Jain - if: 1633253a8cdSAakarsh Jain properties: 1643253a8cdSAakarsh Jain compatible: 1653253a8cdSAakarsh Jain contains: 1663253a8cdSAakarsh Jain enum: 1673253a8cdSAakarsh Jain - tesla,fsd-mfc 1683253a8cdSAakarsh Jain then: 1693253a8cdSAakarsh Jain properties: 1703253a8cdSAakarsh Jain clocks: 1713253a8cdSAakarsh Jain maxItems: 1 1723253a8cdSAakarsh Jain clock-names: 1733253a8cdSAakarsh Jain items: 1743253a8cdSAakarsh Jain - const: mfc 1753253a8cdSAakarsh Jain iommus: 1763253a8cdSAakarsh Jain maxItems: 2 1773253a8cdSAakarsh Jain iommus-names: false 1783253a8cdSAakarsh Jain 179538af6e5SAakarsh Jainexamples: 180538af6e5SAakarsh Jain - | 181538af6e5SAakarsh Jain #include <dt-bindings/clock/exynos4.h> 182538af6e5SAakarsh Jain #include <dt-bindings/clock/exynos-audss-clk.h> 183538af6e5SAakarsh Jain #include <dt-bindings/interrupt-controller/arm-gic.h> 184538af6e5SAakarsh Jain #include <dt-bindings/interrupt-controller/irq.h> 185538af6e5SAakarsh Jain 186538af6e5SAakarsh Jain codec@13400000 { 187538af6e5SAakarsh Jain compatible = "samsung,mfc-v5"; 188538af6e5SAakarsh Jain reg = <0x13400000 0x10000>; 189538af6e5SAakarsh Jain interrupts = <GIC_SPI 94 IRQ_TYPE_LEVEL_HIGH>; 190538af6e5SAakarsh Jain power-domains = <&pd_mfc>; 191538af6e5SAakarsh Jain clocks = <&clock CLK_MFC>, <&clock CLK_SCLK_MFC>; 192538af6e5SAakarsh Jain clock-names = "mfc", "sclk_mfc"; 193538af6e5SAakarsh Jain iommus = <&sysmmu_mfc_l>, <&sysmmu_mfc_r>; 194538af6e5SAakarsh Jain iommu-names = "left", "right"; 195538af6e5SAakarsh Jain }; 196