Commit Graph

12 Commits

Author SHA1 Message Date
morris
46b66530ce gdma: prevent mutli-channels connect to the same peripheral
1. add check in the gdma driver, to prevent multiple channels connecting
   to the same peripheral
2. memory copy DMA ID will occupy the peripheral's DMA ID on some ESP
   targets (e.g. esp32c3/s3). We should search for a free one when
install async memcpy driver.

Closes https://github.com/espressif/esp-idf/issues/10575
2023-02-01 11:10:26 +08:00
morris
2f1393ad53 gdma: add spin lock for gdma channel
... because we allow several control functions to be runable under ISR
context
2022-04-21 10:11:20 +00:00
morris
d23c3fb314 gdma: correct the iram placement logic 2022-04-19 13:01:13 +00:00
morris
ee00029c05 gdma: support IRAM interrupt 2021-11-17 12:57:52 +08:00
morris
d9819bc7ae gdma: set transfer ability 2021-07-16 14:47:09 +08:00
Jan Brudný
690974e32f driver: update copyright notice 2021-05-25 17:43:57 +02:00
morris
270ed70f3e gdma: support reset dma fifo at runtime 2021-05-12 17:10:37 +08:00
morris
6e981af406 gdma: separate tx/rx channel interrupt 2021-05-06 15:06:37 +08:00
laokaiyao
e0004dc443 gdma: replaced DMA_CHECK with ESP_GOTO_ON_FALSE and ESP_GOTO_ON_ERROR 2021-04-23 14:49:30 +08:00
morris
9f1c82d547 gdma: fix wrong level of {group,pair} ref count 2021-02-24 11:38:57 +08:00
morris
914ba4914a gdma: fix potential cocurrency issue
Alloc handle memory first then hook, we can benifit:
1. Don't have to do malloc in a critical section
2. Don't have to do esp_intr_free in a critical section
2021-01-14 20:37:36 +08:00
morris
e6d23a35ec gdma: dynamic alloc DMA channels 2021-01-13 10:52:27 +08:00