arch/arm/src/stm32f7/stm32_serial.c: force invalidate of data cache after DMA re-enable when returning from low-power mode

This commit is contained in:
Juha Niskanen 2018-10-09 06:35:43 -06:00 committed by Gregory Nutt
parent 68c8a4c5a2
commit 167663462f

View File

@ -2628,11 +2628,14 @@ static void up_dma_reenable(struct up_dev_s *priv)
RXDMA_BUFFER_SIZE, RXDMA_BUFFER_SIZE,
SERIAL_DMA_CONTROL_WORD); SERIAL_DMA_CONTROL_WORD);
/* Reset our DMA shadow pointer to match the address just /* Reset our DMA shadow pointer and Rx data availability count to match
* programmed above. * the address just programmed above.
*/ */
priv->rxdmanext = 0; priv->rxdmanext = 0;
#ifdef CONFIG_ARMV7M_DCACHE
priv->rxdmaavail = 0;
#endif
/* Start the DMA channel, and arrange for callbacks at the half and /* Start the DMA channel, and arrange for callbacks at the half and
* full points in the FIFO. This ensures that we have half a FIFO * full points in the FIFO. This ensures that we have half a FIFO
@ -2643,7 +2646,7 @@ static void up_dma_reenable(struct up_dev_s *priv)
/* Clear DMA suspended flag. */ /* Clear DMA suspended flag. */
priv->rxdmasusp = false; priv->rxdmasusp = false;
} }
#endif #endif