Commit Graph

36 Commits

Author SHA1 Message Date
Almir Okato
593dc946d1 esp32: add simple boot support
The Simple Boot feature for Espressif chips is a method of booting
that doesn't depend on a 2nd stage bootloader. Its not the
intention to replace a 2nd stage bootloader such as MCUboot and
ESP-IDF bootloader, but to have a minimal and straight-forward way
of booting, and also simplify the building.

This commit also removes deprecated code and makes this bootloader
configuration as default for esp32 targets and removes the need
for running 'make bootloader' command for it.

Signed-off-by: Almir Okato <almir.okato@espressif.com>
2024-07-04 18:22:24 -03:00
Almir Okato
16f8966fa9 esp32s2: add simple boot support
The Simple Boot feature for Espressif chips is a method of booting
that doesn't depend on a 2nd stage bootloader. Its not the
intention to replace a 2nd stage bootloader such as MCUboot and
ESP-IDF bootloader, but to have a minimal and straight-forward way
of booting, and also simplify the building.

This commit also removes deprecated code and makes this bootloader
configuration as default for esp32s2 targets and removes the need
for running 'make bootloader' command for it.

Signed-off-by: Almir Okato <almir.okato@espressif.com>
2024-06-04 18:53:14 -03:00
Gustavo Henrique Nihei
76acfef5ec xtensa/esp32: Add support for Protected Mode
Signed-off-by: Gustavo Henrique Nihei <gustavo.nihei@espressif.com>
2022-07-14 14:57:57 +08:00
YAMAMOTO Takashi
9bccfbc2d9 esp32*: Update nuttx.manifest for nuttx.bin 2022-05-27 13:41:51 +03:00
Gustavo Henrique Nihei
42ffae2d2d tools/esp: Fix App image alignment when Flash Encryption is enabled
Signed-off-by: Gustavo Henrique Nihei <gustavo.nihei@espressif.com>
2022-01-05 17:04:19 -03:00
Gustavo Henrique Nihei
10a8dc9f22 tools/esp: Prevent reset after flash when Flash Encryption is enabled
Signed-off-by: Gustavo Henrique Nihei <gustavo.nihei@espressif.com>
2022-01-05 17:04:19 -03:00
Gustavo Henrique Nihei
d22a2aa7a0 xtensa/esp32: Refactor makefiles for compliance to Function Call Syntax
According to Make documentation:
- "Commas and unmatched parentheses or braces cannot appear in the text
  of an argument as written";
- "Leading spaces cannot appear in the text of the first argument as
  written".

Although in the current state it was not resulting in parsing issues, it
is better to fix it.

Signed-off-by: Gustavo Henrique Nihei <gustavo.nihei@espressif.com>
2021-12-21 07:02:40 -06:00
Gustavo Henrique Nihei
6c3223289f xtensa/esp32: Add Secure Boot support on top of MCUboot
This adds the capabitlity of building signed images on NuttX.

Signed-off-by: Gustavo Henrique Nihei <gustavo.nihei@espressif.com>
2021-12-21 07:02:40 -06:00
Gustavo Henrique Nihei
9d7b9821b3 xtensa/esp32: Enable Partition Table allocation at custom offset
Signed-off-by: Gustavo Henrique Nihei <gustavo.nihei@espressif.com>
2021-10-25 16:34:58 -03:00
Gustavo Henrique Nihei
0299e7d35d tools/esp32: Refactor generation of QEMU-compatible image
Use the merge_bin builtin function from esptool.py.

Signed-off-by: Gustavo Henrique Nihei <gustavo.nihei@espressif.com>
2021-10-19 23:23:43 +02:00
Alan C. Assis
e0389ce1fb build: Replace 'make download' with 'make flash' 2021-10-14 16:33:27 -03:00
Gustavo Henrique Nihei
17ec1d04c0 tools/esp32: Remove unneeded variable initialization
Signed-off-by: Gustavo Henrique Nihei <gustavo.nihei@espressif.com>
2021-09-27 18:22:29 -07:00
Abdelatif Guettouche
cca3fa36ce tools/espXX/Config.mk: Refactor the flash options.
Signed-off-by: Abdelatif Guettouche <abdelatif.guettouche@espressif.com>
2021-09-08 09:25:28 -03:00
Gustavo Henrique Nihei
adef19704d tools/esp32[s2,c3]: Extract POSTBUILD operations into functions
Signed-off-by: Gustavo Henrique Nihei <gustavo.nihei@espressif.com>
2021-09-08 12:16:52 +02:00
Gustavo Henrique Nihei
6de75d9932 tools/esp32: Add nuttx.signed.bin to the manifest file
Signed-off-by: Gustavo Henrique Nihei <gustavo.nihei@espressif.com>
2021-09-08 12:16:52 +02:00
Gustavo Henrique Nihei
c0344d2273 tools/esp32: Create option for merging all binaries into a single file
This is only useful when the path to binary files (e.g. bootloader) is
provided via the ESPTOOL_BINDIR variable.

Signed-off-by: Gustavo Henrique Nihei <gustavo.nihei@espressif.com>
2021-09-08 12:16:52 +02:00
Gustavo Henrique Nihei
98c30c2f7e tools/esp32: Rename signed binary image to match clean pattern
This is just a workaround for adding the MCUboot signed binary image to
the clean step of the build system. Once the NuttX build system becomes
aware of general signed images, a new naming pattern should be defined
for the signed images to be used by every platform.

