0001 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
0002 %YAML 1.2
0003 ---
0004 $id: http://devicetree.org/schemas/display/samsung/samsung,exynos-mixer.yaml#
0005 $schema: http://devicetree.org/meta-schemas/core.yaml#
0006
0007 title: Samsung Exynos SoC Mixer
0008
0009 maintainers:
0010 - Inki Dae <inki.dae@samsung.com>
0011 - Seung-Woo Kim <sw0312.kim@samsung.com>
0012 - Kyungmin Park <kyungmin.park@samsung.com>
0013 - Krzysztof Kozlowski <krzk@kernel.org>
0014
0015 description:
0016 Samsung Exynos SoC Mixer is responsible for mixing and blending multiple data
0017 inputs before passing it to an output device. The output is passed to HDMI.
0018
0019 properties:
0020 compatible:
0021 oneOf:
0022 - enum:
0023 - samsung,exynos4210-mixer
0024 - samsung,exynos4212-mixer
0025 - samsung,exynos5250-mixer
0026 - samsung,exynos5420-mixer
0027 - const: samsung,exynos5-mixer
0028 deprecated: true
0029
0030 clocks:
0031 minItems: 3
0032 items:
0033 - description: Gate of Mixer IP bus clock.
0034 - description: Gate of HDMI IP bus clock, needed together with sclk_hdmi.
0035 - description: HDMI Special clock, one of the two possible inputs of
0036 mixer mux.
0037 - description: Video Processor clock.
0038 - description: Mixer mux clock.
0039 - description: Mixer Special clock.
0040
0041 clock-names:
0042 minItems: 3
0043 items:
0044 - const: mixer
0045 - const: hdmi
0046 - const: sclk_hdmi
0047 - const: vp
0048 - const: mout_mixer
0049 - const: sclk_mixer
0050
0051 interconnects:
0052 maxItems: 1
0053
0054 interrupts:
0055 maxItems: 1
0056
0057 iommus:
0058 maxItems: 1
0059
0060 power-domains:
0061 maxItems: 1
0062
0063 reg:
0064 minItems: 1
0065 items:
0066 - description: Mixer memory region.
0067 - description: Video Processor memory region.
0068
0069 required:
0070 - compatible
0071 - clocks
0072 - clock-names
0073 - interrupts
0074 - reg
0075
0076 allOf:
0077 - if:
0078 properties:
0079 compatible:
0080 contains:
0081 const: samsung,exynos4210-mixer
0082 - samsung,exynos4212-mixer
0083 then:
0084 properties:
0085 clocks:
0086 minItems: 6
0087 maxItems: 6
0088 regs:
0089 minItems: 2
0090 maxItems: 2
0091
0092 - if:
0093 properties:
0094 compatible:
0095 contains:
0096 const: samsung,exynos4212-mixer
0097 then:
0098 properties:
0099 clocks:
0100 minItems: 4
0101 maxItems: 4
0102 regs:
0103 minItems: 2
0104 maxItems: 2
0105
0106 - if:
0107 properties:
0108 compatible:
0109 contains:
0110 enum:
0111 - samsung,exynos5-mixer
0112 - samsung,exynos5250-mixer
0113 - samsung,exynos5420-mixer
0114 then:
0115 properties:
0116 clocks:
0117 minItems: 3
0118 maxItems: 3
0119 regs:
0120 minItems: 1
0121 maxItems: 1
0122
0123 additionalProperties: false
0124
0125 examples:
0126 - |
0127 #include <dt-bindings/clock/exynos5250.h>
0128 #include <dt-bindings/interrupt-controller/arm-gic.h>
0129
0130 mixer@14450000 {
0131 compatible = "samsung,exynos5250-mixer";
0132 reg = <0x14450000 0x10000>;
0133 interrupts = <GIC_SPI 94 IRQ_TYPE_LEVEL_HIGH>;
0134 clocks = <&clock CLK_MIXER>,
0135 <&clock CLK_HDMI>,
0136 <&clock CLK_SCLK_HDMI>;
0137 clock-names = "mixer",
0138 "hdmi",
0139 "sclk_hdmi";
0140 iommus = <&sysmmu_tv>;
0141 power-domains = <&pd_disp1>;
0142 };