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

Handling peripheral access on multicore MCU's #28

Closed
MabezDev opened this issue Mar 6, 2022 · 2 comments
Closed

Handling peripheral access on multicore MCU's #28

MabezDev opened this issue Mar 6, 2022 · 2 comments
Assignees

Comments

@MabezDev
Copy link
Member

MabezDev commented Mar 6, 2022

Most embedded Rust HAL's only need to worry about single core access to peripherals. Even chips with dual core, such as the stm32h7 series only support one of the two cores: https://github.com/stm32-rs/stm32h7xx-hal. What does this mean? Interrupt free critical sections are not enough to guarantee mutual exclusion on multicore systems.

In the original esp32-hal, we used spin locks internally - this is also what esp-idf does too. Perhaps there is a better way, and if there isn't how can we add spin locks cleanly in this new hal.

@bjoernQ
Copy link
Contributor

bjoernQ commented Jul 4, 2022

I think with #87 we will get a good solution for this. Also then we might reconsider if we want synchronization done by the HAL or leave that to the user (while I liked the later approach I might change my mind once we have #87 in)

@jessebraham
Copy link
Member

#87 has now been closed.

@MabezDev MabezDev self-assigned this Aug 30, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants