GNU Linux-libre 6.1.90-gnu
[releases.git] / Documentation / devicetree / bindings / media / samsung,exynos5250-gsc.yaml
1 # SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
2 %YAML 1.2
3 ---
4 $id: http://devicetree.org/schemas/media/samsung,exynos5250-gsc.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
6
7 title: Samsung Exynos SoC G-Scaler
8
9 maintainers:
10   - Inki Dae <inki.dae@samsung.com>
11   - Krzysztof Kozlowski <krzk@kernel.org>
12   - Seung-Woo Kim <sw0312.kim@samsung.com
13
14 description:
15   G-Scaler is used for scaling and color space conversion on Samsung Exynos
16   SoCs.
17
18   Each G-Scaler node should have a numbered alias in the aliases node, in the
19   form of gscN, N = 0...3.
20
21 properties:
22   compatible:
23     oneOf:
24       - items:
25           - enum:
26               - samsung,exynos5250-gsc
27               - samsung,exynos5420-gsc
28           - const: samsung,exynos5-gsc
29       - enum:
30           - samsung,exynos5433-gsc
31       - const: samsung,exynos5-gsc
32         deprecated: True
33
34   clocks:
35     minItems: 1
36     maxItems: 5
37
38   clock-names:
39     minItems: 1
40     maxItems: 5
41
42   interrupts:
43     maxItems: 1
44
45   iommus:
46     maxItems: 1
47
48   power-domains:
49     maxItems: 1
50
51   reg:
52     maxItems: 1
53
54   samsung,sysreg:
55     $ref: /schemas/types.yaml#/definitions/phandle
56     description:
57       Syscon used to control the system registers to set writeback input and destination.
58
59 required:
60   - compatible
61   - clocks
62   - clock-names
63   - interrupts
64   - reg
65
66 allOf:
67   - if:
68       properties:
69         compatible:
70           contains:
71             enum:
72               - samsung,exynos5-gsc
73               - samsung,exynos5250-gsc
74               - samsung,exynos5420-gsc
75     then:
76       properties:
77         clocks:
78           maxItems: 1
79         clock-names:
80           items:
81             - const: gscl
82     else:
83       properties:
84         clocks:
85           minItems: 5
86         clock-names:
87           items:
88             - const: pclk
89             - const: aclk
90             - const: aclk_xiu
91             - const: aclk_gsclbend
92             - const: gsd
93
94 additionalProperties: false
95
96 examples:
97   - |
98     #include <dt-bindings/clock/exynos5250.h>
99     #include <dt-bindings/interrupt-controller/arm-gic.h>
100
101     video-scaler@13e00000 {
102         compatible = "samsung,exynos5250-gsc", "samsung,exynos5-gsc";
103         reg = <0x13e00000 0x1000>;
104         interrupts = <GIC_SPI 85 IRQ_TYPE_LEVEL_HIGH>;
105         power-domains = <&pd_gsc>;
106         clocks = <&clock CLK_GSCL0>;
107         clock-names = "gscl";
108         iommus = <&sysmmu_gsc0>;
109     };