* Update scatter file for the ARM toolchain to use 2 region memory model.
The scatter file changes affect the following boards:
* LPC1768, ARCH_PRO, UBLOX_C027, XBED_LPC1768 (LPC1768.sct)
* Remove the TOOLCHAIN_ARM_MICRO directory.
* Remove release_version as not necessary and as the target can also run
Mbed OS 6.
* Remove uARM toolchain in the list of supported toolchains for the target.
* Indicate that the target supports the small ARM toolchain C library.
Previously we overrode nRF targets to have a larger stack
due to memory required by SoftDevice. Having deprecated SoftDevice
in favour of Cordio for BLE (#12674), such requirement does not
apply anymore.
Targets that use TF-M for their PSA implementation are not compatible
with exporters at this time. Explicitly block use of exporters with TF-M
using targets, for better error messages.
Signed-off-by: Devaraj Ranganna <devaraj.ranganna@arm.com>
The PSA-implementing secure binary is not built using Mbed OS build
tools anymore. Instead, the TrustedFirmware-M (TF-M) build system is
used to produce the secure binary. As such, we remove PSA related hooks
from the build system, remove PSA related scripts from tools/test
folder, and also remove the psa-autogen job from travis which was
running the now unecessary and removed generate_partition_code.py.
Remove the ability to generate new PSA binaries in the old manner, where
Mbed OS implements PSA. We don't yet remove any PSA binaries or break
the currently checked-in Mbed-implemented PSA support. PSA targets
integrated in the old manner will continue working at this point.
Signed-off-by: Devaraj Ranganna <devaraj.ranganna@arm.com>
Signed-off-by: Jaeden Amero <jaeden.amero@arm.com>
Remove all PSA S-mode only code, as it is unused. Only PSA S targets
would use the code, and we've removed those targets in a previous
commit.
Ensure all tests for S-mode code we are deleting is also removed, even
if that code would run in NS-mode. Keep any tests that also test our PSA
emulation support (for single v7-M targets).
Signed-off-by: Jaeden Amero <jaeden.amero@arm.com>
Remove PSA v8-M S target binaries will be built outside of Mbed OS and
added in as binaries which NS targets consume. Mbed OS no longer
implements PSA for v8-M targets, so there is no reason for it to build
PSA S targets.
Signed-off-by: Jaeden Amero <jaeden.amero@arm.com>
Mbed OS depends on TF-M to implement PSA. Any targets that need to
provide PSA must be supported by TF-M. The following targets are removed
from Mbed OS as they don't yet have TF-M support. We can re-add these
targets to Mbed OS when they have TF-M support in the official upstream
TF-M repository hosted at trustedfirmware.org.
These PSA targets no longer have a PSA implementation and are removed:
- LPC55S69
- LPC55S69_NS
- LPC55S69_S
- NU_PFM_M2351_NS
- NU_PFM_M2351_S
- HANI_IOT
Signed-off-by: Devaraj Ranganna <devaraj.ranganna@arm.com>
Signed-off-by: Jaeden Amero <jaeden.amero@arm.com>
Add a copyright header and a shebang to the Mbed OS TrustedFirmware-M
tooling.
Signed-off-by: Devaraj Ranganna <devaraj.ranganna@arm.com>
Signed-off-by: Jaeden Amero <jaeden.amero@arm.com>
BLOCK2 code-branch was missing handling for duplicate packets. As part of the fix, added also
a call to update the duplicate package data via a new function
sn_coap_protocol_update_duplicate_package_data_all.
The new implementation handles all CoAP messages, not just those with COAP_MSG_TYPE_ACKNOWLEDGEMENT.
Add also 4.13 (Request Entity Too Large) responses to duplicate info list.
Add client library configurations for DEFAULT_RESPONSE_TIMEOUT and SN_COAP_DUPLICATION_MAX_TIME_MSGS_STORED.
Increased the default timeouts of DEFAULT_RESPONSE_TIMEOUT and SN_COAP_DUPLICATION_MAX_TIME_MSGS_STORED to 300 seconds.
These two are critical parameters for low-bandwidth high-latency networks. The defaults should be more geared towards such networks that are likely to have issues with transmissions.
The increased defaults can increase the runtime HEAP usage when there is a lot of duplicates or retransmissions.
tests-filesystem-general_filesystem declares BlockDevice and FileSystem
pointers as globals. If these are initialized to their respective
default_instance values in the declaration, the LFS init happens during
OS startup when __libc_init_array() is invoked by mbed_toolchain_init().
If the filesystem blockdevice does not currently contain a valid filesystem
(e.g. the chip has just been erased), then LFS will flag this as corruption
and abort the mounting process.
This cleanup process can take long enough (and is running pre-main) that
greentea times out waiting for the device to respond to its sync packet,
and resets the device.
To resolve this, move the initialization into the first test case
(bd_init_fs_reformat) right before it initializes and formats the
blockdevice and filesystem.