]> git.baikalelectronics.ru Git - kernel.git/commit
dmaengine: stm32-mdma: set in_flight_bytes in case CRQA flag is set
authorAmelie Delaunay <amelie.delaunay@foss.st.com>
Wed, 4 Oct 2023 16:35:30 +0000 (18:35 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 19 Oct 2023 21:08:54 +0000 (23:08 +0200)
commitf049b10affc5aea48ba300a926df1b527e297686
treeb53bb649270fd45e3e7696d3ec835284329df486
parent721dbbabf14b507600e072afd17bc70f548f7021
dmaengine: stm32-mdma: set in_flight_bytes in case CRQA flag is set

commit 584970421725b7805db84714b857851fdf7203a9 upstream.

CRQA flag is set by hardware when the channel request become active and
the channel is enabled. It is cleared by hardware, when the channel request
is completed.
So when it is set, it means MDMA is transferring bytes.
This information is useful in case of STM32 DMA and MDMA chaining,
especially when the user pauses DMA before stopping it, to trig one last
MDMA transfer to get the latest bytes of the SRAM buffer to the
destination buffer.
STM32 DCMI driver can then use this to know if the last MDMA transfer in
case of chaining is done.

Fixes: 696874322771 ("dmaengine: stm32-mdma: add support to be triggered by STM32 DMA")
Signed-off-by: Amelie Delaunay <amelie.delaunay@foss.st.com>
Cc: stable@vger.kernel.org
Link: https://lore.kernel.org/r/20231004163531.2864160-3-amelie.delaunay@foss.st.com
Signed-off-by: Vinod Koul <vkoul@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/dma/stm32-mdma.c