New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

fix nordic critical section #5595

Merged
merged 2 commits into from Jan 4, 2018

Conversation

Projects
None yet
6 participants
@nvlsianpu
Contributor

nvlsianpu commented Nov 28, 2017

current critical section implementation makes possible that interrupt
signals are lost.

This patch introduce usage of sdk5 origin implementation in which
sd_nvic_critical_region_enter/exit is calling each time critical region
is enter/exit. This fixes the issue.

@nvlsianpu nvlsianpu force-pushed the nvlsianpu:bugfix/nordic_critical_section branch from 2f12d7e Nov 28, 2017

@0xc0170 0xc0170 requested a review from pan- Nov 28, 2017

@nvlsianpu

This comment has been minimized.

Contributor

nvlsianpu commented Nov 28, 2017

@pan- @anangl
I introduce this as this mitigate problem with losted interrupts signals I observed for tests-api-spi.
I sort out that previous implementation needlessly implemented code flow for nested critical region enters while it is already served by sd_nvic_critical_region_enter/exit.

@anangl Can you review this?

targets/TARGET_NORDIC/TARGET_NRF5/nordic_critical.c Outdated

static uint8_t _sd_state = 0;
static volatile uint32_t _entry_count = 0;
uint8_t nordic_cr_nested = 0;

This comment has been minimized.

@0xc0170

0xc0170 Nov 28, 2017

Member

is this for the local scope only - static ?

current critical section implementation makes possible that interrupt
signals are lost. It was observed at last for tests-api-spi ci-test-shield's
test.

This patch introduce usage of sdk5 origin implementation in which
sd_nvic_critical_region_enter/exit is calling each time critical region
is enter/exit. This fixes the issue.

@nvlsianpu nvlsianpu force-pushed the nvlsianpu:bugfix/nordic_critical_section branch to b084812 Nov 28, 2017

@pan-

This comment has been minimized.

Member

pan- commented Nov 28, 2017

@nvlsianpu Could you explain what was the root cause ?
I'd like to understand how this PR fix the issue; app_util_critical_region_enter just calls sd_nvic_critical_region_enter.

@0xc0170

This comment has been minimized.

Member

0xc0170 commented Nov 28, 2017

@nvlsianpu Could you explain what was the root cause ?
I'd like to understand how this PR fix the issue; app_util_critical_region_enter just calls sd_nvic_critical_region_enter.

Good point, I would like to suggest to have this part of the commit - why and how the commit fixes the bug. Please note that first line should be <=50 characters

@0xc0170 0xc0170 referenced this pull request Nov 28, 2017

Merged

Add Critical Section HAL API specification #5346

4 of 4 tasks complete
@dlfryar

This comment has been minimized.

Contributor

dlfryar commented Dec 13, 2017

@nvlsianpu with this change running against https://github.com/ARMmbed/mbed-os-example-spiflash-driver it does fix the problem where the board would get stuck in an infinite wait/sleep state accessing the SPI storage using the NRF52840. However, it also comes across a new assertion that I hadn't seen before. Tested with this PR and #5606 rebased with master.

spif test
spif size: 8388608
spif read size: 1
spif program size: 1
spif erase size: 4096
mbed assertation failed: os_timer->get_tick() == svcRtxKernelGetTickCount(), file: ./mbed-os/rtos/TARGET_CORTEX/mbed_rtx_idle.c���
Hello World!

cc: @SenRamakri @marcuschangarm

@nvlsianpu

This comment has been minimized.

Contributor

nvlsianpu commented Dec 14, 2017

@dlfryar I remember that I was observing similar assertion while I was debugging: when I had stooped the execution and resumed. My explanation is that: with the tickles enabled, nRF52840 uses RTC as clock source so clock is running even if the core stal in breakpoint - then expected tick might be deferent from those fetched after resume.

Is that what you observed?

@dlfryar

This comment has been minimized.

Contributor

dlfryar commented Dec 14, 2017

@nvlsianpu this same assertion has been seen in other testing apart from the example. In both cases they were simple applications executing with no debugger attached.

Is there a known fix to resolve the assertion?


