File Index
Files and directories
Sign in
FILE

mediatek,mdp3-rdma.yaml

File preview with syntax highlighting.

linux-6.19.14/Documentation/devicetree/bindings/media/mediatek,mdp3-rdma.yaml 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/mediatek,mdp3-rdma.yaml#
  5$schema: http://devicetree.org/meta-schemas/core.yaml#
  6
  7title: MediaTek Read Direct Memory Access
  8
  9maintainers:
 10  - Matthias Brugger <matthias.bgg@gmail.com>
 11  - Moudy Ho <moudy.ho@mediatek.com>
 12
 13description: |
 14  MediaTek Read Direct Memory Access(RDMA) component used to do read DMA.
 15  It contains one line buffer to store the sufficient pixel data, and
 16  must be siblings to the central MMSYS_CONFIG node.
 17  For a description of the MMSYS_CONFIG binding, see
 18  Documentation/devicetree/bindings/arm/mediatek/mediatek,mmsys.yaml
 19  for details.
 20
 21properties:
 22  compatible:
 23    oneOf:
 24      - enum:
 25          - mediatek,mt8183-mdp3-rdma
 26          - mediatek,mt8188-mdp3-rdma
 27          - mediatek,mt8195-mdp3-rdma
 28          - mediatek,mt8195-vdo1-rdma
 29      - items:
 30          - const: mediatek,mt8188-vdo1-rdma
 31          - const: mediatek,mt8195-vdo1-rdma
 32
 33  reg:
 34    maxItems: 1
 35
 36  mediatek,gce-client-reg:
 37    $ref: /schemas/types.yaml#/definitions/phandle-array
 38    items:
 39      items:
 40        - description: phandle of GCE
 41        - description: GCE subsys id
 42        - description: register offset
 43        - description: register size
 44    description: The register of client driver can be configured by gce with
 45      4 arguments defined in this property. Each GCE subsys id is mapping to
 46      a client defined in the header include/dt-bindings/gce/<chip>-gce.h.
 47
 48  mediatek,gce-events:
 49    description:
 50      The event id which is mapping to the specific hardware event signal
 51      to gce. The event id is defined in the gce header
 52      include/dt-bindings/gce/<chip>-gce.h of each chips.
 53    $ref: /schemas/types.yaml#/definitions/uint32-array
 54
 55  mediatek,scp:
 56    $ref: /schemas/types.yaml#/definitions/phandle
 57    description:
 58      Phandle to the System Control Processor (SCP) used for initializing
 59      and stopping the MDP3, for sending frame data locations to the MDP3's
 60      VPU and to install Inter-Processor Interrupt handlers to control
 61      processing states.
 62
 63  power-domains:
 64    maxItems: 1
 65
 66  clocks:
 67    items:
 68      - description: RDMA clock
 69      - description: RSZ clock
 70    minItems: 1
 71
 72  iommus:
 73    maxItems: 1
 74
 75  mboxes:
 76    items:
 77      - description: used for 1st data pipe from RDMA
 78      - description: used for 2nd data pipe from RDMA
 79      - description: used for 3rd data pipe from RDMA
 80      - description: used for 4th data pipe from RDMA
 81      - description: used for the data pipe from SPLIT
 82    minItems: 1
 83
 84  interrupts:
 85    maxItems: 1
 86
 87  '#dma-cells':
 88    const: 1
 89
 90required:
 91  - compatible
 92  - reg
 93  - mediatek,gce-client-reg
 94  - power-domains
 95  - clocks
 96  - iommus
 97  - '#dma-cells'
 98
 99allOf:
100  - if:
101      properties:
102        compatible:
103          contains:
104            const: mediatek,mt8183-mdp3-rdma
105
106    then:
107      properties:
108        clocks:
109          minItems: 2
110
111        mboxes:
112          minItems: 2
113
114      required:
115        - mboxes
116        - mediatek,gce-events
117
118  - if:
119      properties:
120        compatible:
121          contains:
122            const: mediatek,mt8195-mdp3-rdma
123
124    then:
125      properties:
126        clocks:
127          maxItems: 1
128
129        mboxes:
130          minItems: 5
131
132      required:
133        - mediatek,gce-events
134
135  - if:
136      properties:
137        compatible:
138          contains:
139            const: mediatek,mt8195-vdo1-rdma
140
141    then:
142      properties:
143        clocks:
144          maxItems: 1
145
146additionalProperties: false
147
148examples:
149  - |
150    #include <dt-bindings/clock/mt8183-clk.h>
151    #include <dt-bindings/gce/mt8183-gce.h>
152    #include <dt-bindings/power/mt8183-power.h>
153    #include <dt-bindings/memory/mt8183-larb-port.h>
154
155    dma-controller@14001000 {
156        compatible = "mediatek,mt8183-mdp3-rdma";
157        reg = <0x14001000 0x1000>;
158        mediatek,gce-client-reg = <&gce SUBSYS_1400XXXX 0x1000 0x1000>;
159        mediatek,gce-events = <CMDQ_EVENT_MDP_RDMA0_SOF>,
160                              <CMDQ_EVENT_MDP_RDMA0_EOF>;
161        power-domains = <&spm MT8183_POWER_DOMAIN_DISP>;
162        clocks = <&mmsys CLK_MM_MDP_RDMA0>,
163                 <&mmsys CLK_MM_MDP_RSZ1>;
164        iommus = <&iommu>;
165        mboxes = <&gce 20 CMDQ_THR_PRIO_LOWEST>,
166                 <&gce 21 CMDQ_THR_PRIO_LOWEST>;
167        #dma-cells = <1>;
168    };
~/ Read-only file preview.