hc
2024-02-20 102a0743326a03cd1a1202ceda21e175b7d3575c
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
# SPDX-License-Identifier: GPL-2.0
%YAML 1.2
---
$id: http://devicetree.org/schemas/display/allwinner,sun4i-a10-display-frontend.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#
 
title: Allwinner A10 Display Engine Frontend Device Tree Bindings
 
maintainers:
  - Chen-Yu Tsai <wens@csie.org>
  - Maxime Ripard <mripard@kernel.org>
 
description: |
  The display engine frontend does formats conversion, scaling,
  deinterlacing and color space conversion.
 
properties:
  compatible:
    enum:
      - allwinner,sun4i-a10-display-frontend
      - allwinner,sun5i-a13-display-frontend
      - allwinner,sun6i-a31-display-frontend
      - allwinner,sun7i-a20-display-frontend
      - allwinner,sun8i-a23-display-frontend
      - allwinner,sun8i-a33-display-frontend
      - allwinner,sun9i-a80-display-frontend
 
  reg:
    maxItems: 1
 
  interrupts:
    maxItems: 1
 
  clocks:
    items:
      - description: The frontend interface clock
      - description: The frontend module clock
      - description: The frontend DRAM clock
 
  clock-names:
    items:
      - const: ahb
      - const: mod
      - const: ram
 
  # FIXME: This should be made required eventually once every SoC will
  # have the MBUS declared.
  interconnects:
    maxItems: 1
 
  # FIXME: This should be made required eventually once every SoC will
  # have the MBUS declared.
  interconnect-names:
    const: dma-mem
 
  resets:
    maxItems: 1
 
  ports:
    type: object
    description: |
      A ports node with endpoint definitions as defined in
      Documentation/devicetree/bindings/media/video-interfaces.txt.
 
    properties:
      "#address-cells":
        const: 1
 
      "#size-cells":
        const: 0
 
      port@0:
        type: object
        description: |
          Input endpoints of the controller.
 
      port@1:
        type: object
        description: |
          Output endpoints of the controller.
 
    required:
      - "#address-cells"
      - "#size-cells"
      - port@1
 
    additionalProperties: false
 
required:
  - compatible
  - reg
  - interrupts
  - clocks
  - clock-names
  - resets
  - ports
 
additionalProperties: false
 
examples:
  - |
    #include <dt-bindings/clock/sun4i-a10-ccu.h>
    #include <dt-bindings/reset/sun4i-a10-ccu.h>
 
    fe0: display-frontend@1e00000 {
        compatible = "allwinner,sun4i-a10-display-frontend";
        reg = <0x01e00000 0x20000>;
        interrupts = <47>;
        clocks = <&ccu CLK_AHB_DE_FE0>, <&ccu CLK_DE_FE0>,
                 <&ccu CLK_DRAM_DE_FE0>;
        clock-names = "ahb", "mod",
                      "ram";
        resets = <&ccu RST_DE_FE0>;
 
        ports {
            #address-cells = <1>;
            #size-cells = <0>;
 
            fe0_out: port@1 {
                #address-cells = <1>;
                #size-cells = <0>;
                reg = <1>;
 
                fe0_out_be0: endpoint@0 {
                    reg = <0>;
                    remote-endpoint = <&be0_in_fe0>;
                };
 
                fe0_out_be1: endpoint@1 {
                    reg = <1>;
                    remote-endpoint = <&be1_in_fe0>;
                };
            };
        };
    };
 
 
...