Hi, Am Montag, 25. März 2024, 03:37:49 CET schrieb Sugar Zhang: > This patch add support for interleaved transfer which used > for interleaved audio or 2d video data transfer. > > for audio situation, we add 'nump' for number of period frames. > > Signed-off-by: Sugar Zhang <sugar.zhang@xxxxxxxxxxxxxx> > --- > > include/linux/dmaengine.h | 2 ++ > 1 file changed, 2 insertions(+) > > diff --git a/include/linux/dmaengine.h b/include/linux/dmaengine.h > index 752dbde..5263cde 100644 > --- a/include/linux/dmaengine.h > +++ b/include/linux/dmaengine.h > @@ -144,6 +144,7 @@ struct data_chunk { > * Otherwise, destination is filled contiguously (icg ignored). > * Ignored if dst_inc is false. > * @numf: Number of frames in this template. > + * @nump: Number of period frames in this template. > * @frame_size: Number of chunks in a frame i.e, size of sgl[]. > * @sgl: Array of {chunk,icg} pairs that make up a frame. > */ > @@ -156,6 +157,7 @@ struct dma_interleaved_template { > bool src_sgl; > bool dst_sgl; > size_t numf; > + size_t nump; > size_t frame_size; > struct data_chunk sgl[]; > }; hmm, this only ever adds this nump element. I think for adding things to really generic structs, you definitly will need to provide an actual user for it in a second patch. Heiko