Commit Graph

3956 Commits (04a76b3882c60fa0686eb03470b5da5a98f52fa4)

Author SHA1 Message Date
Jamie Smith 3976df728c Add default upload method configuration for each target, make greentea tests use cmake upload methods 2022-09-14 00:25:27 -07:00
Jamie Smith 8e17855e46 Add license to python file 2022-09-14 00:25:27 -07:00
Jamie Smith 8e453d028a Response to comments 2022-09-14 00:25:27 -07:00
Jamie Smith 900723fd16 Add docs for new upload method 2022-09-14 00:25:27 -07:00
Jamie Smith 56de278857 Update with new MBED install method 2022-09-14 00:25:27 -07:00
Jamie Smith 929263c9c8 License header added to all new filed 2022-09-14 00:25:27 -07:00
Jamie Smith 3182f41974 Remove NXPPROG from provided upload methods (too specialized). 2022-09-14 00:25:27 -07:00
Jamie Smith d1a8396478 Adapt mbed-cmake's automatic uploading and debugging system 2022-09-14 00:25:27 -07:00
Jamie Smith 31d8558d8c Move CI build requirements to their own file so CMake doesn't get confused about them. They weren't really needed anyway for the CMake build. 2022-09-14 00:25:26 -07:00
Jamie Smith 44ebbbc994 Fix missing requirements 2022-09-14 00:25:26 -07:00
Jamie Smith 34b66e73a7 Remove the legacy Mbed CLI 1 tools! 2022-09-14 00:25:26 -07:00
Jamie Smith 000c7c73c1 Convert the rest of the hal tests, convert mbedtls to an OBJECT library 2022-09-14 00:25:25 -07:00
Jamie Smith d85c55a493 Fix PSA and MUSCA build 2022-09-14 00:25:25 -07:00
Jamie Smith c11d32fbf4 - Split mbed-core and mbed-rtos into -sources and -flags targets
- Fix some logic errors in top level cmakelists related to building greentea tests
- Fix mbed_create_distro() for OBJECT libraries
2022-09-14 00:25:25 -07:00
Jamie Smith 63aa3360c0 Clean up top-level build file and build options, fix build issues on MinGW 2022-09-14 00:25:25 -07:00
Jamie Smith 6a99a89c26 Write defines into a disk file instead of passing 100s of them on the command line directly. Fixes some issues with build commands on my machine, and makes it a lot easier to view the make VERBOSE=1 output. 2022-09-14 00:25:25 -07:00
Jamie Smith 8080220a40 Switch mbed-baremetal and mbed-os to be OBJECT libraries. Can reuse the existing create_distro function for this. 2022-09-14 00:25:25 -07:00
byq77 21ca5b62c9 update to mbed_generate_bin_hex cmake function 2022-06-15 17:03:53 +02:00
Jerome Coutant de4ea6ecd2 STM32F334xx wrong RAM size 2022-05-04 10:43:41 +02:00
Martin Kojtal a58f8ddae7
Merge pull request #15232 from jeromecoutant/PR_H753
STM32H7: add MCU_STM32H753xI support
2022-02-16 16:44:52 +01:00
Jerome Coutant 90cbc89532 STM32H7: add MCU_STM32H753xI support 2022-02-15 16:40:04 +01:00
Jerome Coutant 661c5c17af STM32G4: missing files for STM32G491xE and STM32G4A1xE 2022-02-15 14:03:26 +01:00
Jerome Coutant 12757de057 STM32L4 : add MCU_STM32L412xB support 2022-01-28 13:49:49 +01:00
Jerome Coutant 4ecbf935ce STM32L4 : add MCU_STM32L4P5xG support 2022-01-28 11:46:39 +01:00
Deepak V. Shreshti cd4ee72979 Added SPDX Header
Updated PIN Names
Added M4KN MCU Deatils in index.json
Removed Special Chars
2021-12-23 19:19:57 +05:30
Martin Kojtal f69af599d5
Merge pull request #15126 from multiplemonomials/create-distro-reborn
mbed_create_distro() reborn: a function to make adding multiple targets easy
2021-10-19 14:28:06 +02:00
Martin Kojtal 2cd6c70c94
Merge pull request #15117 from JojoS62/fix-memap-diff
CLI2: copy mapfile for diff statistics
2021-10-14 14:44:45 +02:00
Johannes Stratmann 2b7b97340d remove comment for renaming mapfile 2021-10-13 18:15:57 +02:00
Chun-Chieh Li 173e407fed M2354: Fix stdin abnormal on NuMaker-IoT-M2354 with Mbed CLI
Due to post-build script not supporting custom board, both the below UART configurations are enabled on NuMaker-IoT-M2354 board:
-   UART0 PA7/PA6 enabled by bl2.bin
-   UART0 PB9/PB8 enabled by tfm_s.bin and later by mbed
Both PA7/PA6 and PB9/PB8 enabled on UART0, PB8 gets disturbed and stdin mis-behaves on NuMaker-IoT-M2354 board.