void core_util_critical_section_enter()
{
// if a critical section has already been entered, just update the counter
if (_entry_count) {

This comment has been minimized.

@nvlsianpu

nvlsianpu Dec 21, 2017

Contributor

The one of possibles scenerio for 'previous code 'is:
In routine A _enter_count check could had been positive, then execution of routine can been interrupted by routine B which would call core_util_critical_section_exit. In result after routine A executed core_util_critical_section_enter the critical section is not enabled - and the _entry_count value is equal to 1.

So _entry_count check-modify must be a atomic operation in order to mitigate this and similar scenarios.
This Is exactly how app_util_critical_region_ente call work.

@pan- , @0xc0170
This is answer to:

@nvlsianpu Could you explain what was the root cause ?

@pan-

pan- approved these changes Dec 21, 2017

Thanks for explaining the bug it completely make sense.

@0xc0170 0xc0170 added needs: CI and removed needs: review labels Dec 22, 2017

@0xc0170

This comment has been minimized.

Member

0xc0170 commented Dec 22, 2017

/morph build

@mbed-ci

This comment has been minimized.

mbed-ci commented Dec 22, 2017

Build : SUCCESS

Build number : 756
Build artifacts/logs : http://mbed-os.s3-website-eu-west-1.amazonaws.com/?prefix=builds/5595/

Triggering tests

/morph test
/morph uvisor-test
/morph export-build

@nvlsianpu

This comment has been minimized.

Contributor

nvlsianpu commented Dec 22, 2017

@0xc0170 hold on this, I discover serious problem with this PR, will fix it soon.

@0xc0170 0xc0170 added needs: work and removed needs: CI labels Dec 22, 2017

@mbed-ci

This comment has been minimized.

@nvlsianpu

This comment has been minimized.

Contributor

nvlsianpu commented Dec 22, 2017

looks like all mbed-os tests pass so fare.

@nvlsianpu

This comment has been minimized.

Contributor

nvlsianpu commented Dec 22, 2017

Unfortunatelly DUT-DK stoped reponding to mbedls (It hapens sometime :( ) I will put tests results after NY.

@mbed-ci

This comment has been minimized.

@nvlsianpu

This comment has been minimized.

Contributor

nvlsianpu commented Jan 2, 2018

mbed-os tests results - all passed:

+------------------+---------------+--------------------------------------------------------------------------------------+-------------------------------------------
--------------------------------------------------------+--------+--------+--------+--------------------+
| target           | platform_name | test suite                                                                           | test case
                                                        | passed | failed | result | elapsed_time (sec) |
+------------------+---------------+--------------------------------------------------------------------------------------+-------------------------------------------
--------------------------------------------------------+--------+--------+--------+--------------------+
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-features-frameworks-utest-tests-unit_tests-basic_test                        | Repeating Test
                                                        | 2      | 0      | OK     | 0.08               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-features-frameworks-utest-tests-unit_tests-basic_test                        | Simple Test
                                                        | 1      | 0      | OK     | 0.04               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-features-frameworks-utest-tests-unit_tests-basic_test_default                | Repeating Test
                                                        | 2      | 0      | OK     | 0.08               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-features-frameworks-utest-tests-unit_tests-basic_test_default                | Simple Test
                                                        | 1      | 0      | OK     | 0.04               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-features-frameworks-utest-tests-unit_tests-case_async_validate               | Validate: Attributed Validation: Cancel Re
peat                                                    | 1      | 0      | OK     | 0.18               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-features-frameworks-utest-tests-unit_tests-case_async_validate               | Validate: Attributed Validation: Enable Re
peat Handler                                            | 2      | 0      | OK     | 0.18               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-features-frameworks-utest-tests-unit_tests-case_async_validate               | Validate: Multiple Premature Validation
                                                        | 1      | 0      | OK     | 0.07               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-features-frameworks-utest-tests-unit_tests-case_async_validate               | Validate: Multiple Validation
                                                        | 1      | 0      | OK     | 0.16               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-features-frameworks-utest-tests-unit_tests-case_async_validate               | Validate: Premature Validation
                                                        | 1      | 0      | OK     | 0.06               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-features-frameworks-utest-tests-unit_tests-case_async_validate               | Validate: Simple Validation
                                                        | 1      | 0      | OK     | 0.06               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-features-frameworks-utest-tests-unit_tests-case_control_async                | Control: Await
                                                        | 1      | 0      | OK     | 1.42               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-features-frameworks-utest-tests-unit_tests-case_control_async                | Control: CaseNext
                                                        | 1      | 0      | OK     | 0.05               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-features-frameworks-utest-tests-unit_tests-case_control_async                | Control: NoTimeout
                                                        | 1      | 0      | OK     | 0.06               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-features-frameworks-utest-tests-unit_tests-case_control_async                | Control: RepeatAllOnTimeout
                                                        | 1      | 0      | OK     | 0.11               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-features-frameworks-utest-tests-unit_tests-case_control_async                | Control: RepeatHandlerOnTimeout
                                                        | 1      | 0      | OK     | 1.64               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-features-frameworks-utest-tests-unit_tests-case_control_async                | Control: Timeout (Failure)
                                                        | 1      | 0      | OK     | 0.22               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-features-frameworks-utest-tests-unit_tests-case_control_async                | Control: Timeout (Success)
                                                        | 1      | 0      | OK     | 0.14               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-features-frameworks-utest-tests-unit_tests-case_control_repeat               | Control: CaseNext
                                                        | 1      | 0      | OK     | 0.05               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-features-frameworks-utest-tests-unit_tests-case_control_repeat               | Control: NoRepeat
                                                        | 1      | 0      | OK     | 0.05               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-features-frameworks-utest-tests-unit_tests-case_control_repeat               | Control: RepeatAll
                                                        | 10     | 0      | OK     | 0.05               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-features-frameworks-utest-tests-unit_tests-case_control_repeat               | Control: RepeatHandler
                                                        | 10     | 0      | OK     | 0.05               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-features-frameworks-utest-tests-unit_tests-case_selection                    | Case 1
                                                        | 1      | 0      | OK     | 0.03               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-features-frameworks-utest-tests-unit_tests-case_selection                    | Case 2
                                                        | 1      | 0      | OK     | 0.04               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-features-frameworks-utest-tests-unit_tests-case_selection                    | Case 3
                                                        | 1      | 0      | OK     | 0.04               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-features-frameworks-utest-tests-unit_tests-case_setup_failure                | Setup handler returns ABORT
                                                        | 1      | 0      | OK     | 0.13               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-features-frameworks-utest-tests-unit_tests-case_setup_failure                | Setup handler returns CONTINUE
                                                        | 1      | 0      | OK     | 0.06               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-features-frameworks-utest-tests-unit_tests-case_setup_failure                | Setup handler returns IGNORE
                                                        | 1      | 0      | OK     | 0.13               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-features-frameworks-utest-tests-unit_tests-case_teardown_failure             | Teardown handler returns ABORT
                                                        | 1      | 0      | OK     | 0.06               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-features-frameworks-utest-tests-unit_tests-case_teardown_failure             | Teardown handler returns ABORT but is IGNO
RED                                                     | 1      | 0      | OK     | 0.08               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-features-frameworks-utest-tests-unit_tests-case_teardown_failure             | Teardown handler returns CONTINUE
                                                        | 1      | 0      | OK     | 0.07               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-features-frameworks-utest-tests-unit_tests-control_type                      | Testing combinations of different group
                                                        | 1      | 0      | OK     | 0.07               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-features-frameworks-utest-tests-unit_tests-control_type                      | Testing combinations of same group
                                                        | 1      | 0      | OK     | 0.06               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-features-frameworks-utest-tests-unit_tests-control_type                      | Testing constants
                                                        | 1      | 0      | OK     | 0.05               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-features-frameworks-utest-tests-unit_tests-control_type                      | Testing constructors
                                                        | 1      | 0      | OK     | 0.05               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-features-frameworks-utest-tests-unit_tests-minimal_async_scheduler           | Minimal Scheduler: Async Case 4 (Failure)
                                                        | 0      | 0      | OK     | 0.34               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-features-frameworks-utest-tests-unit_tests-minimal_async_scheduler           | Minimal Scheduler: Case 1
                                                        | 1      | 0      | OK     | 0.05               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-features-frameworks-utest-tests-unit_tests-minimal_async_scheduler           | Minimal Scheduler: Case 2
                                                        | 1      | 0      | OK     | 0.06               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-features-frameworks-utest-tests-unit_tests-minimal_async_scheduler           | Minimal Scheduler: Case 3
                                                        | 1      | 0      | OK     | 0.05               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-features-frameworks-utest-tests-unit_tests-minimal_scheduler                 | Minimal Scheduler: Case 1
                                                        | 1      | 0      | OK     | 0.06               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-features-frameworks-utest-tests-unit_tests-minimal_scheduler                 | Minimal Scheduler: Case 2
                                                        | 1      | 0      | OK     | 0.06               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-features-frameworks-utest-tests-unit_tests-minimal_scheduler                 | Minimal Scheduler: Case 3
                                                        | 1      | 0      | OK     | 0.05               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-features-frameworks-utest-tests-unit_tests-minimal_scheduler                 | Minimal Scheduler: Case 4
                                                        | 1      | 0      | OK     | 0.06               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-features-frameworks-utest-tests-unit_tests-minimal_scheduler                 | Minimal Scheduler: Case 5
                                                        | 1      | 0      | OK     | 0.05               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-features-frameworks-utest-tests-unit_tests-minimal_scheduler                 | Minimal Scheduler: Case 6
                                                        | 1      | 0      | OK     | 0.05               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-features-frameworks-utest-tests-unit_tests-minimal_scheduler                 | Minimal Scheduler: Case 7
                                                        | 1      | 0      | OK     | 0.06               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-features-frameworks-utest-tests-unit_tests-minimal_scheduler                 | Minimal Scheduler: Case 8
                                                        | 1      | 0      | OK     | 0.05               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-features-frameworks-utest-tests-unit_tests-test_assertion_failure_test_setup | dummy test
                                                        | 1      | 0      | OK     | 0.04               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-features-frameworks-utest-tests-unit_tests-test_setup_case_selection_failure | dummy test
                                                        | 1      | 0      | OK     | 0.04               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-features-frameworks-utest-tests-unit_tests-test_setup_case_selection_failure | dummy test 2
                                                        | 1      | 0      | OK     | 0.04               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-features-frameworks-utest-tests-unit_tests-test_setup_failure                | dummy test
                                                        | 1      | 0      | OK     | 0.04               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-features-frameworks-utest-tests-unit_tests-test_setup_failure                | dummy test 2
                                                        | 1      | 0      | OK     | 0.04               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-features-tests-filesystem-heap_block_device                                  | Testing read write random blocks
                                                        | 1      | 0      | OK     | 1.95               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-features-tests-filesystem-mbr_block_device                                   | Testing formatting of master boot record
                                                        | 1      | 0      | OK     | 0.07               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-features-tests-filesystem-mbr_block_device                                   | Testing mbr attributes
                                                        | 1      | 0      | OK     | 0.61               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-features-tests-filesystem-mbr_block_device                                   | Testing mbr read write
                                                        | 1      | 0      | OK     | 0.05               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-features-tests-filesystem-util_block_device                                  | Testing chaining of block devices
                                                        | 1      | 0      | OK     | 0.07               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-features-tests-filesystem-util_block_device                                  | Testing profiling of block devices
                                                        | 1      | 0      | OK     | 0.07               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-features-tests-filesystem-util_block_device                                  | Testing slicing of a block device
                                                        | 1      | 0      | OK     | 0.07               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-events-queue                                                           | Testing allocate failure
                                                        | 1      | 0      | OK     | 0.05               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-events-queue                                                           | Testing call_every
                                                        | 1      | 0      | OK     | 2.05               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-events-queue                                                           | Testing call_in
                                                        | 1      | 0      | OK     | 2.04               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-events-queue                                                           | Testing calls with 0 args
                                                        | 1      | 0      | OK     | 0.06               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-events-queue                                                           | Testing calls with 1 args
                                                        | 1      | 0      | OK     | 0.06               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-events-queue                                                           | Testing calls with 2 args
                                                        | 1      | 0      | OK     | 0.05               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-events-queue                                                           | Testing calls with 3 args
                                                        | 1      | 0      | OK     | 0.06               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-events-queue                                                           | Testing calls with 4 args
                                                        | 1      | 0      | OK     | 0.06               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-events-queue                                                           | Testing calls with 5 args
                                                        | 1      | 0      | OK     | 0.06               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-events-queue                                                           | Testing event cancel 1
                                                        | 1      | 0      | OK     | 0.05               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-events-queue                                                           | Testing the event class
                                                        | 1      | 0      | OK     | 0.06               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-events-queue                                                           | Testing the event class helpers
                                                        | 1      | 0      | OK     | 0.06               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-events-queue                                                           | Testing the event inference
                                                        | 1      | 0      | OK     | 0.06               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-events-timing                                                          | Testing accuracy of equeue semaphore
                                                        | 1      | 0      | OK     | 20.13              |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-events-timing                                                          | Testing accuracy of equeue tick
                                                        | 1      | 0      | OK     | 20.06              |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-events-timing                                                          | Testing accuracy of timer
                                                        | 1      | 0      | OK     | 20.05              |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-integration-basic                                                      | mbed-os-tests-integration-basic
                                                        | 1      | 0      | OK     | 13.23              |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_drivers-c_strings                                                 | C strings: %e %E float formatting
                                                        | 1      | 0      | OK     | 0.06               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_drivers-c_strings                                                 | C strings: %f %f float formatting
                                                        | 1      | 0      | OK     | 0.07               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_drivers-c_strings                                                 | C strings: %g %g float formatting
                                                        | 1      | 0      | OK     | 0.06               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_drivers-c_strings                                                 | C strings: %i %d integer formatting
                                                        | 1      | 0      | OK     | 0.06               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_drivers-c_strings                                                 | C strings: %u %d integer formatting
                                                        | 1      | 0      | OK     | 0.07               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_drivers-c_strings                                                 | C strings: %x %E integer formatting
                                                        | 1      | 0      | OK     | 0.07               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_drivers-c_strings                                                 | C strings: strpbrk
                                                        | 1      | 0      | OK     | 0.04               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_drivers-c_strings                                                 | C strings: strtok
                                                        | 1      | 0      | OK     | 0.05               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_drivers-dev_null                                                  | mbed-os-tests-mbed_drivers-dev_null
                                                        | 1      | 0      | OK     | 15.69              |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_drivers-echo                                                      | Echo server: x16
                                                        | 1      | 0      | OK     | 1.99               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_drivers-generic_tests                                             | Basic
                                                        | 1      | 0      | OK     | 0.03               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_drivers-generic_tests                                             | Blinky
                                                        | 1      | 0      | OK     | 0.04               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_drivers-generic_tests                                             | C++ heap
                                                        | 1      | 0      | OK     | 0.1                |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_drivers-generic_tests                                             | C++ stack
                                                        | 1      | 0      | OK     | 0.16               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_drivers-lp_ticker                                                 | Test attach for 0.001s and time measure
                                                        | 1      | 0      | OK     | 0.07               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_drivers-lp_ticker                                                 | Test attach for 0.01s and time measure
                                                        | 1      | 0      | OK     | 0.08               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_drivers-lp_ticker                                                 | Test attach for 0.1s and time measure
                                                        | 1      | 0      | OK     | 0.17               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_drivers-lp_ticker                                                 | Test attach for 0.5s and time measure
                                                        | 1      | 0      | OK     | 0.57               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_drivers-lp_ticker                                                 | Test attach_us for 100ms and time measure
                                                        | 1      | 0      | OK     | 0.17               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_drivers-lp_ticker                                                 | Test attach_us for 10ms and time measure
                                                        | 1      | 0      | OK     | 0.08               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_drivers-lp_ticker                                                 | Test attach_us for 1ms and time measure
                                                        | 1      | 0      | OK     | 0.07               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_drivers-lp_ticker                                                 | Test attach_us for 500ms and time measure
                                                        | 1      | 0      | OK     | 0.57               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_drivers-lp_ticker                                                 | Test detach
                                                        | 1      | 0      | OK     | 0.74               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_drivers-lp_ticker                                                 | Test multi call and time measure
                                                        | 1      | 0      | OK     | 1.06               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_drivers-lp_ticker                                                 | Test multi ticker
                                                        | 1      | 0      | OK     | 0.28               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_drivers-lp_timeout                                                | 1ms LowPowerTimeout
                                                        | 1      | 0      | OK     | 0.05               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_drivers-lp_timeout                                                | 1sec LowPowerTimeout
                                                        | 1      | 0      | OK     | 1.05               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_drivers-lp_timeout                                                | 1sec LowPowerTimeout from deepsleep
                                                        | 1      | 0      | OK     | 1.07               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_drivers-lp_timeout                                                | 1sec LowPowerTimeout from sleep
                                                        | 1      | 0      | OK     | 1.05               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_drivers-lp_timeout                                                | 500us LowPowerTimeout
                                                        | 1      | 0      | OK     | 0.05               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_drivers-lp_timeout                                                | 5sec LowPowerTimeout
                                                        | 1      | 0      | OK     | 5.04               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_drivers-lp_timer                                                  | Test: LowPowerTimer - float operator.
                                                        | 1      | 0      | OK     | 0.07               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_drivers-lp_timer                                                  | Test: LowPowerTimer - measure time accumul
ation.                                                  | 1      | 0      | OK     | 1.24               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_drivers-lp_timer                                                  | Test: LowPowerTimer - reset.
                                                        | 1      | 0      | OK     | 0.09               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_drivers-lp_timer                                                  | Test: LowPowerTimer - start started timer.
                                                        | 1      | 0      | OK     | 0.11               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_drivers-lp_timer                                                  | Test: LowPowerTimer - stopped after creati
on.                                                     | 1      | 0      | OK     | 0.09               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_drivers-lp_timer                                                  | Test: LowPowerTimer - time measurement 1 m
s.                                                      | 1      | 0      | OK     | 0.08               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_drivers-lp_timer                                                  | Test: LowPowerTimer - time measurement 1 s
.                                                       | 1      | 0      | OK     | 1.07               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_drivers-lp_timer                                                  | Test: LowPowerTimer - time measurement 10
ms.                                                     | 1      | 0      | OK     | 0.08               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_drivers-lp_timer                                                  | Test: LowPowerTimer - time measurement 100
 ms.                                                    | 1      | 0      | OK     | 0.17               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_drivers-race_test                                                 | class init race
                                                        | 1      | 0      | OK     | 0.65               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_drivers-race_test                                                 | function init race
                                                        | 1      | 0      | OK     | 0.55               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_drivers-rtc                                                       | RTC strftime
                                                        | 1      | 0      | OK     | 10.53              |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_drivers-sleep_lock                                                | DeepSleepLock lock test
                                                        | 1      | 0      | OK     | 0.05               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_drivers-sleep_lock                                                | timer lock test
                                                        | 1      | 0      | OK     | 0.04               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_drivers-stl_features                                              | STL std::equal
                                                        | 1      | 0      | OK     | 0.04               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_drivers-stl_features                                              | STL std::sort abs
                                                        | 1      | 0      | OK     | 0.04               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_drivers-stl_features                                              | STL std::sort greater
                                                        | 1      | 0      | OK     | 0.05               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_drivers-stl_features                                              | STL std::transform
                                                        | 1      | 0      | OK     | 0.04               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_drivers-ticker                                                    | Test attach for 0.01s and time measure
                                                        | 1      | 0      | OK     | 0.08               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_drivers-ticker                                                    | Test attach for 0.1s and time measure
                                                        | 1      | 0      | OK     | 0.17               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_drivers-ticker                                                    | Test attach for 0.5s and time measure
                                                        | 1      | 0      | OK     | 0.57               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_drivers-ticker                                                    | Test attach_us for 100ms and time measure
                                                        | 1      | 0      | OK     | 0.17               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_drivers-ticker                                                    | Test attach_us for 10ms and time measure
                                                        | 1      | 0      | OK     | 0.08               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_drivers-ticker                                                    | Test attach_us for 500ms and time measure
                                                        | 1      | 0      | OK     | 0.57               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_drivers-ticker                                                    | Test detach
                                                        | 1      | 0      | OK     | 0.74               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_drivers-ticker                                                    | Test multi call and time measure
                                                        | 1      | 0      | OK     | 1.06               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_drivers-ticker                                                    | Test multi ticker
                                                        | 1      | 0      | OK     | 0.27               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_drivers-ticker                                                    | Test timers: 1x ticker
                                                        | 1      | 0      | OK     | 8.39               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_drivers-ticker                                                    | Test timers: 2x callbacks
                                                        | 1      | 0      | OK     | 8.39               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_drivers-timeout                                                   | Timers: toggle on/off
                                                        | 1      | 0      | OK     | 8.4                |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_drivers-timer                                                     | Test: Timer (based on os ticker) - float o
perator.                                                | 1      | 0      | OK     | 0.09               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_drivers-timer                                                     | Test: Timer (based on os ticker) - measure
d time accumulation.                                    | 1      | 0      | OK     | 1.26               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_drivers-timer                                                     | Test: Timer (based on os ticker) - reset.
                                                        | 1      | 0      | OK     | 0.1                |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_drivers-timer                                                     | Test: Timer (based on os ticker) - start s
tarted timer.                                           | 1      | 0      | OK     | 0.12               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_drivers-timer                                                     | Test: Timer (based on os ticker) is stoppe
d after creation.                                       | 1      | 0      | OK     | 0.1                |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_drivers-timer                                                     | Test: Timer (based on user ticker) - float
 operator.                                              | 1      | 0      | OK     | 0.08               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_drivers-timer                                                     | Test: Timer (based on user ticker) - reset
.                                                       | 1      | 0      | OK     | 0.07               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_drivers-timer                                                     | Test: Timer (based on user ticker) - start
 started timer.                                         | 1      | 0      | OK     | 0.09               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_drivers-timer                                                     | Test: Timer (based on user ticker) is stop
ped after creation.                                     | 1      | 0      | OK     | 0.09               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_drivers-timer                                                     | Test: Timer (based on user ticker) measure
d time accumulation.                                    | 1      | 0      | OK     | 0.09               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_drivers-timer                                                     | Test: Timer - time measurement 1 ms.
                                                        | 1      | 0      | OK     | 0.07               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_drivers-timer                                                     | Test: Timer - time measurement 1 s.
                                                        | 1      | 0      | OK     | 1.07               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_drivers-timer                                                     | Test: Timer - time measurement 10 ms.
                                                        | 1      | 0      | OK     | 0.07               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_drivers-timer                                                     | Test: Timer - time measurement 100 ms.
                                                        | 1      | 0      | OK     | 0.17               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_functional-callback                                               | Testing callbacks with 0 ints
                                                        | 1      | 0      | OK     | 0.06               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_functional-callback                                               | Testing callbacks with 1 ints
                                                        | 1      | 0      | OK     | 0.06               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_functional-callback                                               | Testing callbacks with 2 ints
                                                        | 1      | 0      | OK     | 0.06               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_functional-callback                                               | Testing callbacks with 3 ints
                                                        | 1      | 0      | OK     | 0.06               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_functional-callback                                               | Testing callbacks with 4 ints
                                                        | 1      | 0      | OK     | 0.06               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_functional-callback                                               | Testing callbacks with 5 ints
                                                        | 1      | 0      | OK     | 0.06               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_functional-callback_big                                           | Testing callbacks with 0 uint64s
                                                        | 1      | 0      | OK     | 0.07               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_functional-callback_big                                           | Testing callbacks with 1 uint64s
                                                        | 1      | 0      | OK     | 0.06               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_functional-callback_big                                           | Testing callbacks with 2 uint64s
                                                        | 1      | 0      | OK     | 0.06               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_functional-callback_big                                           | Testing callbacks with 3 uint64s
                                                        | 1      | 0      | OK     | 0.07               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_functional-callback_big                                           | Testing callbacks with 4 uint64s
                                                        | 1      | 0      | OK     | 0.06               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_functional-callback_big                                           | Testing callbacks with 5 uint64s
                                                        | 1      | 0      | OK     | 0.06               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_functional-callback_small                                         | Testing callbacks with 0 uchars
                                                        | 1      | 0      | OK     | 0.06               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_functional-callback_small                                         | Testing callbacks with 1 uchars
                                                        | 1      | 0      | OK     | 0.06               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_functional-callback_small                                         | Testing callbacks with 2 uchars
                                                        | 1      | 0      | OK     | 0.07               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_functional-callback_small                                         | Testing callbacks with 3 uchars
                                                        | 1      | 0      | OK     | 0.06               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_functional-callback_small                                         | Testing callbacks with 4 uchars
                                                        | 1      | 0      | OK     | 0.06               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_functional-callback_small                                         | Testing callbacks with 5 uchars
                                                        | 1      | 0      | OK     | 0.06               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_functional-functionpointer                                        | Testing FunctionPointer compatibility
                                                        | 1      | 0      | OK     | 0.06               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_functional-functionpointer                                        | Testing FunctionPointerArg1 compatibility
                                                        | 1      | 0      | OK     | 0.08               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_hal-lp_ticker                                                     | 1ms lp_ticker
                                                        | 1      | 0      | OK     | 0.04               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_hal-lp_ticker                                                     | 1s lp_ticker
                                                        | 1      | 0      | OK     | 1.04               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_hal-lp_ticker                                                     | 1s lp_ticker deepsleep
                                                        | 1      | 0      | OK     | 1.06               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_hal-lp_ticker                                                     | 1s lp_ticker sleep
                                                        | 1      | 0      | OK     | 1.05               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_hal-lp_ticker                                                     | 500us lp_ticker
                                                        | 1      | 0      | OK     | 0.04               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_hal-lp_ticker                                                     | 5s lp_ticker
                                                        | 1      | 0      | OK     | 5.04               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_hal-lp_us_tickers                                                 | lp ticker HAL - Init
                                                        | 1      | 0      | OK     | 0.05               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_hal-lp_us_tickers                                                 | lp ticker HAL - Read
                                                        | 1      | 0      | OK     | 0.1                |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_hal-lp_us_tickers                                                 | lp ticker HAL - Read in the loop
                                                        | 1      | 0      | OK     | 0.07               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_hal-lp_us_tickers                                                 | us ticker HAL - Init
                                                        | 1      | 0      | OK     | 0.05               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_hal-lp_us_tickers                                                 | us ticker HAL - Read
                                                        | 1      | 0      | OK     | 0.11               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_hal-lp_us_tickers                                                 | us ticker HAL - Read in the loop
                                                        | 1      | 0      | OK     | 0.07               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_hal-rtc_time                                                      | mk time
                                                        | 1      | 0      | OK     | 19.37              |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_hal-rtc_time                                                      | test is leap year
                                                        | 1      | 0      | OK     | 0.05               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_hal-rtc_time                                                      | test local time
                                                        | 1      | 0      | OK     | 26.76              |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_hal-rtc_time                                                      | test local time limits
                                                        | 1      | 0      | OK     | 0.06               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_hal-rtc_time                                                      | test mk time out of range values
                                                        | 1      | 0      | OK     | 0.06               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_hal-sleep_manager                                                 | sleep manager -  deep sleep counter
                                                        | 1      | 0      | OK     | 0.06               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_hal-sleep_manager_racecondition                                   | sleep manager HAL - locking IRQ
                                                        | 1      | 0      | OK     | 5.06               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_hal-sleep_manager_racecondition                                   | sleep manager HAL - locking multithreaded
                                                        | 1      | 0      | OK     | 2.59               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_hal-ticker                                                        | legacy insert event head
                                                        | 1      | 0      | OK     | 0.06               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_hal-ticker                                                        | legacy insert event in overflow range
                                                        | 1      | 0      | OK     | 0.07               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_hal-ticker                                                        | legacy insert event multiple overflow
                                                        | 1      | 0      | OK     | 0.07               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_hal-ticker                                                        | legacy insert event outside overflow range
                                                        | 1      | 0      | OK     | 0.08               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_hal-ticker                                                        | legacy insert event overflow
                                                        | 1      | 0      | OK     | 0.06               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_hal-ticker                                                        | legacy insert event tail
                                                        | 1      | 0      | OK     | 0.06               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_hal-ticker                                                        | test_frequencies_and_masks
                                                        | 1      | 0      | OK     | 1.51               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_hal-ticker                                                        | test_insert_event_us_head
                                                        | 1      | 0      | OK     | 0.06               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_hal-ticker                                                        | test_insert_event_us_in_overflow_range
                                                        | 1      | 0      | OK     | 0.07               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_hal-ticker                                                        | test_insert_event_us_multiple_random
                                                        | 1      | 0      | OK     | 0.06               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_hal-ticker                                                        | test_insert_event_us_outside_overflow_rang
e                                                       | 1      | 0      | OK     | 0.07               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_hal-ticker                                                        | test_insert_event_us_tail
                                                        | 1      | 0      | OK     | 0.05               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_hal-ticker                                                        | test_insert_event_us_underflow
                                                        | 1      | 0      | OK     | 0.06               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_hal-ticker                                                        | test_irq_handler_insert_immediate_in_irq
                                                        | 1      | 0      | OK     | 0.07               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_hal-ticker                                                        | test_irq_handler_insert_non_immediate_in_i
rq                                                      | 1      | 0      | OK     | 0.08               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_hal-ticker                                                        | test_irq_handler_multiple_event_multiple_d
equeue                                                  | 1      | 0      | OK     | 0.08               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_hal-ticker                                                        | test_irq_handler_multiple_event_single_deq
ueue                                                    | 1      | 0      | OK     | 0.07               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_hal-ticker                                                        | test_irq_handler_multiple_event_single_deq
ueue_overflow                                           | 1      | 0      | OK     | 0.08               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_hal-ticker                                                        | test_irq_handler_single_event
                                                        | 1      | 0      | OK     | 0.06               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_hal-ticker                                                        | test_irq_handler_single_event_spurious
                                                        | 1      | 0      | OK     | 0.07               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_hal-ticker                                                        | test_legacy_insert_event_multiple_random
                                                        | 1      | 0      | OK     | 0.07               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_hal-ticker                                                        | test_match_interval_passed
                                                        | 1      | 0      | OK     | 0.05               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_hal-ticker                                                        | test_match_interval_passed_table
                                                        | 1      | 0      | OK     | 0.06               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_hal-ticker                                                        | test_remove_event_head
                                                        | 1      | 0      | OK     | 0.05               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_hal-ticker                                                        | test_remove_event_invalid
                                                        | 1      | 0      | OK     | 0.05               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_hal-ticker                                                        | test_remove_event_tail
                                                        | 1      | 0      | OK     | 0.05               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_hal-ticker                                                        | test_remove_random
                                                        | 1      | 0      | OK     | 0.05               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_hal-ticker                                                        | test_set_interrupt_past_time
                                                        | 1      | 0      | OK     | 0.06               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_hal-ticker                                                        | test_set_interrupt_past_time_with_delay
                                                        | 1      | 0      | OK     | 0.07               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_hal-ticker                                                        | test_ticker_max_value
                                                        | 1      | 0      | OK     | 0.05               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_hal-ticker                                                        | ticker initialization
                                                        | 1      | 0      | OK     | 0.05               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_hal-ticker                                                        | ticker multiple initialization
                                                        | 1      | 0      | OK     | 0.06               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_hal-ticker                                                        | ticker read
                                                        | 1      | 0      | OK     | 0.04               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_hal-ticker                                                        | ticker read overflow
                                                        | 1      | 0      | OK     | 0.05               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_hal-ticker                                                        | update overflow guard
                                                        | 1      | 0      | OK     | 0.05               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbed_hal-ticker                                                        | update overflow guard in case of spurious
interrupt                                               | 1      | 0      | OK     | 0.08               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-mbed-attributes                                              | Testing ALIGN attribute
                                                        | 1      | 0      | OK     | 0.06               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-mbed-attributes                                              | Testing DEPRECATED attribute
                                                        | 1      | 0      | OK     | 0.06               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-mbed-attributes                                              | Testing FORCEINLINE attribute
                                                        | 1      | 0      | OK     | 0.06               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-mbed-attributes                                              | Testing NORETURN attribute
                                                        | 1      | 0      | OK     | 0.05               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-mbed-attributes                                              | Testing PACKED attribute
                                                        | 1      | 0      | OK     | 0.06               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-mbed-attributes                                              | Testing PURE attribute
                                                        | 1      | 0      | OK     | 0.05               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-mbed-attributes                                              | Testing UNREACHABLE attribute
                                                        | 1      | 0      | OK     | 0.06               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-mbed-attributes                                              | Testing UNUSED attribute
                                                        | 1      | 0      | OK     | 0.05               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-mbed-attributes                                              | Testing WEAK attribute
                                                        | 1      | 0      | OK     | 0.05               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-mbed-call_before_main                                        | mbed-os-tests-mbedmicro-mbed-call_before_m
ain                                                     | 1      | 0      | OK     | 13.63              |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-mbed-cpp                                                     | mbed-os-tests-mbedmicro-mbed-cpp
                                                        | 1      | 0      | OK     | 13.74              |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-mbed-div                                                     | mbed-os-tests-mbedmicro-mbed-div
                                                        | 1      | 0      | OK     | 13.9               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-mbed-static_assert                                           | Compilation test
                                                        | 1      | 0      | OK     | 0.05               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-rtos-mbed-basic                                              | Test Thread::wait accuracy
                                                        | 1      | 0      | OK     | 8.39               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-rtos-mbed-condition_variable                                 | Test linked list
                                                        | 1      | 0      | OK     | 0.05               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-rtos-mbed-condition_variable                                 | Test notify all
                                                        | 1      | 0      | OK     | 0.06               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-rtos-mbed-condition_variable                                 | Test notify one
                                                        | 1      | 0      | OK     | 0.06               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-rtos-mbed-event_flags                                        | Test clear/set with prohibited flag
                                                        | 1      | 0      | OK     | 0.07               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-rtos-mbed-event_flags                                        | Test empty clear
                                                        | 1      | 0      | OK     | 0.05               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-rtos-mbed-event_flags                                        | Test empty get
                                                        | 1      | 0      | OK     | 0.05               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-rtos-mbed-event_flags                                        | Test empty set
                                                        | 1      | 0      | OK     | 0.04               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-rtos-mbed-event_flags                                        | Test multi-threaded wait_all
                                                        | 1      | 0      | OK     | 0.08               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-rtos-mbed-event_flags                                        | Test multi-threaded wait_all many wait
                                                        | 1      | 0      | OK     | 0.07               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-rtos-mbed-event_flags                                        | Test multi-threaded wait_any
                                                        | 1      | 0      | OK     | 0.07               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-rtos-mbed-event_flags                                        | Test multi-threaded wait_any no clear
                                                        | 1      | 0      | OK     | 0.08               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-rtos-mbed-event_flags                                        | Test multi-threaded wait_any timeout
                                                        | 1      | 0      | OK     | 0.38               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-rtos-mbed-event_flags                                        | Test set/get/clear for full flag range
                                                        | 1      | 0      | OK     | 0.07               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-rtos-mbed-heap_and_stack                                     | Test heap allocation and free
                                                        | 1      | 0      | OK     | 0.12               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-rtos-mbed-heap_and_stack                                     | Test heap in range
                                                        | 1      | 0      | OK     | 0.05               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-rtos-mbed-heap_and_stack                                     | Test isr stack in range
                                                        | 1      | 0      | OK     | 0.06               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-rtos-mbed-heap_and_stack                                     | Test main stack in range
                                                        | 1      | 0      | OK     | 0.05               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-rtos-mbed-mail                                               | Test calloc
                                                        | 1      | 0      | OK     | 0.04               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-rtos-mbed-mail                                               | Test get with timeout on empty mailbox
                                                        | 1      | 0      | OK     | 0.12               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-rtos-mbed-mail                                               | Test get without timeout on empty mailbox
                                                        | 1      | 0      | OK     | 0.07               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-rtos-mbed-mail                                               | Test invalid message free
                                                        | 1      | 0      | OK     | 0.05               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-rtos-mbed-mail                                               | Test mail empty
                                                        | 1      | 0      | OK     | 0.04               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-rtos-mbed-mail                                               | Test mail full
                                                        | 1      | 0      | OK     | 0.04               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-rtos-mbed-mail                                               | Test mailbox max size
                                                        | 1      | 0      | OK     | 0.06               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-rtos-mbed-mail                                               | Test message free twice
                                                        | 1      | 0      | OK     | 0.05               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-rtos-mbed-mail                                               | Test message send order
                                                        | 1      | 0      | OK     | 0.05               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-rtos-mbed-mail                                               | Test message send/receive multi-thread and
 per thread order                                       | 1      | 0      | OK     | 0.39               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-rtos-mbed-mail                                               | Test message send/receive multi-thread, mu
lti-Mail and per thread order                           | 1      | 0      | OK     | 0.2                |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-rtos-mbed-mail                                               | Test message send/receive single thread an
d order                                                 | 1      | 0      | OK     | 0.16               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-rtos-mbed-mail                                               | Test message type uint16
                                                        | 1      | 0      | OK     | 0.05               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-rtos-mbed-mail                                               | Test message type uint32
                                                        | 1      | 0      | OK     | 0.05               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-rtos-mbed-mail                                               | Test message type uint8
                                                        | 1      | 0      | OK     | 0.06               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-rtos-mbed-mail                                               | Test null message free
                                                        | 1      | 0      | OK     | 0.05               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-rtos-mbed-malloc                                             | Test 0 size allocation
                                                        | 1      | 0      | OK     | 0.05               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-rtos-mbed-malloc                                             | Test NULL pointer free
                                                        | 1      | 0      | OK     | 0.05               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-rtos-mbed-malloc                                             | Test large allocation
                                                        | 1      | 0      | OK     | 0.05               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-rtos-mbed-malloc                                             | Test multithreaded allocations
                                                        | 1      | 0      | OK     | 20.07              |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-rtos-mbed-memorypool                                         | Test: alloc()/calloc() - success, 1 bytes
b_type, q_size equal to 1.                              | 1      | 0      | OK     | 0.1                |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-rtos-mbed-memorypool                                         | Test: alloc()/calloc() - success, 1 bytes
b_type, q_size equal to 3.                              | 1      | 0      | OK     | 0.1                |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-rtos-mbed-memorypool                                         | Test: alloc()/calloc() - success, 4 bytes
b_type, q_size equal to 1.                              | 1      | 0      | OK     | 0.1                |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-rtos-mbed-memorypool                                         | Test: alloc()/calloc() - success, 4 bytes
b_type, q_size equal to 3.                              | 1      | 0      | OK     | 0.1                |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-rtos-mbed-memorypool                                         | Test: alloc()/calloc() - success, complex
b_type, q_size equal to 1.                              | 1      | 0      | OK     | 0.1                |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-rtos-mbed-memorypool                                         | Test: alloc()/calloc() - success, complex
b_type, q_size equal to 3.                              | 1      | 0      | OK     | 0.1                |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-rtos-mbed-memorypool                                         | Test: fail (out of free blocks).
                                                        | 1      | 0      | OK     | 0.06               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-rtos-mbed-memorypool                                         | Test: free() - robust (free block twice).
                                                        | 1      | 0      | OK     | 0.07               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-rtos-mbed-memorypool                                         | Test: free() - robust (free called with in
valid param - NULL).                                    | 1      | 0      | OK     | 0.09               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-rtos-mbed-memorypool                                         | Test: free() - robust (free called with in
valid param).                                           | 1      | 0      | OK     | 0.09               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-rtos-mbed-memorypool                                         | Test: free() - success, 4 bytes b_type, q_
size equal to 1.                                        | 1      | 0      | OK     | 0.09               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-rtos-mbed-memorypool                                         | Test: free() - success, 4 bytes b_type, q_
size equal to 3.                                        | 1      | 0      | OK     | 0.09               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-rtos-mbed-memorypool                                         | Test: free() - success, complex b_type, q_
size equal to 1.                                        | 1      | 0      | OK     | 0.09               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-rtos-mbed-memorypool                                         | Test: free() - success, complex b_type, q_
size equal to 3.                                        | 1      | 0      | OK     | 0.09               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-rtos-mbed-memorypool                                         | Test: re-allocation of the first block, ba
sic type.                                               | 1      | 0      | OK     | 0.08               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-rtos-mbed-memorypool                                         | Test: re-allocation of the first block, co
mplex type.                                             | 1      | 0      | OK     | 0.08               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-rtos-mbed-memorypool                                         | Test: re-allocation of the last block, bas
ic type.                                                | 1      | 0      | OK     | 0.08               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-rtos-mbed-memorypool                                         | Test: re-allocation of the last block, com
plex type.                                              | 1      | 0      | OK     | 0.09               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-rtos-mbed-mutex                                              | Test dual thread lock locked
                                                        | 1      | 0      | OK     | 0.08               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-rtos-mbed-mutex                                              | Test dual thread lock unlock
                                                        | 1      | 0      | OK     | 0.07               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-rtos-mbed-mutex                                              | Test dual thread second thread lock
                                                        | 1      | 0      | OK     | 0.08               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-rtos-mbed-mutex                                              | Test dual thread second thread trylock
                                                        | 1      | 0      | OK     | 0.08               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-rtos-mbed-mutex                                              | Test dual thread trylock locked
                                                        | 1      | 0      | OK     | 0.08               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-rtos-mbed-mutex                                              | Test multiple thread
                                                        | 1      | 0      | OK     | 2.09               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-rtos-mbed-mutex                                              | Test single thread lock
                                                        | 1      | 0      | OK     | 0.05               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-rtos-mbed-mutex                                              | Test single thread lock recursive
                                                        | 1      | 0      | OK     | 0.06               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-rtos-mbed-mutex                                              | Test single thread trylock
                                                        | 1      | 0      | OK     | 0.05               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-rtos-mbed-queue                                              | Test get empty wait forever
                                                        | 1      | 0      | OK     | 0.12               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-rtos-mbed-queue                                              | Test get from empty queue no timeout
                                                        | 1      | 0      | OK     | 0.06               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-rtos-mbed-queue                                              | Test get from empty queue timeout
                                                        | 1      | 0      | OK     | 0.12               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-rtos-mbed-queue                                              | Test message ordering
                                                        | 1      | 0      | OK     | 0.05               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-rtos-mbed-queue                                              | Test message priority
                                                        | 1      | 0      | OK     | 0.05               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-rtos-mbed-queue                                              | Test pass ptr msg
                                                        | 1      | 0      | OK     | 0.04               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-rtos-mbed-queue                                              | Test pass uint msg
                                                        | 1      | 0      | OK     | 0.04               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-rtos-mbed-queue                                              | Test pass uint msg twice
                                                        | 1      | 0      | OK     | 0.07               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-rtos-mbed-queue                                              | Test put full no timeout
                                                        | 1      | 0      | OK     | 0.05               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-rtos-mbed-queue                                              | Test put full timeout
                                                        | 1      | 0      | OK     | 0.1                |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-rtos-mbed-queue                                              | Test put full wait forever
                                                        | 1      | 0      | OK     | 0.11               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-rtos-mbed-queue                                              | Test queue empty
                                                        | 1      | 0      | OK     | 0.05               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-rtos-mbed-queue                                              | Test queue full
                                                        | 1      | 0      | OK     | 0.05               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-rtos-mbed-rtostimer                                          | Calls from ISR fail
                                                        | 1      | 0      | OK     | 0.1                |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-rtos-mbed-rtostimer                                          | One-shot not restarted when elapsed
                                                        | 1      | 0      | OK     | 0.17               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-rtos-mbed-rtostimer                                          | Periodic repeats continuously
                                                        | 1      | 0      | OK     | 0.21               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-rtos-mbed-rtostimer                                          | Restart changes timeout
                                                        | 1      | 0      | OK     | 0.09               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-rtos-mbed-rtostimer                                          | Stopped timer can be started again
                                                        | 1      | 0      | OK     | 0.17               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-rtos-mbed-rtostimer                                          | Timer can be stopped
                                                        | 1      | 0      | OK     | 0.11               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-rtos-mbed-rtostimer                                          | Timer is created in stopped state
                                                        | 1      | 0      | OK     | 0.07               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-rtos-mbed-rtostimer                                          | Timer started with infinite delay
                                                        | 1      | 0      | OK     | 0.06               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-rtos-mbed-rtostimer                                          | Timer started with zero delay
                                                        | 1      | 0      | OK     | 0.06               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-rtos-mbed-semaphore                                          | Test 0 tokens no timeout
                                                        | 1      | 0      | OK     | 0.05               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-rtos-mbed-semaphore                                          | Test 1 token no timeout
                                                        | 1      | 0      | OK     | 0.05               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-rtos-mbed-semaphore                                          | Test multiple threads
                                                        | 1      | 0      | OK     | 3.35               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-rtos-mbed-semaphore                                          | Test multiple tokens release
                                                        | 1      | 0      | OK     | 0.06               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-rtos-mbed-semaphore                                          | Test multiple tokens wait
                                                        | 1      | 0      | OK     | 0.05               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-rtos-mbed-semaphore                                          | Test single thread
                                                        | 1      | 0      | OK     | 0.05               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-rtos-mbed-semaphore                                          | Test timeout
                                                        | 1      | 0      | OK     | 0.07               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-rtos-mbed-signals                                            | Validate all signals clear in one shot
                                                        | 1      | 0      | OK     | 0.07               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-rtos-mbed-signals                                            | Validate all signals set in one shot
                                                        | 1      | 0      | OK     | 0.06               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-rtos-mbed-signals                                            | Validate all signals set one by one in loo
p                                                       | 1      | 0      | OK     | 0.08               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-rtos-mbed-signals                                            | Validate if any signals are set on just cr
eated thread                                            | 1      | 0      | OK     | 0.09               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-rtos-mbed-signals                                            | Validate if setting same signal twice caus
e any unwanted behaviour                                | 1      | 0      | OK     | 0.1                |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-rtos-mbed-signals                                            | Validate if signal_wait accumulate signals
 and return correctly when all signals set              | 1      | 0      | OK     | 0.12               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-rtos-mbed-signals                                            | Validate if signal_wait return correctly w
hen all signals set                                     | 1      | 0      | OK     | 0.09               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-rtos-mbed-signals                                            | Validate signal_wait return status if time
out specified: 0[ms] all signals                        | 1      | 0      | OK     | 0.11               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-rtos-mbed-signals                                            | Validate signal_wait return status if time
out specified: 0[ms] no signals                         | 1      | 0      | OK     | 0.11               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-rtos-mbed-signals                                            | Validate signal_wait return status if time
out specified: 1[ms] all signals                        | 1      | 0      | OK     | 0.11               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-rtos-mbed-signals                                            | Validate signal_wait return status if time
out specified: 1[ms] no signals                         | 1      | 0      | OK     | 0.11               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-rtos-mbed-signals                                            | Validate that call of signal_wait return c
orrectly when thread has all signals already set        | 1      | 0      | OK     | 0.13               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-rtos-mbed-signals                                            | Validate that call signal_clr(NO_SIGNALS)
doesn't change thread signals and return actual signals | 1      | 0      | OK     | 0.13               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-rtos-mbed-signals                                            | Validate that call signal_set with prohibi
ted signal doesn't change thread signals                | 1      | 0      | OK     | 0.12               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-rtos-mbed-threads                                            | Testing parallel threads
                                                        | 1      | 0      | OK     | 0.05               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-rtos-mbed-threads                                            | Testing parallel threads with child
                                                        | 1      | 0      | OK     | 0.07               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-rtos-mbed-threads                                            | Testing parallel threads with murder
                                                        | 1      | 0      | OK     | 0.07               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-rtos-mbed-threads                                            | Testing parallel threads with wait
                                                        | 1      | 0      | OK     | 0.17               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-rtos-mbed-threads                                            | Testing parallel threads with yield
                                                        | 1      | 0      | OK     | 0.06               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-rtos-mbed-threads                                            | Testing serial threads
                                                        | 1      | 0      | OK     | 0.06               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-rtos-mbed-threads                                            | Testing serial threads with child
                                                        | 1      | 0      | OK     | 0.06               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-rtos-mbed-threads                                            | Testing serial threads with murder
                                                        | 1      | 0      | OK     | 0.06               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-rtos-mbed-threads                                            | Testing serial threads with wait
                                                        | 1      | 0      | OK     | 1.06               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-rtos-mbed-threads                                            | Testing serial threads with yield
                                                        | 1      | 0      | OK     | 0.06               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-rtos-mbed-threads                                            | Testing single thread
                                                        | 1      | 0      | OK     | 0.05               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-rtos-mbed-threads                                            | Testing single thread with child
                                                        | 1      | 0      | OK     | 0.07               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-rtos-mbed-threads                                            | Testing single thread with murder
                                                        | 1      | 0      | OK     | 0.06               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-rtos-mbed-threads                                            | Testing single thread with wait
                                                        | 1      | 0      | OK     | 0.16               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-rtos-mbed-threads                                            | Testing single thread with yield
                                                        | 1      | 0      | OK     | 0.06               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-rtos-mbed-threads                                            | Testing thread name
                                                        | 1      | 0      | OK     | 0.05               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-rtos-mbed-threads                                            | Testing thread priority ops
                                                        | 1      | 0      | OK     | 0.06               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-rtos-mbed-threads                                            | Testing thread self terminate
                                                        | 1      | 0      | OK     | 0.06               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-rtos-mbed-threads                                            | Testing thread signals: multi-bit
                                                        | 1      | 0      | OK     | 0.06               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-rtos-mbed-threads                                            | Testing thread signals: multi-bit timeout
                                                        | 1      | 0      | OK     | 0.12               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-rtos-mbed-threads                                            | Testing thread signals: signal clear
                                                        | 1      | 0      | OK     | 0.06               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-rtos-mbed-threads                                            | Testing thread signals: timeout
                                                        | 1      | 0      | OK     | 0.11               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-rtos-mbed-threads                                            | Testing thread signals: wait
                                                        | 1      | 0      | OK     | 0.06               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-rtos-mbed-threads                                            | Testing thread stack info
                                                        | 1      | 0      | OK     | 0.06               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-rtos-mbed-threads                                            | Testing thread states: deleted
                                                        | 1      | 0      | OK     | 0.06               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-rtos-mbed-threads                                            | Testing thread states: wait delay
                                                        | 1      | 0      | OK     | 0.11               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-rtos-mbed-threads                                            | Testing thread states: wait event flag
                                                        | 1      | 0      | OK     | 0.07               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-rtos-mbed-threads                                            | Testing thread states: wait message get
                                                        | 1      | 0      | OK     | 0.07               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-rtos-mbed-threads                                            | Testing thread states: wait message put
                                                        | 1      | 0      | OK     | 0.06               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-rtos-mbed-threads                                            | Testing thread states: wait mutex
                                                        | 1      | 0      | OK     | 0.06               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-rtos-mbed-threads                                            | Testing thread states: wait semaphore
                                                        | 1      | 0      | OK     | 0.07               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-rtos-mbed-threads                                            | Testing thread states: wait signal
                                                        | 1      | 0      | OK     | 0.06               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-rtos-mbed-threads                                            | Testing thread wait
                                                        | 1      | 0      | OK     | 0.2                |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedmicro-rtos-mbed-threads                                            | Testing thread with external stack memory
                                                        | 1      | 0      | OK     | 0.07               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedtls-multi                                                          | Crypto: sha256_multi
                                                        | 1      | 0      | OK     | 0.81               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedtls-multi                                                          | Crypto: sha256_split
                                                        | 1      | 0      | OK     | 0.28               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedtls-selftest                                                       | mbedtls_sha256_self_test
                                                        | 1      | 0      | OK     | 1.67               |
| NRF52_DK-GCC_ARM | NRF52_DK      | mbed-os-tests-mbedtls-selftest                                                       | mbedtls_sha512_self_test
                                                        | 1      | 0      | OK     | 5.52               |
+------------------+---------------+--------------------------------------------------------------------------------------+-------------------------------------------
--------------------------------------------------------+--------+--------+--------+--------------------+
mbedgt: test case results: 385 OK
mbedgt: completed in 1241.48 sec
@nvlsianpu

This comment has been minimized.

Contributor

nvlsianpu commented Jan 2, 2018

@0xc0170 #5595 (comment) : Nordic target were not included as DUT.

@0xc0170

This comment has been minimized.

Member

0xc0170 commented Jan 2, 2018

/morph build

@mbed-ci

This comment has been minimized.

mbed-ci commented Jan 2, 2018

Build : SUCCESS

Build number : 781
Build artifacts/logs : http://mbed-os.s3-website-eu-west-1.amazonaws.com/?prefix=builds/5595/

Triggering tests

/morph test
/morph uvisor-test
/morph export-build

@mbed-ci

This comment has been minimized.

@mbed-ci

This comment has been minimized.

nordic_cr_nested--;

if (nordic_cr_nested == 0)
{

This comment has been minimized.

@0xc0170

0xc0170 Jan 3, 2018

Member

can you fix the code style in this function - { here on the same line as if,

#ifdef on line 96 at the line beginning (also 69)

line 100 , same as this line

line 78 also

This comment has been minimized.

@nvlsianpu

nvlsianpu Jan 3, 2018

Contributor

fixed by push --force

@0xc0170

This comment has been minimized.

Member

0xc0170 commented Jan 3, 2018

Thanks for sharing the tests results. Apart from style changes request, LGTM

Implementation of critical section primitives
which can be called from diferent contexts.

Orginal nordic critical primitives must been called in pairs
from exacly the same function. As mbed hal call it in separate
methods, so they are not suitable here.

@nvlsianpu nvlsianpu force-pushed the nvlsianpu:bugfix/nordic_critical_section branch from 6f07fe8 to ae41c7d Jan 3, 2018

@0xc0170

0xc0170 approved these changes Jan 3, 2018

@0xc0170 0xc0170 added needs: CI and removed needs: work labels Jan 3, 2018

@0xc0170

This comment has been minimized.

Member

0xc0170 commented Jan 3, 2018

/morph build

@mbed-ci

This comment has been minimized.

mbed-ci commented Jan 3, 2018

Build : SUCCESS

Build number : 787
Build artifacts/logs : http://mbed-os.s3-website-eu-west-1.amazonaws.com/?prefix=builds/5595/

Triggering tests

/morph test
/morph uvisor-test
/morph export-build

@mbed-ci

This comment has been minimized.

@0xc0170

This comment has been minimized.

Member

0xc0170 commented Jan 3, 2018

Node failure, restarting

/morph export-build

@mbed-ci

This comment has been minimized.

@mbed-ci

This comment has been minimized.

@0xc0170 0xc0170 added ready for merge and removed needs: CI labels Jan 3, 2018

@0xc0170

This comment has been minimized.

Member

0xc0170 commented Jan 3, 2018

@scartmell-arm This fix gets will need to be propagated to the critical section update

@theotherjimmy theotherjimmy merged commit b2495c7 into ARMmbed:master Jan 4, 2018

18 checks passed

AWS-CI uVisor Build & Test Verification build successful.
Details
ci-morph-build build completed
Details
ci-morph-exporter build completed
Details
ci-morph-test test completed
Details
continuous-integration/jenkins/pr-head This commit looks good
Details
continuous-integration/travis-ci/pr The Travis CI build passed
Details
travis-ci/docs Local docs testing has passed
Details
travis-ci/events Local events testing has passed
Details
travis-ci/littlefs Local littlefs testing has passed
Details
travis-ci/mbed2-ATMEL Local mbed2-ATMEL testing has passed
Details
travis-ci/mbed2-MAXIM Local mbed2-MAXIM testing has passed
Details
travis-ci/mbed2-NORDIC Local mbed2-NORDIC testing has passed
Details
travis-ci/mbed2-NUVOTON Local mbed2-NUVOTON testing has passed
Details
travis-ci/mbed2-NXP Local mbed2-NXP testing has passed
Details
travis-ci/mbed2-RENESAS Local mbed2-RENESAS testing has passed
Details
travis-ci/mbed2-SILICON_LABS Local mbed2-SILICON_LABS testing has passed
Details
travis-ci/mbed2-STM Local mbed2-STM testing has passed
Details
travis-ci/tools Local tools testing has passed
Details
@0xc0170

This comment has been minimized.

Member

0xc0170 commented Jan 4, 2018

Reference: #5346 (this PR will require an update)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment