180c3d0a9SDmitry Osipenko# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
280c3d0a9SDmitry Osipenko%YAML 1.2
380c3d0a9SDmitry Osipenko---
480c3d0a9SDmitry Osipenko$id: http://devicetree.org/schemas/sound/nvidia,tegra20-i2s.yaml#
580c3d0a9SDmitry Osipenko$schema: http://devicetree.org/meta-schemas/core.yaml#
680c3d0a9SDmitry Osipenko
780c3d0a9SDmitry Osipenkotitle: NVIDIA Tegra20 I2S Controller
880c3d0a9SDmitry Osipenko
980c3d0a9SDmitry Osipenkodescription: |
1080c3d0a9SDmitry Osipenko  The I2S Controller streams synchronous serial audio data between system
1180c3d0a9SDmitry Osipenko  memory and an external audio device. The controller supports the I2S Left
1280c3d0a9SDmitry Osipenko  Justified Mode, Right Justified Mode, and DSP mode formats.
1380c3d0a9SDmitry Osipenko
1480c3d0a9SDmitry Osipenkomaintainers:
1580c3d0a9SDmitry Osipenko  - Thierry Reding <treding@nvidia.com>
1680c3d0a9SDmitry Osipenko  - Jon Hunter <jonathanh@nvidia.com>
1780c3d0a9SDmitry Osipenko
1880c3d0a9SDmitry Osipenkoproperties:
1980c3d0a9SDmitry Osipenko  compatible:
2080c3d0a9SDmitry Osipenko    const: nvidia,tegra20-i2s
2180c3d0a9SDmitry Osipenko
2280c3d0a9SDmitry Osipenko  reg:
2380c3d0a9SDmitry Osipenko    maxItems: 1
2480c3d0a9SDmitry Osipenko
2580c3d0a9SDmitry Osipenko  resets:
2680c3d0a9SDmitry Osipenko    maxItems: 1
2780c3d0a9SDmitry Osipenko
2880c3d0a9SDmitry Osipenko  reset-names:
2980c3d0a9SDmitry Osipenko    const: i2s
3080c3d0a9SDmitry Osipenko
3180c3d0a9SDmitry Osipenko  interrupts:
3280c3d0a9SDmitry Osipenko    maxItems: 1
3380c3d0a9SDmitry Osipenko
3480c3d0a9SDmitry Osipenko  clocks:
3580c3d0a9SDmitry Osipenko    minItems: 1
3680c3d0a9SDmitry Osipenko
3780c3d0a9SDmitry Osipenko  dmas:
3880c3d0a9SDmitry Osipenko    minItems: 2
3980c3d0a9SDmitry Osipenko
4080c3d0a9SDmitry Osipenko  dma-names:
4180c3d0a9SDmitry Osipenko    items:
4280c3d0a9SDmitry Osipenko      - const: rx
4380c3d0a9SDmitry Osipenko      - const: tx
4480c3d0a9SDmitry Osipenko
45*549818e5SDmitry Osipenko  nvidia,fixed-parent-rate:
46*549818e5SDmitry Osipenko    description: |
47*549818e5SDmitry Osipenko      Specifies whether board prefers parent clock to stay at a fixed rate.
48*549818e5SDmitry Osipenko      This allows multiple Tegra20 audio components work simultaneously by
49*549818e5SDmitry Osipenko      limiting number of supportable audio rates.
50*549818e5SDmitry Osipenko    type: boolean
51*549818e5SDmitry Osipenko
5280c3d0a9SDmitry Osipenkorequired:
5380c3d0a9SDmitry Osipenko  - compatible
5480c3d0a9SDmitry Osipenko  - reg
5580c3d0a9SDmitry Osipenko  - resets
5680c3d0a9SDmitry Osipenko  - reset-names
5780c3d0a9SDmitry Osipenko  - interrupts
5880c3d0a9SDmitry Osipenko  - clocks
5980c3d0a9SDmitry Osipenko  - dmas
6080c3d0a9SDmitry Osipenko  - dma-names
6180c3d0a9SDmitry Osipenko
6280c3d0a9SDmitry OsipenkoadditionalProperties: false
6380c3d0a9SDmitry Osipenko
6480c3d0a9SDmitry Osipenkoexamples:
6580c3d0a9SDmitry Osipenko  - |
6680c3d0a9SDmitry Osipenko    i2s@70002800 {
6780c3d0a9SDmitry Osipenko        compatible = "nvidia,tegra20-i2s";
6880c3d0a9SDmitry Osipenko        reg = <0x70002800 0x200>;
6980c3d0a9SDmitry Osipenko        interrupts = <45>;
7080c3d0a9SDmitry Osipenko        clocks = <&tegra_car 11>;
7180c3d0a9SDmitry Osipenko        resets = <&tegra_car 11>;
7280c3d0a9SDmitry Osipenko        reset-names = "i2s";
7380c3d0a9SDmitry Osipenko        dmas = <&apbdma 21>, <&apbdma 21>;
7480c3d0a9SDmitry Osipenko        dma-names = "rx", "tx";
7580c3d0a9SDmitry Osipenko    };
7680c3d0a9SDmitry Osipenko
7780c3d0a9SDmitry Osipenko...
78