Sugar Zhang
a7931dc257
dmaengine: pl330: _prep_dma_memcpy: Fix wrong burst size
...
[ Upstream commit e773ca7da8beeca7f17fe4c9d1284a2b66839cc1 ]
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:31:26 +01:00
..
2016-09-14 18:57:38 +05:30
2020-01-29 10:24:30 +01:00
2020-01-29 10:24:27 +01:00
2020-07-31 16:44:03 +02:00
2017-03-12 06:41:52 +01:00
2016-10-03 09:36:11 +05:30
2019-11-10 11:23:31 +01:00
2019-08-06 18:29:35 +02:00
2020-12-02 08:31:26 +01:00
2020-09-12 11:47:33 +02:00
2019-05-31 06:48:18 -07:00
2019-10-05 12:30:17 +02:00
2016-09-26 22:28:24 +05:30
2020-03-11 07:53:13 +01:00
2019-11-06 12:18:23 +01:00
2020-01-29 10:24:22 +01:00
2018-02-25 11:05:49 +01:00
2020-11-10 10:23:58 +01:00
2017-12-20 10:07:21 +01:00
2020-05-05 19:14:40 +02:00
2020-01-29 10:24:35 +01:00
2017-06-14 15:05:57 +02:00
2016-10-06 17:13:54 -07:00
2020-07-22 09:10:53 +02:00
2016-10-03 09:36:11 +05:30
2019-06-22 08:17:17 +02:00
2019-06-22 08:17:17 +02:00
2019-04-05 22:29:14 +02:00
2020-01-29 10:24:34 +01:00
2019-10-05 12:30:22 +02:00
2018-08-24 13:12:33 +02:00
2019-11-25 09:52:11 +01:00
2020-05-20 08:15:35 +02:00
2016-09-05 16:40:52 +05:30
2016-10-03 09:17:33 +05:30
2018-09-26 08:36:34 +02:00
2020-01-29 10:24:16 +01:00
2016-09-15 21:13:59 +05:30
2016-10-03 09:18:29 +05:30
2020-09-12 11:47:32 +02:00
2019-09-21 07:14:20 +02:00
2020-05-20 08:15:34 +02:00
2020-12-02 08:31:26 +01:00
2016-10-03 09:16:03 +05:30
2016-09-26 22:29:26 +05:30
2016-10-03 09:18:29 +05:30
2019-09-06 10:19:41 +02:00
2017-12-09 22:01:50 +01:00
2016-11-14 10:35:58 +05:30
2020-10-01 20:40:08 +02:00
2020-07-31 16:44:03 +02:00
2019-09-21 07:14:20 +02:00
2019-11-25 09:53:24 +01:00
2016-10-01 11:41:39 +05:30
2018-02-25 11:05:53 +01:00