xref: /freebsd/sys/contrib/device-tree/Bindings/sound/xlnx,spdif.txt (revision c66ec88fed842fbaad62c30d510644ceb7bd2d71)
1*c66ec88fSEmmanuel VadotDevice-Tree bindings for Xilinx SPDIF IP
2*c66ec88fSEmmanuel Vadot
3*c66ec88fSEmmanuel VadotThe IP supports playback and capture of SPDIF audio
4*c66ec88fSEmmanuel Vadot
5*c66ec88fSEmmanuel VadotRequired properties:
6*c66ec88fSEmmanuel Vadot - compatible: "xlnx,spdif-2.0"
7*c66ec88fSEmmanuel Vadot - clock-names: List of input clocks.
8*c66ec88fSEmmanuel Vadot   Required elements: "s_axi_aclk", "aud_clk_i"
9*c66ec88fSEmmanuel Vadot - clocks: Input clock specifier. Refer to common clock bindings.
10*c66ec88fSEmmanuel Vadot - reg: Base address and address length of the IP core instance.
11*c66ec88fSEmmanuel Vadot - interrupts-parent: Phandle for interrupt controller.
12*c66ec88fSEmmanuel Vadot - interrupts: List of Interrupt numbers.
13*c66ec88fSEmmanuel Vadot - xlnx,spdif-mode: 0 :- receiver mode
14*c66ec88fSEmmanuel Vadot		    1 :- transmitter mode
15*c66ec88fSEmmanuel Vadot - xlnx,aud_clk_i: input audio clock value.
16*c66ec88fSEmmanuel Vadot
17*c66ec88fSEmmanuel VadotExample:
18*c66ec88fSEmmanuel Vadot	spdif_0: spdif@80010000 {
19*c66ec88fSEmmanuel Vadot		clock-names = "aud_clk_i", "s_axi_aclk";
20*c66ec88fSEmmanuel Vadot		clocks = <&misc_clk_0>, <&clk 71>;
21*c66ec88fSEmmanuel Vadot		compatible = "xlnx,spdif-2.0";
22*c66ec88fSEmmanuel Vadot		interrupt-names = "spdif_interrupt";
23*c66ec88fSEmmanuel Vadot		interrupt-parent = <&gic>;
24*c66ec88fSEmmanuel Vadot		interrupts = <0 91 4>;
25*c66ec88fSEmmanuel Vadot		reg = <0x0 0x80010000 0x0 0x10000>;
26*c66ec88fSEmmanuel Vadot		xlnx,spdif-mode = <1>;
27*c66ec88fSEmmanuel Vadot		xlnx,aud_clk_i = <49152913>;
28*c66ec88fSEmmanuel Vadot	};
29