The Design and Implementation of the FreeBSD Operating System, Second Edition
Now available: The Design and Implementation of the FreeBSD Operating System (Second Edition)


[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]

FreeBSD/Linux Kernel Cross Reference
sys/contrib/device-tree/Bindings/sound/ti,j721e-cpb-ivi-audio.yaml

Version: -  FREEBSD  -  FREEBSD-13-STABLE  -  FREEBSD-13-0  -  FREEBSD-12-STABLE  -  FREEBSD-12-0  -  FREEBSD-11-STABLE  -  FREEBSD-11-0  -  FREEBSD-10-STABLE  -  FREEBSD-10-0  -  FREEBSD-9-STABLE  -  FREEBSD-9-0  -  FREEBSD-8-STABLE  -  FREEBSD-8-0  -  FREEBSD-7-STABLE  -  FREEBSD-7-0  -  FREEBSD-6-STABLE  -  FREEBSD-6-0  -  FREEBSD-5-STABLE  -  FREEBSD-5-0  -  FREEBSD-4-STABLE  -  FREEBSD-3-STABLE  -  FREEBSD22  -  l41  -  OPENBSD  -  linux-2.6  -  MK84  -  PLAN9  -  xnu-8792 
SearchContext: -  none  -  3  -  10 

    1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
    2 # Copyright (C) 2020 Texas Instruments Incorporated
    3 # Author: Peter Ujfalusi <peter.ujfalusi@ti.com>
    4 %YAML 1.2
    5 ---
    6 $id: http://devicetree.org/schemas/sound/ti,j721e-cpb-ivi-audio.yaml#
    7 $schema: http://devicetree.org/meta-schemas/core.yaml#
    8 
    9 title: Texas Instruments J721e Common Processor Board Audio Support
   10 
   11 maintainers:
   12   - Peter Ujfalusi <peter.ujfalusi@gmail.com>
   13 
   14 description: |
   15   The Infotainment board plugs into the Common Processor Board, the support of the
   16   extension board is extending the CPB audio support, decribed in:
   17   sound/ti,j721e-cpb-audio.txt
   18 
   19   The audio support on the Infotainment Expansion Board consists of McASP0
   20   connected to two pcm3168a codecs with dedicated set of serializers to each.
   21   The SCKI for pcm3168a is sourced from j721e AUDIO_REFCLK0 pin.
   22 
   23   In order to support 48KHz and 44.1KHz family of sampling rates the parent clock
   24   for AUDIO_REFCLK0 needs to be changed between PLL4 (for 48KHz) and PLL15 (for
   25   44.1KHz). The same PLLs are used for McASP0's AUXCLK clock via different
   26   HSDIVIDER.
   27 
   28   Note: the same PLL4 and PLL15 is used by the audio support on the CPB!
   29 
   30   Clocking setup for 48KHz family:
   31   PLL4 ---> PLL4_HSDIV0 ---> MCASP10_AUXCLK ---> McASP10.auxclk
   32         |                |-> MCASP0_AUXCLK  ---> McASP0.auxclk
   33         |
   34         |-> PLL4_HSDIV2 ---> AUDIO_REFCLK2  ---> pcm3168a.SCKI
   35                          |-> AUDIO_REFCLK0  ---> pcm3168a_a/b.SCKI
   36 
   37   Clocking setup for 44.1KHz family:
   38   PLL15 ---> PLL15_HSDIV0 ---> MCASP10_AUXCLK ---> McASP10.auxclk
   39         |                  |-> MCASP0_AUXCLK  ---> McASP0.auxclk
   40         |
   41         |-> PLL15_HSDIV2 ---> AUDIO_REFCLK2   ---> pcm3168a.SCKI
   42                           |-> AUDIO_REFCLK0   ---> pcm3168a_a/b.SCKI
   43 
   44 properties:
   45   compatible:
   46     items:
   47       - const: ti,j721e-cpb-ivi-audio
   48 
   49   model:
   50     $ref: /schemas/types.yaml#/definitions/string
   51     description: User specified audio sound card name
   52 
   53   ti,cpb-mcasp:
   54     description: phandle to McASP used on CPB
   55     $ref: /schemas/types.yaml#/definitions/phandle
   56 
   57   ti,cpb-codec:
   58     description: phandle to the pcm3168a codec used on the CPB
   59     $ref: /schemas/types.yaml#/definitions/phandle
   60 
   61   ti,ivi-mcasp:
   62     description: phandle to McASP used on IVI
   63     $ref: /schemas/types.yaml#/definitions/phandle
   64 
   65   ti,ivi-codec-a:
   66     description: phandle to the pcm3168a-A codec on the expansion board
   67     $ref: /schemas/types.yaml#/definitions/phandle
   68 
   69   ti,ivi-codec-b:
   70     description: phandle to the pcm3168a-B codec on the expansion board
   71     $ref: /schemas/types.yaml#/definitions/phandle
   72 
   73   clocks:
   74     items:
   75       - description: AUXCLK clock for McASP used by CPB audio
   76       - description: Parent for CPB_McASP auxclk (for 48KHz)
   77       - description: Parent for CPB_McASP auxclk (for 44.1KHz)
   78       - description: SCKI clock for the pcm3168a codec on CPB
   79       - description: Parent for CPB_SCKI clock (for 48KHz)
   80       - description: Parent for CPB_SCKI clock (for 44.1KHz)
   81       - description: AUXCLK clock for McASP used by IVI audio
   82       - description: Parent for IVI_McASP auxclk (for 48KHz)
   83       - description: Parent for IVI_McASP auxclk (for 44.1KHz)
   84       - description: SCKI clock for the pcm3168a codec on IVI
   85       - description: Parent for IVI_SCKI clock (for 48KHz)
   86       - description: Parent for IVI_SCKI clock (for 44.1KHz)
   87 
   88   clock-names:
   89     items:
   90       - const: cpb-mcasp-auxclk
   91       - const: cpb-mcasp-auxclk-48000
   92       - const: cpb-mcasp-auxclk-44100
   93       - const: cpb-codec-scki
   94       - const: cpb-codec-scki-48000
   95       - const: cpb-codec-scki-44100
   96       - const: ivi-mcasp-auxclk
   97       - const: ivi-mcasp-auxclk-48000
   98       - const: ivi-mcasp-auxclk-44100
   99       - const: ivi-codec-scki
  100       - const: ivi-codec-scki-48000
  101       - const: ivi-codec-scki-44100
  102 
  103 required:
  104   - compatible
  105   - model
  106   - ti,cpb-mcasp
  107   - ti,cpb-codec
  108   - ti,ivi-mcasp
  109   - ti,ivi-codec-a
  110   - ti,ivi-codec-b
  111   - clocks
  112   - clock-names
  113 
  114 additionalProperties: false
  115 
  116 examples:
  117   - |+
  118     sound {
  119         compatible = "ti,j721e-cpb-ivi-audio";
  120         model = "j721e-cpb-ivi";
  121 
  122         ti,cpb-mcasp = <&mcasp10>;
  123         ti,cpb-codec = <&pcm3168a_1>;
  124 
  125         ti,ivi-mcasp = <&mcasp0>;
  126         ti,ivi-codec-a = <&pcm3168a_a>;
  127         ti,ivi-codec-b = <&pcm3168a_b>;
  128 
  129         clocks = <&k3_clks 184 1>,
  130                  <&k3_clks 184 2>, <&k3_clks 184 4>,
  131                  <&k3_clks 157 371>,
  132                  <&k3_clks 157 400>, <&k3_clks 157 401>,
  133                  <&k3_clks 174 1>,
  134                  <&k3_clks 174 2>, <&k3_clks 174 4>,
  135                  <&k3_clks 157 301>,
  136                  <&k3_clks 157 330>, <&k3_clks 157 331>;
  137         clock-names = "cpb-mcasp-auxclk",
  138                       "cpb-mcasp-auxclk-48000", "cpb-mcasp-auxclk-44100",
  139                       "cpb-codec-scki",
  140                       "cpb-codec-scki-48000", "cpb-codec-scki-44100",
  141                       "ivi-mcasp-auxclk",
  142                       "ivi-mcasp-auxclk-48000", "ivi-mcasp-auxclk-44100",
  143                       "ivi-codec-scki",
  144                       "ivi-codec-scki-48000", "ivi-codec-scki-44100";
  145     };

Cache object: 906d7ea03fb2193bacb855a978ec9118


[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]


This page is part of the FreeBSD/Linux Linux Kernel Cross-Reference, and was automatically generated using a modified version of the LXR engine.