aboutsummaryrefslogtreecommitdiff
path: root/embassy-boot
Commit message (Collapse)AuthorAgeFilesLines
...
* Merge remote-tracking branch 'upstream/main' into remove-bootloader-partitionsRasmus Melchior Jacobsen2023-05-301-1/+1
|\
| * Merge pull request #1506 from embassy-rs/ci-fixesDario Nieuwenhuis2023-05-291-1/+1
| |\ | | | | | | | | | ci: fix nrf, rp tests.
| | * ci: fix nrf, rp tests.Dario Nieuwenhuis2023-05-291-1/+1
| | |
* | | Remove the usage of the local Partition type in BootLoaderRasmus Melchior Jacobsen2023-05-292-229/+112
|/ /
* / Split the FirmwareUpdater into blocking and asyncRasmus Melchior Jacobsen2023-05-294-543/+543
|/
* Protect default implementations for FirmwareUpdater and BootLoaderRasmus Melchior Jacobsen2023-05-224-0/+4
| | | | It seems as if the arm compiler can does not care about whether the bootloader symbols are undefined if the default() function is never used. The x64 compiler does care however, so this change ensures that we can instantiate the types from tests.
* Update Rust nightly.Dario Nieuwenhuis2023-05-191-1/+0
|
* embassy-boot: ensure tests can run on the stable compilersander2023-04-202-4/+5
|
* embassy-boot: resolve conflictssander2023-04-202-2/+0
|
* Merge commit '2c1d572cf2e225be5f30435b133e96aa55c9d3af'sander2023-04-202-0/+2
|\
| * Merge branch 'embassy-rs:master' into embassy-boot-stablesawi972023-04-201-0/+1
| |\
* | \ Merge commit '970a081aab0567a387463610eb204a3b003255f9'sander2023-04-201-0/+1
|\ \ \ | | |/ | |/|
| * | chore: add embassy-boot-rp to READMELachezar Lechev2023-04-201-0/+1
| | | | | | | | | | | | Signed-off-by: Lachezar Lechev <[email protected]>
* | | embassy-boot: update readme MSRV to stablesander2023-04-204-4/+4
| | |
* | | embassy-boot: add nightly feature to stm32 and rp as wellsander2023-04-207-10/+16
| |/ |/|
* | embassy-boot: add nightly feature gate for async usagesander2023-04-143-95/+99
| |
* | Merge commit '82f528927b2fde275c2e9b6fd737baf439cb296a'sander2023-04-141-1/+1
|\|
| * Release embassy-sync v0.2.0Dario Nieuwenhuis2023-04-131-1/+1
| |
* | embassy-boot: readd nightly feature as defaultsander2023-04-111-1/+1
| |
* | embassy-boot: add nightly feature gatessander2023-04-114-83/+98
| |
* | merge embassy/mastersander2023-04-1112-1422/+1523
|\|
| * Let update_len be u32Rasmus Melchior Jacobsen2023-04-112-10/+8
| |
| * Merge remote-tracking branch 'upstream/master' into u32-partitionRasmus Melchior Jacobsen2023-04-116-37/+160
| |\
| | * Let update_len be usize for nowRasmus Melchior Jacobsen2023-04-052-12/+10
| | |
| | * Merge remote-tracking branch 'upstream/master' into incremental-hashRasmus Melchior Jacobsen2023-04-056-188/+148
| | |\
| | * | Use MemFlash::default() in sha1 verify testRasmus Melchior Jacobsen2023-04-041-3/+3
| | | |
| | * | Merge remote-tracking branch 'upstream/master' into incremental-hashRasmus Melchior Jacobsen2023-04-045-179/+253
| | |\ \
| | * | | Let hash functions take a digest::Digest traitRasmus Melchior Jacobsen2023-04-046-37/+140
| | | | | | | | | | | | | | | | | | | | ... and add adapters for current Sha512 implementations that does not inplement the Digest trait
| | * | | Merge remote-tracking branch 'upstream/master' into incremental-hashRasmus Melchior Jacobsen2023-04-043-76/+12
| | |\ \ \
| | * | | | Add incremental hash to FirmwareUpdaterRasmus Melchior Jacobsen2023-04-032-26/+43
| | | | | | | | | | | | | | | | | | | | | | | | This adds support for computing any hash over the update in the dtu area by providing a closure to the hash update function.
| * | | | | Align platform specific bootloadersRasmus Melchior Jacobsen2023-04-053-18/+18
| | | | | |
| * | | | | Remove firmware_lenRasmus Melchior Jacobsen2023-04-051-5/+0
| | | | | |
| * | | | | Let Partition range be u32 instead of usizeRasmus Melchior Jacobsen2023-04-055-111/+93
| | |_|_|/ | |/| | |
| * | | | Align examples with bootloader changesRasmus Melchior Jacobsen2023-04-042-2/+2
| | | | |
| * | | | Align chip specific boot projects with new prepare_boot() signatureRasmus Melchior Jacobsen2023-04-043-25/+19
| | | | |
| * | | | Add assertions about the aligned_buf % write sizesRasmus Melchior Jacobsen2023-04-041-1/+3
| | | | |
| * | | | Remove comment about equal erase size requirementRasmus Melchior Jacobsen2023-04-041-2/+0
| | | | |
| * | | | Allow different erase sizes for active and dfuRasmus Melchior Jacobsen2023-04-043-79/+9
| | | | |
| * | | | Remove the Flash traitRasmus Melchior Jacobsen2023-04-044-57/+32
| | | | |
| * | | | Assert active and dfu have same erase size and copy in smaller chunksRasmus Melchior Jacobsen2023-04-044-57/+118
| | | | | | | | | | | | | | | | | | | | The copy from active to dfu (and vice versa) is now done in smaller portions depending on aligned_buf, which now does not need to be erase_size big.
| * | | | Remove magic buffer argument from prepare_bootRasmus Melchior Jacobsen2023-04-042-78/+78
| | |_|/ | |/| | | | | | | | | | and use the aligned page buffer instead
| | | |
| | \ \
| *-. \ \ Merge #1324 #1327bors[bot]2023-04-045-163/+247
| |\ \ \ \ | | | |/ / | | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 1324: Add MCO support for L4 and F4 families r=Dirbaio a=m-dupont Add MCO support for L4 and F4 as already done in F7. When the 'HSI' source is selected as MCO source, 'HSI' is activated (`set_hsion(true)`) . This is done to operate the MCO in case 'MSI' is chosen as the clock source for the CPU. The same applies to PLL, etc. 1327: Avoid write before erase r=Dirbaio a=rmja This introduces an additional marker to the state partition right after the magic which indicates whether the current progress is valid or not. Validation in tests that we never write without an erase is added. There is currently a FIXME in the FirmwareUpdater. Let me know if we should take the erase value as a parameter. I opened a feature request in embedded-storage to get this value in the trait. Before this, the assumption about ERASE_VALUE=0xFF was the same. I have made some thoughts about whether this is a breaking change between the app and firmware, i.e. whether adding the "Progress valid" field is breaking. My conclusion is that it is not a breaking change. For the case where an app uses this new FirmwareUpdater together with an old bootloader, what it now does, is that it: 1. Writes the progress valid field to all zeros. This field is not known in the old bootloader, so it actually writes a "current progress" index. 2. The entire state partition is erased - effectively removing any trace of 1. 3. Set magic This should be compatible. Co-authored-by: Mathieu Dupont <[email protected]> Co-authored-by: Rasmus Melchior Jacobsen <[email protected]>
| | | * | Fix compile error when verification is enabledRasmus Melchior Jacobsen2023-04-041-2/+2
| | | | |
| | | * | Merge remote-tracking branch 'upstream/master' into avoid-write-before-eraseRasmus Melchior Jacobsen2023-04-043-76/+12
| | | |\|
| | | * | Avoid write to not-erased magicRasmus Melchior Jacobsen2023-04-044-81/+63
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This introduces an additional marker to the state partition right after the magic which indicates whether the current progress is valid or not. Validation in tests that we never write without an erase is added. There is currently a FIXME in the FirmwareUpdater. Let me know if we should take the erase value as a parameter. I opened a feature request in embedded-storage to get this value in the trait. Before this, the assumption about ERASE_VALUE=0xFF was the same.
| | | * | Move MemFlash to separate module and add verify_erased_before_write verificationRasmus Melchior Jacobsen2023-04-033-142/+244
| | |/ /
| * | / Expose read/write/erase on partitionRasmus Melchior Jacobsen2023-04-041-16/+6
| | |/ | |/|
| * | Remove FirmwareWriterRasmus Melchior Jacobsen2023-04-033-76/+12
| |/ | | | | | | FirmwareWriter currently has a "max-write-size" parameter, but this is a limitation that should be handled by chunking inside the NorFlash driver, and not "up here" in user code. In case that the driver (e.g. qspi driver) is unaware of any max-write limitations, one could simply add an intermediate NorFlash adapter providing the chunk'ing capability.
| * Add erase and wipe testsRasmus Melchior Jacobsen2023-03-312-1/+48
| |
| * Let bootloader partition have read/write/erase operationsRasmus Melchior Jacobsen2023-03-314-223/+195
| | | | | | | | This change should not have any breaking changes.