In the process, the path has been shortened and the unecessary ble
directory between FEATURE_BLE and the actual implementation has been
removed.
commit id of ARMmbed : 17728a824c7273e16b6b74fae871e2997c88ecd1
This commit adds the following test frameworks:
- `greentea-client` (https://github.com/ARMmbed/greentea-client)
- This framework provides a key-value api for communicating with the
greentea test tool (https://github.com/ARMmbed/greentea)
- `unity` (https://github.com/ARMmbed/unity)
- This framework provides test assert macros that can be used when
writing test cases
- `utest` (https://github.com/ARMmbed/utest)
- This framework allows you to execute a series of test cases with
reporting that works with the greentea test tool
(https://github.com/ARMmbed/greentea)
The following changes were made when bringing these frameworks into the
tree:
- References to `mbed_drivers/mbed.h` within utest's tests were migrated
to `mbed.h`
- The yotta file `module.json` was removed from `greentea-client` and
`unity`
- `coverage.json` was also removed from `greentea-client`
- `.gitignore` and `.gitattributes` were removed from `greentea-client`
- Apache 2.0 license files were removed from `greentea-client`
This also brings in a number of tests that have been newly written or ported from various sources:
- `TESTS/integration` - Very basic tests, used to check if testing frameworks are working correctly
- `TESTS/mbed_drivers` (Thanks @PrzemekWirkus!) - TESTS ported from mbed OS 3.0 (https://github.com/ARMmbed/mbed-drivers)
- `TESTS/mbedmicro-mbed` (Thanks @PrzemekWirkus!) - Tests that weren't covered by `TESTS/mbed_drivers` that currently live in `libraries/tests/mbed`
- `TESTS/mbedmicro-rtos-mbed` (Thanks @PrzemekWirkus!) - Ported tests that currently live in `libraries/tests/rtos/mbed`
- `TESTS/storage_abstraction` (Thanks @rgrover!) - Tests for the storage_abstraction hal
This commit updates the uVisor libraries following the following fix:
* ARMmbed/uvisor@767e794 "K64F vMPU: Use the MPU fault address"
The bug made some release builds of the uVisor example halt because of
an imprecise bus fault not correctly handled by uVisor internally.
The change only affects targets where `FEATURE_UVISOR` and
`UVISOR_SUPPORTED` are defined.
The configuration file at the moment only contains the CMSIS NVIC
virtualization macros. When FEATURE_UVISOR is set, we turn on CMSIS NVIC
virtualization automatically.
This removes the need for users to specify the macros themselves.
If UVISOR_SUPPORTED is set as well, the NVIC macros are turned into vIRQ
ones, otherwise they stay NVIC as usual, thanks to the fallback
implementation provided by `unsupported.h`.
Now there is no need any more to specify the UVISOR_PRESENT symbol from
the mbed command line tools. By using a target that has UVISOR_SUPPORTED
has a label, the uVisor-internal UVISOR_PRESENT symbol will be set
automatically.
Add the memory management code from uVisor to a shared location that is
suitable for both supported and unsupported use. To do this, we copy all
the RTX-specific files from the RTX folders in uVisor.
Note that the page allocator code is so identical between uVisor supported
and unsupported mode that we can copy the file as-is from uVisor for use on
unsupported targets. This commit performs that copying, to a file called
page_allocator.c_inc, which is included from unsupported_page_allocator.c
only for targets where uVisor is not present.