| * Samsung I2S controller |
| |
| Required SoC Specific Properties: |
| |
| - compatible : "samsung,i2s-v5" |
| - reg: physical base address of the controller and length of memory mapped |
| region. |
| - dmas: list of DMA controller phandle and DMA request line ordered pairs. |
| - dma-names: identifier string for each DMA request line in the dmas property. |
| These strings correspond 1:1 with the ordered pairs in dmas. |
| - clocks: Handle to iis clock and RCLK source clk. |
| - clock-names: |
| i2s0 uses some base clks from CMU and some are from audio subsystem internal |
| clock controller. The clock names for i2s0 should be "iis", "i2s_opclk0" and |
| "i2s_opclk1" as shown in the example below. |
| i2s1 and i2s2 uses clocks from CMU. The clock names for i2s1 and i2s2 should |
| be "iis" and "i2s_opclk0". |
| "iis" is the i2s bus clock and i2s_opclk0, i2s_opclk1 are sources of the root |
| clk. i2s0 has internal mux to select the source of root clk and i2s1 and i2s2 |
| doesn't have any such mux. |
| |
| Optional SoC Specific Properties: |
| |
| - samsung,supports-6ch: If the I2S Primary sound source has 5.1 Channel |
| support, this flag is enabled. |
| - samsung,supports-rstclr: This flag should be set if I2S software reset bit |
| control is required. When this flag is set I2S software reset bit will be |
| enabled or disabled based on need. |
| - samsung,supports-secdai:If I2S block has a secondary FIFO and internal DMA, |
| then this flag is enabled. |
| - samsung,idma-addr: Internal DMA register base address of the audio |
| sub system(used in secondary sound source). |
| - pinctrl-0: Should specify pin control groups used for this controller. |
| - pinctrl-names: Should contain only one value - "default". |
| |
| Example: |
| |
| i2s0: i2s@03830000 { |
| compatible = "samsung,i2s-v5"; |
| reg = <0x03830000 0x100>; |
| dmas = <&pdma0 10 |
| &pdma0 9 |
| &pdma0 8>; |
| dma-names = "tx", "rx", "tx-sec"; |
| clocks = <&clock_audss EXYNOS_I2S_BUS>, |
| <&clock_audss EXYNOS_I2S_BUS>, |
| <&clock_audss EXYNOS_SCLK_I2S>; |
| clock-names = "iis", "i2s_opclk0", "i2s_opclk1"; |
| samsung,supports-6ch; |
| samsung,supports-rstclr; |
| samsung,supports-secdai; |
| samsung,idma-addr = <0x03000000>; |
| pinctrl-names = "default"; |
| pinctrl-0 = <&i2s0_bus>; |
| }; |