File Index
Files and directories
Sign in
FILE

allwinner,sun4i-a10-spdif.yaml

File preview with syntax highlighting.

linux-6.19.14/Documentation/devicetree/bindings/sound/allwinner,sun4i-a10-spdif.yaml YAML
  1# SPDX-License-Identifier: GPL-2.0
  2%YAML 1.2
  3---
  4$id: http://devicetree.org/schemas/sound/allwinner,sun4i-a10-spdif.yaml#
  5$schema: http://devicetree.org/meta-schemas/core.yaml#
  6
  7title: Allwinner A10 S/PDIF Controller
  8
  9maintainers:
 10  - Chen-Yu Tsai <wens@csie.org>
 11  - Liam Girdwood <lgirdwood@gmail.com>
 12  - Mark Brown <broonie@kernel.org>
 13  - Maxime Ripard <mripard@kernel.org>
 14
 15properties:
 16  "#sound-dai-cells":
 17    const: 0
 18
 19  compatible:
 20    oneOf:
 21      - const: allwinner,sun4i-a10-spdif
 22      - const: allwinner,sun6i-a31-spdif
 23      - const: allwinner,sun8i-h3-spdif
 24      - const: allwinner,sun50i-h6-spdif
 25      - const: allwinner,sun50i-h616-spdif
 26      - const: allwinner,sun55i-a523-spdif
 27      - items:
 28          - const: allwinner,sun8i-a83t-spdif
 29          - const: allwinner,sun8i-h3-spdif
 30      - items:
 31          - const: allwinner,sun50i-a64-spdif
 32          - const: allwinner,sun8i-h3-spdif
 33
 34  reg:
 35    maxItems: 1
 36
 37  interrupts:
 38    maxItems: 1
 39
 40  clocks:
 41    minItems: 2
 42    maxItems: 3
 43
 44  clock-names:
 45    minItems: 2
 46    maxItems: 3
 47
 48  # Even though it only applies to subschemas under the conditionals,
 49  # not listing them here will trigger a warning because of the
 50  # additionalsProperties set to false.
 51  dmas: true
 52  dma-names: true
 53  resets:
 54    maxItems: 1
 55
 56allOf:
 57  - $ref: dai-common.yaml#
 58  - if:
 59      properties:
 60        compatible:
 61          contains:
 62            enum:
 63              - allwinner,sun6i-a31-spdif
 64              - allwinner,sun8i-h3-spdif
 65              - allwinner,sun50i-h6-spdif
 66              - allwinner,sun50i-h616-spdif
 67              - allwinner,sun55i-a523-spdif
 68
 69    then:
 70      required:
 71        - resets
 72
 73  - if:
 74      properties:
 75        compatible:
 76          contains:
 77            enum:
 78              - allwinner,sun8i-h3-spdif
 79              - allwinner,sun50i-h616-spdif
 80
 81    then:
 82      properties:
 83        dmas:
 84          description: TX DMA Channel
 85
 86        dma-names:
 87          const: tx
 88
 89    else:
 90      properties:
 91        dmas:
 92          items:
 93            - description: RX DMA Channel
 94            - description: TX DMA Channel
 95
 96        dma-names:
 97          items:
 98            - const: rx
 99            - const: tx
100
101  - if:
102      properties:
103        compatible:
104          contains:
105            enum:
106              - allwinner,sun55i-a523-spdif
107
108    then:
109      properties:
110        clocks:
111          items:
112            - description: Bus Clock
113            - description: TX Clock
114            - description: RX Clock
115
116        clock-names:
117          items:
118            - const: apb
119            - const: tx
120            - const: rx
121    else:
122      properties:
123        clocks:
124          items:
125            - description: Bus Clock
126            - description: Module Clock
127
128        clock-names:
129          items:
130            - const: apb
131            - const: spdif
132
133required:
134  - "#sound-dai-cells"
135  - compatible
136  - reg
137  - interrupts
138  - clocks
139  - clock-names
140  - dmas
141  - dma-names
142
143unevaluatedProperties: false
144
145examples:
146  - |
147    spdif: spdif@1c21000 {
148        #sound-dai-cells = <0>;
149        compatible = "allwinner,sun4i-a10-spdif";
150        reg = <0x01c21000 0x40>;
151        interrupts = <13>;
152        clocks = <&apb0_gates 1>, <&spdif_clk>;
153        clock-names = "apb", "spdif";
154        dmas = <&dma 0 2>, <&dma 0 2>;
155        dma-names = "rx", "tx";
156    };
157
158...
~/ Read-only file preview.