Commit Graph

52 Commits

Author SHA1 Message Date
Tiago Medicci Serrano 27858f913b tools: Add generic tool to decode the backtrace dump
The script can decode the backtrace dump, considering the syntax
of the backtrace format (properly handle the dump when SMP is
enabled, for instance) based on chip name or the toolchains's
addr2line tool.
2024-09-23 20:40:58 +08:00
Alin Jerpelea c9eef2d697 tools: migrate to SPDX identifier
Most tools used for compliance and SBOM generation use SPDX identifiers
This change brings us a step closer to an easy SBOM generation.

Signed-off-by: Alin Jerpelea <alin.jerpelea@sony.com>
2024-09-10 23:11:11 +08:00
Eren Terzioglu 024e95875a esp32: Add nuttx toolchain support on mcuboot 2024-07-16 10:30:56 +08:00
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
Xiang Xiao 8b67944c75 sched: Remove pidhash_s and move ticks to tcb_s
simplify the code logic and reduce memory a little bit

Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2021-10-16 06:19:17 -03: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
YAMAMOTO Takashi c073b36741 tools/esp32/backtrace.gdbscript: Add a few convenient functions 2021-08-16 11:01:13 +02: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
YAMAMOTO Takashi 0e76a16545 tools/esp32/backtrace.gdbscript: don't modify registers
* it wasn't intended.

* it doesn't always work:

    (gdb) source tools/esp32/backtrace.gdbscript
    (gdb) esp32_bt 0x40139706 0x80139811 0x3ffafd40
    Attempt to assign to an unmodifiable value.
    (gdb)
2021-06-28 01:11:34 -05:00
Abdelatif Guettouche 1ea25a83fe tools/esp32/mk_qemu_img.sh: Group the offsets in variables. 2021-05-03 11:11:32 -03:00
Abdelatif Guettouche f08aa47927 tools/esp32/mk_qemu_img.sh: Refactor the dd commands and suppress all the
status output.

Signed-off-by: Abdelatif Guettouche <abdelatif.guettouche@espressif.com>
2021-05-03 11:11:32 -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
Gustavo Henrique Nihei 3850df7a78 tools/esp32: Fix warnings from ShellCheck 2021-02-22 17:39:33 +00: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
Gustavo Henrique Nihei afad13dfaa esp32: Refactor QEMU image generation on POSTBUILD 2021-02-03 18:15:56 -03:00
YAMAMOTO Takashi c3a3fa7715 tools/esp32/backtrace.gdbscript: Add comments 2021-01-21 10:28:45 +01:00
Abdelatif Guettouche f40389b359 tools/esp32/btdecode.sh: Script to decode the Xtensa backtrace. 2021-01-16 09:50:03 -03:00
YAMAMOTO Takashi 21c091f903 esp32: Add a gdb script to show backtrace
Just for my convenience. Hopefully useful for others too.
2021-01-14 09:23:36 +01:00
Sara Souza fde7c2bc19 xtensa/tools: Updated makefile to download the IDF stable version 2020-10-20 13:36:43 +01:00