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