-
Notifications
You must be signed in to change notification settings - Fork 157
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
cortex-m-pac
crate: standard traits and result handling for Cortex-M targets
#560
base: master
Are you sure you want to change the base?
Conversation
|
||
/// Represents error variants for the library. | ||
#[derive(Clone, Copy, Debug, Eq, PartialEq)] | ||
pub enum Error { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
since core::error::Error
is now stable it might make sense to impl
it here? since you already have impl core::fmt::Display
this should be straight-forward?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
done!
Implementing |
CI failed because the ubuntu-latest label migrated to ubuntu 24.04 (https://github.blog/changelog/2024-09-25-actions-new-images-and-ubuntu-latest-changes/), and it looks like there the qemu package is no longer available. A quick fix would be to change the runner image to Alternatively, CI could use |
That was easier than I had expected: #562 |
Co-authored-by: Ralph Ursprung <[email protected]>
This PR ports some of the ongoing work in the RISC-V ecosystem to Cortex-M targets. Namely, I adapted the
riscv-pac
crate to the newcortex-m-pac
crate.The main purpose of this crate is to isolate fundamental traits and data types from potential breaking changes in
cortex-m
. Namely, it currently contains traits for enumerating exceptions, interrupts, priorities, and core IDs. It also provides a basic fallible function support for Cortex-M devices, with an error enum with some of the most typical issues developers may face.Related PRs in RISC-V: #222 and #223
Related PRs in Cortex-M: #488
Once this is merged, I plan to continue porting new functionalities from RISC-V to Cortex-M (e.g., new syntax for interrupt and exception macros)