blob: f9fb412642fe09937adeeafd620859af858c0952 [file] [log] [blame]
Bo Shen099343c2012-11-07 11:41:41 +08001* Atmel SSC driver.
2
3Required properties:
4- compatible: "atmel,at91rm9200-ssc" or "atmel,at91sam9g45-ssc"
5 - atmel,at91rm9200-ssc: support pdc transfer
6 - atmel,at91sam9g45-ssc: support dma transfer
7- reg: Should contain SSC registers location and length
8- interrupts: Should contain SSC interrupt
Boris BREZILLON725fc132013-12-17 16:01:47 +01009- clock-names: tuple listing input clock names.
10 Required elements: "pclk"
11- clocks: phandles to input clocks.
Bo Shen099343c2012-11-07 11:41:41 +080012
Richard Genoudf8131752013-07-30 12:32:04 +020013
14Required properties for devices compatible with "atmel,at91sam9g45-ssc":
15- dmas: DMA specifier, consisting of a phandle to DMA controller node,
16 the memory interface and SSC DMA channel ID (for tx and rx).
17 See Documentation/devicetree/bindings/dma/atmel-dma.txt for details.
18- dma-names: Must be "tx", "rx".
19
Bo Shena69d0002014-02-10 14:09:46 +080020Optional properties:
21 - atmel,clk-from-rk-pin: bool property.
22 - When SSC works in slave mode, according to the hardware design, the
23 clock can get from TK pin, and also can get from RK pin. So, add
24 this parameter to choose where the clock from.
25 - By default the clock is from TK pin, if the clock from RK pin, this
26 property is needed.
Peter Rosine8314d72016-12-06 20:22:36 +010027 - #sound-dai-cells: Should contain <0>.
28 - This property makes the SSC into an automatically registered DAI.
Bo Shena69d0002014-02-10 14:09:46 +080029
Richard Genoudf8131752013-07-30 12:32:04 +020030Examples:
31- PDC transfer:
Bo Shen099343c2012-11-07 11:41:41 +080032ssc0: ssc@fffbc000 {
33 compatible = "atmel,at91rm9200-ssc";
34 reg = <0xfffbc000 0x4000>;
35 interrupts = <14 4 5>;
Boris BREZILLON725fc132013-12-17 16:01:47 +010036 clocks = <&ssc0_clk>;
37 clock-names = "pclk";
Bo Shen099343c2012-11-07 11:41:41 +080038};
Richard Genoudf8131752013-07-30 12:32:04 +020039
40- DMA transfer:
41ssc0: ssc@f0010000 {
42 compatible = "atmel,at91sam9g45-ssc";
43 reg = <0xf0010000 0x4000>;
44 interrupts = <28 4 5>;
45 dmas = <&dma0 1 13>,
46 <&dma0 1 14>;
47 dma-names = "tx", "rx";
48 pinctrl-names = "default";
49 pinctrl-0 = <&pinctrl_ssc0_tx &pinctrl_ssc0_rx>;
Richard Genoudf8131752013-07-30 12:32:04 +020050};