When using DMA to read from SPI - Data corrupted on STM32H743VI
I trying to use STM32H743VI DMA1 to read from SPI2 MISO RXDR in master mode.
Allocated memory in the D2 domain at address 0x3000000C for the DMA1 to copy SPI2 RXDR register to, but the resulting data is corrupted. I did not enable any D-cache at leaset manually myself, is it enabled by Atolic runtime or HAL? How to simply turn it all off? Tried to call SCB_DisableDCache() but it causes HardFault right away. __DSB() does not improve data integrity either. Anything else I may be missing?
Similar code for UART worked fine. Not using Cube at all, just the registers directly.
Thanks!
