162306a36Sopenharmony_ci* Atmel SSC driver. 262306a36Sopenharmony_ci 362306a36Sopenharmony_ciRequired properties: 462306a36Sopenharmony_ci- compatible: "atmel,at91rm9200-ssc" or "atmel,at91sam9g45-ssc" 562306a36Sopenharmony_ci - atmel,at91rm9200-ssc: support pdc transfer 662306a36Sopenharmony_ci - atmel,at91sam9g45-ssc: support dma transfer 762306a36Sopenharmony_ci- reg: Should contain SSC registers location and length 862306a36Sopenharmony_ci- interrupts: Should contain SSC interrupt 962306a36Sopenharmony_ci- clock-names: tuple listing input clock names. 1062306a36Sopenharmony_ci Required elements: "pclk" 1162306a36Sopenharmony_ci- clocks: phandles to input clocks. 1262306a36Sopenharmony_ci 1362306a36Sopenharmony_ci 1462306a36Sopenharmony_ciRequired properties for devices compatible with "atmel,at91sam9g45-ssc": 1562306a36Sopenharmony_ci- dmas: DMA specifier, consisting of a phandle to DMA controller node, 1662306a36Sopenharmony_ci the memory interface and SSC DMA channel ID (for tx and rx). 1762306a36Sopenharmony_ci See Documentation/devicetree/bindings/dma/atmel-dma.txt for details. 1862306a36Sopenharmony_ci- dma-names: Must be "tx", "rx". 1962306a36Sopenharmony_ci 2062306a36Sopenharmony_ciOptional properties: 2162306a36Sopenharmony_ci - atmel,clk-from-rk-pin: bool property. 2262306a36Sopenharmony_ci - When SSC works in slave mode, according to the hardware design, the 2362306a36Sopenharmony_ci clock can get from TK pin, and also can get from RK pin. So, add 2462306a36Sopenharmony_ci this parameter to choose where the clock from. 2562306a36Sopenharmony_ci - By default the clock is from TK pin, if the clock from RK pin, this 2662306a36Sopenharmony_ci property is needed. 2762306a36Sopenharmony_ci - #sound-dai-cells: Should contain <0>. 2862306a36Sopenharmony_ci - This property makes the SSC into an automatically registered DAI. 2962306a36Sopenharmony_ci 3062306a36Sopenharmony_ciExamples: 3162306a36Sopenharmony_ci- PDC transfer: 3262306a36Sopenharmony_cissc0: ssc@fffbc000 { 3362306a36Sopenharmony_ci compatible = "atmel,at91rm9200-ssc"; 3462306a36Sopenharmony_ci reg = <0xfffbc000 0x4000>; 3562306a36Sopenharmony_ci interrupts = <14 4 5>; 3662306a36Sopenharmony_ci clocks = <&ssc0_clk>; 3762306a36Sopenharmony_ci clock-names = "pclk"; 3862306a36Sopenharmony_ci}; 3962306a36Sopenharmony_ci 4062306a36Sopenharmony_ci- DMA transfer: 4162306a36Sopenharmony_cissc0: ssc@f0010000 { 4262306a36Sopenharmony_ci compatible = "atmel,at91sam9g45-ssc"; 4362306a36Sopenharmony_ci reg = <0xf0010000 0x4000>; 4462306a36Sopenharmony_ci interrupts = <28 4 5>; 4562306a36Sopenharmony_ci dmas = <&dma0 1 13>, 4662306a36Sopenharmony_ci <&dma0 1 14>; 4762306a36Sopenharmony_ci dma-names = "tx", "rx"; 4862306a36Sopenharmony_ci pinctrl-names = "default"; 4962306a36Sopenharmony_ci pinctrl-0 = <&pinctrl_ssc0_tx &pinctrl_ssc0_rx>; 5062306a36Sopenharmony_ci}; 51