File Index
Files and directories
Sign in
FILE

mediatek,mt8183-audio.yaml

File preview with syntax highlighting.

linux-6.19.14/Documentation/devicetree/bindings/sound/mediatek,mt8183-audio.yaml YAML
  1# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
  2%YAML 1.2
  3---
  4$id: http://devicetree.org/schemas/sound/mediatek,mt8183-audio.yaml#
  5$schema: http://devicetree.org/meta-schemas/core.yaml#
  6
  7title: Mediatek AFE PCM controller for mt8183
  8
  9maintainers:
 10  - Julien Massot <jmassot@collabora.com>
 11
 12properties:
 13  compatible:
 14    const: mediatek,mt8183-audio
 15
 16  interrupts:
 17    maxItems: 1
 18
 19  resets:
 20    maxItems: 1
 21
 22  reset-names:
 23    const: audiosys
 24
 25  power-domains:
 26    maxItems: 1
 27
 28  memory-region:
 29    maxItems: 1
 30
 31  clocks:
 32    items:
 33      - description: AFE clock
 34      - description: ADDA DAC clock
 35      - description: ADDA DAC pre-distortion clock
 36      - description: ADDA ADC clock
 37      - description: ADDA6 ADC clock
 38      - description: Audio low-jitter 22.5792m clock
 39      - description: Audio low-jitter 24.576m clock
 40      - description: Audio PLL1 tuner clock
 41      - description: Audio PLL2 tuner clock
 42      - description: I2S1 bit clock
 43      - description: I2S2 bit clock
 44      - description: I2S3 bit clock
 45      - description: I2S4 bit clock
 46      - description: Audio Time-Division Multiplexing interface clock
 47      - description: Powerdown Audio test model clock
 48      - description: Audio infra sys clock
 49      - description: Audio infra 26M clock
 50      - description: Mux for audio clock
 51      - description: Mux for audio internal bus clock
 52      - description: Mux main divider by 4
 53      - description: Primary audio mux
 54      - description: Primary audio PLL
 55      - description: Secondary audio mux
 56      - description: Secondary audio PLL
 57      - description: Primary audio en-generator clock
 58      - description: Primary PLL divider by 4 for IEC
 59      - description: Secondary audio en-generator clock
 60      - description: Secondary PLL divider by 8 for IEC
 61      - description: Mux selector for I2S port 0
 62      - description: Mux selector for I2S port 1
 63      - description: Mux selector for I2S port 2
 64      - description: Mux selector for I2S port 3
 65      - description: Mux selector for I2S port 4
 66      - description: Mux selector for I2S port 5
 67      - description: APLL1 and APLL2 divider for I2S port 0
 68      - description: APLL1 and APLL2 divider for I2S port 1
 69      - description: APLL1 and APLL2 divider for I2S port 2
 70      - description: APLL1 and APLL2 divider for I2S port 3
 71      - description: APLL1 and APLL2 divider for I2S port 4
 72      - description: APLL1 and APLL2 divider for IEC
 73      - description: 26MHz clock for audio subsystem
 74
 75  clock-names:
 76    items:
 77      - const: aud_afe_clk
 78      - const: aud_dac_clk
 79      - const: aud_dac_predis_clk
 80      - const: aud_adc_clk
 81      - const: aud_adc_adda6_clk
 82      - const: aud_apll22m_clk
 83      - const: aud_apll24m_clk
 84      - const: aud_apll1_tuner_clk
 85      - const: aud_apll2_tuner_clk
 86      - const: aud_i2s1_bclk_sw
 87      - const: aud_i2s2_bclk_sw
 88      - const: aud_i2s3_bclk_sw
 89      - const: aud_i2s4_bclk_sw
 90      - const: aud_tdm_clk
 91      - const: aud_tml_clk
 92      - const: aud_infra_clk
 93      - const: mtkaif_26m_clk
 94      - const: top_mux_audio
 95      - const: top_mux_aud_intbus
 96      - const: top_syspll_d2_d4
 97      - const: top_mux_aud_1
 98      - const: top_apll1_ck
 99      - const: top_mux_aud_2
