diff options
author | Amelie Delaunay <amelie.delaunay@foss.st.com> | 2024-05-31 17:07:09 +0200 |
---|---|---|
committer | Vinod Koul <vkoul@kernel.org> | 2024-06-11 23:55:34 +0530 |
commit | 2088473802ab9641114681bee92ba902bccdc19b (patch) | |
tree | d5866f865a56cca70046c9425773ae0182562a2f /rust/helpers/workqueue.c | |
parent | b62a13071cffad03690ee19656248077cb388a14 (diff) |
dmaengine: stm32-dma3: improve residue granularity
Implement own device_tx_status ops to compute the residue with a finer
granularity, up to bytes.
STM32 DMA3 has a bitfield, BNDT, in CxTR1 register which reflects the
number of bytes read from the source.
It also has a bitfield, FIFOL, in CxSR register which reflects the FIFO
level in units of programmed destination data width.
The channel is briefly suspended to get a coherent snapshot of registers.
It is possible to correct the fifo level when packing/unpacking is enabled
with destination increment.
Signed-off-by: Amelie Delaunay <amelie.delaunay@foss.st.com>
Link: https://lore.kernel.org/r/20240531150712.2503554-10-amelie.delaunay@foss.st.com
Signed-off-by: Vinod Koul <vkoul@kernel.org>
Diffstat (limited to 'rust/helpers/workqueue.c')
0 files changed, 0 insertions, 0 deletions