NuMaker-M2354       : UART TX/RX = UART0 PA7/PA6
NuMaker-IoT_M2354   : UART TX/RX = UART0 PB9/PB8

This bugfix tries to enable post-build for custom board to some degree (not completely), with Mbed CLI.
NOTE: For Mbed CLI, the build process still sees NuMaker-M2354's partition/ and applies its mcuboot build options. Custom board must align on these.
2021-10-13 17:57:56 +08:00
Johannes Stratmann 73526603dc remove comment 2021-10-13 11:48:38 +02:00
Jerome Coutant abf86183bb STM32H743: correct pack manager rom value 2021-10-06 15:30:29 +02:00
Johannes Stratmann 883fab435b update comment on custom command 2021-10-05 17:25:05 +02:00
Johannes Stratmann 15a17dc053 Revert "update README for new CMake version"
This reverts commit d4062f5fcb.
2021-10-05 17:17:51 +02:00
Johannes Stratmann bf677aefb6 Revert "Merge branch 'fix-memmap-diff'"
This reverts commit 3d22c880d8.
2021-10-05 17:17:35 +02:00
Jamie Smith 503b9b8ac7 One more debug message 2021-10-05 08:16:56 -07:00
Johannes Stratmann 5ae8e0eec0 replace file(copy by cmake -E copy 2021-10-05 17:16:00 +02:00
Jamie Smith 7663be15c1 Remove debug messages 2021-10-04 21:57:39 -07:00
Jamie Smith 22a7ebc0fc Whoops, add license header 2021-10-03 12:36:40 -07:00
Jamie Smith f5fd336343 Add mbed-create-distro 2021-10-03 12:36:17 -07:00
Jerome Coutant 317079bde3 STM32: create MCU_STM32H7B3xIQ for custom boards 2021-09-30 09:33:09 +02:00
Jerome Coutant 18f737e906 STM32: create MCU_STM32H735xG for custom boards 2021-09-30 09:15:40 +02:00
Martin Kojtal 0b9a7740d5
Merge pull request #15099 from jeromecoutant/PR_H723
STM32H7: enable more custom boards
2021-09-29 15:18:00 +01:00
Johannes Stratmann d4062f5fcb update README for new CMake version 2021-09-28 16:59:12 +02:00
Johannes Stratmann 3d22c880d8 Merge branch 'fix-memmap-diff' 2021-09-28 16:59:00 +02:00
Johannes Stratmann 70b2193fa1 copy map file to .old before creating new one 2021-09-28 16:57:14 +02:00
Martin Kojtal ff6d401a86
Merge pull request #15095 from LDong-Arm/ctest_nfc
CMake: greentea: Migrate the NFC EEPROM test to CTest
2021-09-28 13:26:41 +01:00
Jerome Coutant ea4c7fa1be STM32H7: update Pack manager
Add
- STM32H723ZGTx for all STM32H723xG targets
- STM32H725AEIx for all STM32H725xE targets
2021-09-22 15:13:31 +02:00
Jerome Coutant edd426aac7 STM32G0: update Pack manager
Add
- STM32G050K8Tx for all STM32G050x8 targets
- STM32G051K8Tx for all STM32G051x8 targets
- STM32G061K8Tx for all STM32G061x8 targets
- STM32G0B0RETx for all STM32G0B0xE targets
- STM32G0B1RETx for all STM32G0B1xE targets
2021-09-22 11:47:05 +02:00
Lingkai Dong d954841983 memap.py: Allow .a extension for Arm Compiler-generated libraries
The most common extension for static libraries is .a and CMake generates
it with both GCC and Arm toolchains. Mbed CLI 1 generates .ar files with
the Arm Compiler, but since Mbed CLI 2 uses memap.py to generate map
files too, both extensions should be permitted.

This fixes a warning when building greentea tests:

    Malformed input found when parsing ARMCC map: _deps/greentea-client-build/libclient_userio.a(greentea_test_env.o)
    Malformed input found when parsing ARMCC map: _deps/greentea-client-build/libclient_userio.a(greentea_test_env.o)
    Malformed input found when parsing ARMCC map: _deps/greentea-client-build/libclient_userio.a(greentea_test_env.o)
    ...

which repeats over 30 times per test.
2021-09-20 16:28:53 +01:00
Chun-Chieh Li bbc5ad9505 M2354: Fix TF-M 1.4
1.  In TF-M, fix NSPE interrupt-disabled NSC call broken. Check:
    https://developer.trustedfirmware.org/T966
2.  In TF-M, enable mcuboot log enabled forcibly. This is to help check firmware update process.
3.  Update readme and script
2021-09-17 13:44:58 +08:00
Robert Walton 6850192508 tools: tfm: Update bin_utils 2021-09-14 17:32:42 +01:00
Jerome Coutant 234d5ff9ba ARM PACK MANAGER: add STM32U575ZI and STM32U585 2021-09-10 11:16:07 +02:00
Chun-Chieh Li dcd30e0cb0 M2354: Change MCUboot image versioning for unique version
Change MCUboot image versioning to meet requirements below:
1. Major.Minor.Revision must be non-decremental when used to derive security counter (-s 'auto').
2. Make Major.Minor.Revision+Build incremental to identify the firmware itself through psa_fwu_query().
3. Get around MCUboot failure with TF-M underestimated MAX_BOOT_RECORD_SZ
2021-09-02 09:18:25 +08:00
Lingkai Dong d4ee3bd845 CMake: Fix escaping of quotes in response file
We put macros in a response file compile_time_defs.txt and pass it
to the compiler. Adding a pair of single quotes around each -D flag
ensures macro values are quoted correctly.

For example,
* String
  * target_compile_definitions(): either FOO="BAR" or FOO=\"BAR\"
  * response file: '-DFOO="BAR"'
  * actual definition: #define FOO "BAR"
* Array of integers
  * target_compile_definitions(): FOO={1, 2, 3}
  * response file: '-DFOO={1, 2, 3}'
  * actual definition: #define FOO {1, 2, 3}
2021-09-01 13:49:22 +01:00
Martin Kojtal 19f2138ef3 cmsis importer: add IAR fix for .S files 2021-08-20 13:23:06 +01:00
Martin Kojtal 68667df7ac
Merge pull request #14995 from saheerb/master
travis ci migration to github action
2021-08-12 09:50:13 +01:00
Jaeden Amero e588f80d13
Merge pull request #14902 from LDong-Arm/greentea_skip
CMake: tests: Support skipping unsupported test with reason
2021-08-11 14:44:07 +01:00
Jaeden Amero 4125fd0786
Merge pull request #14972 from OpenNuvoton/nuvoton_m2354_tfm_psa_fwu
M2354: Support PSA Firmware Update
2021-08-11 13:57:57 +01:00
Lingkai Dong 4917e0154c CMake: tests: Support skipping a test with a reason
Add a new argument `TEST_SKIPPED` to `mbed_greentea_add_test()` to
indicate a test is skipped and give a reason (e.g. the Mbed target
and/or configuration does not provide what the test requires).

The skip reason of a test is printed when running tests with `ctest`,
and the test is marked as "Skipped" in the test report.
2021-08-11 11:43:14 +01:00
Lingkai Dong 86c00f6b4b cmake: Improve indentation of mbed_greentea_add_test doc 2021-08-11 11:42:24 +01:00
Lingkai Dong e60ffed6f4 CMake: turn mbed_greentea_add_test() into a function
Unlike a macro, a function is more self-contained and can return
early if necessary.
2021-08-11 11:40:10 +01:00
Saheer 91fa6801f8 travis ci migration to github action 2021-08-11 11:02:06 +01:00
Robert Walton 00dbf4c71d CMake: greentea: Use more specific name for baremetal option
Make it obvious the option is used for greentea tests.
2021-08-10 16:54:27 +01:00
Robert Walton 40154ee2b1 CMake: greentea: Port mbed-drivers-ticker to CTest
Call add_test in mbed_greentea_add_test and specify mbedhtrun as the
command to run.

An MBED_HTRUN_ARGUMENTS variable has been added, which is a semicolon
separated list of arguments to forward to htrun. The user is required to
pass in any arguments mbedhtrun needs to communicate with the device
under test at CMake configuration time.

We automate passing some of the htrun arguments in CMake using data
provided by mbed_config.cmake or gathered from the CMake environment.
The following arguments are passed to htrun from CMake:

* -f/--image-path
* -e/--enum-host-tests
* -m/--micro
* -R/--reset-timeout

--baud-rate is also passed if the MBED_CONF_PLATFORM_STDIO_BAUD_RATE
config parameter is defined.

Temporary checks have been added to mbed_greentea_add_test to keep the
old flow working until we port all of the greentea tests to CTest. These
checks should be removed after we make all greentea tests runnable by
CTest.
2021-08-10 16:54:03 +01:00
Chun-Chieh Li 5114e4c7c2 M2354: Support PSA Firmware Update
1.  Change from single image boot to multiple image boot
2.  SDH is configured to Secure for placing update firmware. It becomes inaccessible to Mbed.
3.  Post-build script supports both multiple image boot and single image boot
4.  Update readme to reflect above change
5.  Increase forced_reset_timeout due to longer booting time for Greentea test
2021-08-05 10:14:33 +08:00
Jaeden Amero 744814f0a0
Merge pull request #14900 from 0xc0170/feature_CMSIS_5_13b9f72f2
Update CMSIS to 5.8.0
2021-07-30 09:43:11 +01:00
Martin Kojtal 049d1f145d cmsis importer: add commits for Mbed OS changes
See specific SHA for details.
2021-07-30 08:35:04 +01:00
Martin Kojtal b9043fb91c cmsis: importer sha removal
I had to resolve conflicts with these sha. CMSIS 5.8.0 includes fixes and makes these changes
irrelevant.
2021-07-27 10:06:40 +01:00
Martin Kojtal 7941286531 [CMSIS_5]: Updated to 13b9f72f2 2021-07-27 10:06:34 +01:00
Lingkai Dong 257a4e551c CMake: Do not set `CMAKE_AR`
The variable for archiver is automatically set by CMake. There is
no need to explicitly set it, unless a project really needs to
override the default archiver.
2021-07-23 15:56:58 +01:00
Lingkai Dong 782375c431 CMake: Enable improved armclang support in CMake 3.21
CMake versions 3.20 and below always add compiler and linker flags
based on `CMAKE_SYSTEM_PROCESSOR`, for example `--cpu=Cortex-M33`.
This sometimes overrides flags we set in tools/cmake/cores/*.cmake
and results in link failure or unbootable binaries. To workaround
this, we added more linker flags to "counter" what CMake automatically
adds.

From CMake 3.21 onwards, CMake by default does not add flags to
armclang anymore, and it fully relies on projects to set all flags.
In this case we do not need to set `CMAKE_SYSTEM_PROCESSOR` or use
workarounds anymore. We still turn on workarounds when an older
version of CMake (3.19 and 3.20) is used, but in the future we might
require users to have at least CMake 3.21.
2021-07-23 15:56:58 +01:00
Lingkai Dong 4b6f243963 CMake: Cortex-A: Use MBED_CPU_CORE to set -mcpu
As we're moving away from the use of CMAKE_SYSTEM_PROCESSOR, use
MBED_CPU_CORE instead. They differ in cases, but both GCC and Arm
toolchains support case-insensitive CPU names.
2021-07-23 15:56:58 +01:00
Lingkai Dong 23d659ef9e CMake: Add test for multiple-executable support
Add a test to build two executables in two directories under a single
project.
2021-07-22 17:31:45 +01:00
Lingkai Dong 351680fb18 Rework post-build to support multiple executables
When building greentea tests, each test is an executable with its
own output binary path. This is also the case when a user project
produces multiple executables. But the current implementation of
post-build operations always assumes there's only one executable,
at the root of the build directory.

The post-build command depends on Mbed target, and it always takes
the the executable we build as an input file. To achieve this, we
let each Mbed target (that has a post-build command) define a function

    function(mbed_post_build_function target)

which takes a CMake executable target as an argument from which it can
get its binary path using generator expressions. It generates and adds
to the passed executable target a post-build custom command.

Notes:
* The function name needs to be exact, because CMake only supports
literal function calls - CMake can't dereference a function name from
a variable. To avoid multiple definitions of this function, each Mbed
target needs to guard it with a macro to check if the user is
building this Mbed target.
* `mbed_post_build_function()` is a function, but it is usually
defined by another macro rather than a parent function, because
nesting functions would make many variables inaccessible inside the
innermost `mbed_post_build_function()`.
* There's no more need to force regenerate images. Previously, post-
build commands were custom *targets* which always got to run, so we
force regenerated images on every build to avoid patching an image
that's already been patched once on previous build. Now post-build
commands are custom *commands* of the same executable target, and they
are only run if the executable target itself is rebuilt.
2021-07-22 17:31:22 +01:00
Robert Walton fcd57b24d3 CMake: Move post build functions out of root CMakeLists.txt
The 'post build' functions are made visible by adding the mbed-os
subdirectory. This is not ideal as any components in mbed-os wishing to
call the functions must be added after the functions are defined. To
improve modularity move these functions to a separate CMake script.

We include the post build CMake script in app.cmake for now so we don't
break user's projects.
2021-07-22 11:50:43 +01:00
Jaeden Amero 662bd59973
Merge pull request #14940 from Patater/update-prettytable
python: Allow newer prettytable with newer python
2021-07-21 14:55:52 +01:00
Jaeden Amero 14d4ee3f3b python: Allow newer prettytable with newer python
This helps to allow installation of Mbed OS's Python requirements, when
CMake is used, into the same Python environment as mbed-os-tools. The
versions specified here are aligned with mbed-os-tools;
tools/cmake/requirements.txt depends on the same version of prettytable
as mbed-os-tools's requirements.txt.
2021-07-21 13:55:18 +01:00
Martin Kojtal 530c90b351
Merge pull request #14932 from ARMmbed/remove_tools_host_tests
Remove host_tests from mbed-os/tools
2021-07-21 14:51:30 +02:00
Jaeden Amero c703b0de23
Merge pull request #14880 from Patater/dont-require-icetea
Dont require icetea
2021-07-20 15:54:51 +01:00
Rajkumar Kanagaraj e75b67fada Remove host_tests from mbed-os/tools
host tests (mbedhtrun) is maintained as part of mbed-os-tools but there
is a redundant duplicate of host_tests under mbed-os/tools/ directory
this PR changes to remove those duplicates and update test_api py modules
to use host tests from mbed-host-tests
2021-07-20 05:07:28 -07:00
Jaeden Amero 45a8826ee2 icetea: Remove icetea TEST_APPS
icetea was intended to be deprecated in Mbed 6. icetea is no longer
maintained. Remove icetea-specific TEST_APPS and run_icetea tests from
Mbed OS.
2021-07-15 16:07:20 +01:00
Robert Walton e9747d7bcd CMake: greentea: Fix io issue with greentea-client
The stdio implementation of the standalone greentea-client wasn't
streaming "KiVi protocol" messages through the serial IO. Separate out
the existing implementation for greentea-client that uses
mbed_retarget.h's `read` and `write` functions so greentea tests
continue to work with the standalone client.

The IO fixture is shared between the "legacy" embedded greentea-client
and the newer standalone client.
2021-07-09 14:33:08 +01:00
Martin Kojtal 7350b03088
Merge pull request #14872 from hallard/STM32WLEx
Add STM32WLE5 for custom targets LORA_E5 and RAK3172
2021-07-08 13:25:24 +02:00
Jaeden Amero c3f3ed7661 cmake: Use namespaced greentea client library
When using an exported or installed version of greentea, it's necessary
to use the greentea namespace.
2021-07-07 14:29:14 +01:00
Jaeden Amero 4e2206e482 Use standalone greentea-client
For CMake or Mbed CLI 2, use the standalone greentea-client.
2021-07-07 14:29:14 +01:00
Charles c8fdc0a897 added STM32WLE5CCUx + version 1.1.0 2021-07-06 17:10:53 +02:00
Lingkai Dong f4d551e80e CMake: Replace MBED_TEST_LINK_LIBRARIES with MBED_TEST_BAREMETAL
Currently we have `MBED_TEST_LINK_LIBRARIES` for specifying
* Whether to link `mbed-os` or `mbed-baremetal`
* Any additional libraries we want tests to link

It's not fit for purpose anymore, because
* No flavor of Mbed OS is selected by default, but we should've
really defaulted to `mbed-os`, the full RTOS version. Build doesn't
work unless `-DMBED_TEST_LINK_LIBRARIES=<...>` is passed, which
is redundant.
* A test should never need additional libraries passed via command
line - its `CMakeLists.txt` should specify what it links.

This commit replaces `MBED_TEST_LINK_LIBRARIES` with a new option
`MBED_TEST_BAREMETAL` to build a test with either RTOS (default)
or without it (by passing `-DMBED_TEST_BAREMETAL=ON`).
2021-07-06 13:43:06 +01:00
Lingkai Dong 2a1d50f0fa app.cmake: Replace tabs with spaces
The coding standards of Mbed OS require indentation of four spaces.
2021-07-06 13:35:43 +01:00
Jaeden Amero 75808eaaf2
Merge pull request #14783 from rwalton-arm/dont_capture_stdout
tfm-post-build: Don't capture subprocess stdout
2021-07-06 12:57:45 +01:00
Martin Kojtal 80ce06fb67
Merge pull request #14876 from rwalton-arm/mbed_path_greentea
CMake: greentea: Remove dependency on global MBED_PATH
2021-07-06 13:30:25 +02:00
Robert Walton dfb4e087e3 CMake: greentea: Remove dependency on global MBED_PATH
The mbed_greentea_add_test macro required a greentea test to set an
MBED_PATH variable to the path of the mbed-os root directory, which it
attempts to add as a 'subdirectory' of the test project. We can instead
use CMake's built in CMAKE_CURRENT_LIST_DIR variable to deduce the path
to mbed-os relative to the current list file directory, removing the
need for greentea tests to set MBED_PATH.
2021-07-06 10:53:32 +01:00
Robert Walton d5a4ad1fe9 CMake: greentea: Remove call to deprecated function
mbed_greentea::mbed_greentea_add_test was calling the deprecated
`mbed_configure_app_target` function, which is currently a no-op.
2021-07-05 22:53:35 +01:00
saheerb bf84452c60 enable google and azure example application tests in ci 2021-07-05 20:30:35 +01:00
Charles ca32375228 added STM32WLE5JCIx 2021-07-05 13:08:09 +02:00
Robert Walton da6febf616 CMake: mbed_greentea: Remove trailing whitespace 2021-07-02 11:44:51 +01:00
Jaeden Amero b5c2f7079e
Merge pull request #14718 from Meano/develop
Feature: Make changes for Cortex-A5 support
2021-07-01 10:23:41 +01:00
Martin Kojtal 66a770e92e
Merge pull request #14780 from Patater/update-python-requirements
Update python requirements
2021-06-30 16:38:02 +02:00
Jaeden Amero 270ea5deb7
Merge pull request #14815 from LDong-Arm/test_psa_k64f_k66f
Enable PSA tests on K64F/K66F and fix missing PSA Crypto init in TLSSocketWrapper
2021-06-30 15:20:05 +01:00
Jaeden Amero 9b09cddf1d python: Update requirements
Update versions of urllib3, PyYAML, jinja2, cryptography.
2021-06-30 09:12:31 +01:00
Robert Walton 6d78f93b9e tfm-post-build: Don't capture subprocess stdout
subprocess.PIPE is used to enable the parent process to communicate with
the subprocess via pipes, which mean all stdout and stderr messages are
captured and returned as part of Popen.communicate's result tuple.

In our case, we want to display the error messages on the console, so we
don't need to capture the output from stdout.

Example of a typical error message before this change:
```
Traceback (most recent call last):
  File "platform/FEATURE_EXPERIMENTAL_API/FEATURE_PSA/TARGET_TFM/TARGET_TFM_LATEST/scripts/generate_mbed_image.py", line 197, in <module>
    sign_and_merge_tfm_bin(args.tfm_target, args.target_path, args.non_secure_bin, args.secure_bin)
  File "platform/FEATURE_EXPERIMENTAL_API/FEATURE_PSA/TARGET_TFM/TARGET_TFM_LATEST/scripts/generate_mbed_image.py", line 81, in sign_and_merge_tfm_bin
    " secure binary, Error code: " + str(retcode))
Exception: Unable to sign musca_b1 secure binary, Error code: 1
```

Example of the error message after this change:
```
Traceback (most recent call last):
  File "/mbed-os/tools/psa/tfm/bin_utils/wrapper.py", line 13, in <module>
    import click
ModuleNotFoundError: No module named 'click'
Traceback (most recent call last):
  File "platform/FEATURE_EXPERIMENTAL_API/FEATURE_PSA/TARGET_TFM/TARGET_TFM_LATEST/scripts/generate_mbed_image.py", line 194, in <module>
    sign_and_merge_tfm_bin(args.tfm_target, args.target_path, args.non_secure_bin, args.secure_bin)
  File "platform/FEATURE_EXPERIMENTAL_API/FEATURE_PSA/TARGET_TFM/TARGET_TFM_LATEST/scripts/generate_mbed_image.py", line 80, in sign_and_merge_tfm_bin
    raise Exception("Unable to sign " + target_name +
Exception: Unable to sign musca_b1 secure binary, Error code: 1
```

This is a significant improvement as now you can see what the reason for
the failure was.
2021-06-29 15:37:44 +01:00