AnsweredAssumed Answered

CMSIS driver I2C, support for DMA?

Question asked by Gunnar Bohlen on Nov 14, 2017
Latest reply on Dec 17, 2018 by jeremyzhou


I'm writing code for LPC54618.

I want to use the CMSIS drivers for I2C, SPI and USART that I can find in the SDK.

File name that I found in the SDK_2.2_LPC54618J512 is "fsl_i2c_cmsis.c", unfortunately I cannot find a file version number in this file ...:-(


If I set in RTE_Device.h

#define RTE_I2C0 1
#define RTE_I2C0_DMA_EN 0

I2C0 is working as expected.


If I set

#define RTE_I2C0 1
#define RTE_I2C0_DMA_EN 1

I2C is not working. E.g. I see that in AHBCLKCTRL the clock for DMA is not enabled.


I see in the initialization for SPI :



   if (!spi->status.isPowerOn)
          /* Enable flexcomm clock gate */
           /* Init DMA */




but I cannot find the equivalent code in i2c code.

Could anyone give me an advice how to get the DMA working for i2c?


Thank you.