Unverified Commit f84f6ee0 authored by Mark Brown's avatar Mark Brown
Browse files

Merge series "Add RZ/G2L Sound support" from Biju Das <biju.das.jz@bp.renesas.com>:

This patch series aims to add ASoC support on RZ/G2L SoC's.

It is based on the work done by Chris Brandt for RZ/A ASoC driver.

v4->v5
 * Moved validation of sample bits in hw_params
 * Removed validation of frame bits as it is redundant
 * split the rz_ssi_start_stop function into rz_ssi_start and rz_ssi_stop.
 * remove the spin_lock around rz_ssi_stream_init.
 * Updated dmas description and removed fixes as it is an enhancement
   now.
 * updated ssi_start functions with setting fifo thresholds
   and ssi_stop function with cancel all dma txn.
v3->v4:
 * Updated the subject line as per style for the subsystem.
 * Removed select SND_SIMPLE_CARD from Kconfig
 * Added C++ comments for copyright and driver description.
 * Moved validation of channels in hw_params
 * removed asm issue reported by bot as well as Mark
 * replaced master/slave macros with provider/consumer macros
 * Improved locking and added more null pointer checks.
v2->v3:
 * Fixed the dependency on KCONFIG
 * Merged the binding patch with dma feature added
 * Updated dt binding example with encoded #dma-cells value.
 * Improved Error handling in probe function
 * Removed the passing legacy channel configuration parameters from
   dmaengine_slave_config function
 * started using dma_request_chan instead of deprecated
   dma_request_slave_channel
 * Removed SoC dtsi and config patches from this series. Will send it later.
v1->v2:
 * Rebased to latest rc kernel

Biju Das (3):
  ASoC: sh: Add RZ/G2L SSIF-2 driver
  ASoC: dt-bindings: renesas,rz-ssi: Update slave dma channel
    configuration parameters
  ASoC: sh: rz-ssi: Add SSI DMAC support

 .../bindings/sound/renesas,rz-ssi.yaml        |   22 +-
 sound/soc/sh/Kconfig                          |    6 +
 sound/soc/sh/Makefile                         |    4 +
 sound/soc/sh/rz-ssi.c                         | 1063 +++++++++++++++++
 4 files changed, 1093 insertions(+), 2 deletions(-)
 create mode 100644 sound/soc/sh/rz-ssi.c

--
2.17.1
parents 6d9d1652 26ac471c
Loading
Loading
Loading
Loading
+20 −2
Original line number Diff line number Diff line
@@ -48,6 +48,24 @@ properties:
  dmas:
    minItems: 1
    maxItems: 2
    description:
      The first cell represents a phandle to dmac
      The second cell specifies the encoded MID/RID values of the SSI port
      connected to the DMA client and the slave channel configuration
      parameters.
      bits[0:9]   - Specifies MID/RID value of a SSI channel as below
                    MID/RID value of SSI rx0 = 0x256
                    MID/RID value of SSI tx0 = 0x255
                    MID/RID value of SSI rx1 = 0x25a
                    MID/RID value of SSI tx1 = 0x259
                    MID/RID value of SSI rt2 = 0x25f
                    MID/RID value of SSI rx3 = 0x262
                    MID/RID value of SSI tx3 = 0x261
      bit[10]     - HIEN = 1, Detects a request in response to the rising edge
                    of the signal
      bit[11]     - LVL = 0, Detects based on the edge
      bits[12:14] - AM = 2, Bus cycle mode
      bit[15]     - TM = 0, Single transfer mode

  dma-names:
    oneOf:
@@ -93,8 +111,8 @@ examples:
            clock-names = "ssi", "ssi_sfr", "audio_clk1", "audio_clk2";
            power-domains = <&cpg>;
            resets = <&cpg R9A07G044_SSI0_RST_M2_REG>;
            dmas = <&dmac 0x255>,
                   <&dmac 0x256>;
            dmas = <&dmac 0x2655>,
                   <&dmac 0x2656>;
            dma-names = "tx", "rx";
            #sound-dai-cells = <0>;
    };
+6 −0
Original line number Diff line number Diff line
@@ -45,6 +45,12 @@ config SND_SOC_RCAR
	help
	  This option enables R-Car SRU/SCU/SSIU/SSI sound support

config SND_SOC_RZ
	tristate "RZ/G2L series SSIF-2 support"
	depends on ARCH_R9A07G044 || COMPILE_TEST
	help
	  This option enables RZ/G2L SSIF-2 sound support.

##
## Boards
##
+4 −0
Original line number Diff line number Diff line
@@ -22,3 +22,7 @@ snd-soc-migor-objs := migor.o

obj-$(CONFIG_SND_SH7760_AC97)	+= snd-soc-sh7760-ac97.o
obj-$(CONFIG_SND_SIU_MIGOR)	+= snd-soc-migor.o

# RZ/G2L
snd-soc-rz-ssi-objs		:= rz-ssi.o
obj-$(CONFIG_SND_SOC_RZ)	+= snd-soc-rz-ssi.o

sound/soc/sh/rz-ssi.c

0 → 100644
+1063 −0

File added.

Preview size limit exceeded, changes collapsed.