Sugar Zhang
885244d770
dmaengine: pl330: _prep_dma_memcpy: Fix wrong burst size
[ Upstream commit e773ca7da8 ]
Actually, burst size is equal to '1 << desc->rqcfg.brst_size'.
we should use burst size, not desc->rqcfg.brst_size.
dma memcpy performance on Rockchip RV1126
@ 1512MHz A7, 1056MHz LPDDR3, 200MHz DMA:
dmatest:
/# echo dma0chan0 > /sys/module/dmatest/parameters/channel
/# echo 4194304 > /sys/module/dmatest/parameters/test_buf_size
/# echo 8 > /sys/module/dmatest/parameters/iterations
/# echo y > /sys/module/dmatest/parameters/norandom
/# echo y > /sys/module/dmatest/parameters/verbose
/# echo 1 > /sys/module/dmatest/parameters/run
dmatest: dma0chan0-copy0: result #1: 'test passed' with src_off=0x0 dst_off=0x0 len=0x400000
dmatest: dma0chan0-copy0: result #2: 'test passed' with src_off=0x0 dst_off=0x0 len=0x400000
dmatest: dma0chan0-copy0: result #3: 'test passed' with src_off=0x0 dst_off=0x0 len=0x400000
dmatest: dma0chan0-copy0: result #4: 'test passed' with src_off=0x0 dst_off=0x0 len=0x400000
dmatest: dma0chan0-copy0: result #5: 'test passed' with src_off=0x0 dst_off=0x0 len=0x400000
dmatest: dma0chan0-copy0: result #6: 'test passed' with src_off=0x0 dst_off=0x0 len=0x400000
dmatest: dma0chan0-copy0: result #7: 'test passed' with src_off=0x0 dst_off=0x0 len=0x400000
dmatest: dma0chan0-copy0: result #8: 'test passed' with src_off=0x0 dst_off=0x0 len=0x400000
Before:
dmatest: dma0chan0-copy0: summary 8 tests, 0 failures 48 iops 200338 KB/s (0)
After this patch:
dmatest: dma0chan0-copy0: summary 8 tests, 0 failures 179 iops 734873 KB/s (0)
After this patch and increase dma clk to 400MHz:
dmatest: dma0chan0-copy0: summary 8 tests, 0 failures 259 iops 1062929 KB/s (0)
Signed-off-by: Sugar Zhang <sugar.zhang@rock-chips.com>
Link: https://lore.kernel.org/r/1605326106-55681-1-git-send-email-sugar.zhang@rock-chips.com
Signed-off-by: Vinod Koul <vkoul@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2020-12-02 08:34:42 +01:00
..
2020-01-27 14:46:43 +01:00
2020-01-27 14:46:39 +01:00
2020-07-29 07:42:55 +02:00
2019-11-24 08:23:17 +01:00
2020-12-02 08:34:41 +01:00
2020-09-23 10:46:26 +02:00
2020-09-09 19:03:07 +02:00
2020-03-11 18:03:08 +01:00
2020-01-27 14:46:30 +01:00
2020-11-05 11:07:01 +01:00
2020-02-28 16:36:01 +01:00
2020-05-05 19:15:53 +02:00
2020-01-27 14:46:52 +01:00
2020-07-22 09:22:28 +02:00
2020-01-27 14:46:50 +01:00
2020-01-17 19:45:54 +01:00
2020-05-20 08:17:06 +02:00
2020-01-27 14:46:20 +01:00
2020-09-09 19:03:07 +02:00
2020-05-20 08:17:06 +02:00
2020-12-02 08:34:42 +01:00
2020-10-01 13:12:35 +02:00
2020-07-29 07:42:55 +02:00
2019-11-24 08:22:58 +01:00