Signed-off-by: Gustavo Henrique Nihei <gustavo.nihei@espressif.com>
2021-09-01 14:13:28 -03:00
Abdelatif Guettouche
6b412c873b tools/esp32/Config.mk: Bring back the old behaviour where ESPTOOL_BINDIR
can be omitted from the command line when flashing.

Signed-off-by: Abdelatif Guettouche <abdelatif.guettouche@espressif.com>
2021-08-13 20:46:51 -03:00
Abdelatif Guettouche
11fe075e5e tools/esp32/Config.mk: Remove an unused option.
Signed-off-by: Abdelatif Guettouche <abdelatif.guettouche@espressif.com>
2021-08-13 20:46:51 -03:00
Gustavo Henrique Nihei
1dfcc6ab49 xtensa/esp32: Enable boot from Espressif's port of MCUboot
Signed-off-by: Gustavo Henrique Nihei <gustavo.nihei@espressif.com>
2021-08-13 08:44:20 -03:00
Abdelatif Guettouche
07b65d10f1 tools/esp32/Config.mk: Revert part of "Don't abort make when QEMU script
fails"

Signed-off-by: Abdelatif Guettouche <abdelatif.guettouche@espressif.com>
2021-03-10 19:23:48 +08:00
Abdelatif Guettouche
05f1f3518b tools/esp32: Continue the build if the QEMU script fails.
Signed-off-by: Abdelatif Guettouche <abdelatif.guettouche@espressif.com>
2021-03-09 18:05:35 -03:00
Abdelatif Guettouche
e94bf12929 tools/esp32xx/: Always flash with DIO.
Signed-off-by: Abdelatif Guettouche <abdelatif.guettouche@espressif.com>
2021-03-09 18:05:35 -03:00
Abdelatif Guettouche
9428ba9186 tools/esp32XX: Delete the Makefile that downloads IDF.
That was only to build the bootloader and partition table.  Now we have
a repo with pre-built binaries and with instructions on how to
customize the bootloader.

Signed-off-by: Abdelatif Guettouche <abdelatif.guettouche@espressif.com>
2021-03-08 17:34:00 -03:00
Abdelatif Guettouche
77302f9d3a xtensa/esp32: Add more flash options to esptool.
Signed-off-by: Abdelatif Guettouche <abdelatif.guettouche@espressif.com>
2021-03-03 18:28:18 -08:00
Abdelatif Guettouche
2c338a3ad0 tools/esp32xx/Config.mk: Update the binaries names to reflect the same
name used with the esp-nuttx-bootloader repo.

Signed-off-by: Abdelatif Guettouche <abdelatif.guettouche@espressif.com>
2021-02-21 09:57:01 -08:00
Abdelatif Guettouche
86fd6843c3 tools/esp32: Refine the QEMU image generation.
Use the usual while loop idiom when parsing arguments.
Add more options to the script to be able to specify the name of the
NuttX binary and final image.

Signed-off-by: Abdelatif Guettouche <abdelatif.guettouche@espressif.com>
2021-02-21 09:57:01 -08:00
Abdelatif Guettouche
b1ba1d4bca tools/esp32/Config.mk: Refine the usage of the IDF binaries.
1.  Don't use the bootloader and partition-table
binaries from a hello-world example.  Rather the ESPTOOL_BINDIR variable
can be used to give a user-defined location.
2. The ESPTOOL_BINDIR variable has to be as generic as possible.  Don't
   assume any board configuration.

Signed-off-by: Abdelatif Guettouche <abdelatif.guettouche@espressif.com>
2021-02-10 14:32:37 -03:00
Gustavo Henrique Nihei
ea3eccb490 esp32: Make esptool output non-silent on POSTBUILD 2021-02-09 23:20:02 +00:00
Gustavo Henrique Nihei
d1db7dc30c esp32: Fix esptool install command 2021-02-08 21:17:22 +00:00
Gustavo Henrique Nihei
da2e8c8514 esp32: Define DOWNLOAD target for flashing ESP32 2021-02-08 21:17:22 +00:00
Gustavo Henrique Nihei
1069bbd024 esp32: Abort POSTBUILD if esptool.py is missing 2021-02-08 21:17:22 +00:00
Gustavo Henrique Nihei
a8cf8abfaa esp32: Create chip selection config to improve capabilities refinement 2021-02-08 21:17:22 +00:00
Gustavo Henrique Nihei
7f7416278d build: Deprecate NUTTXNAME variable
NUTTXNAME is used only as an alias for "nuttx", not actually a
configuration property. Its definition might erroneously imply that the
name of binary image may be configurable, which is not the case.
2021-02-06 07:18:46 -08:00
Abdelatif Guettouche
0e8cce4dee tools/esp32: Remove some duplicated output.
Redirect the first check of esptool to /dev/null as it will be printed
twice when esptool is called to convert the binary.

Signed-off-by: Abdelatif Guettouche <abdelatif.guettouche@espressif.com>
2021-02-03 19:19:07 -08:00
Gustavo Henrique Nihei
053a560aa1 esp32: Make esp32 boards share a common Config.mk with POSTBUILD command 2021-02-03 18:15:56 -03:00