1 # SPDX-License-Identifier: GPL-2.0-only OR BSD 1 # SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause 2 %YAML 1.2 2 %YAML 1.2 3 --- 3 --- 4 $id: http://devicetree.org/schemas/media/samsu 4 $id: http://devicetree.org/schemas/media/samsung,s5p-mfc.yaml# 5 $schema: http://devicetree.org/meta-schemas/co 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 6 6 7 title: Samsung Exynos Multi Format Codec (MFC) 7 title: Samsung Exynos Multi Format Codec (MFC) 8 8 9 maintainers: 9 maintainers: 10 - Marek Szyprowski <m.szyprowski@samsung.com> 10 - Marek Szyprowski <m.szyprowski@samsung.com> 11 - Aakarsh Jain <aakarsh.jain@samsung.com> 11 - Aakarsh Jain <aakarsh.jain@samsung.com> 12 12 13 description: 13 description: 14 Multi Format Codec (MFC) is the IP present i 14 Multi Format Codec (MFC) is the IP present in Samsung SoCs which 15 supports high resolution decoding and encodi 15 supports high resolution decoding and encoding functionalities. 16 16 17 properties: 17 properties: 18 compatible: 18 compatible: 19 oneOf: 19 oneOf: 20 - enum: 20 - enum: 21 - samsung,exynos5433-mfc # Ex 21 - samsung,exynos5433-mfc # Exynos5433 22 - samsung,mfc-v5 # Ex 22 - samsung,mfc-v5 # Exynos4 23 - samsung,mfc-v6 # Ex 23 - samsung,mfc-v6 # Exynos5 24 - samsung,mfc-v7 # Ex 24 - samsung,mfc-v7 # Exynos5420 25 - samsung,mfc-v8 # Ex 25 - samsung,mfc-v8 # Exynos5800 26 - samsung,mfc-v10 # Ex 26 - samsung,mfc-v10 # Exynos7880 27 - tesla,fsd-mfc # Te 27 - tesla,fsd-mfc # Tesla FSD 28 - items: 28 - items: 29 - enum: 29 - enum: 30 - samsung,exynos3250-mfc # Ex 30 - samsung,exynos3250-mfc # Exynos3250 31 - const: samsung,mfc-v7 # Fa 31 - const: samsung,mfc-v7 # Fall back for Exynos3250 32 32 33 reg: 33 reg: 34 maxItems: 1 34 maxItems: 1 35 35 36 clocks: 36 clocks: 37 minItems: 1 37 minItems: 1 38 maxItems: 3 38 maxItems: 3 39 39 40 clock-names: 40 clock-names: 41 minItems: 1 41 minItems: 1 42 maxItems: 3 42 maxItems: 3 43 43 44 interrupts: 44 interrupts: 45 maxItems: 1 45 maxItems: 1 46 46 47 iommus: 47 iommus: 48 minItems: 1 48 minItems: 1 49 maxItems: 2 49 maxItems: 2 50 50 51 iommu-names: 51 iommu-names: 52 minItems: 1 52 minItems: 1 53 items: 53 items: 54 - const: left 54 - const: left 55 - const: right 55 - const: right 56 56 57 power-domains: 57 power-domains: 58 maxItems: 1 58 maxItems: 1 59 59 60 memory-region: 60 memory-region: 61 minItems: 1 61 minItems: 1 62 maxItems: 2 62 maxItems: 2 63 63 64 required: 64 required: 65 - compatible 65 - compatible 66 - reg 66 - reg 67 - clocks 67 - clocks 68 - clock-names 68 - clock-names 69 - interrupts 69 - interrupts 70 70 71 additionalProperties: false 71 additionalProperties: false 72 72 73 allOf: 73 allOf: 74 - if: 74 - if: 75 properties: 75 properties: 76 compatible: 76 compatible: 77 contains: 77 contains: 78 enum: 78 enum: 79 - samsung,exynos3250-mfc 79 - samsung,exynos3250-mfc 80 then: 80 then: 81 properties: 81 properties: 82 clocks: 82 clocks: 83 maxItems: 2 83 maxItems: 2 84 clock-names: 84 clock-names: 85 items: 85 items: 86 - const: mfc 86 - const: mfc 87 - const: sclk_mfc 87 - const: sclk_mfc 88 iommus: 88 iommus: 89 maxItems: 1 89 maxItems: 1 90 iommu-names: false 90 iommu-names: false 91 91 92 - if: 92 - if: 93 properties: 93 properties: 94 compatible: 94 compatible: 95 contains: 95 contains: 96 enum: 96 enum: 97 - samsung,exynos5433-mfc 97 - samsung,exynos5433-mfc 98 then: 98 then: 99 properties: 99 properties: 100 clocks: 100 clocks: 101 maxItems: 3 101 maxItems: 3 102 clock-names: 102 clock-names: 103 items: 103 items: 104 - const: pclk 104 - const: pclk 105 - const: aclk 105 - const: aclk 106 - const: aclk_xiu 106 - const: aclk_xiu 107 iommus: 107 iommus: 108 minItems: 2 108 minItems: 2 109 iommu-names: 109 iommu-names: 110 minItems: 2 110 minItems: 2 111 111 112 - if: 112 - if: 113 properties: 113 properties: 114 compatible: 114 compatible: 115 contains: 115 contains: 116 enum: 116 enum: 117 - samsung,mfc-v5 117 - samsung,mfc-v5 118 then: 118 then: 119 properties: 119 properties: 120 clocks: 120 clocks: 121 maxItems: 2 121 maxItems: 2 122 clock-names: 122 clock-names: 123 items: 123 items: 124 - const: mfc 124 - const: mfc 125 - const: sclk_mfc 125 - const: sclk_mfc 126 iommus: 126 iommus: 127 minItems: 2 127 minItems: 2 128 iommu-names: 128 iommu-names: 129 minItems: 2 129 minItems: 2 130 130 131 - if: 131 - if: 132 properties: 132 properties: 133 compatible: 133 compatible: 134 contains: 134 contains: 135 enum: 135 enum: 136 - samsung,mfc-v6 136 - samsung,mfc-v6 137 - samsung,mfc-v8 137 - samsung,mfc-v8 138 then: 138 then: 139 properties: 139 properties: 140 clocks: 140 clocks: 141 maxItems: 1 141 maxItems: 1 142 clock-names: 142 clock-names: 143 items: 143 items: 144 - const: mfc 144 - const: mfc 145 iommus: 145 iommus: 146 minItems: 2 146 minItems: 2 147 iommu-names: 147 iommu-names: 148 minItems: 2 148 minItems: 2 149 149 150 - if: 150 - if: 151 properties: 151 properties: 152 compatible: 152 compatible: 153 contains: 153 contains: 154 enum: 154 enum: 155 - samsung,mfc-v7 155 - samsung,mfc-v7 156 then: 156 then: 157 properties: 157 properties: 158 clocks: 158 clocks: 159 minItems: 1 159 minItems: 1 160 maxItems: 2 160 maxItems: 2 161 161 162 - if: 162 - if: 163 properties: 163 properties: 164 compatible: 164 compatible: 165 contains: 165 contains: 166 enum: 166 enum: 167 - tesla,fsd-mfc 167 - tesla,fsd-mfc 168 then: 168 then: 169 properties: 169 properties: 170 clocks: 170 clocks: 171 maxItems: 1 171 maxItems: 1 172 clock-names: 172 clock-names: 173 items: 173 items: 174 - const: mfc 174 - const: mfc 175 iommus: 175 iommus: 176 maxItems: 2 176 maxItems: 2 177 iommus-names: false 177 iommus-names: false 178 178 179 examples: 179 examples: 180 - | 180 - | 181 #include <dt-bindings/clock/exynos4.h> 181 #include <dt-bindings/clock/exynos4.h> 182 #include <dt-bindings/clock/exynos-audss-c 182 #include <dt-bindings/clock/exynos-audss-clk.h> 183 #include <dt-bindings/interrupt-controller 183 #include <dt-bindings/interrupt-controller/arm-gic.h> 184 #include <dt-bindings/interrupt-controller 184 #include <dt-bindings/interrupt-controller/irq.h> 185 185 186 codec@13400000 { 186 codec@13400000 { 187 compatible = "samsung,mfc-v5"; 187 compatible = "samsung,mfc-v5"; 188 reg = <0x13400000 0x10000>; 188 reg = <0x13400000 0x10000>; 189 interrupts = <GIC_SPI 94 IRQ_TYPE_LEVE 189 interrupts = <GIC_SPI 94 IRQ_TYPE_LEVEL_HIGH>; 190 power-domains = <&pd_mfc>; 190 power-domains = <&pd_mfc>; 191 clocks = <&clock CLK_MFC>, <&clock CLK 191 clocks = <&clock CLK_MFC>, <&clock CLK_SCLK_MFC>; 192 clock-names = "mfc", "sclk_mfc"; 192 clock-names = "mfc", "sclk_mfc"; 193 iommus = <&sysmmu_mfc_l>, <&sysmmu_mfc 193 iommus = <&sysmmu_mfc_l>, <&sysmmu_mfc_r>; 194 iommu-names = "left", "right"; 194 iommu-names = "left", "right"; 195 }; 195 };
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.