Based on kernel version 6.11
. Page generated on 2024-09-24 08:21 EST
.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 | # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) %YAML 1.2 --- $id: http://devicetree.org/schemas/sound/fsl,qmc-audio.yaml# $schema: http://devicetree.org/meta-schemas/core.yaml# title: QMC audio maintainers: - Herve Codina <herve.codina@bootlin.com> description: | The QMC audio is an ASoC component which uses QMC (QUICC Multichannel Controller) channels to transfer the audio data. It provides several DAIs. For each DAI, the DAI is working in interleaved mode if only one QMC channel is used by the DAI or it is working in non-interleaved mode if several QMC channels are used by the DAI. allOf: - $ref: dai-common.yaml# properties: compatible: const: fsl,qmc-audio '#address-cells': const: 1 '#size-cells': const: 0 '#sound-dai-cells': const: 1 patternProperties: '^dai@([0-9]|[1-5][0-9]|6[0-3])$': description: A DAI managed by this controller type: object additionalProperties: false properties: reg: minimum: 0 maximum: 63 description: The DAI number fsl,qmc-chan: $ref: /schemas/types.yaml#/definitions/phandle-array items: items: - description: phandle to QMC node - description: Channel number minItems: 1 description: Should be a phandle/number pair list. The list of phandle to QMC node and the QMC channel pair to use for this DAI. If only one phandle/number pair is provided, this DAI works in interleaved mode, i.e. audio channels for this DAI are interleaved in the QMC channel. If more than one pair is provided, this DAI works in non-interleave mode. In that case the first audio channel uses the the first QMC channel, the second audio channel uses the second QMC channel, etc... required: - reg - fsl,qmc-chan required: - compatible - '#address-cells' - '#size-cells' - '#sound-dai-cells' additionalProperties: false examples: - | audio_controller: audio-controller { compatible = "fsl,qmc-audio"; #address-cells = <1>; #size-cells = <0>; #sound-dai-cells = <1>; dai@16 { reg = <16>; fsl,qmc-chan = <&qmc 16>; }; dai@17 { reg = <17>; fsl,qmc-chan = <&qmc 17>; }; dai@18 { reg = <18>; /* Non-interleaved mode */ fsl,qmc-chan = <&qmc 18>, <&qmc 19>; }; }; sound { compatible = "simple-audio-card"; #address-cells = <1>; #size-cells = <0>; simple-audio-card,dai-link@0 { reg = <0>; format = "dsp_b"; cpu { sound-dai = <&audio_controller 16>; }; codec { sound-dai = <&codec1>; dai-tdm-slot-num = <4>; dai-tdm-slot-width = <8>; /* TS 3, 5, 7, 9 */ dai-tdm-slot-tx-mask = <0 0 0 1 0 1 0 1 0 1>; dai-tdm-slot-rx-mask = <0 0 0 1 0 1 0 1 0 1>; }; }; simple-audio-card,dai-link@1 { reg = <1>; format = "dsp_b"; cpu { sound-dai = <&audio_controller 17>; }; codec { sound-dai = <&codec2>; dai-tdm-slot-num = <4>; dai-tdm-slot-width = <8>; /* TS 2, 4, 6, 8 */ dai-tdm-slot-tx-mask = <0 0 1 0 1 0 1 0 1>; dai-tdm-slot-rx-mask = <0 0 1 0 1 0 1 0 1>; }; }; simple-audio-card,dai-link@2 { reg = <2>; format = "dsp_b"; cpu { sound-dai = <&audio_controller 18>; }; codec { sound-dai = <&codec3>; dai-tdm-slot-num = <2>; dai-tdm-slot-width = <8>; /* TS 9, 10 */ dai-tdm-slot-tx-mask = <0 0 0 0 0 0 0 0 0 1 1>; dai-tdm-slot-rx-mask = <0 0 0 0 0 0 0 0 0 1 1>; }; }; }; |