Commit 68e89bb3 authored by Krzysztof Kozlowski's avatar Krzysztof Kozlowski Committed by Rob Herring

dt-bindings: display: samsung,exynos-mixer: convert to dtschema

Convert the Exynos Mixer bindings to DT schema format.

The conversion includes also updates to the bindings, matching the
current DTS and Linux driver:
1. Add clocks required on Exynos4210 and Exynos4212 types of Mixer.
2. Add second memory range on Exynos4210 and Exynos4212.
3. Add interconnects, iommus and power-domains.
Signed-off-by: default avatarKrzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
Signed-off-by: default avatarRob Herring <robh@kernel.org>
Link: https://lore.kernel.org/r/20220208171823.226211-8-krzysztof.kozlowski@canonical.com
parent 6b15415e
Device-Tree bindings for mixer driver
Required properties:
- compatible: value should be one of the following:
1) "samsung,exynos5-mixer" <DEPRECATED>
2) "samsung,exynos4210-mixer"
3) "samsung,exynos4212-mixer"
4) "samsung,exynos5250-mixer"
5) "samsung,exynos5420-mixer"
- reg: physical base address of the mixer and length of memory mapped
region.
- interrupts: interrupt number to the cpu.
- clocks: list of clock IDs from SoC clock driver.
a) mixer: Gate of Mixer IP bus clock.
b) sclk_hdmi: HDMI Special clock, one of the two possible inputs of
mixer mux.
c) hdmi: Gate of HDMI IP bus clock, needed together with sclk_hdmi.
Example:
mixer {
compatible = "samsung,exynos5250-mixer";
reg = <0x14450000 0x10000>;
interrupts = <0 94 0>;
};
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/display/samsung/samsung,exynos-mixer.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#
title: Samsung Exynos SoC Mixer
maintainers:
- Inki Dae <inki.dae@samsung.com>
- Joonyoung Shim <jy0922.shim@samsung.com>
- Seung-Woo Kim <sw0312.kim@samsung.com>
- Kyungmin Park <kyungmin.park@samsung.com>
- Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
description:
Samsung Exynos SoC Mixer is responsible for mixing and blending multiple data
inputs before passing it to an output device. The output is passed to HDMI.
properties:
compatible:
oneOf:
- enum:
- samsung,exynos4210-mixer
- samsung,exynos4212-mixer
- samsung,exynos5250-mixer
- samsung,exynos5420-mixer
- const: samsung,exynos5-mixer
deprecated: true
clocks:
minItems: 3
items:
- description: Gate of Mixer IP bus clock.
- description: Gate of HDMI IP bus clock, needed together with sclk_hdmi.
- description: HDMI Special clock, one of the two possible inputs of
mixer mux.
- description: Video Processor clock.
- description: Mixer mux clock.
- description: Mixer Special clock.
clock-names:
minItems: 3
items:
- const: mixer
- const: hdmi
- const: sclk_hdmi
- const: vp
- const: mout_mixer
- const: sclk_mixer
interconnects:
maxItems: 1
interrupts:
maxItems: 1
iommus:
maxItems: 1
power-domains:
maxItems: 1
reg:
minItems: 1
items:
- description: Mixer memory region.
- description: Video Processor memory region.
required:
- compatible
- clocks
- clock-names
- interrupts
- reg
allOf:
- if:
properties:
compatible:
contains:
const: samsung,exynos4210-mixer
- samsung,exynos4212-mixer
then:
properties:
clocks:
minItems: 6
maxItems: 6
regs:
minItems: 2
maxItems: 2
- if:
properties:
compatible:
contains:
const: samsung,exynos4212-mixer
then:
properties:
clocks:
minItems: 4
maxItems: 4
regs:
minItems: 2
maxItems: 2
- if:
properties:
compatible:
contains:
enum:
- samsung,exynos5-mixer
- samsung,exynos5250-mixer
- samsung,exynos5420-mixer
then:
properties:
clocks:
minItems: 3
maxItems: 3
regs:
minItems: 1
maxItems: 1
additionalProperties: false
examples:
- |
#include <dt-bindings/clock/exynos5250.h>
#include <dt-bindings/interrupt-controller/arm-gic.h>
mixer@14450000 {
compatible = "samsung,exynos5250-mixer";
reg = <0x14450000 0x10000>;
interrupts = <GIC_SPI 94 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&clock CLK_MIXER>,
<&clock CLK_HDMI>,
<&clock CLK_SCLK_HDMI>;
clock-names = "mixer",
"hdmi",
"sclk_hdmi";
iommus = <&sysmmu_tv>;
power-domains = <&pd_disp1>;
};
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment