xref: /freebsd/sys/contrib/device-tree/Bindings/sound/xlnx,spdif.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,spdif.yaml#
5*8ccc0d23SEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml#
6*8ccc0d23SEmmanuel Vadot
7*8ccc0d23SEmmanuel Vadottitle: Xilinx SPDIF IP
8*8ccc0d23SEmmanuel Vadot
9*8ccc0d23SEmmanuel Vadotdescription:
10*8ccc0d23SEmmanuel Vadot  The IP supports playback and capture of SPDIF audio.
11*8ccc0d23SEmmanuel Vadot
12*8ccc0d23SEmmanuel Vadotmaintainers:
13*8ccc0d23SEmmanuel Vadot  - Vincenzo Frascino <vincenzo.frascino@arm.com>
14*8ccc0d23SEmmanuel Vadot
15*8ccc0d23SEmmanuel VadotallOf:
16*8ccc0d23SEmmanuel Vadot  - $ref: dai-common.yaml#
17*8ccc0d23SEmmanuel Vadot
18*8ccc0d23SEmmanuel Vadotproperties:
19*8ccc0d23SEmmanuel Vadot  compatible:
20*8ccc0d23SEmmanuel Vadot    enum:
21*8ccc0d23SEmmanuel Vadot      - xlnx,spdif-2.0
22*8ccc0d23SEmmanuel Vadot
23*8ccc0d23SEmmanuel Vadot  reg:
24*8ccc0d23SEmmanuel Vadot    maxItems: 1
25*8ccc0d23SEmmanuel Vadot
26*8ccc0d23SEmmanuel Vadot  interrupts:
27*8ccc0d23SEmmanuel Vadot    items:
28*8ccc0d23SEmmanuel Vadot      - description: SPDIF audio interrupt
29*8ccc0d23SEmmanuel Vadot
30*8ccc0d23SEmmanuel Vadot  clock-names:
31*8ccc0d23SEmmanuel Vadot    items:
32*8ccc0d23SEmmanuel Vadot      - const: aud_clk_i
33*8ccc0d23SEmmanuel Vadot      - const: s_axi_aclk
34*8ccc0d23SEmmanuel Vadot
35*8ccc0d23SEmmanuel Vadot  clocks:
36*8ccc0d23SEmmanuel Vadot    minItems: 1
37*8ccc0d23SEmmanuel Vadot    items:
38*8ccc0d23SEmmanuel Vadot      - description: input audio clock
39*8ccc0d23SEmmanuel Vadot      - description: clock for the AXI data stream
40*8ccc0d23SEmmanuel Vadot
41*8ccc0d23SEmmanuel Vadot  xlnx,spdif-mode:
42*8ccc0d23SEmmanuel Vadot    $ref: /schemas/types.yaml#/definitions/uint32
43*8ccc0d23SEmmanuel Vadot    enum:
44*8ccc0d23SEmmanuel Vadot      - 0
45*8ccc0d23SEmmanuel Vadot      - 1
46*8ccc0d23SEmmanuel Vadot    description: |
47*8ccc0d23SEmmanuel Vadot      0 - receiver
48*8ccc0d23SEmmanuel Vadot      1 - transmitter
49*8ccc0d23SEmmanuel Vadot
50*8ccc0d23SEmmanuel Vadot  xlnx,aud_clk_i:
51*8ccc0d23SEmmanuel Vadot    $ref: /schemas/types.yaml#/definitions/uint32
52*8ccc0d23SEmmanuel Vadot    description:
53*8ccc0d23SEmmanuel Vadot      Input audio clock frequency. It affects the sampling rate.
54*8ccc0d23SEmmanuel Vadot
55*8ccc0d23SEmmanuel Vadotrequired:
56*8ccc0d23SEmmanuel Vadot  - compatible
57*8ccc0d23SEmmanuel Vadot  - reg
58*8ccc0d23SEmmanuel Vadot  - interrupts
59*8ccc0d23SEmmanuel Vadot  - clock-names
60*8ccc0d23SEmmanuel Vadot  - clocks
61*8ccc0d23SEmmanuel Vadot
62*8ccc0d23SEmmanuel VadotadditionalProperties: false
63*8ccc0d23SEmmanuel Vadot
64*8ccc0d23SEmmanuel Vadotexamples:
65*8ccc0d23SEmmanuel Vadot  - |
66*8ccc0d23SEmmanuel Vadot    spdif@80010000 {
67*8ccc0d23SEmmanuel Vadot      compatible = "xlnx,spdif-2.0";
68*8ccc0d23SEmmanuel Vadot      reg = <0x80010000 0x10000>;
69*8ccc0d23SEmmanuel Vadot      clock-names = "aud_clk_i", "s_axi_aclk";
70*8ccc0d23SEmmanuel Vadot      clocks = <&misc_clk_0>, <&clk 71>;
71*8ccc0d23SEmmanuel Vadot      interrupt-parent = <&gic>;
72*8ccc0d23SEmmanuel Vadot      interrupts = <0 91 4>;
73*8ccc0d23SEmmanuel Vadot      xlnx,spdif-mode = <1>;
74*8ccc0d23SEmmanuel Vadot      xlnx,aud_clk_i = <49152913>;
75*8ccc0d23SEmmanuel Vadot    };
76*8ccc0d23SEmmanuel Vadot
77*8ccc0d23SEmmanuel Vadot...
78