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

Allowing easy configuration of IRAM placement of device drivers like ESP-IDF #946

Closed
ProfFan opened this issue Nov 15, 2023 · 5 comments
Closed
Labels
status:blocked Unable to progress - dependent on another task

Comments

@ProfFan
Copy link
Contributor

ProfFan commented Nov 15, 2023

From my experiments in #939 it seems that with the ESP32 I-cache miss is a microsecond-level (several thousand cycles) penalty. In ESP-IDF they have a Kconfig based mechanism that allows putting devices drivers in the IRAM. We should have the same ability in order to enable timing-sensitive applications.

@bugadani
Copy link
Contributor

The first idea is to mark the interesting functions with #[cfg_attr(feature = "optimize-XXX-in-iram", ram)]. This enables choosing which peripherals are to be placed in iram, at the cost of a few feature flags.

@ProfFan
Copy link
Contributor Author

ProfFan commented Jan 19, 2024

Another idea is to have a configuration file just like in esp-wifi: https://github.com/esp-rs/esp-wifi/blob/main/esp-wifi/docs/tuning.md

@jessebraham
Copy link
Member

@MabezDev what is blocking this issue?

@bjoernQ
Copy link
Contributor

bjoernQ commented Mar 13, 2024

Isn't this already merged for SPI in #1096 ? But probably this issue is about drivers in general which depends on / is blocked by #1111 since we don't want a feature per driver

@jessebraham jessebraham added the status:needs-attention This should be prioritized label Jul 31, 2024
@MabezDev MabezDev removed the status:needs-attention This should be prioritized label Aug 29, 2024
@MabezDev
Copy link
Member

With #2156 we can now define any number of config options to do this for individual drivers.

Closing.

@github-project-automation github-project-automation bot moved this from Todo to Done in esp-rs Sep 19, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
status:blocked Unable to progress - dependent on another task
Projects
Archived in project
Development

No branches or pull requests

5 participants