1*c66ec88fSEmmanuel Vadot* Atmel SSC driver. 2*c66ec88fSEmmanuel Vadot 3*c66ec88fSEmmanuel VadotRequired properties: 4*c66ec88fSEmmanuel Vadot- compatible: "atmel,at91rm9200-ssc" or "atmel,at91sam9g45-ssc" 5*c66ec88fSEmmanuel Vadot - atmel,at91rm9200-ssc: support pdc transfer 6*c66ec88fSEmmanuel Vadot - atmel,at91sam9g45-ssc: support dma transfer 7*c66ec88fSEmmanuel Vadot- reg: Should contain SSC registers location and length 8*c66ec88fSEmmanuel Vadot- interrupts: Should contain SSC interrupt 9*c66ec88fSEmmanuel Vadot- clock-names: tuple listing input clock names. 10*c66ec88fSEmmanuel Vadot Required elements: "pclk" 11*c66ec88fSEmmanuel Vadot- clocks: phandles to input clocks. 12*c66ec88fSEmmanuel Vadot 13*c66ec88fSEmmanuel Vadot 14*c66ec88fSEmmanuel VadotRequired properties for devices compatible with "atmel,at91sam9g45-ssc": 15*c66ec88fSEmmanuel Vadot- dmas: DMA specifier, consisting of a phandle to DMA controller node, 16*c66ec88fSEmmanuel Vadot the memory interface and SSC DMA channel ID (for tx and rx). 17*c66ec88fSEmmanuel Vadot See Documentation/devicetree/bindings/dma/atmel-dma.txt for details. 18*c66ec88fSEmmanuel Vadot- dma-names: Must be "tx", "rx". 19*c66ec88fSEmmanuel Vadot 20*c66ec88fSEmmanuel VadotOptional properties: 21*c66ec88fSEmmanuel Vadot - atmel,clk-from-rk-pin: bool property. 22*c66ec88fSEmmanuel Vadot - When SSC works in slave mode, according to the hardware design, the 23*c66ec88fSEmmanuel Vadot clock can get from TK pin, and also can get from RK pin. So, add 24*c66ec88fSEmmanuel Vadot this parameter to choose where the clock from. 25*c66ec88fSEmmanuel Vadot - By default the clock is from TK pin, if the clock from RK pin, this 26*c66ec88fSEmmanuel Vadot property is needed. 27*c66ec88fSEmmanuel Vadot - #sound-dai-cells: Should contain <0>. 28*c66ec88fSEmmanuel Vadot - This property makes the SSC into an automatically registered DAI. 29*c66ec88fSEmmanuel Vadot 30*c66ec88fSEmmanuel VadotExamples: 31*c66ec88fSEmmanuel Vadot- PDC transfer: 32*c66ec88fSEmmanuel Vadotssc0: ssc@fffbc000 { 33*c66ec88fSEmmanuel Vadot compatible = "atmel,at91rm9200-ssc"; 34*c66ec88fSEmmanuel Vadot reg = <0xfffbc000 0x4000>; 35*c66ec88fSEmmanuel Vadot interrupts = <14 4 5>; 36*c66ec88fSEmmanuel Vadot clocks = <&ssc0_clk>; 37*c66ec88fSEmmanuel Vadot clock-names = "pclk"; 38*c66ec88fSEmmanuel Vadot}; 39*c66ec88fSEmmanuel Vadot 40*c66ec88fSEmmanuel Vadot- DMA transfer: 41*c66ec88fSEmmanuel Vadotssc0: ssc@f0010000 { 42*c66ec88fSEmmanuel Vadot compatible = "atmel,at91sam9g45-ssc"; 43*c66ec88fSEmmanuel Vadot reg = <0xf0010000 0x4000>; 44*c66ec88fSEmmanuel Vadot interrupts = <28 4 5>; 45*c66ec88fSEmmanuel Vadot dmas = <&dma0 1 13>, 46*c66ec88fSEmmanuel Vadot <&dma0 1 14>; 47*c66ec88fSEmmanuel Vadot dma-names = "tx", "rx"; 48*c66ec88fSEmmanuel Vadot pinctrl-names = "default"; 49*c66ec88fSEmmanuel Vadot pinctrl-0 = <&pinctrl_ssc0_tx &pinctrl_ssc0_rx>; 50*c66ec88fSEmmanuel Vadot}; 51