Doc or reference of the DMA driver on PYNQ

Hi,
I’m studying how to develop the DMA driver on PYNQ. The reference I found is one case in the following link. However, the example only shows simple usage of the DMA driver on PYNQ.

From the viewpoint of developing more complex DMA driver, what’s the documentation would you suggest as reference on PYNQ ? For example, if the user would like to use the scatter-gather feature of the DMA on PYNQ, how can the user write the associated DMA driver on PYNQ? We can find complete documentation of the DMA for SDK instead of python version on PYNQ. What would you do ?

https://pynq.readthedocs.io/en/v2.3/overlay_design_methodology/overlay_tutorial.html

dma.sendchannel.transfer(in_buffer)
dma.recvchannel.transfer(out_buffer)
dma.sendchannel.wait()
dma.recvchannel.wait()

Thanks.