xref: /linux/Documentation/devicetree/bindings/sound/xlnx,audio-formatter.yaml (revision bbfd5594756011167b8f8de9a00e0c946afda1e6)
1*1b8b6dd0SVincenzo Frascino# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2*1b8b6dd0SVincenzo Frascino%YAML 1.2
3*1b8b6dd0SVincenzo Frascino---
4*1b8b6dd0SVincenzo Frascino$id: http://devicetree.org/schemas/sound/xlnx,audio-formatter.yaml#
5*1b8b6dd0SVincenzo Frascino$schema: http://devicetree.org/meta-schemas/core.yaml#
6*1b8b6dd0SVincenzo Frascino
7*1b8b6dd0SVincenzo Frascinotitle: Xilinx PL audio formatter
8*1b8b6dd0SVincenzo Frascino
9*1b8b6dd0SVincenzo Frascinodescription:
10*1b8b6dd0SVincenzo Frascino  The IP core supports DMA, data formatting(AES<->PCM conversion)
11*1b8b6dd0SVincenzo Frascino  of audio samples.
12*1b8b6dd0SVincenzo Frascino
13*1b8b6dd0SVincenzo Frascinomaintainers:
14*1b8b6dd0SVincenzo Frascino  - Vincenzo Frascino <vincenzo.frascino@arm.com>
15*1b8b6dd0SVincenzo Frascino
16*1b8b6dd0SVincenzo FrascinoallOf:
17*1b8b6dd0SVincenzo Frascino  - $ref: dai-common.yaml#
18*1b8b6dd0SVincenzo Frascino
19*1b8b6dd0SVincenzo Frascinoproperties:
20*1b8b6dd0SVincenzo Frascino  compatible:
21*1b8b6dd0SVincenzo Frascino    enum:
22*1b8b6dd0SVincenzo Frascino      - xlnx,audio-formatter-1.0
23*1b8b6dd0SVincenzo Frascino
24*1b8b6dd0SVincenzo Frascino  reg:
25*1b8b6dd0SVincenzo Frascino    maxItems: 1
26*1b8b6dd0SVincenzo Frascino
27*1b8b6dd0SVincenzo Frascino  interrupt-names:
28*1b8b6dd0SVincenzo Frascino    minItems: 1
29*1b8b6dd0SVincenzo Frascino    items:
30*1b8b6dd0SVincenzo Frascino      - const: irq_mm2s
31*1b8b6dd0SVincenzo Frascino      - const: irq_s2mm
32*1b8b6dd0SVincenzo Frascino
33*1b8b6dd0SVincenzo Frascino  interrupts:
34*1b8b6dd0SVincenzo Frascino    minItems: 1
35*1b8b6dd0SVincenzo Frascino    items:
36*1b8b6dd0SVincenzo Frascino      - description: interrupt from MM2S block
37*1b8b6dd0SVincenzo Frascino      - description: interrupt from S2MM block
38*1b8b6dd0SVincenzo Frascino
39*1b8b6dd0SVincenzo Frascino  clock-names:
40*1b8b6dd0SVincenzo Frascino    minItems: 1
41*1b8b6dd0SVincenzo Frascino    items:
42*1b8b6dd0SVincenzo Frascino      - const: s_axi_lite_aclk
43*1b8b6dd0SVincenzo Frascino      - const: aud_mclk
44*1b8b6dd0SVincenzo Frascino
45*1b8b6dd0SVincenzo Frascino  clocks:
46*1b8b6dd0SVincenzo Frascino    minItems: 1
47*1b8b6dd0SVincenzo Frascino    items:
48*1b8b6dd0SVincenzo Frascino      - description: clock for the axi data stream
49*1b8b6dd0SVincenzo Frascino      - description: clock for the MEMS microphone data stream
50*1b8b6dd0SVincenzo Frascino
51*1b8b6dd0SVincenzo Frascinorequired:
52*1b8b6dd0SVincenzo Frascino  - compatible
53*1b8b6dd0SVincenzo Frascino  - reg
54*1b8b6dd0SVincenzo Frascino  - interrupt-names
55*1b8b6dd0SVincenzo Frascino  - interrupts
56*1b8b6dd0SVincenzo Frascino  - clock-names
57*1b8b6dd0SVincenzo Frascino  - clocks
58*1b8b6dd0SVincenzo Frascino
59*1b8b6dd0SVincenzo FrascinoadditionalProperties: false
60*1b8b6dd0SVincenzo Frascino
61*1b8b6dd0SVincenzo Frascinoexamples:
62*1b8b6dd0SVincenzo Frascino  - |
63*1b8b6dd0SVincenzo Frascino    audio_formatter@80010000 {
64*1b8b6dd0SVincenzo Frascino      compatible = "xlnx,audio-formatter-1.0";
65*1b8b6dd0SVincenzo Frascino      reg = <0x80010000 0x1000>;
66*1b8b6dd0SVincenzo Frascino      interrupt-names = "irq_mm2s", "irq_s2mm";
67*1b8b6dd0SVincenzo Frascino      interrupt-parent = <&gic>;
68*1b8b6dd0SVincenzo Frascino      interrupts = <0 104 4>, <0 105 4>;
69*1b8b6dd0SVincenzo Frascino      clock-names = "s_axi_lite_aclk", "aud_mclk";
70*1b8b6dd0SVincenzo Frascino      clocks = <&clk 71>, <&clk_wiz_1 0>;
71*1b8b6dd0SVincenzo Frascino    };
72*1b8b6dd0SVincenzo Frascino...
73