brintos

brintos / linux-shallow public Read only

0
0
Text · 4.1 KiB · a23e491 Raw
148 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/fsl,qmc-audio.yaml#5$schema: http://devicetree.org/meta-schemas/core.yaml#6 7title: QMC audio8 9maintainers:10  - Herve Codina <herve.codina@bootlin.com>11 12description: |13  The QMC audio is an ASoC component which uses QMC (QUICC Multichannel14  Controller) channels to transfer the audio data.15  It provides several DAIs. For each DAI, the DAI is working in interleaved mode16  if only one QMC channel is used by the DAI or it is working in non-interleaved17  mode if several QMC channels are used by the DAI.18 19allOf:20  - $ref: dai-common.yaml#21 22properties:23  compatible:24    const: fsl,qmc-audio25 26  '#address-cells':27    const: 128  '#size-cells':29    const: 030  '#sound-dai-cells':31    const: 132 33patternProperties:34  '^dai@([0-9]|[1-5][0-9]|6[0-3])$':35    description:36      A DAI managed by this controller37    type: object38    additionalProperties: false39 40    properties:41      reg:42        minimum: 043        maximum: 6344        description:45          The DAI number46 47      fsl,qmc-chan:48        $ref: /schemas/types.yaml#/definitions/phandle-array49        items:50          items:51            - description: phandle to QMC node52            - description: Channel number53        minItems: 154        description:55          Should be a phandle/number pair list. The list of phandle to QMC node56          and the QMC channel pair to use for this DAI.57          If only one phandle/number pair is provided, this DAI works in58          interleaved mode, i.e. audio channels for this DAI are interleaved in59          the QMC channel. If more than one pair is provided, this DAI works60          in non-interleave mode. In that case the first audio channel uses the61          the first QMC channel, the second audio channel uses the second QMC62          channel, etc...63 64    required:65      - reg66      - fsl,qmc-chan67 68required:69  - compatible70  - '#address-cells'71  - '#size-cells'72  - '#sound-dai-cells'73 74additionalProperties: false75 76examples:77  - |78    audio_controller: audio-controller {79        compatible = "fsl,qmc-audio";80        #address-cells = <1>;81        #size-cells = <0>;82        #sound-dai-cells = <1>;83        dai@16 {84            reg = <16>;85            fsl,qmc-chan = <&qmc 16>;86        };87        dai@17 {88            reg = <17>;89            fsl,qmc-chan = <&qmc 17>;90        };91        dai@18 {92            reg = <18>;93            /* Non-interleaved mode */94            fsl,qmc-chan = <&qmc 18>, <&qmc 19>;95        };96    };97 98    sound {99        compatible = "simple-audio-card";100        #address-cells = <1>;101        #size-cells = <0>;102        simple-audio-card,dai-link@0 {103            reg = <0>;104            format = "dsp_b";105            cpu {106                sound-dai = <&audio_controller 16>;107            };108            codec {109                sound-dai = <&codec1>;110                dai-tdm-slot-num = <4>;111                dai-tdm-slot-width = <8>;112                /* TS 3, 5, 7, 9 */113                dai-tdm-slot-tx-mask = <0 0 0 1 0 1 0 1 0 1>;114                dai-tdm-slot-rx-mask = <0 0 0 1 0 1 0 1 0 1>;115            };116        };117        simple-audio-card,dai-link@1 {118            reg = <1>;119            format = "dsp_b";120            cpu {121                sound-dai = <&audio_controller 17>;122            };123            codec {124                sound-dai = <&codec2>;125                dai-tdm-slot-num = <4>;126                dai-tdm-slot-width = <8>;127                /* TS 2, 4, 6, 8 */128                dai-tdm-slot-tx-mask = <0 0 1 0 1 0 1 0 1>;129                dai-tdm-slot-rx-mask = <0 0 1 0 1 0 1 0 1>;130            };131        };132        simple-audio-card,dai-link@2 {133            reg = <2>;134            format = "dsp_b";135            cpu {136                sound-dai = <&audio_controller 18>;137            };138            codec {139                sound-dai = <&codec3>;140                dai-tdm-slot-num = <2>;141                dai-tdm-slot-width = <8>;142                /* TS 9, 10 */143                dai-tdm-slot-tx-mask = <0 0 0 0 0 0 0 0 0 1 1>;144                dai-tdm-slot-rx-mask = <0 0 0 0 0 0 0 0 0 1 1>;145            };146        };147    };148