Page 1 of 1

ESP32-S2 DMA transactions between SPI2 and external PSRAM

Posted: Sun Apr 04, 2021 5:08 pm
by polamagdygeo
Hello

I'm planning to use ESP32-S2 in a new product that has a TFT screen and I want to let a DMA controller handle the transactions between external PSRAM (holding TFT screen buffer) and SPI2 (interfacing with the LCD).

Can this be done?

Is there any other better suggestion?

Re: ESP32-S2 DMA transactions between SPI2 and external PSRAM

Posted: Tue Apr 06, 2021 4:56 pm
by polamagdygeo
Can someone clarify these points to me?

1-
External RAM cannot be used as a place to store DMA transaction descriptors or as a buffer for a DMA transfer to read from or write into. Any buffers that will be used in combination with DMA must be allocated using heap_caps_malloc(size, MALLOC_CAP_DMA) and can be freed using a standard free() call.
Reference https://docs.espressif.com/projects/esp ... l-ram.html

2-
EDMA is used by I2S0, SPI2, AES Accelerator, and SHA Accelerator. It can access both internal RAM and external RAM.
Reference technical reference manual page 359

Re: ESP32-S2 DMA transactions between SPI2 and external PSRAM

Posted: Tue Apr 20, 2021 6:24 pm
by max_guo
I have the same problem. Do you get it work?
ESP-IDF V4.2 is not support I2S EDMA yet. I do not know if the nonstable V4.3 support I2S EDMA or not.

Re: ESP32-S2 DMA transactions between SPI2 and external PSRAM

Posted: Sun Apr 25, 2021 4:49 pm
by polamagdygeo
Not yet ,They told me that "The driver of EDMA is under development and need more time to finish and test it."

Re: ESP32-S2 DMA transactions between SPI2 and external PSRAM

Posted: Sun May 23, 2021 3:00 pm
by polamagdygeo
Anyone can tell us ,Is this feature planned to be done or not and what's the expected date to release it?