From 6a5a65eae21f6dd3a7922231d992149271b00cb6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?D=C3=A1niel=20Buga?= Date: Tue, 5 Aug 2025 12:19:54 +0200 Subject: [PATCH] Update embassy-executor --- CHANGELOG.md | 4 + Cargo.lock | 23 +- Cargo.toml | 2 +- examples/esp32c6/Cargo.lock | 755 ++++++++++++++++--------- examples/esp32c6/Cargo.toml | 26 +- examples/esp32c6/src/main.rs | 16 +- examples/esp32c6/tests/example_test.rs | 18 +- examples/std/Cargo.lock | 43 +- examples/std/Cargo.toml | 4 +- examples/stm32f767/Cargo.lock | 45 +- examples/stm32f767/Cargo.toml | 4 +- src/export.rs | 2 +- 12 files changed, 602 insertions(+), 340 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index d422b7d..334a0b9 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -7,6 +7,10 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## Unreleased +### Changed + +- Updated embassy-executor to 0.9 + ### Fixed - Ensure `embedded-test.x` is only augmenting the linker scripts diff --git a/Cargo.lock b/Cargo.lock index 93d40b1..c1419f9 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -98,20 +98,21 @@ dependencies = [ [[package]] name = "embassy-executor" -version = "0.7.0" +version = "0.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "90327bcc66333a507f89ecc4e2d911b265c45f5c9bc241f98eee076752d35ac6" +checksum = "d0c80c92a31c7f6b02a938f10feea17ea3cc0e8d33bcac7f3fe8cede3723bb56" dependencies = [ "critical-section", "document-features", "embassy-executor-macros", + "embassy-executor-timer-queue", ] [[package]] name = "embassy-executor-macros" -version = "0.6.2" +version = "0.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3577b1e9446f61381179a330fc5324b01d511624c55f25e3c66c9e3c626dbecf" +checksum = "dfdddc3a04226828316bf31393b6903ee162238576b1584ee2669af215d55472" dependencies = [ "darling", "proc-macro2", @@ -119,6 +120,12 @@ dependencies = [ "syn", ] +[[package]] +name = "embassy-executor-timer-queue" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2fc328bf943af66b80b98755db9106bf7e7471b0cf47dc8559cd9a6be504cc9c" + [[package]] name = "embedded-test" version = "0.6.2" @@ -177,9 +184,9 @@ checksum = "b9e0384b61958566e926dc50660321d12159025e767c18e043daf26b70104c39" [[package]] name = "litrs" -version = "0.4.1" +version = "0.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b4ce301924b7887e9d637144fdade93f9dfff9b60981d4ac161db09720d39aa5" +checksum = "f5e54036fe321fd421e10d732f155734c4e4afd610dd556d9a82833ab3ee0bed" [[package]] name = "log" @@ -284,9 +291,9 @@ checksum = "7da8b5736845d9f2fcb837ea5d9e2628564b3b043a70948a3f0b778838c5fb4f" [[package]] name = "syn" -version = "2.0.100" +version = "2.0.104" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b09a44accad81e1ba1cd74a32461ba89dee89095ba17b32f5d03683b1b1fc2a0" +checksum = "17b6f705963418cdb9927482fa304bc562ece2fdd4f616084c50b7023b435a40" dependencies = [ "proc-macro2", "quote", diff --git a/Cargo.toml b/Cargo.toml index 3fd891c..0d55850 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -21,7 +21,7 @@ heapless = { version = "0.8.0", default-features = false } # Optional dependencies defmt = { version = "1", optional = true } log = { version = "0.4.20", optional = true } -embassy-executor = { version = "0.7.0", optional = true, default-features = false } +embassy-executor = { version = "0.9", optional = true, default-features = false } [features] diff --git a/examples/esp32c6/Cargo.lock b/examples/esp32c6/Cargo.lock index 4560de2..127c303 100644 --- a/examples/esp32c6/Cargo.lock +++ b/examples/esp32c6/Cargo.lock @@ -4,21 +4,15 @@ version = 4 [[package]] name = "anyhow" -version = "1.0.98" +version = "1.0.99" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e16d2d3311acee920a9eb8d33b8cbc1787ce4a264e85f964c2404b969bdcd487" +checksum = "b0674a1ddeecb70197781e945de4b3b8ffb61fa939a5597bcf48503737663100" [[package]] name = "autocfg" -version = "1.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ace50bade8e6234aa140d9a2f552bbee1db4d353f69b8217bc503490fc1a9f26" - -[[package]] -name = "bare-metal" -version = "1.0.0" +version = "1.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f8fe8f5a8a398345e52358e18ff07cc17a568fbca5c6f73873d3a62056309603" +checksum = "c08606f8c3cbf4ce6ec8e28fb0014a2c086708fe954eaa885384a6165172e7e8" [[package]] name = "basic-toml" @@ -31,9 +25,23 @@ dependencies = [ [[package]] name = "bitfield" -version = "0.17.0" +version = "0.19.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "62a3a774b2fcac1b726922b921ebba5e9fe36ad37659c822cf8ff2c1e0819892" +dependencies = [ + "bitfield-macros", +] + +[[package]] +name = "bitfield-macros" +version = "0.19.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f798d2d157e547aa99aab0967df39edd0b70307312b6f8bd2848e6abe40896e0" +checksum = "52511b09931f7d5fe3a14f23adefbc23e5725b184013e96c8419febb61f14734" +dependencies = [ + "proc-macro2", + "quote", + "syn", +] [[package]] name = "bitflags" @@ -43,15 +51,15 @@ checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a" [[package]] name = "bitflags" -version = "2.9.0" +version = "2.9.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5c8214115b7bf84099f1309324e63141d4c5d7cc26862f97a0a857dbefe165bd" +checksum = "34efbcccd345379ca2868b2b2c9d3782e9cc58ba87bc7d79d5b53d9c9ae6f25d" [[package]] name = "bytemuck" -version = "1.22.0" +version = "1.23.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b6b1fc10dbac614ebc03540c9dbd60e83887fda27794998c6528f1782047d540" +checksum = "3995eaeebcdf32f91f980d360f78732ddc061097ab4e39991ae7a6ace9194677" [[package]] name = "byteorder" @@ -61,18 +69,9 @@ checksum = "1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b" [[package]] name = "cfg-if" -version = "1.0.0" +version = "1.0.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd" - -[[package]] -name = "chrono" -version = "0.4.40" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1a7964611d71df112cb1730f2ee67324fcf4d0fc6606acbbe9bfe06df124637c" -dependencies = [ - "num-traits", -] +checksum = "2fd1289c04a9ea8cb22300a459a72a385d7c73d3259e2ed7dcb2af674838cfa9" [[package]] name = "critical-section" @@ -80,14 +79,34 @@ version = "1.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "790eea4361631c5e7d22598ecd5723ff611904e3344ce8720784c93e3d83d40b" +[[package]] +name = "crypto-common" +version = "0.1.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1bfb12502f3fc46cca1bb51ac28df9d618d813cdc3d2f25b9fe775a34af26bb3" +dependencies = [ + "generic-array", + "typenum", +] + [[package]] name = "darling" version = "0.20.11" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "fc7f46116c46ff9ab3eb1597a45688b6715c6e628b5c133e288e709a29bcb4ee" dependencies = [ - "darling_core", - "darling_macro", + "darling_core 0.20.11", + "darling_macro 0.20.11", +] + +[[package]] +name = "darling" +version = "0.21.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9cdf337090841a411e2a7f3deb9187445851f91b309c0c0a29e05f74a00a48c0" +dependencies = [ + "darling_core 0.21.3", + "darling_macro 0.21.3", ] [[package]] @@ -104,13 +123,37 @@ dependencies = [ "syn", ] +[[package]] +name = "darling_core" +version = "0.21.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1247195ecd7e3c85f83c8d2a366e4210d588e802133e1e355180a9870b517ea4" +dependencies = [ + "fnv", + "ident_case", + "proc-macro2", + "quote", + "syn", +] + [[package]] name = "darling_macro" version = "0.20.11" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "fc34b93ccb385b40dc71c6fceac4b2ad23662c7eeb248cf10d529b7e055b6ead" dependencies = [ - "darling_core", + "darling_core 0.20.11", + "quote", + "syn", +] + +[[package]] +name = "darling_macro" +version = "0.21.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d38308df82d1080de0afee5d069fa14b0326a88c14f15c5ccda35b4a6c414c81" +dependencies = [ + "darling_core 0.21.3", "quote", "syn", ] @@ -158,15 +201,24 @@ dependencies = [ [[package]] name = "delegate" -version = "0.13.3" +version = "0.13.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b9b6483c2bbed26f97861cf57651d4f2b731964a28cd2257f934a4b452480d21" +checksum = "6178a82cf56c836a3ba61a7935cdb1c49bfaa6fa4327cd5bf554a503087de26b" dependencies = [ "proc-macro2", "quote", "syn", ] +[[package]] +name = "digest" +version = "0.10.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9ed9a281f7bc9b7576e61468ba615a66a5c8cfdff42420a70aa82701a3b1e292" +dependencies = [ + "crypto-common", +] + [[package]] name = "document-features" version = "0.2.11" @@ -178,13 +230,14 @@ dependencies = [ [[package]] name = "embassy-embedded-hal" -version = "0.2.0" +version = "0.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5794414bc20e0d750f145bc0e82366b19dd078e9e075e8331fb8dd069a1cb6a2" +checksum = "8c62a3bf127e03832fb97d8b01a058775e617653bc89e2a12c256485a7fb54c1" dependencies = [ + "embassy-embedded-hal 0.4.0", "embassy-futures", - "embassy-sync", - "embassy-time", + "embassy-sync 0.6.2", + "embassy-time 0.4.0", "embedded-hal 0.2.7", "embedded-hal 1.0.0", "embedded-hal-async", @@ -194,44 +247,66 @@ dependencies = [ ] [[package]] -name = "embassy-executor" -version = "0.6.3" +name = "embassy-embedded-hal" +version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f64f84599b0f4296b92a4b6ac2109bc02340094bda47b9766c5f9ec6a318ebf8" +checksum = "d1611b7a7ab5d1fbed84c338df26d56fd9bded58006ebb029075112ed2c5e039" dependencies = [ - "critical-section", - "document-features", - "embassy-executor-macros", + "embassy-futures", + "embassy-hal-internal", + "embassy-sync 0.7.2", + "embedded-hal 0.2.7", + "embedded-hal 1.0.0", + "embedded-hal-async", + "embedded-storage", + "embedded-storage-async", + "nb 1.1.0", ] [[package]] name = "embassy-executor" -version = "0.7.0" +version = "0.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "90327bcc66333a507f89ecc4e2d911b265c45f5c9bc241f98eee076752d35ac6" +checksum = "d0c80c92a31c7f6b02a938f10feea17ea3cc0e8d33bcac7f3fe8cede3723bb56" dependencies = [ "critical-section", "document-features", "embassy-executor-macros", + "embassy-executor-timer-queue", ] [[package]] name = "embassy-executor-macros" -version = "0.6.2" +version = "0.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3577b1e9446f61381179a330fc5324b01d511624c55f25e3c66c9e3c626dbecf" +checksum = "dfdddc3a04226828316bf31393b6903ee162238576b1584ee2669af215d55472" dependencies = [ - "darling", + "darling 0.20.11", "proc-macro2", "quote", "syn", ] +[[package]] +name = "embassy-executor-timer-queue" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2fc328bf943af66b80b98755db9106bf7e7471b0cf47dc8559cd9a6be504cc9c" + [[package]] name = "embassy-futures" -version = "0.1.1" +version = "0.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1f878075b9794c1e4ac788c95b728f26aa6366d32eeb10c7051389f898f7d067" +checksum = "dc2d050bdc5c21e0862a89256ed8029ae6c290a93aecefc73084b3002cdebb01" + +[[package]] +name = "embassy-hal-internal" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "95285007a91b619dc9f26ea8f55452aa6c60f7115a4edc05085cd2bd3127cd7a" +dependencies = [ + "num-traits", +] [[package]] name = "embassy-sync" @@ -247,38 +322,71 @@ dependencies = [ "heapless", ] +[[package]] +name = "embassy-sync" +version = "0.7.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "73974a3edbd0bd286759b3d483540f0ebef705919a5f56f4fc7709066f71689b" +dependencies = [ + "cfg-if", + "critical-section", + "embedded-io-async", + "futures-core", + "futures-sink", + "heapless", +] + [[package]] name = "embassy-time" -version = "0.3.2" +version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "158080d48f824fad101d7b2fae2d83ac39e3f7a6fa01811034f7ab8ffc6e7309" +checksum = "f820157f198ada183ad62e0a66f554c610cdcd1a9f27d4b316358103ced7a1f8" dependencies = [ "cfg-if", "critical-section", "document-features", "embassy-time-driver", - "embassy-time-queue-driver", "embedded-hal 0.2.7", "embedded-hal 1.0.0", "embedded-hal-async", "futures-util", - "heapless", +] + +[[package]] +name = "embassy-time" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f4fa65b9284d974dad7a23bb72835c4ec85c0b540d86af7fc4098c88cff51d65" +dependencies = [ + "cfg-if", + "critical-section", + "document-features", + "embassy-time-driver", + "embassy-time-queue-utils", + "embedded-hal 0.2.7", + "embedded-hal 1.0.0", + "embedded-hal-async", + "futures-core", ] [[package]] name = "embassy-time-driver" -version = "0.1.0" +version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6e0c214077aaa9206958b16411c157961fb7990d4ea628120a78d1a5a28aed24" +checksum = "a0a244c7dc22c8d0289379c8d8830cae06bb93d8f990194d0de5efb3b5ae7ba6" dependencies = [ "document-features", ] [[package]] -name = "embassy-time-queue-driver" -version = "0.1.0" +name = "embassy-time-queue-utils" +version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f1177859559ebf42cd24ae7ba8fe6ee707489b01d0bf471f8827b7b12dcb0bc0" +checksum = "80e2ee86063bd028a420a5fb5898c18c87a8898026da1d4c852af2c443d0a454" +dependencies = [ + "embassy-executor-timer-queue", + "heapless", +] [[package]] name = "embedded-can" @@ -314,16 +422,6 @@ dependencies = [ "embedded-hal 1.0.0", ] -[[package]] -name = "embedded-hal-nb" -version = "1.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fba4268c14288c828995299e59b12babdbe170f6c6d73731af1b4648142e8605" -dependencies = [ - "embedded-hal 1.0.0", - "nb 1.1.0", -] - [[package]] name = "embedded-io" version = "0.6.1" @@ -359,7 +457,7 @@ name = "embedded-test" version = "0.6.2" dependencies = [ "defmt 1.0.1", - "embassy-executor 0.7.0", + "embassy-executor", "embedded-test-macros", "heapless", "log", @@ -369,14 +467,15 @@ dependencies = [ ] [[package]] -name = "embedded-test-example-for-esp32c6" +name = "embedded-test-example-esp32c6" version = "0.1.0" dependencies = [ "defmt 1.0.1", - "embassy-executor 0.6.3", - "embassy-time", + "embassy-executor", + "embassy-time 0.5.0", "embedded-test", "esp-backtrace", + "esp-bootloader-esp-idf", "esp-hal", "esp-hal-embassy", "esp-println", @@ -388,19 +487,7 @@ dependencies = [ name = "embedded-test-macros" version = "0.6.1" dependencies = [ - "darling", - "proc-macro2", - "quote", - "syn", -] - -[[package]] -name = "enum-as-inner" -version = "0.6.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a1e6a265c649f3f5979b601d26f1d05ada116434c87741c9493cb56218f76cbc" -dependencies = [ - "heck", + "darling 0.20.11", "proc-macro2", "quote", "syn", @@ -408,20 +495,20 @@ dependencies = [ [[package]] name = "enumset" -version = "1.1.5" +version = "1.1.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d07a4b049558765cef5f0c1a273c3fc57084d768b44d2f98127aef4cceb17293" +checksum = "25b07a8dfbbbfc0064c0a6bdf9edcf966de6b1c33ce344bdeca3b41615452634" dependencies = [ "enumset_derive", ] [[package]] name = "enumset_derive" -version = "0.10.0" +version = "0.14.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "59c3b24c345d8c314966bdc1832f6c2635bfcce8e7cf363bd115987bba2ee242" +checksum = "f43e744e4ea338060faee68ed933e46e722fb7f3617e722a5772d7e856d8b3ce" dependencies = [ - "darling", + "darling 0.21.3", "proc-macro2", "quote", "syn", @@ -435,155 +522,239 @@ checksum = "877a4ace8713b0bcf2a4e7eec82529c029f1d0619886d18145fea96c3ffe5c0f" [[package]] name = "esp-backtrace" -version = "0.14.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cb7660d85e3e7b0e113aaeeffb1a155e64a09a5035d4104031875acdba4cb68e" +version = "0.17.0" +source = "git+https://github.com/bugadani/esp-hal?branch=embassy-fun#7fea4c0c91ad416633d1dc65d4e0ce9ad40c56f2" dependencies = [ - "esp-build", + "cfg-if", + "document-features", + "esp-config", "esp-println", + "heapless", ] [[package]] -name = "esp-build" -version = "0.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b94a4b8d74e7cc7baabcca5b2277b41877e039ad9cd49959d48ef94dac7eab4b" +name = "esp-bootloader-esp-idf" +version = "0.2.0" +source = "git+https://github.com/bugadani/esp-hal?branch=embassy-fun#7fea4c0c91ad416633d1dc65d4e0ce9ad40c56f2" dependencies = [ - "quote", - "syn", - "termcolor", + "cfg-if", + "document-features", + "embedded-storage", + "esp-config", + "esp-rom-sys", + "jiff", + "strum", ] [[package]] name = "esp-config" -version = "0.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f7584e4cd1dac06201fd92fff1c84b396be5458ac4d93e9457e7a89b1b42c60e" +version = "0.5.0" +source = "git+https://github.com/bugadani/esp-hal?branch=embassy-fun#7fea4c0c91ad416633d1dc65d4e0ce9ad40c56f2" dependencies = [ "document-features", + "esp-metadata-generated", + "serde", + "serde_yaml", + "somni-expr", ] [[package]] name = "esp-hal" -version = "0.22.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1a5605e1518d63f7bf9fbd9885e61d2896060d2e4f28954736bdd74da911b676" +version = "1.0.0-rc.0" +source = "git+https://github.com/bugadani/esp-hal?branch=embassy-fun#7fea4c0c91ad416633d1dc65d4e0ce9ad40c56f2" dependencies = [ - "basic-toml", "bitfield", - "bitflags 2.9.0", + "bitflags 2.9.3", "bytemuck", "cfg-if", - "chrono", "critical-section", "delegate", + "digest", "document-features", - "embassy-embedded-hal", + "embassy-embedded-hal 0.3.2", "embassy-futures", - "embassy-sync", + "embassy-sync 0.6.2", "embedded-can", - "embedded-hal 0.2.7", "embedded-hal 1.0.0", "embedded-hal-async", - "embedded-hal-nb", "embedded-io", "embedded-io-async", "enumset", - "esp-build", "esp-config", "esp-hal-procmacros", - "esp-metadata", + "esp-metadata-generated", "esp-riscv-rt", + "esp-rom-sys", + "esp32", + "esp32c2", + "esp32c3", "esp32c6", + "esp32h2", + "esp32s2", + "esp32s3", "fugit", + "instability", "nb 1.1.0", "paste", "portable-atomic", - "rand_core", + "rand_core 0.6.4", + "rand_core 0.9.3", "riscv", "serde", "strum", "ufmt-write", - "void", + "xtensa-lx", "xtensa-lx-rt", ] [[package]] name = "esp-hal-embassy" -version = "0.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c7d0f2537ea2ff9bea26a1c8bfe43ad580d4c89febf27189653a9cf95f1f7961" +version = "0.9.0" +source = "git+https://github.com/bugadani/esp-hal?branch=embassy-fun#7fea4c0c91ad416633d1dc65d4e0ce9ad40c56f2" dependencies = [ + "cfg-if", "critical-section", "document-features", - "embassy-executor 0.6.3", + "embassy-executor", + "embassy-executor-timer-queue", + "embassy-sync 0.6.2", "embassy-time-driver", - "esp-build", + "embassy-time-queue-utils", "esp-config", "esp-hal", "esp-hal-procmacros", - "esp-metadata", + "esp-metadata-generated", "portable-atomic", "static_cell", ] [[package]] name = "esp-hal-procmacros" -version = "0.15.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "69a9a8706b7d1182b56335d196e70eeb04e2b70f4b8db96432898bd3c2bdb91e" +version = "0.19.0" +source = "git+https://github.com/bugadani/esp-hal?branch=embassy-fun#7fea4c0c91ad416633d1dc65d4e0ce9ad40c56f2" dependencies = [ - "darling", "document-features", "litrs", "object", "proc-macro-crate", - "proc-macro-error2", "proc-macro2", "quote", "syn", + "termcolor", ] [[package]] name = "esp-metadata" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f9972bbb21dcafe430b87f92efc7a788978a2d17cf8f572d104beeb48602482a" +version = "0.8.0" +source = "git+https://github.com/bugadani/esp-hal?branch=embassy-fun#7fea4c0c91ad416633d1dc65d4e0ce9ad40c56f2" dependencies = [ "anyhow", "basic-toml", + "indexmap", + "proc-macro2", + "quote", "serde", "strum", ] +[[package]] +name = "esp-metadata-generated" +version = "0.1.0" +source = "git+https://github.com/bugadani/esp-hal?branch=embassy-fun#7fea4c0c91ad416633d1dc65d4e0ce9ad40c56f2" +dependencies = [ + "esp-metadata", +] + [[package]] name = "esp-println" -version = "0.12.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ee38e87bc7e303c299047c0e9bcd0f8ccca7c7e70d1fd78bbb565db14f33beb6" +version = "0.15.0" +source = "git+https://github.com/bugadani/esp-hal?branch=embassy-fun#7fea4c0c91ad416633d1dc65d4e0ce9ad40c56f2" dependencies = [ "critical-section", - "esp-build", + "document-features", + "esp-metadata-generated", "log", "portable-atomic", ] [[package]] name = "esp-riscv-rt" -version = "0.9.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "94aca65db6157aa5f42d9df6595b21462f28207ca4230b799aa3620352ef6a72" +version = "0.12.0" +source = "git+https://github.com/bugadani/esp-hal?branch=embassy-fun#7fea4c0c91ad416633d1dc65d4e0ce9ad40c56f2" dependencies = [ "document-features", "riscv", "riscv-rt-macros", ] +[[package]] +name = "esp-rom-sys" +version = "0.1.1" +source = "git+https://github.com/bugadani/esp-hal?branch=embassy-fun#7fea4c0c91ad416633d1dc65d4e0ce9ad40c56f2" +dependencies = [ + "cfg-if", + "document-features", + "esp-metadata-generated", +] + +[[package]] +name = "esp32" +version = "0.38.0" +source = "git+https://github.com/esp-rs/esp-pacs?rev=abbd5169c3bcd926c0f3b5078a81c8d2d3849a42#abbd5169c3bcd926c0f3b5078a81c8d2d3849a42" +dependencies = [ + "critical-section", + "vcell", +] + +[[package]] +name = "esp32c2" +version = "0.27.0" +source = "git+https://github.com/esp-rs/esp-pacs?rev=abbd5169c3bcd926c0f3b5078a81c8d2d3849a42#abbd5169c3bcd926c0f3b5078a81c8d2d3849a42" +dependencies = [ + "critical-section", + "vcell", +] + +[[package]] +name = "esp32c3" +version = "0.30.0" +source = "git+https://github.com/esp-rs/esp-pacs?rev=abbd5169c3bcd926c0f3b5078a81c8d2d3849a42#abbd5169c3bcd926c0f3b5078a81c8d2d3849a42" +dependencies = [ + "critical-section", + "vcell", +] + [[package]] name = "esp32c6" +version = "0.21.0" +source = "git+https://github.com/esp-rs/esp-pacs?rev=abbd5169c3bcd926c0f3b5078a81c8d2d3849a42#abbd5169c3bcd926c0f3b5078a81c8d2d3849a42" +dependencies = [ + "critical-section", + "vcell", +] + +[[package]] +name = "esp32h2" version = "0.17.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8b98fcf7ae90ee4d55f06170dfeaaebbf2a1619bb38b4e14b9009b4d636b87e7" +source = "git+https://github.com/esp-rs/esp-pacs?rev=abbd5169c3bcd926c0f3b5078a81c8d2d3849a42#abbd5169c3bcd926c0f3b5078a81c8d2d3849a42" +dependencies = [ + "critical-section", + "vcell", +] + +[[package]] +name = "esp32s2" +version = "0.29.0" +source = "git+https://github.com/esp-rs/esp-pacs?rev=abbd5169c3bcd926c0f3b5078a81c8d2d3849a42#abbd5169c3bcd926c0f3b5078a81c8d2d3849a42" +dependencies = [ + "critical-section", + "vcell", +] + +[[package]] +name = "esp32s3" +version = "0.33.0" +source = "git+https://github.com/esp-rs/esp-pacs?rev=abbd5169c3bcd926c0f3b5078a81c8d2d3849a42#abbd5169c3bcd926c0f3b5078a81c8d2d3849a42" dependencies = [ "critical-section", "vcell", @@ -640,6 +811,16 @@ version = "2.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1d758ba1b47b00caf47f24925c0074ecb20d6dfcffe7f6d53395c0465674841a" +[[package]] +name = "generic-array" +version = "0.14.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "85649ca51fd72272d7821adaf274ad91c288277713d9c18820d8499a7ff69e9a" +dependencies = [ + "typenum", + "version_check", +] + [[package]] name = "hash32" version = "0.3.1" @@ -651,9 +832,9 @@ dependencies = [ [[package]] name = "hashbrown" -version = "0.15.2" +version = "0.15.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bf151400ff0baff5465007dd2f3e717f3fe502074ca563069ce3a6629d07b289" +checksum = "9229cfe53dfd69f0609a49f65461bd93001ea1ef889cd5529dd176593f5338a1" [[package]] name = "heapless" @@ -679,49 +860,84 @@ checksum = "b9e0384b61958566e926dc50660321d12159025e767c18e043daf26b70104c39" [[package]] name = "indexmap" -version = "2.9.0" +version = "2.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cea70ddb795996207ad57735b50c5982d8844f38ba9ee5f1aedcfb708a2aa11e" +checksum = "f2481980430f9f78649238835720ddccc57e52df14ffce1c6f37391d61b563e9" dependencies = [ "equivalent", "hashbrown", + "serde", ] [[package]] -name = "litrs" -version = "0.4.1" +name = "indoc" +version = "2.0.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f4c7245a08504955605670dbf141fceab975f15ca21570696aebe9d2e71576bd" + +[[package]] +name = "instability" +version = "0.3.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b4ce301924b7887e9d637144fdade93f9dfff9b60981d4ac161db09720d39aa5" +checksum = "435d80800b936787d62688c927b6490e887c7ef5ff9ce922c6c6050fca75eb9a" dependencies = [ + "darling 0.20.11", + "indoc", "proc-macro2", + "quote", + "syn", ] [[package]] -name = "log" -version = "0.4.27" +name = "itoa" +version = "1.0.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "13dc2df351e3202783a1fe0d44375f7295ffb4049267b0f3018346dc122a1d94" +checksum = "4a5f13b858c8d314ee3e8f639011f7ccefe71f97f96e50151fb991f267928e2c" [[package]] -name = "memchr" -version = "2.7.4" +name = "jiff" +version = "0.2.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "78ca9ab1a0babb1e7d5695e3530886289c18cf2f87ec19a575a0abdce112e3a3" +checksum = "be1f93b8b1eb69c77f24bbb0afdf66f54b632ee39af40ca21c4365a1d7347e49" +dependencies = [ + "jiff-static", + "log", + "portable-atomic", + "portable-atomic-util", + "serde", +] [[package]] -name = "minijinja" -version = "2.9.0" +name = "jiff-static" +version = "0.2.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "98642a6dfca91122779a307b77cd07a4aa951fbe32232aaf5bad9febc66be754" +checksum = "03343451ff899767262ec32146f6d559dd759fdadf42ff0e227c7c48f72594b4" dependencies = [ - "serde", + "proc-macro2", + "quote", + "syn", ] [[package]] -name = "mutex-trait" -version = "0.2.0" +name = "litrs" +version = "0.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f5e54036fe321fd421e10d732f155734c4e4afd610dd556d9a82833ab3ee0bed" +dependencies = [ + "proc-macro2", +] + +[[package]] +name = "log" +version = "0.4.27" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b4bb1638d419e12f8b1c43d9e639abd0d1424285bdea2f76aa231e233c63cd3a" +checksum = "13dc2df351e3202783a1fe0d44375f7295ffb4049267b0f3018346dc122a1d94" + +[[package]] +name = "memchr" +version = "2.7.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "32a282da65faaf38286cf3be983213fcf1d2e2a58700e808f83f4ea9a4804bc0" [[package]] name = "nb" @@ -786,9 +1002,18 @@ checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184" [[package]] name = "portable-atomic" -version = "1.11.0" +version = "1.11.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "350e9b48cbc6b0e028b0473b114454c6316e57336ee184ceab6e53f72c178b3e" +checksum = "f84267b20a16ea918e43c6a88433c2d54fa145c92a811b5b047ccbe153674483" + +[[package]] +name = "portable-atomic-util" +version = "0.2.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d8a2f0d8d040d7848a709caf78912debcc3f33ee4b3cac47d73d1e1069e83507" +dependencies = [ + "portable-atomic", +] [[package]] name = "proc-macro-crate" @@ -823,9 +1048,9 @@ dependencies = [ [[package]] name = "proc-macro2" -version = "1.0.95" +version = "1.0.101" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "02b3e5e68a3a1a02aad3ec490a98007cbc13c37cbe84a3cd7b8e406d76e7f778" +checksum = "89ae43fd86e4158d6db51ad8e2b80f313af9cc74f5c0e03ccb87de09998732de" dependencies = [ "unicode-ident", ] @@ -851,11 +1076,17 @@ version = "0.6.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c" +[[package]] +name = "rand_core" +version = "0.9.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "99d9a13982dcf210057a8a78572b2217b667c3beacbf3a0d8b454f6f82837d38" + [[package]] name = "riscv" -version = "0.12.1" +version = "0.14.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5ea8ff73d3720bdd0a97925f0bf79ad2744b6da8ff36be3840c48ac81191d7a7" +checksum = "0f1671c79a01a149fe000af2429ce9ccc8e58cdecda72672355d50e5536b363c" dependencies = [ "critical-section", "embedded-hal 1.0.0", @@ -866,9 +1097,9 @@ dependencies = [ [[package]] name = "riscv-macros" -version = "0.1.0" +version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f265be5d634272320a7de94cea15c22a3bfdd4eb42eb43edc528415f066a1f25" +checksum = "e8c4aa1ea1af6dcc83a61be12e8189f9b293c3ba5a487778a4cd89fb060fdbbc" dependencies = [ "proc-macro2", "quote", @@ -883,9 +1114,9 @@ checksum = "8188909339ccc0c68cfb5a04648313f09621e8b87dc03095454f1a11f6c5d436" [[package]] name = "riscv-rt-macros" -version = "0.2.2" +version = "0.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "30f19a85fe107b65031e0ba8ec60c34c2494069fe910d6c297f5e7cb5a6f76d0" +checksum = "617d6812f513a0bad8d6d0b54c7225b36f5b024e821f3ec42e7c21051c9aacd3" dependencies = [ "proc-macro2", "quote", @@ -906,12 +1137,6 @@ dependencies = [ "ufmt-write", ] -[[package]] -name = "rustversion" -version = "1.0.20" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eded382c5f5f786b989652c49544c4877d9f015cc22e145a5ea8ea66c2921cd2" - [[package]] name = "ryu" version = "1.0.20" @@ -955,14 +1180,34 @@ dependencies = [ ] [[package]] -name = "serde_spanned" -version = "0.6.8" +name = "serde_yaml" +version = "0.9.34+deprecated" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "87607cb1398ed59d48732e575a4c28a7a8ebf2454b964fe3f224f2afc07909e1" +checksum = "6a8b1a1a2ebf674015cc02edccce75287f1a0130d394307b36743c2f5d504b47" dependencies = [ + "indexmap", + "itoa", + "ryu", "serde", + "unsafe-libyaml", +] + +[[package]] +name = "somni-expr" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fa2242e96675e71a00281c04d341df3b9912e4968674d713d2e7499802f2aaff" +dependencies = [ + "indexmap", + "somni-parser", ] +[[package]] +name = "somni-parser" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1d9ecb2c142aac72bff4d0b35b4907c6625c82d171c7e2f3602f31b614467d88" + [[package]] name = "stable_deref_trait" version = "1.2.0" @@ -971,9 +1216,9 @@ checksum = "a8f112729512f8e442d81f95a8a7ddf2b7c6b8a1a6f509a95864142b30cab2d3" [[package]] name = "static_cell" -version = "2.1.0" +version = "2.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d89b0684884a883431282db1e4343f34afc2ff6996fe1f4a1664519b66e14c1e" +checksum = "0530892bb4fa575ee0da4b86f86c667132a94b74bb72160f58ee5a4afec74c23" dependencies = [ "portable-atomic", ] @@ -986,31 +1231,30 @@ checksum = "7da8b5736845d9f2fcb837ea5d9e2628564b3b043a70948a3f0b778838c5fb4f" [[package]] name = "strum" -version = "0.26.3" +version = "0.27.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8fec0f0aef304996cf250b31b5a10dee7980c85da9d759361292b8bca5a18f06" +checksum = "af23d6f6c1a224baef9d3f61e287d2761385a5b88fdab4eb4c6f11aeb54c4bcf" dependencies = [ "strum_macros", ] [[package]] name = "strum_macros" -version = "0.26.4" +version = "0.27.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4c6bee85a5a24955dc440386795aa378cd9cf82acd5f764469152d2270e581be" +checksum = "7695ce3845ea4b33927c055a39dc438a45b059f7c1b3d91d38d10355fb8cbca7" dependencies = [ "heck", "proc-macro2", "quote", - "rustversion", "syn", ] [[package]] name = "syn" -version = "2.0.100" +version = "2.0.106" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b09a44accad81e1ba1cd74a32461ba89dee89095ba17b32f5d03683b1b1fc2a0" +checksum = "ede7c438028d4436d71104916910f5bb611972c5cfd7f89b8300a8186e6fada6" dependencies = [ "proc-macro2", "quote", @@ -1028,64 +1272,46 @@ dependencies = [ [[package]] name = "thiserror" -version = "2.0.12" +version = "2.0.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "567b8a2dae586314f7be2a752ec7474332959c6460e02bde30d702a66d488708" +checksum = "3467d614147380f2e4e374161426ff399c91084acd2363eaf549172b3d5e60c0" dependencies = [ "thiserror-impl", ] [[package]] name = "thiserror-impl" -version = "2.0.12" +version = "2.0.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7f7cf42b4507d8ea322120659672cf1b9dbb93f8f2d4ecfd6e51350ff5b17a1d" +checksum = "6c5e1be1c48b9172ee610da68fd9cd2770e7a4056cb3fc98710ee6906f0c7960" dependencies = [ "proc-macro2", "quote", "syn", ] -[[package]] -name = "toml" -version = "0.8.21" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "900f6c86a685850b1bc9f6223b20125115ee3f31e01207d81655bbcc0aea9231" -dependencies = [ - "serde", - "serde_spanned", - "toml_datetime", - "toml_edit", -] - [[package]] name = "toml_datetime" -version = "0.6.9" +version = "0.6.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3da5db5a963e24bc68be8b17b6fa82814bb22ee8660f192bb182771d498f09a3" -dependencies = [ - "serde", -] +checksum = "22cddaf88f4fbc13c51aebbf5f8eceb5c7c5a9da2ac40a13519eb5b0a0e8f11c" [[package]] name = "toml_edit" -version = "0.22.25" +version = "0.22.27" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "10558ed0bd2a1562e630926a2d1f0b98c827da99fabd3fe20920a59642504485" +checksum = "41fe8c660ae4257887cf66394862d21dbca4a6ddd26f04a3560410406a2f819a" dependencies = [ "indexmap", - "serde", - "serde_spanned", "toml_datetime", - "toml_write", "winnow", ] [[package]] -name = "toml_write" -version = "0.1.0" +name = "typenum" +version = "1.18.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "28391a4201ba7eb1984cfeb6862c0b3ea2cfe23332298967c749dddc0d6cd976" +checksum = "1dccffe3ce07af9386bfd29e80c0ab1a8205a2fc34e4bcd40364df902cfa8f3f" [[package]] name = "ufmt-write" @@ -1099,12 +1325,24 @@ version = "1.0.18" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5a5f39404a5da50712a4c1eecf25e90dd62b613502b7e925fd4e4d19b5c96512" +[[package]] +name = "unsafe-libyaml" +version = "0.2.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "673aac59facbab8a9007c7f6108d11f63b603f7cabff99fabf650fea5c32b861" + [[package]] name = "vcell" version = "0.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "77439c1b53d2303b20d9459b1ade71a83c716e3f9c34f3228c00e6f185d6c002" +[[package]] +name = "version_check" +version = "0.9.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0b928f33d975fc6ad9f86c8f283853ad26bdd5b10b7f1542aa2fa15e2289105a" + [[package]] name = "void" version = "1.0.2" @@ -1113,28 +1351,35 @@ checksum = "6a02e4885ed3bc0f2de90ea6dd45ebcbb66dacffe03547fadbb0eeae2770887d" [[package]] name = "winapi-util" -version = "0.1.9" +version = "0.1.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cf221c93e13a30d793f7645a0e7762c55d169dbb0a49671918a2319d289b10bb" +checksum = "0978bf7171b3d90bac376700cb56d606feb40f251a475a5d6634613564460b22" dependencies = [ "windows-sys", ] +[[package]] +name = "windows-link" +version = "0.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5e6ad25900d524eaabdbbb96d20b4311e1e7ae1699af4fb28c17ae66c80d798a" + [[package]] name = "windows-sys" -version = "0.59.0" +version = "0.60.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1e38bc4d79ed67fd075bcc251a1c39b32a1776bbe92e5bef1f0bf1f8c531853b" +checksum = "f2f500e4d28234f72040990ec9d39e3a6b950f9f22d3dba18416c35882612bcb" dependencies = [ "windows-targets", ] [[package]] name = "windows-targets" -version = "0.52.6" +version = "0.53.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9b724f72796e036ab90c1021d4780d4d3d648aca59e491e6b98e725b84e99973" +checksum = "d5fe6031c4041849d7c496a8ded650796e7b6ecc19df1a431c1a363342e5dc91" dependencies = [ + "windows-link", "windows_aarch64_gnullvm", "windows_aarch64_msvc", "windows_i686_gnu", @@ -1147,97 +1392,85 @@ dependencies = [ [[package]] name = "windows_aarch64_gnullvm" -version = "0.52.6" +version = "0.53.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "32a4622180e7a0ec044bb555404c800bc9fd9ec262ec147edd5989ccd0c02cd3" +checksum = "86b8d5f90ddd19cb4a147a5fa63ca848db3df085e25fee3cc10b39b6eebae764" [[package]] name = "windows_aarch64_msvc" -version = "0.52.6" +version = "0.53.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "09ec2a7bb152e2252b53fa7803150007879548bc709c039df7627cabbd05d469" +checksum = "c7651a1f62a11b8cbd5e0d42526e55f2c99886c77e007179efff86c2b137e66c" [[package]] name = "windows_i686_gnu" -version = "0.52.6" +version = "0.53.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8e9b5ad5ab802e97eb8e295ac6720e509ee4c243f69d781394014ebfe8bbfa0b" +checksum = "c1dc67659d35f387f5f6c479dc4e28f1d4bb90ddd1a5d3da2e5d97b42d6272c3" [[package]] name = "windows_i686_gnullvm" -version = "0.52.6" +version = "0.53.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0eee52d38c090b3caa76c563b86c3a4bd71ef1a819287c19d586d7334ae8ed66" +checksum = "9ce6ccbdedbf6d6354471319e781c0dfef054c81fbc7cf83f338a4296c0cae11" [[package]] name = "windows_i686_msvc" -version = "0.52.6" +version = "0.53.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "240948bc05c5e7c6dabba28bf89d89ffce3e303022809e73deaefe4f6ec56c66" +checksum = "581fee95406bb13382d2f65cd4a908ca7b1e4c2f1917f143ba16efe98a589b5d" [[package]] name = "windows_x86_64_gnu" -version = "0.52.6" +version = "0.53.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "147a5c80aabfbf0c7d901cb5895d1de30ef2907eb21fbbab29ca94c5b08b1a78" +checksum = "2e55b5ac9ea33f2fc1716d1742db15574fd6fc8dadc51caab1c16a3d3b4190ba" [[package]] name = "windows_x86_64_gnullvm" -version = "0.52.6" +version = "0.53.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "24d5b23dc417412679681396f2b49f3de8c1473deb516bd34410872eff51ed0d" +checksum = "0a6e035dd0599267ce1ee132e51c27dd29437f63325753051e71dd9e42406c57" [[package]] name = "windows_x86_64_msvc" -version = "0.52.6" +version = "0.53.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "589f6da84c646204747d1270a2a5661ea66ed1cced2631d546fdfb155959f9ec" +checksum = "271414315aff87387382ec3d271b52d7ae78726f5d44ac98b4f4030c91880486" [[package]] name = "winnow" -version = "0.7.7" +version = "0.7.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6cb8234a863ea0e8cd7284fcdd4f145233eb00fee02bbdd9861aec44e6477bc5" +checksum = "21a0236b59786fed61e2a80582dd500fe61f18b5dca67a4a067d0bc9039339cf" dependencies = [ "memchr", ] [[package]] name = "xtensa-lx" -version = "0.9.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e758f94e1a1f71758f94052a2766dcb12604998eb372b8b2e30576e3ab1ba1e6" +version = "0.12.0" +source = "git+https://github.com/bugadani/esp-hal?branch=embassy-fun#7fea4c0c91ad416633d1dc65d4e0ce9ad40c56f2" dependencies = [ - "bare-metal", - "mutex-trait", + "critical-section", ] [[package]] name = "xtensa-lx-rt" -version = "0.17.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5c0307d03dadbf95633942e13901984f2059df4c963367348168cbd21c962669" +version = "0.20.0" +source = "git+https://github.com/bugadani/esp-hal?branch=embassy-fun#7fea4c0c91ad416633d1dc65d4e0ce9ad40c56f2" dependencies = [ - "anyhow", - "bare-metal", "document-features", - "enum-as-inner", - "minijinja", "r0", - "serde", - "strum", - "toml", "xtensa-lx", "xtensa-lx-rt-proc-macros", ] [[package]] name = "xtensa-lx-rt-proc-macros" -version = "0.2.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "11277b1e4cbb7ffe44678c668518b249c843c81df249b8f096701757bc50d7ee" +version = "0.4.0" +source = "git+https://github.com/bugadani/esp-hal?branch=embassy-fun#7fea4c0c91ad416633d1dc65d4e0ce9ad40c56f2" dependencies = [ - "darling", "proc-macro2", "quote", "syn", diff --git a/examples/esp32c6/Cargo.toml b/examples/esp32c6/Cargo.toml index 91c976c..59bd333 100644 --- a/examples/esp32c6/Cargo.toml +++ b/examples/esp32c6/Cargo.toml @@ -1,5 +1,5 @@ [package] -name = "embedded-test-example-for-esp32c6" +name = "embedded-test-example-esp32c6" version = "0.1.0" edition = "2021" repository = "https://github.com/probe-rs/embedded-test" @@ -14,18 +14,18 @@ defmt = { version = "1", optional = true } rtt-target = { version="0.6.1", optional= true } # Esp32 related dependencies for main.rs. Note: embedded-test comes with its own panic handler and logging sink. -esp-backtrace = { version = "0.14.2", features = [ +esp-backtrace = { version = "0.17", features = [ "esp32c6", - "exception-handler", "panic-handler", "println", ] } -esp-hal = { version = "0.22.0", features = ["esp32c6"] } -esp-println = { version = "0.12.0", features = ["esp32c6", "log"] } -embassy-time = { version = "0.3.1", features = ["generic-queue-8"] } -esp-hal-embassy = { version = "0.5.0", features = ["esp32c6"] } -embassy-executor = { default-features = false, version = "0.6.0" } # TODO: update to 0.7.0 when esp-hal supports it +esp-bootloader-esp-idf = { version = "0.2", features = ["esp32c6"] } +esp-hal = { version = "1.0.0-rc.0", features = ["esp32c6", "unstable"] } +esp-println = { version = "0.15", features = ["esp32c6", "log-04"] } +esp-hal-embassy = { version = "0.9", features = ["esp32c6"] } +embassy-time = { version = "0.5", features = ["generic-queue-8"] } +embassy-executor = { version = "0.9", default-features = false } [dev-dependencies] embedded-test = { version = "0.6.0", features = ["embassy", "external-executor"], path = "../.." } @@ -36,7 +36,7 @@ log = ["dep:log", "dep:rtt-target", "rtt-target/log", "embedded-test/log"] defmt = ["dep:defmt", "dep:rtt-target", "rtt-target/defmt", "embedded-test/defmt"] [[bin]] -name = "embedded-test-example-for-esp32c6" +name = "embedded-test-example-esp32c6" test = false # To make plain `cargo test` work: Disable tests for the bin, because we are only using the intergration tests bench = false # To make `cargo check --all-targets` work. required-features = ["log"] @@ -51,3 +51,11 @@ harness = false # Important: As we bring our own test harness, we need to disabl [lints.rust] unexpected_cfgs = { level = "warn", check-cfg = ['cfg(abc)'] } + +# For now we have to use future versions +[patch.crates-io] +esp-hal = { git = "https://github.com/bugadani/esp-hal", branch = "embassy-fun" } +esp-bootloader-esp-idf = { git = "https://github.com/bugadani/esp-hal", branch = "embassy-fun" } +esp-hal-embassy = { git = "https://github.com/bugadani/esp-hal", branch = "embassy-fun" } +esp-println = { git = "https://github.com/bugadani/esp-hal", branch = "embassy-fun" } +esp-backtrace = { git = "https://github.com/bugadani/esp-hal", branch = "embassy-fun" } diff --git a/examples/esp32c6/src/main.rs b/examples/esp32c6/src/main.rs index 30e9cdc..60b4603 100644 --- a/examples/esp32c6/src/main.rs +++ b/examples/esp32c6/src/main.rs @@ -1,10 +1,13 @@ #![no_std] #![no_main] +esp_bootloader_esp_idf::esp_app_desc!(); + use embassy_executor::Spawner; use embassy_time::{Duration, Timer}; use esp_backtrace as _; -use esp_hal::prelude::*; +use esp_hal::clock::CpuClock; +use esp_hal::timer::systimer::SystemTimer; use log::info; /// ====> Look in the tests directory to see how embedded-test works <==== @@ -12,18 +15,13 @@ use log::info; /// This file here is just a simple async main function that prints "Hello world!" every second, /// similar to the example generate by esp-generate. -#[main] +#[esp_hal_embassy::main] async fn main(_spawner: Spawner) -> ! { - let peripherals = esp_hal::init({ - let mut config = esp_hal::Config::default(); - config.cpu_clock = CpuClock::max(); - config - }); + let peripherals = esp_hal::init(esp_hal::Config::default().with_cpu_clock(CpuClock::max())); esp_println::logger::init_logger_from_env(); // # prints to jtag/uart0 ! - let timer0 = esp_hal::timer::systimer::SystemTimer::new(peripherals.SYSTIMER) - .split::(); + let timer0 = SystemTimer::new(peripherals.SYSTIMER); esp_hal_embassy::init(timer0.alarm0); loop { diff --git a/examples/esp32c6/tests/example_test.rs b/examples/esp32c6/tests/example_test.rs index 5bc6233..75df594 100644 --- a/examples/esp32c6/tests/example_test.rs +++ b/examples/esp32c6/tests/example_test.rs @@ -3,7 +3,7 @@ struct Context { #[allow(dead_code)] - i2c0: esp_hal::peripherals::I2C0, + i2c0: esp_hal::peripherals::I2C0<'static>, } /// Sets up the logging before entering the test-body, so that embedded-test internal logs (e.g. Running Test <...>) can also be printed. @@ -15,24 +15,22 @@ fn setup_log() { rtt_target::rtt_init_defmt!(); } +esp_bootloader_esp_idf::esp_app_desc!(); + #[cfg(test)] #[embedded_test::tests(executor=esp_hal_embassy::Executor::new(), setup=crate::setup_log())] mod tests { use super::*; - use esp_hal::prelude::*; + use esp_hal::clock::CpuClock; + use esp_hal::timer::systimer::SystemTimer; // Optional: A init function which is called before every test // asyncness of init fn is optional #[init] async fn init() -> Context { - let peripherals = esp_hal::init({ - let mut config = esp_hal::Config::default(); - config.cpu_clock = CpuClock::max(); - config - }); - - let timer0 = esp_hal::timer::systimer::SystemTimer::new(peripherals.SYSTIMER) - .split::(); + let peripherals = esp_hal::init(esp_hal::Config::default().with_cpu_clock(CpuClock::max())); + + let timer0 = SystemTimer::new(peripherals.SYSTIMER); esp_hal_embassy::init(timer0.alarm0); // The init function can return some state, which can be consumed by the testcases diff --git a/examples/std/Cargo.lock b/examples/std/Cargo.lock index 51355a5..9ff2658 100644 --- a/examples/std/Cargo.lock +++ b/examples/std/Cargo.lock @@ -16,9 +16,9 @@ checksum = "790eea4361631c5e7d22598ecd5723ff611904e3344ce8720784c93e3d83d40b" [[package]] name = "darling" -version = "0.20.10" +version = "0.20.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6f63b86c8a8826a49b8c21f08a2d07338eec8d900540f8630dc76284be802989" +checksum = "fc7f46116c46ff9ab3eb1597a45688b6715c6e628b5c133e288e709a29bcb4ee" dependencies = [ "darling_core", "darling_macro", @@ -26,9 +26,9 @@ dependencies = [ [[package]] name = "darling_core" -version = "0.20.10" +version = "0.20.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "95133861a8032aaea082871032f5815eb9e98cef03fa916ab4500513994df9e5" +checksum = "0d00b9596d185e565c2207a0b01f8bd1a135483d02d9b7b0a54b11da8d53412e" dependencies = [ "fnv", "ident_case", @@ -40,9 +40,9 @@ dependencies = [ [[package]] name = "darling_macro" -version = "0.20.10" +version = "0.20.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d336a2a514f6ccccaa3e09b02d41d35330c07ddf03a62165fcec10bb561c7806" +checksum = "fc34b93ccb385b40dc71c6fceac4b2ad23662c7eeb248cf10d529b7e055b6ead" dependencies = [ "darling_core", "quote", @@ -60,20 +60,21 @@ dependencies = [ [[package]] name = "embassy-executor" -version = "0.7.0" +version = "0.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "90327bcc66333a507f89ecc4e2d911b265c45f5c9bc241f98eee076752d35ac6" +checksum = "d0c80c92a31c7f6b02a938f10feea17ea3cc0e8d33bcac7f3fe8cede3723bb56" dependencies = [ "critical-section", "document-features", "embassy-executor-macros", + "embassy-executor-timer-queue", ] [[package]] name = "embassy-executor-macros" -version = "0.6.2" +version = "0.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3577b1e9446f61381179a330fc5324b01d511624c55f25e3c66c9e3c626dbecf" +checksum = "dfdddc3a04226828316bf31393b6903ee162238576b1584ee2669af215d55472" dependencies = [ "darling", "proc-macro2", @@ -81,6 +82,12 @@ dependencies = [ "syn", ] +[[package]] +name = "embassy-executor-timer-queue" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2fc328bf943af66b80b98755db9106bf7e7471b0cf47dc8559cd9a6be504cc9c" + [[package]] name = "embedded-test" version = "0.6.2" @@ -146,21 +153,21 @@ checksum = "b9e0384b61958566e926dc50660321d12159025e767c18e043daf26b70104c39" [[package]] name = "litrs" -version = "0.4.1" +version = "0.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b4ce301924b7887e9d637144fdade93f9dfff9b60981d4ac161db09720d39aa5" +checksum = "f5e54036fe321fd421e10d732f155734c4e4afd610dd556d9a82833ab3ee0bed" [[package]] name = "log" -version = "0.4.26" +version = "0.4.27" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "30bde2b3dc3671ae49d8e2e9f044c7c005836e7a023ee57cffa25ab82764bb9e" +checksum = "13dc2df351e3202783a1fe0d44375f7295ffb4049267b0f3018346dc122a1d94" [[package]] name = "proc-macro2" -version = "1.0.94" +version = "1.0.101" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a31971752e70b8b2686d7e46ec17fb38dad4051d94024c88df49b667caea9c84" +checksum = "89ae43fd86e4158d6db51ad8e2b80f313af9cc74f5c0e03ccb87de09998732de" dependencies = [ "unicode-ident", ] @@ -225,9 +232,9 @@ checksum = "7da8b5736845d9f2fcb837ea5d9e2628564b3b043a70948a3f0b778838c5fb4f" [[package]] name = "syn" -version = "2.0.100" +version = "2.0.106" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b09a44accad81e1ba1cd74a32461ba89dee89095ba17b32f5d03683b1b1fc2a0" +checksum = "ede7c438028d4436d71104916910f5bb611972c5cfd7f89b8300a8186e6fada6" dependencies = [ "proc-macro2", "quote", diff --git a/examples/std/Cargo.toml b/examples/std/Cargo.toml index 64ca8d1..d9330ed 100644 --- a/examples/std/Cargo.toml +++ b/examples/std/Cargo.toml @@ -8,8 +8,8 @@ license = "MIT OR Apache-2.0" # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html [dependencies] -embassy-executor = { default-features = false, version = "0.7.0", features = ["arch-std", "executor-thread"] } -# Note: You need to enable at least one executor feature on embassy 0.7.x +embassy-executor = { default-features = false, version = "0.9", features = ["arch-std", "executor-thread"] } +# Note: You need to enable at least one executor feature on embassy-executor # dependencies when using the log feature log = { version = "0.4.20", optional = true } diff --git a/examples/stm32f767/Cargo.lock b/examples/stm32f767/Cargo.lock index ea87857..a83b0b0 100644 --- a/examples/stm32f767/Cargo.lock +++ b/examples/stm32f767/Cargo.lock @@ -40,9 +40,9 @@ checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a" [[package]] name = "bitflags" -version = "2.9.0" +version = "2.9.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5c8214115b7bf84099f1309324e63141d4c5d7cc26862f97a0a857dbefe165bd" +checksum = "34efbcccd345379ca2868b2b2c9d3782e9cc58ba87bc7d79d5b53d9c9ae6f25d" [[package]] name = "bxcan" @@ -203,21 +203,22 @@ dependencies = [ [[package]] name = "embassy-executor" -version = "0.7.0" +version = "0.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "90327bcc66333a507f89ecc4e2d911b265c45f5c9bc241f98eee076752d35ac6" +checksum = "d0c80c92a31c7f6b02a938f10feea17ea3cc0e8d33bcac7f3fe8cede3723bb56" dependencies = [ "cortex-m", "critical-section", "document-features", "embassy-executor-macros", + "embassy-executor-timer-queue", ] [[package]] name = "embassy-executor-macros" -version = "0.6.2" +version = "0.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3577b1e9446f61381179a330fc5324b01d511624c55f25e3c66c9e3c626dbecf" +checksum = "dfdddc3a04226828316bf31393b6903ee162238576b1584ee2669af215d55472" dependencies = [ "darling", "proc-macro2", @@ -225,6 +226,12 @@ dependencies = [ "syn", ] +[[package]] +name = "embassy-executor-timer-queue" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2fc328bf943af66b80b98755db9106bf7e7471b0cf47dc8559cd9a6be504cc9c" + [[package]] name = "embedded-hal" version = "0.2.7" @@ -331,9 +338,9 @@ checksum = "b9e0384b61958566e926dc50660321d12159025e767c18e043daf26b70104c39" [[package]] name = "litrs" -version = "0.4.1" +version = "0.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b4ce301924b7887e9d637144fdade93f9dfff9b60981d4ac161db09720d39aa5" +checksum = "f5e54036fe321fd421e10d732f155734c4e4afd610dd556d9a82833ab3ee0bed" [[package]] name = "log" @@ -380,9 +387,9 @@ dependencies = [ [[package]] name = "portable-atomic" -version = "1.11.0" +version = "1.11.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "350e9b48cbc6b0e028b0473b114454c6316e57336ee184ceab6e53f72c178b3e" +checksum = "f84267b20a16ea918e43c6a88433c2d54fa145c92a811b5b047ccbe153674483" [[package]] name = "powerfmt" @@ -414,9 +421,9 @@ dependencies = [ [[package]] name = "proc-macro2" -version = "1.0.95" +version = "1.0.101" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "02b3e5e68a3a1a02aad3ec490a98007cbc13c37cbe84a3cd7b8e406d76e7f778" +checksum = "89ae43fd86e4158d6db51ad8e2b80f313af9cc74f5c0e03ccb87de09998732de" dependencies = [ "unicode-ident", ] @@ -551,7 +558,7 @@ checksum = "864a474a57e6a9c51482358a239eef920752526aea85ce20adb1bb621c36b889" dependencies = [ "as-slice", "bare-metal 1.0.0", - "bitflags 2.9.0", + "bitflags 2.9.3", "bxcan", "cast", "cortex-m", @@ -576,9 +583,9 @@ checksum = "7da8b5736845d9f2fcb837ea5d9e2628564b3b043a70948a3f0b778838c5fb4f" [[package]] name = "syn" -version = "2.0.100" +version = "2.0.106" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b09a44accad81e1ba1cd74a32461ba89dee89095ba17b32f5d03683b1b1fc2a0" +checksum = "ede7c438028d4436d71104916910f5bb611972c5cfd7f89b8300a8186e6fada6" dependencies = [ "proc-macro2", "quote", @@ -587,18 +594,18 @@ dependencies = [ [[package]] name = "thiserror" -version = "2.0.12" +version = "2.0.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "567b8a2dae586314f7be2a752ec7474332959c6460e02bde30d702a66d488708" +checksum = "3467d614147380f2e4e374161426ff399c91084acd2363eaf549172b3d5e60c0" dependencies = [ "thiserror-impl", ] [[package]] name = "thiserror-impl" -version = "2.0.12" +version = "2.0.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7f7cf42b4507d8ea322120659672cf1b9dbb93f8f2d4ecfd6e51350ff5b17a1d" +checksum = "6c5e1be1c48b9172ee610da68fd9cd2770e7a4056cb3fc98710ee6906f0c7960" dependencies = [ "proc-macro2", "quote", diff --git a/examples/stm32f767/Cargo.toml b/examples/stm32f767/Cargo.toml index 314a211..c176c90 100644 --- a/examples/stm32f767/Cargo.toml +++ b/examples/stm32f767/Cargo.toml @@ -12,8 +12,8 @@ cortex-m = { version = "0.7", features = ["critical-section-single-core"] } cortex-m-rt = "0.7" stm32f7xx-hal = { version = "0.8", features = ["stm32f767"] } # replace the model of your microcontroller here -embassy-executor = { default-features = false, version = "0.7.0", features = ["executor-thread", "arch-cortex-m"] } -# Note: You need to enable at least one executor feature on embassy 0.7.x +embassy-executor = { default-features = false, version = "0.9", features = ["executor-thread", "arch-cortex-m"] } +# Note: You need to enable at least one executor feature on embassy-executor # dependencies when using the log/defmt feature log = { version = "0.4.20", optional = true } diff --git a/src/export.rs b/src/export.rs index 5cba6a9..79a0947 100644 --- a/src/export.rs +++ b/src/export.rs @@ -23,7 +23,7 @@ pub use embassy_executor::task; not(feature = "external-executor"), not(feature = "ariel-os") ))] -pub use embassy_executor::Executor; // Please activate the `executor-thread` or `executor-interrupt` feature on the embassy-executor crate (v0.7.x)! +pub use embassy_executor::Executor; // Please activate the `executor-thread` or `executor-interrupt` feature on the embassy-executor crate (v0.9.x)! const VERSION: u32 = 1; //Format version of our protocol between probe-rs and target running embedded-test