100      - const: top_apll2_ck
101      - const: top_mux_aud_eng1
102      - const: top_apll1_d8
103      - const: top_mux_aud_eng2
104      - const: top_apll2_d8
105      - const: top_i2s0_m_sel
106      - const: top_i2s1_m_sel
107      - const: top_i2s2_m_sel
108      - const: top_i2s3_m_sel
109      - const: top_i2s4_m_sel
110      - const: top_i2s5_m_sel
111      - const: top_apll12_div0
112      - const: top_apll12_div1
113      - const: top_apll12_div2
114      - const: top_apll12_div3
115      - const: top_apll12_div4
116      - const: top_apll12_divb
117      - const: top_clk26m_clk
118
119required:
120  - compatible
121  - interrupts
122  - resets
123  - reset-names
124  - power-domains
125  - clocks
126  - clock-names
127
128additionalProperties: false
129
130examples:
131  - |
132    #include <dt-bindings/clock/mt8183-clk.h>
133    #include <dt-bindings/interrupt-controller/arm-gic.h>
134    #include <dt-bindings/interrupt-controller/irq.h>
135    #include <dt-bindings/power/mt8183-power.h>
136    #include <dt-bindings/reset/mt8183-resets.h>
137
138    audio-controller {
139        compatible = "mediatek,mt8183-audio";
140        interrupts = <GIC_SPI 161 IRQ_TYPE_LEVEL_LOW>;
141        resets = <&watchdog MT8183_TOPRGU_AUDIO_SW_RST>;
142        reset-names = "audiosys";
143        power-domains = <&spm MT8183_POWER_DOMAIN_AUDIO>;
144        clocks = <&audiosys CLK_AUDIO_AFE>,
145                 <&audiosys CLK_AUDIO_DAC>,
146                 <&audiosys CLK_AUDIO_DAC_PREDIS>,
147                 <&audiosys CLK_AUDIO_ADC>,
148                 <&audiosys CLK_AUDIO_PDN_ADDA6_ADC>,
149                 <&audiosys CLK_AUDIO_22M>,
150                 <&audiosys CLK_AUDIO_24M>,
151                 <&audiosys CLK_AUDIO_APLL_TUNER>,
152                 <&audiosys CLK_AUDIO_APLL2_TUNER>,
153                 <&audiosys CLK_AUDIO_I2S1>,
154                 <&audiosys CLK_AUDIO_I2S2>,
155                 <&audiosys CLK_AUDIO_I2S3>,
156                 <&audiosys CLK_AUDIO_I2S4>,
157                 <&audiosys CLK_AUDIO_TDM>,
158                 <&audiosys CLK_AUDIO_TML>,
159                 <&infracfg CLK_INFRA_AUDIO>,
160                 <&infracfg CLK_INFRA_AUDIO_26M_BCLK>,
161                 <&topckgen CLK_TOP_MUX_AUDIO>,
162                 <&topckgen CLK_TOP_MUX_AUD_INTBUS>,
163                 <&topckgen CLK_TOP_SYSPLL_D2_D4>,
164                 <&topckgen CLK_TOP_MUX_AUD_1>,
165                 <&topckgen CLK_TOP_APLL1_CK>,
166                 <&topckgen CLK_TOP_MUX_AUD_2>,
167                 <&topckgen CLK_TOP_APLL2_CK>,
168                 <&topckgen CLK_TOP_MUX_AUD_ENG1>,
169                 <&topckgen CLK_TOP_APLL1_D8>,
170                 <&topckgen CLK_TOP_MUX_AUD_ENG2>,
171                 <&topckgen CLK_TOP_APLL2_D8>,
172                 <&topckgen CLK_TOP_MUX_APLL_I2S0>,
173                 <&topckgen CLK_TOP_MUX_APLL_I2S1>,
174                 <&topckgen CLK_TOP_MUX_APLL_I2S2>,
175                 <&topckgen CLK_TOP_MUX_APLL_I2S3>,
176                 <&topckgen CLK_TOP_MUX_APLL_I2S4>,
177                 <&topckgen CLK_TOP_MUX_APLL_I2S5>,
178                 <&topckgen CLK_TOP_APLL12_DIV0>,
179                 <&topckgen CLK_TOP_APLL12_DIV1>,
180                 <&topckgen CLK_TOP_APLL12_DIV2>,
181                 <&topckgen CLK_TOP_APLL12_DIV3>,
182                 <&topckgen CLK_TOP_APLL12_DIV4>,
183                 <&topckgen CLK_TOP_APLL12_DIVB>,
184                 <&clk26m>;
185      clock-names = "aud_afe_clk",
186                    "aud_dac_clk",
187                    "aud_dac_predis_clk",
188                    "aud_adc_clk",
189                    "aud_adc_adda6_clk",
190                    "aud_apll22m_clk",
191                    "aud_apll24m_clk",
192                    "aud_apll1_tuner_clk",
193                    "aud_apll2_tuner_clk",
194                    "aud_i2s1_bclk_sw",
195                    "aud_i2s2_bclk_sw",
196                    "aud_i2s3_bclk_sw",
197                    "aud_i2s4_bclk_sw",
198                    "aud_tdm_clk",
199                    "aud_tml_clk",
200                    "aud_infra_clk",
201                    "mtkaif_26m_clk",
202                    "top_mux_audio",
203                    "top_mux_aud_intbus",
204                    "top_syspll_d2_d4",
205                    "top_mux_aud_1",
206                    "top_apll1_ck",
207                    "top_mux_aud_2",
208                    "top_apll2_ck",
209                    "top_mux_aud_eng1",
210                    "top_apll1_d8",
211                    "top_mux_aud_eng2",
212                    "top_apll2_d8",
213                    "top_i2s0_m_sel",
214                    "top_i2s1_m_sel",
215                    "top_i2s2_m_sel",
216                    "top_i2s3_m_sel",
217                    "top_i2s4_m_sel",
218                    "top_i2s5_m_sel",
219                    "top_apll12_div0",
220                    "top_apll12_div1",
221                    "top_apll12_div2",
222                    "top_apll12_div3",
223                    "top_apll12_div4",
224                    "top_apll12_divb",
225                    "top_clk26m_clk";
226    };
227
228...
~/ Read-only file preview.