brintos

brintos / linux-shallow public Read only

0
0
Text · 3.2 KiB · 5c6ec08 Raw
136 lines · yaml
1# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)2%YAML 1.23---4$id: http://devicetree.org/schemas/sound/apple,mca.yaml#5$schema: http://devicetree.org/meta-schemas/core.yaml#6 7title: Apple MCA I2S transceiver8 9description: |10  MCA is an I2S transceiver peripheral found on M1 and other Apple chips. It is11  composed of a number of identical clusters which can operate independently12  or in an interlinked fashion. Up to 6 clusters have been seen on an MCA.13 14maintainers:15  - Martin Povišer <povik+lin@cutebit.org>16 17allOf:18  - $ref: dai-common.yaml#19 20properties:21  compatible:22    items:23      - enum:24          - apple,t6000-mca25          - apple,t8103-mca26          - apple,t8112-mca27      - const: apple,mca28 29  reg:30    items:31      - description: Register region of the MCA clusters proper32      - description: Register region of the DMA glue and its FIFOs33 34  interrupts:35    minItems: 436    maxItems: 637    description:38      One interrupt per each cluster39 40  '#address-cells':41    const: 142 43  '#size-cells':44    const: 045 46  dmas:47    minItems: 1648    maxItems: 2449    description:50      DMA channels corresponding to the SERDES units in the peripheral. They are51      listed in groups of four per cluster, and within the group they are given52      as associated to the TXA, RXA, TXB, RXB units.53 54  dma-names:55    minItems: 1656    items:57      - const: tx0a58      - const: rx0a59      - const: tx0b60      - const: rx0b61      - const: tx1a62      - const: rx1a63      - const: tx1b64      - const: rx1b65      - const: tx2a66      - const: rx2a67      - const: tx2b68      - const: rx2b69      - const: tx3a70      - const: rx3a71      - const: tx3b72      - const: rx3b73      - const: tx4a74      - const: rx4a75      - const: tx4b76      - const: rx4b77      - const: tx5a78      - const: rx5a79      - const: tx5b80      - const: rx5b81    description: |82      Names for the DMA channels: 'tx'/'rx', then cluster number, then 'a'/'b'83      based on the associated SERDES unit.84 85  clocks:86    minItems: 487    maxItems: 688    description:89      Clusters' input reference clock.90 91  resets:92    maxItems: 193 94  power-domains:95    minItems: 596    maxItems: 797    description:98      First a general power domain for register access, then the power99      domains of individual clusters for their operation.100 101  '#sound-dai-cells':102    const: 1103 104required:105  - compatible106  - reg107  - dmas108  - dma-names109  - clocks110  - power-domains111  - '#sound-dai-cells'112 113unevaluatedProperties: false114 115examples:116  - |117    mca: i2s@9b600000 {118      compatible = "apple,t6000-mca", "apple,mca";119      reg = <0x9b600000 0x10000>,120            <0x9b200000 0x20000>;121 122      clocks = <&nco 0>, <&nco 1>, <&nco 2>, <&nco 3>;123      power-domains = <&ps_audio_p>, <&ps_mca0>, <&ps_mca1>,124                      <&ps_mca2>, <&ps_mca3>;125      dmas = <&admac 0>, <&admac 1>, <&admac 2>, <&admac 3>,126             <&admac 4>, <&admac 5>, <&admac 6>, <&admac 7>,127             <&admac 8>, <&admac 9>, <&admac 10>, <&admac 11>,128             <&admac 12>, <&admac 13>, <&admac 14>, <&admac 15>;129      dma-names = "tx0a", "rx0a", "tx0b", "rx0b",130                  "tx1a", "rx1a", "tx1b", "rx1b",131                  "tx2a", "rx2a", "tx2b", "rx2b",132                  "tx3a", "rx3a", "tx3b", "rx3b";133 134      #sound-dai-cells = <1>;135    };136