xref: /linux/Documentation/devicetree/bindings/sound/davinci-mcbsp.yaml (revision 33e02dc69afbd8f1b85a51d74d72f139ba4ca623)
122a1dd65SBastien Curutchet# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
222a1dd65SBastien Curutchet%YAML 1.2
322a1dd65SBastien Curutchet---
422a1dd65SBastien Curutchet$id: http://devicetree.org/schemas/sound/davinci-mcbsp.yaml#
522a1dd65SBastien Curutchet$schema: http://devicetree.org/meta-schemas/core.yaml#
622a1dd65SBastien Curutchet
722a1dd65SBastien Curutchettitle: McBSP Controller for TI SoCs
822a1dd65SBastien Curutchet
922a1dd65SBastien Curutchetmaintainers:
1022a1dd65SBastien Curutchet  - Bastien Curutchet <bastien.curutchet@bootlin.com>
1122a1dd65SBastien Curutchet
1222a1dd65SBastien CurutchetallOf:
1322a1dd65SBastien Curutchet  - $ref: dai-common.yaml#
1422a1dd65SBastien Curutchet
1522a1dd65SBastien Curutchetproperties:
1622a1dd65SBastien Curutchet  compatible:
1722a1dd65SBastien Curutchet    enum:
1822a1dd65SBastien Curutchet      - ti,da850-mcbsp
1922a1dd65SBastien Curutchet
2022a1dd65SBastien Curutchet  reg:
2122a1dd65SBastien Curutchet    minItems: 1
2222a1dd65SBastien Curutchet    items:
2322a1dd65SBastien Curutchet      - description: CFG registers
2422a1dd65SBastien Curutchet      - description: data registers
2522a1dd65SBastien Curutchet
2622a1dd65SBastien Curutchet  reg-names:
2722a1dd65SBastien Curutchet    minItems: 1
2822a1dd65SBastien Curutchet    items:
2922a1dd65SBastien Curutchet      - const: mpu
3022a1dd65SBastien Curutchet      - const: dat
3122a1dd65SBastien Curutchet
3222a1dd65SBastien Curutchet  dmas:
3322a1dd65SBastien Curutchet    items:
3422a1dd65SBastien Curutchet      - description: transmission DMA channel
3522a1dd65SBastien Curutchet      - description: reception DMA channel
3622a1dd65SBastien Curutchet
3722a1dd65SBastien Curutchet  dma-names:
3822a1dd65SBastien Curutchet    items:
3922a1dd65SBastien Curutchet      - const: tx
4022a1dd65SBastien Curutchet      - const: rx
4122a1dd65SBastien Curutchet
4222a1dd65SBastien Curutchet  interrupts:
4322a1dd65SBastien Curutchet    items:
4422a1dd65SBastien Curutchet      - description: RX interrupt
4522a1dd65SBastien Curutchet      - description: TX interrupt
4622a1dd65SBastien Curutchet
4722a1dd65SBastien Curutchet  interrupt-names:
4822a1dd65SBastien Curutchet    items:
4922a1dd65SBastien Curutchet      - const: rx
5022a1dd65SBastien Curutchet      - const: tx
5122a1dd65SBastien Curutchet
5222a1dd65SBastien Curutchet  clocks:
536a4b6b06SBastien Curutchet    minItems: 1
5422a1dd65SBastien Curutchet    items:
5522a1dd65SBastien Curutchet      - description: functional clock
566a4b6b06SBastien Curutchet      - description: external input clock for sample rate generator.
5722a1dd65SBastien Curutchet
5822a1dd65SBastien Curutchet  clock-names:
596a4b6b06SBastien Curutchet    minItems: 1
6022a1dd65SBastien Curutchet    items:
6122a1dd65SBastien Curutchet      - const: fck
626a4b6b06SBastien Curutchet      - const: clks
6322a1dd65SBastien Curutchet
6422a1dd65SBastien Curutchet  power-domains:
6522a1dd65SBastien Curutchet    maxItems: 1
6622a1dd65SBastien Curutchet
6722a1dd65SBastien Curutchet  "#sound-dai-cells":
6822a1dd65SBastien Curutchet    const: 0
6922a1dd65SBastien Curutchet
70*609302caSBastien Curutchet  ti,T1-framing-tx:
71*609302caSBastien Curutchet    $ref: /schemas/types.yaml#/definitions/flag
72*609302caSBastien Curutchet    description:
73*609302caSBastien Curutchet      If the property is present, tx data delay is set to 2 bit clock periods.
74*609302caSBastien Curutchet      McBSP will insert a blank period (high-impedance period) before the first
75*609302caSBastien Curutchet      data bit. This can be used to interface to T1-framing devices.
76*609302caSBastien Curutchet
77*609302caSBastien Curutchet  ti,T1-framing-rx:
78*609302caSBastien Curutchet    $ref: /schemas/types.yaml#/definitions/flag
79*609302caSBastien Curutchet    description:
80*609302caSBastien Curutchet      If the property is present, rx data delay is set to 2 bit clock periods.
81*609302caSBastien Curutchet      McBSP will discard the bit preceding the data stream (called framing bit).
82*609302caSBastien Curutchet      This can be used to interface to T1-framing devices.
83*609302caSBastien Curutchet
8422a1dd65SBastien Curutchetrequired:
8522a1dd65SBastien Curutchet  - "#sound-dai-cells"
8622a1dd65SBastien Curutchet  - compatible
8722a1dd65SBastien Curutchet  - reg
8822a1dd65SBastien Curutchet  - reg-names
8922a1dd65SBastien Curutchet  - dmas
9022a1dd65SBastien Curutchet  - dma-names
9122a1dd65SBastien Curutchet  - clocks
9222a1dd65SBastien Curutchet
9322a1dd65SBastien CurutchetunevaluatedProperties: false
9422a1dd65SBastien Curutchet
9522a1dd65SBastien Curutchetexamples:
9622a1dd65SBastien Curutchet  - |
9722a1dd65SBastien Curutchet    mcbsp0@1d10000 {
9822a1dd65SBastien Curutchet      #sound-dai-cells = <0>;
9922a1dd65SBastien Curutchet      compatible = "ti,da850-mcbsp";
10022a1dd65SBastien Curutchet      pinctrl-names = "default";
10122a1dd65SBastien Curutchet      pinctrl-0 = <&mcbsp0_pins>;
10222a1dd65SBastien Curutchet
10322a1dd65SBastien Curutchet      reg = <0x111000 0x1000>,
10422a1dd65SBastien Curutchet            <0x311000 0x1000>;
10522a1dd65SBastien Curutchet      reg-names = "mpu", "dat";
10622a1dd65SBastien Curutchet      interrupts = <97>, <98>;
10722a1dd65SBastien Curutchet      interrupt-names = "rx", "tx";
10822a1dd65SBastien Curutchet      dmas = <&edma0 3 1>,
10922a1dd65SBastien Curutchet             <&edma0 2 1>;
11022a1dd65SBastien Curutchet      dma-names = "tx", "rx";
11122a1dd65SBastien Curutchet
11222a1dd65SBastien Curutchet      clocks = <&psc1 14>;
11322a1dd65SBastien Curutchet    };
114