-
Notifications
You must be signed in to change notification settings - Fork 231
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
use bitflags to decode wakeup cause #473
Merged
Merged
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
I'm fine with adding |
MabezDev
approved these changes
Apr 11, 2023
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.
No objections from me, bitflags is a nice small crate.
bjoernQ
approved these changes
Apr 11, 2023
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.
LGTM
playfulFence
pushed a commit
to playfulFence/esp-hal
that referenced
this pull request
Apr 18, 2023
* get_wakeup_cause: use bitflags instead of cast, & * get_wakeup_cause: bitflags for other cpus
jessebraham
added a commit
that referenced
this pull request
Apr 20, 2023
* Update `esp-hal-procmacros` and `esp-hal-smartled` packages to support H2 * Get scaffolding in place to get `esp-hal-common` building with `esp32h2` feature * Made some progress, some aside functions are already done, bbpll configure builds, problem with 3 registers * More progress, all necessary functions are implemented (not every was verified). Next step - test on HW * added bus update to function * add esp32h2-hal package * remove offset for ROM (maybe temporarly) * comment yet unimplemented includes * Provided (COMPLETELY NOT SURE if it's a real solution) * defined interrupt_map_base * fix typo * Implemented boot_defaults and configure functions for clock * Not providing _start_trap_rust_hal to the linker manually now * Typo: delete comment * Cleaning code(1): Removed unnecessary moves, registers, addresses, functions * Remove irrelevant comments * Enable interrupt peripherals * Fix errors, wrong addresses and offsets. Added new CpuClock mode for esp32h2 * Added bus update, enabling and setting i2c mst clk frequency, deleted irrelevant comments * fix CpuControl::start_app_core signature (#466) * Minor linker script additions * Use correct linker script comment style * get_wakeup_cause: fix comparison error * Use 192 as mclk_multiple for 24-bit I2S * use bitflags to decode wakeup cause (#473) * get_wakeup_cause: use bitflags instead of cast, & * get_wakeup_cause: bitflags for other cpus * rsa peripheral support (#467) * Added software interrupt API, examples for all of the MCUs * Added software interrupt API, examples for all of the MCUs * Pin nightly to 2023-03-09 to workaround a problem with embedded-hal-async in CI * Fixed comments * Fixed comments * Fixed comments * Get scaffolding in place to get `esp-hal-common` building with `esp32h2` feature * Updated Cargo.toml * Added esp32h2-hal and other ESP32-H2 to CI workflow * Fix Cargo.toml and add a simple hello_world example * ci: Fix indentation * Update esp-backtrace version in Cargo.toml * Adjust for rustfmt * Adjust for rustfmt * Adjust for rustfmt * Deleted irrelevant comments, fixed wrong i2c_clock frequency * Update esp-hal-common/Cargo.toml Co-authored-by: Jesse Braham <jessebraham@users.noreply.github.com> * Populated SocResetReason to get get_wakeup_cause function working * Update esp-hal-common/src/clock/clocks_ll/esp32h2.rs Co-authored-by: Jesse Braham <jessebraham@users.noreply.github.com> * PAC has been updated, should be working now --------- Co-authored-by: Jesse Braham <jesse@beta7.io> Co-authored-by: dimpolo <33688001+dimpolo@users.noreply.github.com> Co-authored-by: bjoernQ <bjoern.quentin@mobile-j.de> Co-authored-by: Christopher Liebman <liebman@zod.com> Co-authored-by: Josh Weberruss <joshua.weberruss@gmail.com> Co-authored-by: sreehari prasad <52113972+matrixhead@users.noreply.github.com> Co-authored-by: onsdagens <pawdzi-7@student.ltu.se> Co-authored-by: Sergio Gasquez Arcos <sergio.gasquez@gmail.com> Co-authored-by: Jesse Braham <jessebraham@users.noreply.github.com>
jessebraham
added a commit
to jessebraham/esp-hal
that referenced
this pull request
Apr 20, 2023
* Update `esp-hal-procmacros` and `esp-hal-smartled` packages to support H2 * Get scaffolding in place to get `esp-hal-common` building with `esp32h2` feature * Made some progress, some aside functions are already done, bbpll configure builds, problem with 3 registers * More progress, all necessary functions are implemented (not every was verified). Next step - test on HW * added bus update to function * add esp32h2-hal package * remove offset for ROM (maybe temporarly) * comment yet unimplemented includes * Provided (COMPLETELY NOT SURE if it's a real solution) * defined interrupt_map_base * fix typo * Implemented boot_defaults and configure functions for clock * Not providing _start_trap_rust_hal to the linker manually now * Typo: delete comment * Cleaning code(1): Removed unnecessary moves, registers, addresses, functions * Remove irrelevant comments * Enable interrupt peripherals * Fix errors, wrong addresses and offsets. Added new CpuClock mode for esp32h2 * Added bus update, enabling and setting i2c mst clk frequency, deleted irrelevant comments * fix CpuControl::start_app_core signature (esp-rs#466) * Minor linker script additions * Use correct linker script comment style * get_wakeup_cause: fix comparison error * Use 192 as mclk_multiple for 24-bit I2S * use bitflags to decode wakeup cause (esp-rs#473) * get_wakeup_cause: use bitflags instead of cast, & * get_wakeup_cause: bitflags for other cpus * rsa peripheral support (esp-rs#467) * Added software interrupt API, examples for all of the MCUs * Added software interrupt API, examples for all of the MCUs * Pin nightly to 2023-03-09 to workaround a problem with embedded-hal-async in CI * Fixed comments * Fixed comments * Fixed comments * Get scaffolding in place to get `esp-hal-common` building with `esp32h2` feature * Updated Cargo.toml * Added esp32h2-hal and other ESP32-H2 to CI workflow * Fix Cargo.toml and add a simple hello_world example * ci: Fix indentation * Update esp-backtrace version in Cargo.toml * Adjust for rustfmt * Adjust for rustfmt * Adjust for rustfmt * Deleted irrelevant comments, fixed wrong i2c_clock frequency * Update esp-hal-common/Cargo.toml Co-authored-by: Jesse Braham <jessebraham@users.noreply.github.com> * Populated SocResetReason to get get_wakeup_cause function working * Update esp-hal-common/src/clock/clocks_ll/esp32h2.rs Co-authored-by: Jesse Braham <jessebraham@users.noreply.github.com> * PAC has been updated, should be working now --------- Co-authored-by: Jesse Braham <jesse@beta7.io> Co-authored-by: dimpolo <33688001+dimpolo@users.noreply.github.com> Co-authored-by: bjoernQ <bjoern.quentin@mobile-j.de> Co-authored-by: Christopher Liebman <liebman@zod.com> Co-authored-by: Josh Weberruss <joshua.weberruss@gmail.com> Co-authored-by: sreehari prasad <52113972+matrixhead@users.noreply.github.com> Co-authored-by: onsdagens <pawdzi-7@student.ltu.se> Co-authored-by: Sergio Gasquez Arcos <sergio.gasquez@gmail.com> Co-authored-by: Jesse Braham <jessebraham@users.noreply.github.com>
SergioGasquez
pushed a commit
to SergioGasquez/esp-hal
that referenced
this pull request
Apr 21, 2023
* get_wakeup_cause: use bitflags instead of cast, & * get_wakeup_cause: bitflags for other cpus
SergioGasquez
added a commit
to SergioGasquez/esp-hal
that referenced
this pull request
Apr 21, 2023
* Update `esp-hal-procmacros` and `esp-hal-smartled` packages to support H2 * Get scaffolding in place to get `esp-hal-common` building with `esp32h2` feature * Made some progress, some aside functions are already done, bbpll configure builds, problem with 3 registers * More progress, all necessary functions are implemented (not every was verified). Next step - test on HW * added bus update to function * add esp32h2-hal package * remove offset for ROM (maybe temporarly) * comment yet unimplemented includes * Provided (COMPLETELY NOT SURE if it's a real solution) * defined interrupt_map_base * fix typo * Implemented boot_defaults and configure functions for clock * Not providing _start_trap_rust_hal to the linker manually now * Typo: delete comment * Cleaning code(1): Removed unnecessary moves, registers, addresses, functions * Remove irrelevant comments * Enable interrupt peripherals * Fix errors, wrong addresses and offsets. Added new CpuClock mode for esp32h2 * Added bus update, enabling and setting i2c mst clk frequency, deleted irrelevant comments * fix CpuControl::start_app_core signature (esp-rs#466) * Minor linker script additions * Use correct linker script comment style * get_wakeup_cause: fix comparison error * Use 192 as mclk_multiple for 24-bit I2S * use bitflags to decode wakeup cause (esp-rs#473) * get_wakeup_cause: use bitflags instead of cast, & * get_wakeup_cause: bitflags for other cpus * rsa peripheral support (esp-rs#467) * Added software interrupt API, examples for all of the MCUs * Added software interrupt API, examples for all of the MCUs * Pin nightly to 2023-03-09 to workaround a problem with embedded-hal-async in CI * Fixed comments * Fixed comments * Fixed comments * Get scaffolding in place to get `esp-hal-common` building with `esp32h2` feature * Updated Cargo.toml * Added esp32h2-hal and other ESP32-H2 to CI workflow * Fix Cargo.toml and add a simple hello_world example * ci: Fix indentation * Update esp-backtrace version in Cargo.toml * Adjust for rustfmt * Adjust for rustfmt * Adjust for rustfmt * Deleted irrelevant comments, fixed wrong i2c_clock frequency * Update esp-hal-common/Cargo.toml Co-authored-by: Jesse Braham <jessebraham@users.noreply.github.com> * Populated SocResetReason to get get_wakeup_cause function working * Update esp-hal-common/src/clock/clocks_ll/esp32h2.rs Co-authored-by: Jesse Braham <jessebraham@users.noreply.github.com> * PAC has been updated, should be working now --------- Co-authored-by: Jesse Braham <jesse@beta7.io> Co-authored-by: dimpolo <33688001+dimpolo@users.noreply.github.com> Co-authored-by: bjoernQ <bjoern.quentin@mobile-j.de> Co-authored-by: Christopher Liebman <liebman@zod.com> Co-authored-by: Josh Weberruss <joshua.weberruss@gmail.com> Co-authored-by: sreehari prasad <52113972+matrixhead@users.noreply.github.com> Co-authored-by: onsdagens <pawdzi-7@student.ltu.se> Co-authored-by: Sergio Gasquez Arcos <sergio.gasquez@gmail.com> Co-authored-by: Jesse Braham <jessebraham@users.noreply.github.com>
jessebraham
added a commit
to jessebraham/esp-hal
that referenced
this pull request
Apr 24, 2023
* Update `esp-hal-procmacros` and `esp-hal-smartled` packages to support H2 * Get scaffolding in place to get `esp-hal-common` building with `esp32h2` feature * Made some progress, some aside functions are already done, bbpll configure builds, problem with 3 registers * More progress, all necessary functions are implemented (not every was verified). Next step - test on HW * added bus update to function * add esp32h2-hal package * remove offset for ROM (maybe temporarly) * comment yet unimplemented includes * Provided (COMPLETELY NOT SURE if it's a real solution) * defined interrupt_map_base * fix typo * Implemented boot_defaults and configure functions for clock * Not providing _start_trap_rust_hal to the linker manually now * Typo: delete comment * Cleaning code(1): Removed unnecessary moves, registers, addresses, functions * Remove irrelevant comments * Enable interrupt peripherals * Fix errors, wrong addresses and offsets. Added new CpuClock mode for esp32h2 * Added bus update, enabling and setting i2c mst clk frequency, deleted irrelevant comments * fix CpuControl::start_app_core signature (esp-rs#466) * Minor linker script additions * Use correct linker script comment style * get_wakeup_cause: fix comparison error * Use 192 as mclk_multiple for 24-bit I2S * use bitflags to decode wakeup cause (esp-rs#473) * get_wakeup_cause: use bitflags instead of cast, & * get_wakeup_cause: bitflags for other cpus * rsa peripheral support (esp-rs#467) * Added software interrupt API, examples for all of the MCUs * Added software interrupt API, examples for all of the MCUs * Pin nightly to 2023-03-09 to workaround a problem with embedded-hal-async in CI * Fixed comments * Fixed comments * Fixed comments * Get scaffolding in place to get `esp-hal-common` building with `esp32h2` feature * Updated Cargo.toml * Added esp32h2-hal and other ESP32-H2 to CI workflow * Fix Cargo.toml and add a simple hello_world example * ci: Fix indentation * Update esp-backtrace version in Cargo.toml * Adjust for rustfmt * Adjust for rustfmt * Adjust for rustfmt * Deleted irrelevant comments, fixed wrong i2c_clock frequency * Update esp-hal-common/Cargo.toml Co-authored-by: Jesse Braham <jessebraham@users.noreply.github.com> * Populated SocResetReason to get get_wakeup_cause function working * Update esp-hal-common/src/clock/clocks_ll/esp32h2.rs Co-authored-by: Jesse Braham <jessebraham@users.noreply.github.com> * PAC has been updated, should be working now --------- Co-authored-by: Jesse Braham <jesse@beta7.io> Co-authored-by: dimpolo <33688001+dimpolo@users.noreply.github.com> Co-authored-by: bjoernQ <bjoern.quentin@mobile-j.de> Co-authored-by: Christopher Liebman <liebman@zod.com> Co-authored-by: Josh Weberruss <joshua.weberruss@gmail.com> Co-authored-by: sreehari prasad <52113972+matrixhead@users.noreply.github.com> Co-authored-by: onsdagens <pawdzi-7@student.ltu.se> Co-authored-by: Sergio Gasquez Arcos <sergio.gasquez@gmail.com> Co-authored-by: Jesse Braham <jessebraham@users.noreply.github.com>
jessebraham
added a commit
to jessebraham/esp-hal
that referenced
this pull request
Apr 24, 2023
* Update `esp-hal-procmacros` and `esp-hal-smartled` packages to support H2 * Get scaffolding in place to get `esp-hal-common` building with `esp32h2` feature * Made some progress, some aside functions are already done, bbpll configure builds, problem with 3 registers * More progress, all necessary functions are implemented (not every was verified). Next step - test on HW * added bus update to function * add esp32h2-hal package * remove offset for ROM (maybe temporarly) * comment yet unimplemented includes * Provided (COMPLETELY NOT SURE if it's a real solution) * defined interrupt_map_base * fix typo * Implemented boot_defaults and configure functions for clock * Not providing _start_trap_rust_hal to the linker manually now * Typo: delete comment * Cleaning code(1): Removed unnecessary moves, registers, addresses, functions * Remove irrelevant comments * Enable interrupt peripherals * Fix errors, wrong addresses and offsets. Added new CpuClock mode for esp32h2 * Added bus update, enabling and setting i2c mst clk frequency, deleted irrelevant comments * fix CpuControl::start_app_core signature (esp-rs#466) * Minor linker script additions * Use correct linker script comment style * get_wakeup_cause: fix comparison error * Use 192 as mclk_multiple for 24-bit I2S * use bitflags to decode wakeup cause (esp-rs#473) * get_wakeup_cause: use bitflags instead of cast, & * get_wakeup_cause: bitflags for other cpus * rsa peripheral support (esp-rs#467) * Added software interrupt API, examples for all of the MCUs * Added software interrupt API, examples for all of the MCUs * Pin nightly to 2023-03-09 to workaround a problem with embedded-hal-async in CI * Fixed comments * Fixed comments * Fixed comments * Get scaffolding in place to get `esp-hal-common` building with `esp32h2` feature * Updated Cargo.toml * Added esp32h2-hal and other ESP32-H2 to CI workflow * Fix Cargo.toml and add a simple hello_world example * ci: Fix indentation * Update esp-backtrace version in Cargo.toml * Adjust for rustfmt * Adjust for rustfmt * Adjust for rustfmt * Deleted irrelevant comments, fixed wrong i2c_clock frequency * Update esp-hal-common/Cargo.toml Co-authored-by: Jesse Braham <jessebraham@users.noreply.github.com> * Populated SocResetReason to get get_wakeup_cause function working * Update esp-hal-common/src/clock/clocks_ll/esp32h2.rs Co-authored-by: Jesse Braham <jessebraham@users.noreply.github.com> * PAC has been updated, should be working now --------- Co-authored-by: Jesse Braham <jesse@beta7.io> Co-authored-by: dimpolo <33688001+dimpolo@users.noreply.github.com> Co-authored-by: bjoernQ <bjoern.quentin@mobile-j.de> Co-authored-by: Christopher Liebman <liebman@zod.com> Co-authored-by: Josh Weberruss <joshua.weberruss@gmail.com> Co-authored-by: sreehari prasad <52113972+matrixhead@users.noreply.github.com> Co-authored-by: onsdagens <pawdzi-7@student.ltu.se> Co-authored-by: Sergio Gasquez Arcos <sergio.gasquez@gmail.com> Co-authored-by: Jesse Braham <jessebraham@users.noreply.github.com>
i404788
pushed a commit
to i404788/esp-hal
that referenced
this pull request
Jul 22, 2023
* get_wakeup_cause: use bitflags instead of cast, & * get_wakeup_cause: bitflags for other cpus
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Instead of casting an enum to a u32 and anding with wakeup cause we can use bitflags and just check if it contains() the flag or intersects() with a set of flags.
Personally I find this much cleaner and more readable.