File Index
Files and directories
Sign in
FILE

nvidia,tegra210-i2s.yaml

File preview with syntax highlighting.

linux-6.19.14/Documentation/devicetree/bindings/sound/nvidia,tegra210-i2s.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/nvidia,tegra210-i2s.yaml#
  5$schema: http://devicetree.org/meta-schemas/core.yaml#
  6
  7title: Tegra210 I2S Controller
  8
  9description: |
 10  The Inter-IC Sound (I2S) controller implements full-duplex,
 11  bi-directional and single direction point-to-point serial
 12  interfaces. It can interface with I2S compatible devices.
 13  I2S controller can operate both in master and slave mode.
 14
 15maintainers:
 16  - Jon Hunter <jonathanh@nvidia.com>
 17  - Sameer Pujar <spujar@nvidia.com>
 18
 19allOf:
 20  - $ref: dai-common.yaml#
 21
 22properties:
 23  $nodename:
 24    pattern: "^i2s@[0-9a-f]*$"
 25
 26  compatible:
 27    oneOf:
 28      - enum:
 29          - nvidia,tegra210-i2s
 30          - nvidia,tegra264-i2s
 31      - items:
 32          - enum:
 33              - nvidia,tegra234-i2s
 34              - nvidia,tegra194-i2s
 35              - nvidia,tegra186-i2s
 36          - const: nvidia,tegra210-i2s
 37
 38  reg:
 39    maxItems: 1
 40
 41  clocks:
 42    minItems: 1
 43    items:
 44      - description: I2S bit clock
 45      - description:
 46          Sync input clock, which can act as clock source to other I/O
 47          modules in AHUB. The Tegra I2S driver sets this clock rate as
 48          per bit clock rate. I/O module which wants to use this clock
 49          as source, can mention this clock as parent in the DT bindings.
 50          This is an optional clock entry, since it is only required when
 51          some other I/O wants to reference from a particular I2Sx
 52          instance.
 53
 54  clock-names:
 55    minItems: 1
 56    items:
 57      - const: i2s
 58      - const: sync_input
 59
 60  assigned-clocks:
 61    minItems: 1
 62    maxItems: 2
 63
 64  assigned-clock-parents:
 65    minItems: 1
 66    maxItems: 2
 67
 68  assigned-clock-rates:
 69    minItems: 1
 70    maxItems: 2
 71
 72  sound-name-prefix:
 73    pattern: "^I2S[1-9]$"
 74
 75  ports:
 76    $ref: /schemas/graph.yaml#/properties/ports
 77    properties:
 78      port@0:
 79        $ref: audio-graph-port.yaml#
 80        unevaluatedProperties: false
 81        description: |
 82          I2S ACIF (Audio Client Interface) port connected to the
 83          corresponding AHUB (Audio Hub) ACIF port.
 84
 85      port@1:
 86        $ref: audio-graph-port.yaml#
 87        unevaluatedProperties: false
 88        description: |
 89          I2S DAP (Digital Audio Port) interface which can be connected
 90          to external audio codec for playback or capture.
 91
 92required:
 93  - compatible
 94  - reg
 95  - clocks
 96  - clock-names
 97  - assigned-clocks
 98  - assigned-clock-parents
 99
100additionalProperties: false
101
102examples:
103  - |
104    #include<dt-bindings/clock/tegra210-car.h>
105
106    i2s@702d1000 {
107        compatible = "nvidia,tegra210-i2s";
108        reg = <0x702d1000 0x100>;
109        clocks = <&tegra_car TEGRA210_CLK_I2S0>;
110        clock-names = "i2s";
111        assigned-clocks = <&tegra_car TEGRA210_CLK_I2S0>;
112        assigned-clock-parents = <&tegra_car TEGRA210_CLK_PLL_A_OUT0>;
113        assigned-clock-rates = <1536000>;
114        sound-name-prefix = "I2S1";
115    };
116
117...
~/ Read-only file preview.