Bo Shen | 099343c | 2012-11-07 11:41:41 +0800 | [diff] [blame] | 1 | * Atmel SSC driver. |
| 2 | |
| 3 | Required 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 BREZILLON | 725fc13 | 2013-12-17 16:01:47 +0100 | [diff] [blame] | 9 | - clock-names: tuple listing input clock names. |
| 10 | Required elements: "pclk" |
| 11 | - clocks: phandles to input clocks. |
Bo Shen | 099343c | 2012-11-07 11:41:41 +0800 | [diff] [blame] | 12 | |
Richard Genoud | f813175 | 2013-07-30 12:32:04 +0200 | [diff] [blame] | 13 | |
| 14 | Required 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 Shen | a69d000 | 2014-02-10 14:09:46 +0800 | [diff] [blame] | 20 | Optional 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 Rosin | e8314d7 | 2016-12-06 20:22:36 +0100 | [diff] [blame] | 27 | - #sound-dai-cells: Should contain <0>. |
| 28 | - This property makes the SSC into an automatically registered DAI. |
Bo Shen | a69d000 | 2014-02-10 14:09:46 +0800 | [diff] [blame] | 29 | |
Richard Genoud | f813175 | 2013-07-30 12:32:04 +0200 | [diff] [blame] | 30 | Examples: |
| 31 | - PDC transfer: |
Bo Shen | 099343c | 2012-11-07 11:41:41 +0800 | [diff] [blame] | 32 | ssc0: ssc@fffbc000 { |
| 33 | compatible = "atmel,at91rm9200-ssc"; |
| 34 | reg = <0xfffbc000 0x4000>; |
| 35 | interrupts = <14 4 5>; |
Boris BREZILLON | 725fc13 | 2013-12-17 16:01:47 +0100 | [diff] [blame] | 36 | clocks = <&ssc0_clk>; |
| 37 | clock-names = "pclk"; |
Bo Shen | 099343c | 2012-11-07 11:41:41 +0800 | [diff] [blame] | 38 | }; |
Richard Genoud | f813175 | 2013-07-30 12:32:04 +0200 | [diff] [blame] | 39 | |
| 40 | - DMA transfer: |
| 41 | ssc0: 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 Genoud | f813175 | 2013-07-30 12:32:04 +0200 | [diff] [blame] | 50 | }; |