Linux Audio

Check our new training course

Linux BSP development engineering services

Need help to port Linux and bootloaders to your hardware?
Loading...
  1# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
  2# Copyright 2019 BayLibre, SAS
  3%YAML 1.2
  4---
  5$id: http://devicetree.org/schemas/power/amlogic,meson-ee-pwrc.yaml#
  6$schema: http://devicetree.org/meta-schemas/core.yaml#
  7
  8title: Amlogic Meson Everything-Else Power Domains
  9
 10maintainers:
 11  - Neil Armstrong <neil.armstrong@linaro.org>
 12
 13description: |+
 14  The Everything-Else Power Domains node should be the child of a syscon
 15  node with the required property:
 16
 17  - compatible: Should be the following:
 18                "amlogic,meson-gx-hhi-sysctrl", "simple-mfd", "syscon"
 19
 20  Refer to the bindings described in
 21  Documentation/devicetree/bindings/mfd/syscon.yaml
 22
 23properties:
 24  compatible:
 25    enum:
 26      - amlogic,meson8-pwrc
 27      - amlogic,meson8b-pwrc
 28      - amlogic,meson8m2-pwrc
 29      - amlogic,meson-gxbb-pwrc
 30      - amlogic,meson-axg-pwrc
 31      - amlogic,meson-g12a-pwrc
 32      - amlogic,meson-sm1-pwrc
 33
 34  clocks:
 35    minItems: 1
 36    maxItems: 2
 37
 38  clock-names:
 39    minItems: 1
 40    items:
 41      - const: vpu
 42      - const: vapb
 43
 44  resets:
 45    minItems: 5
 46    maxItems: 12
 47
 48  reset-names:
 49    minItems: 5
 50    maxItems: 12
 51
 52  "#power-domain-cells":
 53    const: 1
 54
 55  amlogic,ao-sysctrl:
 56    description: phandle to the AO sysctrl node
 57    $ref: /schemas/types.yaml#/definitions/phandle
 58
 59allOf:
 60  - if:
 61      properties:
 62        compatible:
 63          enum:
 64            - amlogic,meson8b-pwrc
 65            - amlogic,meson8m2-pwrc
 66    then:
 67      properties:
 68        reset-names:
 69          items:
 70            - const: dblk
 71            - const: pic_dc
 72            - const: hdmi_apb
 73            - const: hdmi_system
 74            - const: venci
 75            - const: vencp
 76            - const: vdac
 77            - const: vencl
 78            - const: viu
 79            - const: venc
 80            - const: rdma
 81      required:
 82        - resets
 83        - reset-names
 84
 85  - if:
 86      properties:
 87        compatible:
 88          enum:
 89            - amlogic,meson-gxbb-pwrc
 90    then:
 91      properties:
 92        reset-names:
 93          items:
 94            - const: viu
 95            - const: venc
 96            - const: vcbus
 97            - const: bt656
 98            - const: dvin
 99            - const: rdma
100            - const: venci
101            - const: vencp
102            - const: vdac
103            - const: vdi6
104            - const: vencl
105            - const: vid_lock
106      required:
107        - resets
108        - reset-names
109
110  - if:
111      properties:
112        compatible:
113          enum:
114            - amlogic,meson-axg-pwrc
115    then:
116      properties:
117        reset-names:
118          items:
119            - const: viu
120            - const: venc
121            - const: vcbus
122            - const: vencl
123            - const: vid_lock
124      required:
125        - resets
126        - reset-names
127
128  - if:
129      properties:
130        compatible:
131          enum:
132            - amlogic,meson-g12a-pwrc
133            - amlogic,meson-sm1-pwrc
134    then:
135      properties:
136        reset-names:
137          items:
138            - const: viu
139            - const: venc
140            - const: vcbus
141            - const: bt656
142            - const: rdma
143            - const: venci
144            - const: vencp
145            - const: vdac
146            - const: vdi6
147            - const: vencl
148            - const: vid_lock
149      required:
150        - resets
151        - reset-names
152
153required:
154  - compatible
155  - clocks
156  - clock-names
157  - "#power-domain-cells"
158  - amlogic,ao-sysctrl
159
160additionalProperties: false
161
162examples:
163  - |
164    pwrc: power-controller {
165          compatible = "amlogic,meson-sm1-pwrc";
166          #power-domain-cells = <1>;
167          amlogic,ao-sysctrl = <&rti>;
168          resets = <&reset_viu>,
169                   <&reset_venc>,
170                   <&reset_vcbus>,
171                   <&reset_bt656>,
172                   <&reset_rdma>,
173                   <&reset_venci>,
174                   <&reset_vencp>,
175                   <&reset_vdac>,
176                   <&reset_vdi6>,
177                   <&reset_vencl>,
178                   <&reset_vid_lock>;
179          reset-names = "viu", "venc", "vcbus", "bt656",
180                        "rdma", "venci", "vencp", "vdac",
181                        "vdi6", "vencl", "vid_lock";
182          clocks = <&clk_vpu>, <&clk_vapb>;
183          clock-names = "vpu", "vapb";
184    };