On Fri, Mar 29, 2024 at 12:18 PM Frank Li <Frank.li@xxxxxxx> wrote: > > 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. Yes, please. best regards wang shengjiu > > 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 > >