zephyr/scripts/west_commands
Jamie McCrae a0267d2f48 west: runners: Add run once commands and deferred reset
This adds supports for flashing images with sysbuild where there
are multiple images per board to prevent using the same command per
image flash which might cause issues if they are not ran just once
per flash per unique board name. A deferred reset feature is also
introduced that prevents a board (or multiple) from being reset if
multiple images are to be flashed until the final one has been
flashed which prevents issues with e.g. security bits being enabled
that then prevent flashing further images.

These options can be set at a board level (in board.yml) or a SoC
level (in soc.yml), if both are present then the board configuration
will be used instead of the SoC, and regex can be used for matching
of partial names which allows for matching specific SoCs or CPU cores
regardless of the board being used

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-04-29 17:56:19 +01:00
..
completion scripts: remove board name from the qualifiers in list_boards.py 2024-03-26 16:20:08 -04:00
fetchers modules: Basic binary blob infrastructure 2022-08-16 05:59:02 -07:00
runners teensy: add west flash teensy_loader_cli integration 2024-04-09 11:07:21 +02:00
tests west: add teensy loader test 2024-04-09 11:07:21 +02:00
zspdx west: spdx: introduce support for SPDX 2.3 2024-04-16 10:07:49 -07:00
bindesc.py west_commands: bindesc: Fixed crash when no sub-command is given 2023-09-28 23:04:47 +03:00
blobs.py scripts: modules: Move blob processing to zephyr_module.py 2022-08-29 15:57:59 +02:00
boards.py terminology: adopt CMake, python, and Kconfig code to use qualifiers 2024-03-21 15:32:17 +01:00
build.py twister: handle quotes for configuration options 2023-09-08 06:04:48 -04:00
build_helpers.py scripts: domains: Support initialization only from YAML 2023-10-04 18:04:18 +02:00
completion.py west: Add fish shell completion 2023-09-13 12:51:22 -07:00
debug.py scripts: clean up west build/flash/debug help 2020-06-29 08:47:04 -04:00
export.py cmake: Zephyr CMake package clean-up and minor fix 2020-08-19 12:52:33 -04:00
flash.py sysbuild: Do not exclude images from domains.yaml 2023-09-27 17:49:12 +02:00
mypy.ini scripts: runners: add type checking for west_commands 2020-09-03 16:49:09 -05:00
README.txt scripts: runners: add type checking for west_commands 2020-09-03 16:49:09 -05:00
run_common.py west: runners: Add run once commands and deferred reset 2024-04-29 17:56:19 +01:00
run_tests.py scripts: runners: add type checking for west_commands 2020-09-03 16:49:09 -05:00
sign.py west_commands: sign: imgtool: fix slot size readout 2024-04-25 07:25:04 -04:00
spdx.py doc: add docs for west spdx 2021-06-01 07:26:33 -05:00
twister_cmd.py scripts: twister: west twister error codes match twister direct call 2023-02-07 09:22:34 -08:00
zcmake.py west: zcmake.py: support UNINITIALIZED type if CMakeCache.txt file 2022-07-11 11:33:15 +02:00
zephyr_ext_common.py scripts: west_commands: Remove no longer needed load_dot_config(path) 2021-04-08 16:38:28 +02:00

This directory contains implementations for west commands which are
tightly coupled to the zephyr tree. This includes the build, flash,
and debug commands.

Before adding more here, consider whether you might want to put new
extensions in upstream west. For example, any commands which operate
on the multi-repo need to be in upstream west, not here. Try to limit
what goes in here to Zephyr-specific features.

When extending this code, please keep the unit tests (in tests/) up to
date. The mypy static type checker is also run on the runners package.

To run these tests locally on Windows, run:

   py -3 run_tests.py

On macOS and Linux:

   ./run_tests.py

Note that these tests are run as part of Zephyr's CI when submitting
an upstream pull request, and pull requests which break the tests
cannot be merged.

Thanks!