Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 1a895578 authored by Nicolin Chen's avatar Nicolin Chen Committed by Vinod Koul
Browse files

dma: imx-sdma: Add new dma type for ssi dual fifo script



This patch adds a new DMA_TYPE for SSI dual FIFO script, included
in SDMA firmware version 2. This script would allow SSI use dual
fifo mode to transimit/receive data without occasional hardware
underrun/overrun.

Signed-off-by: default avatarNicolin Chen <b42378@freescale.com>
Acked-by: default avatarKumar Gala <galak@codeaurora.org>
Acked-by: default avatarSascha Hauer <s.hauer@pengutronix.de>
Signed-off-by: default avatarVinod Koul <vinod.koul@intel.com>
parent cd72b846
Loading
Loading
Loading
Loading
+1 −0
Original line number Original line Diff line number Diff line
@@ -42,6 +42,7 @@ The full ID of peripheral types can be found below.
	19	IPU Memory
	19	IPU Memory
	20	ASRC
	20	ASRC
	21	ESAI
	21	ESAI
	22	SSI Dual FIFO	(needs firmware ver >= 2)


The third cell specifies the transfer priority as below.
The third cell specifies the transfer priority as below.


+4 −0
Original line number Original line Diff line number Diff line
@@ -725,6 +725,10 @@ static void sdma_get_pc(struct sdma_channel *sdmac,
		per_2_emi = sdma->script_addrs->app_2_mcu_addr;
		per_2_emi = sdma->script_addrs->app_2_mcu_addr;
		emi_2_per = sdma->script_addrs->mcu_2_app_addr;
		emi_2_per = sdma->script_addrs->mcu_2_app_addr;
		break;
		break;
	case IMX_DMATYPE_SSI_DUAL:
		per_2_emi = sdma->script_addrs->ssish_2_mcu_addr;
		emi_2_per = sdma->script_addrs->mcu_2_ssish_addr;
		break;
	case IMX_DMATYPE_SSI_SP:
	case IMX_DMATYPE_SSI_SP:
	case IMX_DMATYPE_MMC:
	case IMX_DMATYPE_MMC:
	case IMX_DMATYPE_SDHC:
	case IMX_DMATYPE_SDHC:
+1 −0
Original line number Original line Diff line number Diff line
@@ -39,6 +39,7 @@ enum sdma_peripheral_type {
	IMX_DMATYPE_IPU_MEMORY,	/* IPU Memory */
	IMX_DMATYPE_IPU_MEMORY,	/* IPU Memory */
	IMX_DMATYPE_ASRC,	/* ASRC */
	IMX_DMATYPE_ASRC,	/* ASRC */
	IMX_DMATYPE_ESAI,	/* ESAI */
	IMX_DMATYPE_ESAI,	/* ESAI */
	IMX_DMATYPE_SSI_DUAL,	/* SSI Dual FIFO */
};
};


enum imx_dma_prio {
enum imx_dma_prio {