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