Skip to content

Commit a3b5a54

Browse files
committed
misc: rp1-pio: Request a DMA burst size of 8
Improve DMA performance by increasing the burst size to 8. Signed-off-by: Phil Elwell <[email protected]>
1 parent c9d3b29 commit a3b5a54

File tree

1 file changed

+5
-1
lines changed

1 file changed

+5
-1
lines changed

drivers/misc/rp1-pio.c

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,7 @@
5050
#define RP1_PIO_FIFO_RX2 0x18
5151
#define RP1_PIO_FIFO_RX3 0x1c
5252

53-
#define RP1_PIO_DMACTRL_DEFAULT 0x80000104
53+
#define RP1_PIO_DMACTRL_DEFAULT 0x80000108
5454

5555
#define HANDLER(_n, _f) \
5656
[_IOC_NR(PIO_IOC_ ## _n)] = { #_n, rp1_pio_ ## _f, _IOC_SIZE(PIO_IOC_ ## _n) }
@@ -676,6 +676,10 @@ static int rp1_pio_sm_config_xfer_internal(struct rp1_pio_client *client, uint s
676676
config.src_addr = fifo_addr;
677677
config.dst_addr = fifo_addr;
678678
config.direction = (dir == RP1_PIO_DIR_TO_SM) ? DMA_MEM_TO_DEV : DMA_DEV_TO_MEM;
679+
if (dir == RP1_PIO_DIR_TO_SM)
680+
config.dst_maxburst = 8;
681+
else
682+
config.src_maxburst = 8;
679683

680684
ret = dmaengine_slave_config(dma->chan, &config);
681685
if (ret)

0 commit comments

Comments
 (0)