diff options
author | Mark Brown <broonie@kernel.org> | 2025-09-03 20:15:02 +0100 |
---|---|---|
committer | Mark Brown <broonie@kernel.org> | 2025-09-03 20:15:02 +0100 |
commit | 73e4e7087a4545db3c8c4b3fec82c7bef8e2f7b1 (patch) | |
tree | 0c15d0ab291cf94e6fcdc40dd395de33fe70c97e /rust/helpers/processor.c | |
parent | 94b39cb3ad6db935b585988b36378884199cd5fc (diff) | |
parent | 5cc49b5a36b32a2dba41441ea13b93fb5ea21cfd (diff) |
spi: spi-fsl-dspi: Target mode improvements
Merge series from James Clark <james.clark@linaro.org>:
Improve usability of target mode by reporting FIFO errors and increasing
the buffer size when DMA is used. While we're touching DMA stuff also
switch to non-coherent memory, although this is unrelated to target
mode.
With the combination of the commit to increase the DMA buffer size and
the commit to use non-coherent memory, the host mode performance figures
are as follows on S32G3:
# spidev_test --device /dev/spidev1.0 --bpw 8 --size <test_size> --cpha --iter 10000000 --speed 10000000
Coherent (4096 byte transfers): 6534 kbps
Non-coherent: 7347 kbps
Coherent (16 byte transfers): 447 kbps
Non-coherent: 448 kbps
Just for comparison running the same test in XSPI mode:
4096 byte transfers: 2143 kbps
16 byte transfers: 637 kbps
These tests required hacking S32G3 to use DMA in host mode, although
the figures should be representative of target mode too where DMA is
used. And the other devices that use DMA in host mode should see similar
improvements.
Diffstat (limited to 'rust/helpers/processor.c')
0 files changed, 0 insertions, 0 deletions