In release notes of last MQX version(4.1), i have found the following issue:
5.25 DSPI issues related to the DMA usage
When the DSPI uses the eDMA, it may transfer data incorrectly or fail when eDMA is used for another purpose. If the DSPI driver is the only user of eDMA, it should operate correctly. This behavior is a result of the silicon design of the DSPI.
DMA usage can be disabled in the DSPI driver by redefining the macro BSPCFG_DSPIx_USE_DMA to 0 in user_config.h.
But what this means?
1. Can I use 2 SPI channels simulatenously with DMA transfers?
2. Can I use SPI with eDMA simulatenously with SDHC and ADMA transfers?
I have read the errata sheets of Kinetis, and there is no related bugs in silicon. What exactly means "This behavior is a result of the silicon design of the DSPI."?
Can somebody explain clearly where is the problem and possible workaround? In most applications is common to use DMA for many peripherals, so if it's not usable, this makes entire MQX usage in question...