Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[FL-2263] Flasher service & RAM exec #1006

Merged
merged 128 commits into from
Apr 13, 2022
Merged

[FL-2263] Flasher service & RAM exec #1006

merged 128 commits into from
Apr 13, 2022

Conversation

hedger
Copy link
Member

@hedger hedger commented Feb 22, 2022

What's new

  • FL-2263 Epic: update Flipper without a host PC feeding DFU
  • Supports update bundles described with update.fuf manifests, that should be placed in any /ext/update/ subfolder (ex. /ext/update/upd-614bffed/update.fuf
  • Added TAR archive support for backing up and restoring /int contents
  • Introduced internal APIs for processing update packages
  • Exposed these APIs with CLI entrypoints update, backup, restore
  • Also they are available through RPC calls
  • Added application for choosing & preparing update from Archive
  • Removed Bootloader
  • Added DFU mode feature to main firmware
  • Added alternative startup mode loading binary image to RAM start and passing execution to it
  • Added minified firmware configuration, tailored for being executed completely from RAM and used as DFU image writer to main flash

Verification

  • First, flash full firmware with qFlipper or other means
  • After that, device will be able to install local packages

Checklist (do not modify)

  • PR has description of feature/bug or link to Confluence/Jira task
  • Description contains actions to verify feature/bugfix
  • I've built this code, uploaded it to the device and verified feature/bugfix

firmware/targets/f7/Src/update.c Outdated Show resolved Hide resolved
firmware/targets/f7/Src/update.c Outdated Show resolved Hide resolved
firmware/targets/f7/Src/update.c Outdated Show resolved Hide resolved
hedger added 20 commits March 2, 2022 17:48
# Conflicts:
#	bootloader/Makefile
#	bootloader/targets/f6/furi_hal/furi_hal_resources.c
#	bootloader/targets/f6/furi_hal/furi_hal_resources.h
#	bootloader/targets/f7/furi_hal/furi_hal_resources.c
#	bootloader/targets/f7/furi_hal/furi_hal_resources.h
#	firmware/Makefile
#	firmware/targets/f6/Inc/FreeRTOSConfig.h
#	firmware/targets/f6/Inc/main.h
#	firmware/targets/f6/ble_glue/dev_info_service.c
#	firmware/targets/f6/ble_glue/gap.c
#	firmware/targets/f6/furi_hal/furi_hal_infrared.c
#	firmware/targets/f6/furi_hal/furi_hal_resources.c
#	firmware/targets/f6/furi_hal/furi_hal_resources.h
#	firmware/targets/f6/target.mk
# Conflicts:
#	firmware/targets/f7/Inc/stm32wbxx_hal_conf.h
#	firmware/targets/f7/furi_hal/furi_hal.c
#	firmware/targets/f7/stm32wb55xx_ram_fw.ld
skotopes
skotopes previously approved these changes Apr 13, 2022
@skotopes skotopes dismissed DrZlo13’s stale review April 13, 2022 20:43

Approved offline

@skotopes skotopes merged commit e020401 into dev Apr 13, 2022
@skotopes skotopes deleted the hedger/compactfw branch April 13, 2022 20:50
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants