On Fri, Mar 29, 2024 at 11:28:07AM +0800, Shengjiu Wang wrote: > SSI and SPDIF are dual fifo interface, when support ASRC P2P > with SSI and SPDIF, the src fifo or dst fifo number can be > two. > > The p2p watermark level bit 13 and 14 are designed for > these use case. This patch is to complete this function > in driver. > > Signed-off-by: Shengjiu Wang <shengjiu.wang@xxxxxxx> > Signed-off-by: Joy Zou <joy.zou@xxxxxxx> > Acked-by: Iuliana Prodan <iuliana.prodan@xxxxxxx> This already in my sdma improvement patch list. https://lore.kernel.org/imx/20240318-sdma_upstream-v3-0-da37ddd44d49@xxxxxxx/T/#m59e4e03a527103de7bf1a7fe86e8fbc570454970 This have more nice commit message. Can I take one into my patch series to avoid conflict. Frank > --- > drivers/dma/imx-sdma.c | 18 +++++++++++++++++- > 1 file changed, 17 insertions(+), 1 deletion(-) > > diff --git a/drivers/dma/imx-sdma.c b/drivers/dma/imx-sdma.c > index 9b42f5e96b1e..079e6e8f4f59 100644 > --- a/drivers/dma/imx-sdma.c > +++ b/drivers/dma/imx-sdma.c > @@ -137,7 +137,11 @@ > * 0: Source on AIPS > * 12 Destination Bit(DP) 1: Destination on SPBA > * 0: Destination on AIPS > - * 13-15 --------- MUST BE 0 > + * 13 Source FIFO 1: Source is dual FIFO > + * 0: Source is single FIFO > + * 14 Destination FIFO 1: Destination is dual FIFO > + * 0: Destination is single FIFO > + * 15 --------- MUST BE 0 > * 16-23 Higher WML HWML > * 24-27 N Total number of samples after > * which Pad adding/Swallowing > @@ -168,6 +172,8 @@ > #define SDMA_WATERMARK_LEVEL_SPDIF BIT(10) > #define SDMA_WATERMARK_LEVEL_SP BIT(11) > #define SDMA_WATERMARK_LEVEL_DP BIT(12) > +#define SDMA_WATERMARK_LEVEL_SD BIT(13) > +#define SDMA_WATERMARK_LEVEL_DD BIT(14) > #define SDMA_WATERMARK_LEVEL_HWML (0xFF << 16) > #define SDMA_WATERMARK_LEVEL_LWE BIT(28) > #define SDMA_WATERMARK_LEVEL_HWE BIT(29) > @@ -1255,6 +1261,16 @@ static void sdma_set_watermarklevel_for_p2p(struct sdma_channel *sdmac) > sdmac->watermark_level |= SDMA_WATERMARK_LEVEL_DP; > > sdmac->watermark_level |= SDMA_WATERMARK_LEVEL_CONT; > + > + /* > + * Limitation: The p2p script support dual fifos in maximum, > + * So when fifo number is larger than 1, force enable dual > + * fifos. > + */ > + if (sdmac->n_fifos_src > 1) > + sdmac->watermark_level |= SDMA_WATERMARK_LEVEL_SD; > + if (sdmac->n_fifos_dst > 1) > + sdmac->watermark_level |= SDMA_WATERMARK_LEVEL_DD; > } > > static void sdma_set_watermarklevel_for_sais(struct sdma_channel *sdmac) > -- > 2.34.1 >