analogdevicesinc / msdk

Software Development Kit for Analog Device's MAX-series microcontrollers
Apache License 2.0
60 stars 76 forks source link

feat(Examples,PeriphDrivers): Add SPIMSS_DMA example and SPIMSS Master Trans DMA APIs #840

Closed kilicomercan closed 7 months ago

kilicomercan commented 8 months ago

Description

There is no transaction API over DMA for SPIMSS driver in MSDK. In addition, we don't have example application which shows how to make SPIMSS master transaction by using DMA.

Implemented Example: SPIMSS_DMA example code is added for MAX32660 EVSYS

Implemented API Features: SPIMSS DMA "Auto handlers". Auto handling is disabled by default. APIs for using application defined DMA handlers and channels.

New API for SPIMSS Master Dma Transaction: int MXC_SPIMSS_MasterTransDMA(mxc_spimss_regs_t spi, mxc_spimss_req_t req);

New APIs for Assigning DMA Channels: int MXC_SPIMSS_SetTXDMAChannel(mxc_spimss_regs_t spi, unsigned int channel); int MXC_SPIMSS_SetRXDMAChannel(mxc_spimss_regs_t spi, unsigned int channel); int MXC_SPIMSS_GetTXDMAChannel(mxc_spimss_regs_t spi); int MXC_SPIMSS_GetRXDMAChannel(mxc_spimss_regs_t spi);

kilicomercan commented 7 months ago

Hi @Jake-Carter and @sihyung-maxim , Thank you for your comments. I pushed the latest changes to PR. Could you please review it again?