Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Improve DMA Channel APIs #1767

Open
Dominaezzz opened this issue Jul 6, 2024 · 1 comment
Open

Improve DMA Channel APIs #1767

Dominaezzz opened this issue Jul 6, 2024 · 1 comment
Labels
peripheral:dma DMA Peripheral

Comments

@Dominaezzz
Copy link
Collaborator

Dominaezzz commented Jul 6, 2024

There are currently two main issues with the channel API.

  1. Naming types that use DMA is more verbose/tedious than it should be, see can't declare type for esp_hal::lcd_cam::lcd::i8080::I8080 #1699. This applies to drivers that only use one half of the channel, i.e. LCD_CAM. (At the moment PARL_IO take the whole channel)
  2. On hardware that uses GDMA (and not PDMA) you have to configure both channels at the same time. The APIs should let you separately configure the RX half and TX half of the peripheral. Also see this comment.
@liebman
Copy link
Contributor

liebman commented Jul 21, 2024

This should include adding the Async/Blocking notation on the TX and RX portions - currently at least the LCD_CAM I8080 driver takes this in its constructor but there is no way for the compiler to know if its async or blocking.
#1834 (comment)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
peripheral:dma DMA Peripheral
Projects
Status: Todo
Development

No branches or pull requests

3 participants