1
0
mirror of https://github.com/RIOT-OS/RIOT.git synced 2024-12-29 04:50:03 +01:00
RIOT/makefiles/tools
iosabi 073b2209da cpu/esp8266: Build the SDK bootloader from source.
We had four versions of pre-built bootloaders for the esp8266 with
different settings of logging and color logging. These bootloaders were
manually built from the SDK and shipped with RIOT-OS source code.
However there are more settings that affect the bootloader build that
are relevant to the app or final board that uses this bootloader. In
particular, flash size and flash speed is important for the bootloader
to be able to load an app from a large partition table at the fastest
speed supported by the board layout and flash chip.

Another example is the UART baudrate of the logging output from the
bootloader. The boot ROM will normally start at a baud rate of 74880
(depending on the crystal installed), so it might make sense to keep
the UART output at the same speed so we can debug boot modes and
bootloader with the same terminal.

This patch builds the bootloader.bin file from the ESP8266 SDK source
code. The code is built as a module (esp8266_bootloader) which at the
moment doesn't generate any object code for the application and only
produces a bootloader.bin file set to the BOOTLOADER_BIN make variable
for the esptool.inc.mk to flash.

The code needs to be compiled and linked with custom rules defined in
the module's Makefile since the bootloader.bin is its own separate
application.

The `BOOTLOADER_BIN` variable is changed from a path relative to the
`$(RIOTCPU)/$(CPU)/bin/` directory to be full path. This makes it easier
for applications or board to provide their own bootloader binary if
needed.

As a result of building the bootloader from source we fixed the issue of
having a large partition table. Fixes #16402.
2022-12-22 12:18:34 +01:00
..
openocd-adapters tools/openocd: add generic FTDI adapter 2022-09-22 17:49:34 +02:00
adafruit-nrfutil.inc.mk makefiles/tools: ensure all FLASHER/DEBUGGER* vars are overridable 2020-11-27 13:39:22 +01:00
avrdude.inc.mk tools/avarice: deduce debugger from AVRDUDE_PROGRAMMER 2022-09-23 13:41:27 +02:00
bmp-serial.inc.mk Add helper script for Black Magic Probe 2019-10-15 12:58:24 +02:00
bmp.inc.mk makefiles/tools: define DEBUG_ELFFILE and use it for debugging 2022-05-31 12:39:16 +02:00
bossa-build.inc.mk makefiles/tools: add common bossa makefile 2020-07-10 11:56:11 +02:00
bossa.inc.mk makefiles/tools: remove deprecated FFLAGS_OPTS variable 2022-01-08 12:04:02 +01:00
cc2538-bsl.inc.mk makefiles/tools: remove deprecated FFLAGS_OPTS variable 2022-01-08 12:04:02 +01:00
cpy2remed.inc.mk tools/cpy2remed: Addition of cpy2remed programmer to nucleo-L552ZE-Q 2022-02-11 08:27:25 -05:00
dfu-util.inc.mk makefiles/tools/dfu-util: add option to pass DFU_SERIAL 2022-08-29 09:39:15 +02:00
edbg-devices.inc.mk tools/edbg: update to latest upstream version 2020-01-31 09:35:27 +01:00
edbg.inc.mk makefiles/edbg: refactor to use wrapper script 2021-02-21 12:56:43 +01:00
elf2uf2.inc.mk tools/elf2uf2: addition of new PROGRAMMER for rpi-pico board 2021-12-15 11:40:10 -05:00
esptool.inc.mk cpu/esp8266: Build the SDK bootloader from source. 2022-12-22 12:18:34 +01:00
fixdep.inc.mk dist: tools: import fixdep from linux 2020-08-10 12:17:59 +02:00
gdb.inc.mk makefiles/tools/gdb.inc.mk: prefer $(target)-gdb over gdb-multiarch 2022-10-24 09:24:24 +02:00
goodfet.inc.mk makefiles/tools/goodfet: add common makefile 2020-12-01 18:06:20 +01:00
jlink.inc.mk makefiles/tools: define DEBUG_ELFFILE and use it for debugging 2022-05-31 12:39:16 +02:00
kconfiglib.inc.mk makefiles: quiet messages on CI 2022-08-22 11:35:56 +02:00
lpc2k_pgm.inc.mk make: add common lpc2k_pgm programmer makefile 2020-12-01 13:39:28 +01:00
mspdebug.inc.mk makefiles/tools: define DEBUG_ELFFILE and use it for debugging 2022-05-31 12:39:16 +02:00
openocd.inc.mk makefiles/tools: define DEBUG_ELFFILE and use it for debugging 2022-05-31 12:39:16 +02:00
programmer.inc.mk tools/programmer.inc.mk: programmer wrapper is not used by default 2021-04-28 09:46:02 +02:00
pyocd.inc.mk makefiles/tools: define DEBUG_ELFFILE and use it for debugging 2022-05-31 12:39:16 +02:00
qemu.inc.mk makefiles/tools: define DEBUG_ELFFILE and use it for debugging 2022-05-31 12:39:16 +02:00
renode.inc.mk makefiles/tools: define DEBUG_ELFFILE and use it for debugging 2022-05-31 12:39:16 +02:00
riotboot_serial.inc.mk makefiles: riotboot_serial: default to STDIO BAUD for PROG_BAUD 2021-11-21 23:08:31 +01:00
riotgen.inc.mk makefiles: Sort >/dev/null and 2>&1 2021-08-24 14:41:54 +02:00
robotis-loader.inc.mk boards/opencm904: move robotis-loader in common place 2020-12-01 18:31:41 +01:00
serial.inc.mk build system: improve MOST_RECENT_PORT=1 handling 2022-12-11 18:58:18 +01:00
stm32loader.inc.mk makefiles/tools/stm32loader: add common makefile 2020-12-01 17:26:57 +01:00
targets.inc.mk makefiles/tools/serial.inc.mk: add support for bootterm 2022-10-15 00:20:09 +02:00
uf2conv.inc.mk makefiles/tools/uf2conv.inc.mk: partial riotboot support 2022-06-01 11:01:30 +02:00
uniflash.inc.mk makefiles/tools: define DEBUG_ELFFILE and use it for debugging 2022-05-31 12:39:16 +02:00
usb_board_reset.mk makefiles/bossa: move USB reset logic to common file 2020-06-11 11:56:35 +02:00