Files
linux-rockchip/drivers/dma
Sugar Zhang ec0b65dbc5 dmaengine: pl330: Optimize scatterlist transfer
Use hardware link-list instead of soft link-list to make sure
no gap among the scatter-list transfer.

Merge multiple descs [first ... last] into the last desc,
and drop the descs which have been merged into last one.

Now we get the union one rather than a soft SGL.

Obviously, this require much more MCODE buf size, because we
merge multiple descs into a union one. Increase MCODE buf size
if needed.

e.g.

  -#define MCODE_BUFF_PER_REQ	256
  +#define MCODE_BUFF_PER_REQ	512

or parsed from DT

  arm,pl330-mcbufsz-bytes = <512>;

Otherwise, you may see the warning log on the long SGL situation.

  dma-pl330 2ab90000.dmac: pl330_submit_req: Try increasing mcbufsz (403/256)

Signed-off-by: Sugar Zhang <sugar.zhang@rock-chips.com>
Change-Id: Iea31fc9dba08d36570d4bdbe2c5fcb61f5fed0d4
2024-08-29 14:24:37 +08:00
..