summaryrefslogtreecommitdiff
path: root/embassy-boot
AgeCommit message (Collapse)Author
2022-09-26make prepare_update asyncMathias
2022-09-26Add get_state helpers to allow self-testing before calling mark_bootedMathias
2022-09-26Add blocking API to FirmwareUpdater, and allow for a split prepare/write apiMathias
2022-09-22Update Rust nightly.Dario Nieuwenhuis
Removes feature(generic_associated_types)
2022-09-20Take into account size of revert indexUlf Lilleengen
Fixes a bug in the partition assertions that ensures that the state page(s) have enough space for 2x active partition range. Add unit test to verify that panic is observed.
2022-09-20Remove BootFlash borrowUlf Lilleengen
Compiler will infer a different lifetime for BootFlash than for the borrowed flash, which makes it require more type annotations than if it was just owning the type. Since it doesn't really matter if it owns or borrows in practical use, change it to own so that it simplifies usage.
2022-09-02Fix a few clippy warningsUlf Lilleengen
2022-09-02Remove generic const expressions from embassy-bootUlf Lilleengen
* Remove the need for generic const expressions and use buffers provided in the flash config. * Extend embedded-storage traits to simplify generics. * Document all public APIs * Add toplevel README * Expose AlignedBuffer type for convenience. * Update examples
2022-08-22split `embassy-util` into `embassy-futures`, `embassy-sync`.Dario Nieuwenhuis
2022-08-17Update to critical-section 1.0, atomic-polyfill 1.0Dario Nieuwenhuis
2022-08-15Add -boot docserver metadata.Dario Nieuwenhuis
2022-07-29Split embassy crate into embassy-executor, embassy-util.Dario Nieuwenhuis
2022-06-30simplify `set_magic`Vincent Stakenburg
2022-06-30add log feature to embassy-boot-stm32Vincent Stakenburg
2022-06-29Remove unused importsUlf Lilleengen
2022-06-27Add build.rs to detect armv6Ulf Lilleengen
2022-06-24Move bootloader main to examplesUlf Lilleengen
This should remove some confusion around embassy-boot-* being a library vs. a binary. The binary is now an example bootloader instead.
2022-06-18Merge pull request #822 from embassy-rs/remove-authorsDario Nieuwenhuis
Remove the authors field from Cargo.tomls
2022-06-18Merge pull request #821 from embassy-rs/defmt-traceDario Nieuwenhuis
Add env DEFMT_LOG=trace to all examples.
2022-06-18Remove the authors field from Cargo.tomlsDario Nieuwenhuis
It currently contains whoever was first to write some code for the crate, even if many more people have contributed to it later. The field is "sort of" deprecated, it was made optional recently: https://rust-lang.github.io/rfcs/3052-optional-authors-field.html Due the the reasons listed there I believe removing it is better than setting it to generic fluff like "The Embassy contributors".
2022-06-18Update to 2021 edition. (#820)Dario Nieuwenhuis
2022-06-18Add env DEFMT_LOG=trace to all examples.Dario Nieuwenhuis
2022-06-12Run rustfmt.Dario Nieuwenhuis
2022-05-31boot/stm32: autodetect thumbv6, remove cargo feature.Dario Nieuwenhuis
2022-05-06Add F7 flash and bootloader supportMatous Hybl
2022-05-06Add support for F3 flashMatous Hybl
2022-04-28Fix linker script for nrf bootloader exampleUlf Lilleengen
2022-04-28Allow using separate page sizes for state and dfuUlf Lilleengen
* Less generics on bootloader. Keep PAGE_SIZE as a common multiple of DFU and ACTIVE page sizes. * Document restriction * Add unit tests for different page sizes
2022-04-27Add bootloader to CIUlf Lilleengen
2022-04-27Add stm32 flash + bootloader supportUlf Lilleengen
* Add flash drivers for L0, L1, L4, WB and WL. Not tested for WB, but should be similar to WL. * Add embassy-boot-stm32 for bootloading on STM32. * Add flash examples and bootloader examples * Update stm32-data
2022-04-19Support multiple flash instances in embassy-bootUlf Lilleengen
* Add FlashProvider and FlashConfig traits to define flash characteristics * Use traits in bootloader to retrieve flash handles and for copying data between flash instances * Add convenience implementations for using a single flash instance.
2022-03-31Avoid writing bootloader flash if not neededUlf Lilleengen
2022-03-22Fix potential unaligned writeUlf Lilleengen
Reduce log level
2022-02-09Address review commentsUlf Lilleengen
2022-02-09Add embassy-bootUlf Lilleengen
Embassy-boot is a simple bootloader that works together with an application to provide firmware update capabilities with a minimal risk. The bootloader consists of a platform-independent part, which implements the swap algorithm, and a platform-dependent part (currently only for nRF) that provides addition functionality such as watchdog timers softdevice support.