162306a36Sopenharmony_ci# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 262306a36Sopenharmony_ci# Copyright (C) 2020 Texas Instruments Incorporated 362306a36Sopenharmony_ci# Author: Peter Ujfalusi <peter.ujfalusi@ti.com> 462306a36Sopenharmony_ci%YAML 1.2 562306a36Sopenharmony_ci--- 662306a36Sopenharmony_ci$id: http://devicetree.org/schemas/sound/ti,j721e-cpb-ivi-audio.yaml# 762306a36Sopenharmony_ci$schema: http://devicetree.org/meta-schemas/core.yaml# 862306a36Sopenharmony_ci 962306a36Sopenharmony_cititle: Texas Instruments J721e Common Processor Board Audio Support 1062306a36Sopenharmony_ci 1162306a36Sopenharmony_cimaintainers: 1262306a36Sopenharmony_ci - Peter Ujfalusi <peter.ujfalusi@gmail.com> 1362306a36Sopenharmony_ci 1462306a36Sopenharmony_cidescription: | 1562306a36Sopenharmony_ci The Infotainment board plugs into the Common Processor Board, the support of the 1662306a36Sopenharmony_ci extension board is extending the CPB audio support, described in: 1762306a36Sopenharmony_ci sound/ti,j721e-cpb-audio.txt 1862306a36Sopenharmony_ci 1962306a36Sopenharmony_ci The audio support on the Infotainment Expansion Board consists of McASP0 2062306a36Sopenharmony_ci connected to two pcm3168a codecs with dedicated set of serializers to each. 2162306a36Sopenharmony_ci The SCKI for pcm3168a is sourced from j721e AUDIO_REFCLK0 pin. 2262306a36Sopenharmony_ci 2362306a36Sopenharmony_ci In order to support 48KHz and 44.1KHz family of sampling rates the parent clock 2462306a36Sopenharmony_ci for AUDIO_REFCLK0 needs to be changed between PLL4 (for 48KHz) and PLL15 (for 2562306a36Sopenharmony_ci 44.1KHz). The same PLLs are used for McASP0's AUXCLK clock via different 2662306a36Sopenharmony_ci HSDIVIDER. 2762306a36Sopenharmony_ci 2862306a36Sopenharmony_ci Note: the same PLL4 and PLL15 is used by the audio support on the CPB! 2962306a36Sopenharmony_ci 3062306a36Sopenharmony_ci Clocking setup for 48KHz family: 3162306a36Sopenharmony_ci PLL4 ---> PLL4_HSDIV0 ---> MCASP10_AUXCLK ---> McASP10.auxclk 3262306a36Sopenharmony_ci | |-> MCASP0_AUXCLK ---> McASP0.auxclk 3362306a36Sopenharmony_ci | 3462306a36Sopenharmony_ci |-> PLL4_HSDIV2 ---> AUDIO_REFCLK2 ---> pcm3168a.SCKI 3562306a36Sopenharmony_ci |-> AUDIO_REFCLK0 ---> pcm3168a_a/b.SCKI 3662306a36Sopenharmony_ci 3762306a36Sopenharmony_ci Clocking setup for 44.1KHz family: 3862306a36Sopenharmony_ci PLL15 ---> PLL15_HSDIV0 ---> MCASP10_AUXCLK ---> McASP10.auxclk 3962306a36Sopenharmony_ci | |-> MCASP0_AUXCLK ---> McASP0.auxclk 4062306a36Sopenharmony_ci | 4162306a36Sopenharmony_ci |-> PLL15_HSDIV2 ---> AUDIO_REFCLK2 ---> pcm3168a.SCKI 4262306a36Sopenharmony_ci |-> AUDIO_REFCLK0 ---> pcm3168a_a/b.SCKI 4362306a36Sopenharmony_ci 4462306a36Sopenharmony_ciproperties: 4562306a36Sopenharmony_ci compatible: 4662306a36Sopenharmony_ci items: 4762306a36Sopenharmony_ci - const: ti,j721e-cpb-ivi-audio 4862306a36Sopenharmony_ci 4962306a36Sopenharmony_ci model: 5062306a36Sopenharmony_ci $ref: /schemas/types.yaml#/definitions/string 5162306a36Sopenharmony_ci description: User specified audio sound card name 5262306a36Sopenharmony_ci 5362306a36Sopenharmony_ci ti,cpb-mcasp: 5462306a36Sopenharmony_ci description: phandle to McASP used on CPB 5562306a36Sopenharmony_ci $ref: /schemas/types.yaml#/definitions/phandle 5662306a36Sopenharmony_ci 5762306a36Sopenharmony_ci ti,cpb-codec: 5862306a36Sopenharmony_ci description: phandle to the pcm3168a codec used on the CPB 5962306a36Sopenharmony_ci $ref: /schemas/types.yaml#/definitions/phandle 6062306a36Sopenharmony_ci 6162306a36Sopenharmony_ci ti,ivi-mcasp: 6262306a36Sopenharmony_ci description: phandle to McASP used on IVI 6362306a36Sopenharmony_ci $ref: /schemas/types.yaml#/definitions/phandle 6462306a36Sopenharmony_ci 6562306a36Sopenharmony_ci ti,ivi-codec-a: 6662306a36Sopenharmony_ci description: phandle to the pcm3168a-A codec on the expansion board 6762306a36Sopenharmony_ci $ref: /schemas/types.yaml#/definitions/phandle 6862306a36Sopenharmony_ci 6962306a36Sopenharmony_ci ti,ivi-codec-b: 7062306a36Sopenharmony_ci description: phandle to the pcm3168a-B codec on the expansion board 7162306a36Sopenharmony_ci $ref: /schemas/types.yaml#/definitions/phandle 7262306a36Sopenharmony_ci 7362306a36Sopenharmony_ci clocks: 7462306a36Sopenharmony_ci items: 7562306a36Sopenharmony_ci - description: AUXCLK clock for McASP used by CPB audio 7662306a36Sopenharmony_ci - description: Parent for CPB_McASP auxclk (for 48KHz) 7762306a36Sopenharmony_ci - description: Parent for CPB_McASP auxclk (for 44.1KHz) 7862306a36Sopenharmony_ci - description: SCKI clock for the pcm3168a codec on CPB 7962306a36Sopenharmony_ci - description: Parent for CPB_SCKI clock (for 48KHz) 8062306a36Sopenharmony_ci - description: Parent for CPB_SCKI clock (for 44.1KHz) 8162306a36Sopenharmony_ci - description: AUXCLK clock for McASP used by IVI audio 8262306a36Sopenharmony_ci - description: Parent for IVI_McASP auxclk (for 48KHz) 8362306a36Sopenharmony_ci - description: Parent for IVI_McASP auxclk (for 44.1KHz) 8462306a36Sopenharmony_ci - description: SCKI clock for the pcm3168a codec on IVI 8562306a36Sopenharmony_ci - description: Parent for IVI_SCKI clock (for 48KHz) 8662306a36Sopenharmony_ci - description: Parent for IVI_SCKI clock (for 44.1KHz) 8762306a36Sopenharmony_ci 8862306a36Sopenharmony_ci clock-names: 8962306a36Sopenharmony_ci items: 9062306a36Sopenharmony_ci - const: cpb-mcasp-auxclk 9162306a36Sopenharmony_ci - const: cpb-mcasp-auxclk-48000 9262306a36Sopenharmony_ci - const: cpb-mcasp-auxclk-44100 9362306a36Sopenharmony_ci - const: cpb-codec-scki 9462306a36Sopenharmony_ci - const: cpb-codec-scki-48000 9562306a36Sopenharmony_ci - const: cpb-codec-scki-44100 9662306a36Sopenharmony_ci - const: ivi-mcasp-auxclk 9762306a36Sopenharmony_ci - const: ivi-mcasp-auxclk-48000 9862306a36Sopenharmony_ci - const: ivi-mcasp-auxclk-44100 9962306a36Sopenharmony_ci - const: ivi-codec-scki 10062306a36Sopenharmony_ci - const: ivi-codec-scki-48000 10162306a36Sopenharmony_ci - const: ivi-codec-scki-44100 10262306a36Sopenharmony_ci 10362306a36Sopenharmony_cirequired: 10462306a36Sopenharmony_ci - compatible 10562306a36Sopenharmony_ci - model 10662306a36Sopenharmony_ci - ti,cpb-mcasp 10762306a36Sopenharmony_ci - ti,cpb-codec 10862306a36Sopenharmony_ci - ti,ivi-mcasp 10962306a36Sopenharmony_ci - ti,ivi-codec-a 11062306a36Sopenharmony_ci - ti,ivi-codec-b 11162306a36Sopenharmony_ci - clocks 11262306a36Sopenharmony_ci - clock-names 11362306a36Sopenharmony_ci 11462306a36Sopenharmony_ciadditionalProperties: false 11562306a36Sopenharmony_ci 11662306a36Sopenharmony_ciexamples: 11762306a36Sopenharmony_ci - |+ 11862306a36Sopenharmony_ci sound { 11962306a36Sopenharmony_ci compatible = "ti,j721e-cpb-ivi-audio"; 12062306a36Sopenharmony_ci model = "j721e-cpb-ivi"; 12162306a36Sopenharmony_ci 12262306a36Sopenharmony_ci ti,cpb-mcasp = <&mcasp10>; 12362306a36Sopenharmony_ci ti,cpb-codec = <&pcm3168a_1>; 12462306a36Sopenharmony_ci 12562306a36Sopenharmony_ci ti,ivi-mcasp = <&mcasp0>; 12662306a36Sopenharmony_ci ti,ivi-codec-a = <&pcm3168a_a>; 12762306a36Sopenharmony_ci ti,ivi-codec-b = <&pcm3168a_b>; 12862306a36Sopenharmony_ci 12962306a36Sopenharmony_ci clocks = <&k3_clks 184 1>, 13062306a36Sopenharmony_ci <&k3_clks 184 2>, <&k3_clks 184 4>, 13162306a36Sopenharmony_ci <&k3_clks 157 371>, 13262306a36Sopenharmony_ci <&k3_clks 157 400>, <&k3_clks 157 401>, 13362306a36Sopenharmony_ci <&k3_clks 174 1>, 13462306a36Sopenharmony_ci <&k3_clks 174 2>, <&k3_clks 174 4>, 13562306a36Sopenharmony_ci <&k3_clks 157 301>, 13662306a36Sopenharmony_ci <&k3_clks 157 330>, <&k3_clks 157 331>; 13762306a36Sopenharmony_ci clock-names = "cpb-mcasp-auxclk", 13862306a36Sopenharmony_ci "cpb-mcasp-auxclk-48000", "cpb-mcasp-auxclk-44100", 13962306a36Sopenharmony_ci "cpb-codec-scki", 14062306a36Sopenharmony_ci "cpb-codec-scki-48000", "cpb-codec-scki-44100", 14162306a36Sopenharmony_ci "ivi-mcasp-auxclk", 14262306a36Sopenharmony_ci "ivi-mcasp-auxclk-48000", "ivi-mcasp-auxclk-44100", 14362306a36Sopenharmony_ci "ivi-codec-scki", 14462306a36Sopenharmony_ci "ivi-codec-scki-48000", "ivi-codec-scki-44100"; 14562306a36Sopenharmony_ci }; 146