rust-embedded / embedded-hal

A Hardware Abstraction Layer (HAL) for embedded systems
Apache License 2.0
1.95k stars 197 forks source link

ESP32-S3: Missing DMA support from SPI3 #459

Closed bugadani closed 1 year ago

bugadani commented 1 year ago

My source of information is the Technical Reference Manual. The chapter about SPI indicates that SPI3 is connected to the GDMA, at least in a limited fashion.

image image

Section 30.9, which details differences between SPI2 and SPI3 states the following:

DMA-controlled configurable segmented transfer is only supported in GP-SPI2. Therefore, CONF state is not used in GP-SPI3. ... Apart from that, the functions of GP-SPI2 and GP-SPI3 are the same. GP-SPI2 can use all the GP-SPI registers, while GP-SPI3 can only use some of the GP-SPI registers

The diagrams and the above quotes indicate to me that SPI3 has at least some limited DMA support. Unfortunately, I believe this is missing from esp-hal.

bugadani commented 1 year ago

Sorry, wrong repo