unleashed-firmware/bootloader
あく 37d7870e52
[FL-1666] Bootloader: info screen when we going to DFU. FuriHal: port SPI to LL. Cleanup. (#634)
* FuriHal: port spi to ll. Bootloader: add spi and display.
* Makefile: rollback disabled freertos introspection
* FuriHal: spi lock asserts. F6: minor cleanup port sdcard shenanigans to furi_hal_gpio.
* SdCard: port missing bits to furi-hal-gpio
* FuriHal: fix broken RX in SPI, update SPI API usage. RFAL: more asserts in SPI platform code.
* GUI: clear canvas on start. FuriHal: no pullup on radio spi bus.
* FuriHal: use check instead of assert in spi lock routines
* FuriHal: remove timeouts
* SdHal: add guard time to SDCARD CS PIN control.
* FuriHal: proper name for SPI device reconfigure routine. SdHal: one more enterprise delay and better documentation.
* Bootloader: update DFU text and add image.
* FuriHal: drop unused ST HAL modules.
* SdHal: fixed swapped hal_gpio_init_ex arguments
* SpiHal: fixed swapped hal_gpio_init_ex arguments
* IrdaHal: use hal_gpio_init instead of hal_gpio_init_ex
* RfidHal: fixed swapped hal_gpio_init_ex arguments

Co-authored-by: DrZlo13 <who.just.the.doctor@gmail.com>
2021-08-12 11:48:05 +03:00
..
src Implement bootloader #137 (#142) 2020-10-01 02:05:04 +03:00
targets [FL-1666] Bootloader: info screen when we going to DFU. FuriHal: port SPI to LL. Cleanup. (#634) 2021-08-12 11:48:05 +03:00
Makefile [FL-1666] Bootloader: info screen when we going to DFU. FuriHal: port SPI to LL. Cleanup. (#634) 2021-08-12 11:48:05 +03:00
ReadMe.md Remove obsolete target. Cleanup and update ReadMe. (#279) 2020-12-28 11:52:35 +06:00

Flipper bootloader

What it does?

  • [+] Hardware initialization
  • [+] Boot process LED indicators
  • [+] Firmware update
  • Firmware CRC check
  • Interactive UI
  • FS check
  • Recovery mode
  • Errata crutches

Targets

| Name | Bootloader | Firmware | Reset | DFU | | | Address | Address | Combo | Combo |

| f4 | 0x08000000 | 0x00008000 | L+Back | L+Back, hold L |

Also there is a ST bootloader combo available on empty device: L+Ok+Back, release Back,Left. Target independend code and headers in srcand target/include folders.

Building

With dev docker image:

docker-compose exec dev make -C bootloader

With toolchain installed in path:

make -C bootloader

Build Options

  • DEBUG - 0/1 - enable or disable debug build. Default is 1.
  • TARGET - string - target to build. Default is f4.

Flashing

Using stlink(st-flash):

make -C bootloader flash

Or use ST bootloader:

make -C bootloader upload

Debug

Using stlink (st-util + gdb):

make -C bootloader debug