Version 0.20.0 (#2038)

* Update package dependencies and bump version numbers

* Update `CHANGELOG.md` for each package to be published

* Remember to update `xtensa-lx-rt` too :)

* Add and use TrapFrame::new() in esp-wifi

* Bump `xtensa-lx-rt` by minor instead of patch, as there are breaking changes

---------

Co-authored-by: Dániel Buga <bugadani@gmail.com>
This commit is contained in:
Jesse Braham 2024-08-29 19:29:33 +00:00 committed by GitHub
parent bac6bfd1b4
commit 5917275108
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
21 changed files with 78 additions and 146 deletions

View File

@ -5,19 +5,16 @@ All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
## Unreleased ## 0.14.0 - 2024-08-29
### Added ### Added
- add custom-pre-backtrace feature (#1822)
- Add custom-pre-backtrace feature (#1822)
### Changed ### Changed
- Improve panic message printing (#1823) - Improve panic message printing (#1823)
### Fixed
### Removed
## 0.13.0 - 2024-07-16 ## 0.13.0 - 2024-07-16
No changes - published to avoid conflicts with `esp-println` No changes - published to avoid conflicts with `esp-println`

View File

@ -1,6 +1,6 @@
[package] [package]
name = "esp-backtrace" name = "esp-backtrace"
version = "0.13.0" version = "0.14.0"
edition = "2021" edition = "2021"
rust-version = "1.76.0" rust-version = "1.76.0"
description = "Bare-metal backtrace support for Espressif devices" description = "Bare-metal backtrace support for Espressif devices"
@ -13,8 +13,8 @@ features = ["esp32c3", "panic-handler", "exception-handler", "println", "e
[dependencies] [dependencies]
defmt = { version = "0.3.8", optional = true } defmt = { version = "0.3.8", optional = true }
esp-println = { version = "0.10.0", optional = true, default-features = false, path = "../esp-println" } esp-println = { version = "0.11.0", optional = true, default-features = false, path = "../esp-println" }
semihosting = { version = "0.1.12", optional = true } semihosting = { version = "0.1.14", optional = true }
[build-dependencies] [build-dependencies]
esp-build = { version = "0.1.0", path = "../esp-build" } esp-build = { version = "0.1.0", path = "../esp-build" }

View File

@ -5,7 +5,7 @@ All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
## Unreleased ## 0.3.0 - 2024-08-29
### Added ### Added
@ -21,8 +21,6 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
- Fixed a bug where the timeout was huge whenever the timestamp at the time of scheduling was already in the past (#1875) - Fixed a bug where the timeout was huge whenever the timestamp at the time of scheduling was already in the past (#1875)
- Fixed interrupt executors looping endlessly when `integrated-timers` is used. (#1936) - Fixed interrupt executors looping endlessly when `integrated-timers` is used. (#1936)
### Removed
## 0.2.0 - 2024-07-15 ## 0.2.0 - 2024-07-15
### Changed ### Changed

View File

@ -1,6 +1,6 @@
[package] [package]
name = "esp-hal-embassy" name = "esp-hal-embassy"
version = "0.2.0" version = "0.3.0"
edition = "2021" edition = "2021"
rust-version = "1.76.0" rust-version = "1.76.0"
description = "Embassy support for esp-hal" description = "Embassy support for esp-hal"
@ -12,21 +12,21 @@ default-target = "riscv32imac-unknown-none-elf"
features = ["esp32c6"] features = ["esp32c6"]
[dependencies] [dependencies]
critical-section = "1.1.2" critical-section = "1.1.3"
defmt = { version = "0.3.8", optional = true } defmt = { version = "0.3.8", optional = true }
document-features = "0.2.10" document-features = "0.2.10"
embassy-executor = { version = "0.6.0", optional = true } embassy-executor = { version = "0.6.0", optional = true }
embassy-time-driver = { version = "0.1.0", features = [ "tick-hz-1_000_000" ] } embassy-time-driver = { version = "0.1.0", features = [ "tick-hz-1_000_000" ] }
esp-hal = { version = "0.19.0", path = "../esp-hal" } esp-hal = { version = "0.20.0", path = "../esp-hal" }
log = { version = "0.4.22", optional = true } log = { version = "0.4.22", optional = true }
macros = { version = "0.12.0", features = ["embassy"], package = "esp-hal-procmacros", path = "../esp-hal-procmacros" } macros = { version = "0.13.0", features = ["embassy"], package = "esp-hal-procmacros", path = "../esp-hal-procmacros" }
portable-atomic = "1.6.0" portable-atomic = "1.7.0"
static_cell = "2.1.0" static_cell = "2.1.0"
[build-dependencies] [build-dependencies]
cfg-if = "1.0.0" cfg-if = "1.0.0"
esp-build = { version = "0.1.0", path = "../esp-build" } esp-build = { version = "0.1.0", path = "../esp-build" }
esp-metadata = { version = "0.2.0", path = "../esp-metadata" } esp-metadata = { version = "0.3.0", path = "../esp-metadata" }
[features] [features]
default = ["executors"] default = ["executors"]

View File

@ -1,6 +1,6 @@
[package] [package]
name = "esp-hal-procmacros" name = "esp-hal-procmacros"
version = "0.12.0" version = "0.13.0"
edition = "2021" edition = "2021"
rust-version = "1.76.0" rust-version = "1.76.0"
description = "Procedural macros for esp-hal" description = "Procedural macros for esp-hal"
@ -17,12 +17,12 @@ proc-macro = true
darling = "0.20.10" darling = "0.20.10"
document-features = "0.2.10" document-features = "0.2.10"
litrs = "0.4.1" litrs = "0.4.1"
object = { version = "0.36.1", optional = true } object = { version = "0.36.3", optional = true }
proc-macro-crate = "3.1.0" proc-macro-crate = "3.2.0"
proc-macro-error = "1.0.4" proc-macro-error = "1.0.4"
proc-macro2 = "1.0.86" proc-macro2 = "1.0.86"
quote = "1.0.36" quote = "1.0.37"
syn = { version = "2.0.71", features = ["extra-traits", "full"] } syn = { version = "2.0.76", features = ["extra-traits", "full"] }
[features] [features]
## Provide a `#[main]` procmacro to mark the entry point for Embassy applications. ## Provide a `#[main]` procmacro to mark the entry point for Embassy applications.

View File

@ -5,15 +5,7 @@ All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
## Unreleased ## 0.13.0 - 2024-08-29
### Added
### Changed
### Fixed
### Removed
## 0.12.0 - 2024-07-15 ## 0.12.0 - 2024-07-15

View File

@ -1,6 +1,6 @@
[package] [package]
name = "esp-hal-smartled" name = "esp-hal-smartled"
version = "0.12.0" version = "0.13.0"
edition = "2021" edition = "2021"
rust-version = "1.76.0" rust-version = "1.76.0"
description = "RMT adapter for smartleds" description = "RMT adapter for smartleds"
@ -14,7 +14,7 @@ targets = ["riscv32imc-unknown-none-elf"]
[dependencies] [dependencies]
defmt = { version = "0.3.8", optional = true } defmt = { version = "0.3.8", optional = true }
document-features = "0.2.10" document-features = "0.2.10"
esp-hal = { version = "0.19.0", path = "../esp-hal" } esp-hal = { version = "0.20.0", path = "../esp-hal" }
fugit = "0.3.7" fugit = "0.3.7"
smart-leds-trait = "0.3.0" smart-leds-trait = "0.3.0"

View File

@ -5,7 +5,7 @@ All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
## [Unreleased] ## [0.20.0] - 2024-08-29
### Added ### Added
@ -688,7 +688,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
## [0.1.0] - 2022-08-05 ## [0.1.0] - 2022-08-05
[Unreleased]: https://github.com/esp-rs/esp-hal/compare/v0.19.0...HEAD [0.20.0]: https://github.com/esp-rs/esp-hal/compare/v0.19.0...v0.20.0
[0.19.0]: https://github.com/esp-rs/esp-hal/compare/v0.18.0...v0.19.0 [0.19.0]: https://github.com/esp-rs/esp-hal/compare/v0.18.0...v0.19.0
[0.18.0]: https://github.com/esp-rs/esp-hal/compare/v0.17.0...v0.18.0 [0.18.0]: https://github.com/esp-rs/esp-hal/compare/v0.17.0...v0.18.0
[0.17.0]: https://github.com/esp-rs/esp-hal/compare/v0.16.1...v0.17.0 [0.17.0]: https://github.com/esp-rs/esp-hal/compare/v0.16.1...v0.17.0

View File

@ -1,6 +1,6 @@
[package] [package]
name = "esp-hal" name = "esp-hal"
version = "0.19.0" version = "0.20.0"
edition = "2021" edition = "2021"
rust-version = "1.76.0" rust-version = "1.76.0"
description = "Bare-metal HAL for Espressif devices" description = "Bare-metal HAL for Espressif devices"
@ -16,10 +16,10 @@ rustdoc-args = ["--cfg", "docsrs"]
[dependencies] [dependencies]
bitflags = "2.6.0" bitflags = "2.6.0"
bytemuck = "1.16.1" bytemuck = "1.17.1"
bitfield = "0.15.0" bitfield = "0.16.1"
cfg-if = "1.0.0" cfg-if = "1.0.0"
critical-section = "1.1.2" critical-section = "1.1.3"
defmt = { version = "0.3.8", optional = true } defmt = { version = "0.3.8", optional = true }
delegate = "0.12.0" delegate = "0.12.0"
digest = { version = "0.10.7", default-features = false, optional = true } digest = { version = "0.10.7", default-features = false, optional = true }
@ -35,14 +35,14 @@ embedded-hal-async = { version = "1.0.0", optional = true }
embedded-hal-nb = { version = "1.0.0", optional = true } embedded-hal-nb = { version = "1.0.0", optional = true }
embedded-io = { version = "0.6.1", optional = true } embedded-io = { version = "0.6.1", optional = true }
embedded-io-async = { version = "0.6.1", optional = true } embedded-io-async = { version = "0.6.1", optional = true }
enumset = "1.1.3" enumset = "1.1.5"
esp-synopsys-usb-otg = { version = "0.4.2", optional = true, features = ["fs", "esp32sx"] } esp-synopsys-usb-otg = { version = "0.4.2", optional = true, features = ["fs", "esp32sx"] }
fugit = "0.3.7" fugit = "0.3.7"
log = { version = "0.4.22", optional = true } log = { version = "0.4.22", optional = true }
nb = "1.1.0" nb = "1.1.0"
paste = "1.0.15" paste = "1.0.15"
portable-atomic = { version = "1.6.0", default-features = false } portable-atomic = { version = "1.7.0", default-features = false }
procmacros = { version = "0.12.0", features = ["enum-dispatch", "interrupt", "ram"], package = "esp-hal-procmacros", path = "../esp-hal-procmacros" } procmacros = { version = "0.13.0", features = ["enum-dispatch", "interrupt", "ram"], package = "esp-hal-procmacros", path = "../esp-hal-procmacros" }
riscv = { version = "0.11.1", optional = true } riscv = { version = "0.11.1", optional = true }
strum = { version = "0.26.3", default-features = false, features = ["derive"] } strum = { version = "0.26.3", default-features = false, features = ["derive"] }
void = { version = "1.0.2", default-features = false } void = { version = "1.0.2", default-features = false }
@ -66,14 +66,14 @@ esp32s3 = { version = "0.28.0", features = ["critical-section", "rt"], optional
esp-riscv-rt = { version = "0.9.0", path = "../esp-riscv-rt" } esp-riscv-rt = { version = "0.9.0", path = "../esp-riscv-rt" }
[target.'cfg(target_arch = "xtensa")'.dependencies] [target.'cfg(target_arch = "xtensa")'.dependencies]
xtensa-lx-rt = "0.16.0" xtensa-lx-rt = { version = "0.17.0", path = "../xtensa-lx-rt" }
[build-dependencies] [build-dependencies]
basic-toml = "0.1.9" basic-toml = "0.1.9"
cfg-if = "1.0.0" cfg-if = "1.0.0"
esp-build = { version = "0.1.0", path = "../esp-build" } esp-build = { version = "0.1.0", path = "../esp-build" }
esp-metadata = { version = "0.2.0", path = "../esp-metadata" } esp-metadata = { version = "0.3.0", path = "../esp-metadata" }
serde = { version = "1.0.204", features = ["derive"] } serde = { version = "1.0.209", features = ["derive"] }
[features] [features]
default = ["embedded-hal"] default = ["embedded-hal"]

View File

@ -5,18 +5,12 @@ All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
## Unreleased ## 0.2.0 - 2024-08-29
### Added ### Added
- Added additional checks to prevent various array access panics while processing frames - Added additional checks to prevent various array access panics while processing frames (#1923)
- Added range check to avoid panic when indexing into RX_BUFFER slice - Added range check to avoid panic when indexing into RX_BUFFER slice (#1682)
### Changed
### Fixed
### Removed
## 0.1.0 - 2024-07-15 ## 0.1.0 - 2024-07-15

View File

@ -1,6 +1,6 @@
[package] [package]
name = "esp-ieee802154" name = "esp-ieee802154"
version = "0.1.0" version = "0.2.0"
edition = "2021" edition = "2021"
rust-version = "1.76.0" rust-version = "1.76.0"
description = "Low-level IEEE 802.15.4 driver for the ESP32-C6 and ESP32-H2" description = "Low-level IEEE 802.15.4 driver for the ESP32-C6 and ESP32-H2"
@ -17,9 +17,9 @@ test = false
[dependencies] [dependencies]
byte = "0.2.7" byte = "0.2.7"
critical-section = "1.1.2" critical-section = "1.1.3"
document-features = "0.2.10" document-features = "0.2.10"
esp-hal = { version = "0.19.0", path = "../esp-hal" } esp-hal = { version = "0.20.0", path = "../esp-hal" }
esp-wifi-sys = "0.4.0" esp-wifi-sys = "0.4.0"
heapless = "0.8.0" heapless = "0.8.0"
ieee802154 = "0.6.1" ieee802154 = "0.6.1"

View File

@ -36,7 +36,7 @@ esp32s2-ulp = { version = "0.3.0", features = ["critical-section"], option
esp32s3-ulp = { version = "0.3.0", features = ["critical-section"], optional = true } esp32s3-ulp = { version = "0.3.0", features = ["critical-section"], optional = true }
nb = { version = "1.1.0", optional = true } nb = { version = "1.1.0", optional = true }
paste = { version = "1.0.15", optional = true } paste = { version = "1.0.15", optional = true }
procmacros = { version = "0.12.0", package = "esp-hal-procmacros", path = "../esp-hal-procmacros" } procmacros = { version = "0.13.0", package = "esp-hal-procmacros", path = "../esp-hal-procmacros" }
riscv = { version = "0.11.1", features = ["critical-section-single-hart"] } riscv = { version = "0.11.1", features = ["critical-section-single-hart"] }
[dev-dependencies] [dev-dependencies]

View File

@ -1,6 +1,6 @@
[package] [package]
name = "esp-metadata" name = "esp-metadata"
version = "0.2.0" version = "0.3.0"
edition = "2021" edition = "2021"
rust-version = "1.60.0" rust-version = "1.60.0"
description = "Metadata for Espressif devices" description = "Metadata for Espressif devices"
@ -9,8 +9,8 @@ license = "MIT OR Apache-2.0"
[dependencies] [dependencies]
anyhow = "1.0.86" anyhow = "1.0.86"
clap = { version = "4.5.4", features = ["derive"] } clap = { version = "4.5.16", features = ["derive"] }
basic-toml = "0.1.9" basic-toml = "0.1.9"
lazy_static = "1.5.0" lazy_static = "1.5.0"
serde = { version = "1.0.204", features = ["derive"] } serde = { version = "1.0.209", features = ["derive"] }
strum = { version = "0.26.3", features = ["derive"] } strum = { version = "0.26.3", features = ["derive"] }

View File

@ -5,16 +5,11 @@ All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
## Unreleased ## 0.11.0 - 2024-08-29
### Added ### Added
- made `esp_println::Printer::write_bytes` public (#1812)
### Changed - Made `esp_println::Printer::write_bytes` public (#1812)
### Fixed
### Removed
## 0.10.0 - 2024-07-15 ## 0.10.0 - 2024-07-15

View File

@ -1,6 +1,6 @@
[package] [package]
name = "esp-println" name = "esp-println"
version = "0.10.0" version = "0.11.0"
edition = "2021" edition = "2021"
rust-version = "1.76.0" rust-version = "1.76.0"
description = "Provides `print!` and `println!` implementations various Espressif devices" description = "Provides `print!` and `println!` implementations various Espressif devices"
@ -14,10 +14,10 @@ default-target = "riscv32imc-unknown-none-elf"
features = ["esp32c3"] features = ["esp32c3"]
[dependencies] [dependencies]
critical-section = { version = "1.1.2", optional = true } critical-section = { version = "1.1.3", optional = true }
defmt = { version = "0.3.8", optional = true } defmt = { version = "0.3.8", optional = true }
log = { version = "0.4.22", optional = true } log = { version = "0.4.22", optional = true }
portable-atomic = { version = "1.6.0", optional = true, default-features = false } portable-atomic = { version = "1.7.0", optional = true, default-features = false }
[build-dependencies] [build-dependencies]
esp-build = { version = "0.1.0", path = "../esp-build" } esp-build = { version = "0.1.0", path = "../esp-build" }

View File

@ -5,7 +5,7 @@ All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
## Unreleased ## 0.8.0 - 2024-08-29
### Added ### Added
@ -21,8 +21,6 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
- Increased NPL event queue size to prevent overflow (#1891) - Increased NPL event queue size to prevent overflow (#1891)
### Removed
## 0.7.1 - 2024-07-17 ## 0.7.1 - 2024-07-17
### Changed ### Changed

View File

@ -1,6 +1,6 @@
[package] [package]
name = "esp-wifi" name = "esp-wifi"
version = "0.7.1" version = "0.8.0"
edition = "2021" edition = "2021"
authors = ["The ESP-RS team"] authors = ["The ESP-RS team"]
description = "A WiFi, Bluetooth and ESP-NOW driver for use with Espressif chips and bare-metal Rust" description = "A WiFi, Bluetooth and ESP-NOW driver for use with Espressif chips and bare-metal Rust"
@ -12,17 +12,17 @@ categories = ["embedded", "hardware-support", "no-std"]
[dependencies] [dependencies]
defmt = { version = "0.3.8", optional = true } defmt = { version = "0.3.8", optional = true }
esp-hal = { version = "0.19.0", path = "../esp-hal", default-features = false } esp-hal = { version = "0.20.0", path = "../esp-hal", default-features = false }
esp-hal-embassy = { version = "0.2.0", path = "../esp-hal-embassy", default-features = false, optional = true } esp-hal-embassy = { version = "0.3.0", path = "../esp-hal-embassy", default-features = false, optional = true }
smoltcp = { version = "0.11.0", default-features = false, features = [ smoltcp = { version = "0.11.0", default-features = false, features = [
"medium-ethernet", "medium-ethernet",
"socket-raw", "socket-raw",
], optional = true } ], optional = true }
critical-section = "1.1.2" critical-section = "1.1.3"
log = { version = "0.4.22", optional = true } log = { version = "0.4.22", optional = true }
embedded-svc = { version = "0.27.1", default-features = false, features = [ embedded-svc = { version = "0.27.1", default-features = false, features = [
], optional = true } ], optional = true }
enumset = { version = "1.1.3", default-features = false, optional = true } enumset = { version = "1.1.5", default-features = false, optional = true }
linked_list_allocator = { version = "0.10.5", default-features = false, features = [ linked_list_allocator = { version = "0.10.5", default-features = false, features = [
"const_mut_refs", "const_mut_refs",
] } ] }
@ -42,7 +42,7 @@ embassy-net-driver = { version = "0.2.0", optional = true }
toml-cfg = "0.2.0" toml-cfg = "0.2.0"
libm = "0.2.8" libm = "0.2.8"
cfg-if = "1.0.0" cfg-if = "1.0.0"
portable-atomic = { version = "1.6.0", default-features = false } portable-atomic = { version = "1.7.0", default-features = false }
portable_atomic_enum = { version = "0.3.1", features = ["portable-atomic"] } portable_atomic_enum = { version = "0.3.1", features = ["portable-atomic"] }
futures-util = { version = "0.3.30", default-features = false, features = [ futures-util = { version = "0.3.30", default-features = false, features = [
@ -55,7 +55,7 @@ atomic-waker = { version = "1.1.2", default-features = false, features = [
[build-dependencies] [build-dependencies]
toml-cfg = "0.2.0" toml-cfg = "0.2.0"
esp-build = { version = "0.1.0", path = "../esp-build" } esp-build = { version = "0.1.0", path = "../esp-build" }
esp-metadata = { version = "0.2.0", path = "../esp-metadata" } esp-metadata = { version = "0.3.0", path = "../esp-metadata" }
[features] [features]
default = ["log"] default = ["log"]

View File

@ -9,62 +9,7 @@ pub struct TaskContext {
} }
static mut CTX_TASKS: [TaskContext; MAX_TASK] = [TaskContext { static mut CTX_TASKS: [TaskContext; MAX_TASK] = [TaskContext {
trap_frame: TrapFrame { trap_frame: TrapFrame::new(),
PC: 0,
PS: 0,
A0: 0,
A1: 0,
A2: 0,
A3: 0,
A4: 0,
A5: 0,
A6: 0,
A7: 0,
A8: 0,
A9: 0,
A10: 0,
A11: 0,
A12: 0,
A13: 0,
A14: 0,
A15: 0,
SAR: 0,
EXCCAUSE: 0,
EXCVADDR: 0,
LBEG: 0,
LEND: 0,
LCOUNT: 0,
THREADPTR: 0,
SCOMPARE1: 0,
BR: 0,
ACCLO: 0,
ACCHI: 0,
M0: 0,
M1: 0,
M2: 0,
M3: 0,
F64R_LO: 0,
F64R_HI: 0,
F64S: 0,
FCR: 0,
FSR: 0,
F0: 0,
F1: 0,
F2: 0,
F3: 0,
F4: 0,
F5: 0,
F6: 0,
F7: 0,
F8: 0,
F9: 0,
F10: 0,
F11: 0,
F12: 0,
F13: 0,
F14: 0,
F15: 0,
},
}; MAX_TASK]; }; MAX_TASK];
pub fn task_create(task: extern "C" fn()) { pub fn task_create(task: extern "C" fn()) {

View File

@ -185,7 +185,7 @@ sha2 = { version = "0.10.8", default-features = false }
[build-dependencies] [build-dependencies]
esp-build = { version = "0.1.0", path = "../esp-build" } esp-build = { version = "0.1.0", path = "../esp-build" }
esp-metadata = { version = "0.2.0", path = "../esp-metadata" } esp-metadata = { version = "0.3.0", path = "../esp-metadata" }
[features] [features]
default = ["async", "embassy"] default = ["async", "embassy"]

View File

@ -1,6 +1,6 @@
[package] [package]
name = "xtensa-lx-rt" name = "xtensa-lx-rt"
version = "0.16.0" version = "0.17.0"
edition = "2021" edition = "2021"
rust-version = "1.65" rust-version = "1.65"
description = "Minimal startup/runtime for Xtensa LX CPUs" description = "Minimal startup/runtime for Xtensa LX CPUs"
@ -14,18 +14,18 @@ features = ["esp32"]
[dependencies] [dependencies]
bare-metal = "1.0.0" bare-metal = "1.0.0"
document-features = "0.2.8" document-features = "0.2.10"
macros = { version = "0.2.1", package = "xtensa-lx-rt-proc-macros", path = "./procmacros" } macros = { version = "0.2.2", package = "xtensa-lx-rt-proc-macros", path = "./procmacros" }
r0 = "1.0.0" r0 = "1.0.0"
xtensa-lx = { version = "0.9.0", path = "../xtensa-lx" } xtensa-lx = "0.9.0"
[build-dependencies] [build-dependencies]
anyhow = "1.0.86" anyhow = "1.0.86"
enum-as-inner = "0.6.0" enum-as-inner = "0.6.0"
minijinja = "2.0.3" minijinja = "2.2.0"
serde = { version = "1.0.204", features = ["derive"] } serde = { version = "1.0.209", features = ["derive"] }
strum = { version = "0.26.3", features = ["derive"] } strum = { version = "0.26.3", features = ["derive"] }
toml = "0.8.10" toml = "0.8.19"
[features] [features]
## Save and restore float registers for exceptions ## Save and restore float registers for exceptions

View File

@ -87,6 +87,19 @@ pub struct Context {
pub F15: u32, pub F15: u32,
} }
impl Default for Context {
fn default() -> Self {
Self::new()
}
}
impl Context {
/// Creates a new, zeroed out context.
pub const fn new() -> Self {
unsafe { core::mem::zeroed() }
}
}
extern "Rust" { extern "Rust" {
/// The exception assembly jumps here once registers have been spilled /// The exception assembly jumps here once registers have been spilled
fn __exception(cause: ExceptionCause, save_frame: &mut Context); fn __exception(cause: ExceptionCause, save_frame: &mut Context);