1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
4 $id: http://devicetree.org/schemas/sound/ti,j721e-cpb-ivi-audio.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
7 title: Texas Instruments J721e Common Processor Board Audio Support
10 - Peter Ujfalusi <peter.ujfalusi@ti.com>
13 The Infotainment board plugs into the Common Processor Board, the support of the
14 extension board is extending the CPB audio support, decribed in:
15 sound/ti,j721e-cpb-audio.txt
17 The audio support on the Infotainment Expansion Board consists of McASP0
18 connected to two pcm3168a codecs with dedicated set of serializers to each.
19 The SCKI for pcm3168a is sourced from j721e AUDIO_REFCLK0 pin.
21 In order to support 48KHz and 44.1KHz family of sampling rates the parent clock
22 for AUDIO_REFCLK0 needs to be changed between PLL4 (for 48KHz) and PLL15 (for
23 44.1KHz). The same PLLs are used for McASP0's AUXCLK clock via different
26 Note: the same PLL4 and PLL15 is used by the audio support on the CPB!
28 Clocking setup for 48KHz family:
29 PLL4 ---> PLL4_HSDIV0 ---> MCASP10_AUXCLK ---> McASP10.auxclk
30 | |-> MCASP0_AUXCLK ---> McASP0.auxclk
32 |-> PLL4_HSDIV2 ---> AUDIO_REFCLK2 ---> pcm3168a.SCKI
33 |-> AUDIO_REFCLK0 ---> pcm3168a_a/b.SCKI
35 Clocking setup for 44.1KHz family:
36 PLL15 ---> PLL15_HSDIV0 ---> MCASP10_AUXCLK ---> McASP10.auxclk
37 | |-> MCASP0_AUXCLK ---> McASP0.auxclk
39 |-> PLL15_HSDIV2 ---> AUDIO_REFCLK2 ---> pcm3168a.SCKI
40 |-> AUDIO_REFCLK0 ---> pcm3168a_a/b.SCKI
45 - const: ti,j721e-cpb-ivi-audio
48 $ref: /schemas/types.yaml#/definitions/string
49 description: User specified audio sound card name
52 description: phandle to McASP used on CPB
53 $ref: /schemas/types.yaml#/definitions/phandle
56 description: phandle to the pcm3168a codec used on the CPB
57 $ref: /schemas/types.yaml#/definitions/phandle
60 description: phandle to McASP used on IVI
61 $ref: /schemas/types.yaml#/definitions/phandle
64 description: phandle to the pcm3168a-A codec on the expansion board
65 $ref: /schemas/types.yaml#/definitions/phandle
68 description: phandle to the pcm3168a-B codec on the expansion board
69 $ref: /schemas/types.yaml#/definitions/phandle
73 - description: AUXCLK clock for McASP used by CPB audio
74 - description: Parent for CPB_McASP auxclk (for 48KHz)
75 - description: Parent for CPB_McASP auxclk (for 44.1KHz)
76 - description: SCKI clock for the pcm3168a codec on CPB
77 - description: Parent for CPB_SCKI clock (for 48KHz)
78 - description: Parent for CPB_SCKI clock (for 44.1KHz)
79 - description: AUXCLK clock for McASP used by IVI audio
80 - description: Parent for IVI_McASP auxclk (for 48KHz)
81 - description: Parent for IVI_McASP auxclk (for 44.1KHz)
82 - description: SCKI clock for the pcm3168a codec on IVI
83 - description: Parent for IVI_SCKI clock (for 48KHz)
84 - description: Parent for IVI_SCKI clock (for 44.1KHz)
88 - const: cpb-mcasp-auxclk
89 - const: cpb-mcasp-auxclk-48000
90 - const: cpb-mcasp-auxclk-44100
91 - const: cpb-codec-scki
92 - const: cpb-codec-scki-48000
93 - const: cpb-codec-scki-44100
94 - const: ivi-mcasp-auxclk
95 - const: ivi-mcasp-auxclk-48000
96 - const: ivi-mcasp-auxclk-44100
97 - const: ivi-codec-scki
98 - const: ivi-codec-scki-48000
99 - const: ivi-codec-scki-44100
112 additionalProperties: false
117 compatible = "ti,j721e-cpb-ivi-audio";
118 model = "j721e-cpb-ivi";
122 ti,cpb-mcasp = <&mcasp10>;
123 ti,cpb-codec = <&pcm3168a_1>;
125 ti,ivi-mcasp = <&mcasp0>;
126 ti,ivi-codec-a = <&pcm3168a_a>;
127 ti,ivi-codec-b = <&pcm3168a_b>;
129 clocks = <&k3_clks 184 1>,
130 <&k3_clks 184 2>, <&k3_clks 184 4>,
132 <&k3_clks 157 400>, <&k3_clks 157 401>,
134 <&k3_clks 174 2>, <&k3_clks 174 4>,
136 <&k3_clks 157 330>, <&k3_clks 157 331>;
137 clock-names = "cpb-mcasp-auxclk",
138 "cpb-mcasp-auxclk-48000", "cpb-mcasp-auxclk-44100",
140 "cpb-codec-scki-48000", "cpb-codec-scki-44100",
142 "ivi-mcasp-auxclk-48000", "ivi-mcasp-auxclk-44100",
144 "ivi-codec-scki-48000", "ivi-codec-scki-44100";