aboutsummaryrefslogtreecommitdiffstats
path: root/doc
diff options
context:
space:
mode:
authorGiovanni Di Sirio <gdisirio@gmail.com>2017-09-19 11:03:42 +0000
committerGiovanni Di Sirio <gdisirio@gmail.com>2017-09-19 11:03:42 +0000
commitf1cfee405840f51feef73a7f74f1c2609e3a319e (patch)
tree23a3a1c98c4574bc14f642cb4d961196fbc8c0f9 /doc
parent280e0feed33d386b39d3f459deb62e29eb5d3c42 (diff)
downloadChibiOS-f1cfee405840f51feef73a7f74f1c2609e3a319e.tar.gz
ChibiOS-f1cfee405840f51feef73a7f74f1c2609e3a319e.tar.bz2
ChibiOS-f1cfee405840f51feef73a7f74f1c2609e3a319e.zip
RT reports.
git-svn-id: svn://svn.code.sf.net/p/chibios/svn/trunk@10645 35acf78f-673a-0410-8e92-d51de3d6d3f4
Diffstat (limited to 'doc')
-rw-r--r--doc/rt/reports/STM32F051-48-GCC.txt198
-rw-r--r--doc/rt/reports/STM32F303-72-GCC-FPU.txt198
-rw-r--r--doc/rt/reports/STM32F303-72-GCC.txt198
-rw-r--r--doc/rt/reports/STM32F407-168-GCC-FPU.txt198
-rw-r--r--doc/rt/reports/STM32F407-168-GCC.txt198
-rw-r--r--doc/rt/reports/STM32F746-216-GCC-FPU.txt177
-rw-r--r--doc/rt/reports/STM32F746-216-GCC.txt175
-rw-r--r--doc/rt/reports/STM32L053-32-GCC.txt198
-rw-r--r--doc/rt/reports/STM32L476-80-GCC-FPU.txt198
-rw-r--r--doc/rt/reports/STM32L476-80-GCC.txt198
-rw-r--r--doc/rt/reports/testbuild.7zbin146780 -> 147496 bytes
11 files changed, 1299 insertions, 637 deletions
diff --git a/doc/rt/reports/STM32F051-48-GCC.txt b/doc/rt/reports/STM32F051-48-GCC.txt
index 8a45e0c99..7e2b4086c 100644
--- a/doc/rt/reports/STM32F051-48-GCC.txt
+++ b/doc/rt/reports/STM32F051-48-GCC.txt
@@ -1,161 +1,231 @@
-*** ChibiOS/RT test suite
+*** ChibiOS/RT Test Suite
***
-*** Kernel: 3.1.0
-*** Compiled: Jan 6 2016 - 10:53:39
-*** Compiler: GCC 4.9.3 20150529 (release) [ARM/embedded-4_9-branch revision 227977]
+*** Compiled: Sep 19 2017 - 11:53:18
+*** Platform: STM32F051x8 Entry Level Access Line devices
+*** Test Board: ST STM32F0-Discovery
+*** Compiler: GCC 5.4.1 20160919 (release) [ARM/embedded-5-branch revision 240496]
*** Architecture: ARMv6-M
*** Core Variant: Cortex-M0
*** Port Info: Preemption through NMI
-*** Platform: STM32F051x8 Entry Level Medium Density devices
-*** Test Board: ST STM32F0-Discovery
----------------------------------------------------------------------------
---- Test Case 1.1 (System, critical zones)
+--- Test Case 1.1 (Kernel Info)
+--- Product: ChibiOS/RT
+--- Stable Flag: 1
+--- Version String: 4.0.1
+--- Major Number: 4
+--- Minor Number: 0
+--- Patch Number: 1
+--- Result: SUCCESS
+----------------------------------------------------------------------------
+--- Test Case 1.2 (Kernel Settings)
+--- CH_CFG_ST_RESOLUTION: 32
+--- CH_CFG_ST_FREQUENCY: 10000
+--- CH_CFG_ST_TIMEDELTA: 2
+--- CH_CFG_TIME_QUANTUM: 0
+--- CH_CFG_MEMCORE_SIZE: 0
+--- CH_CFG_NO_IDLE_THREAD: 0
+--- CH_CFG_OPTIMIZE_SPEED: 1
+--- CH_CFG_USE_TM: 0
+--- CH_CFG_USE_REGISTRY: 1
+--- CH_CFG_USE_WAITEXIT: 1
+--- CH_CFG_USE_SEMAPHORES: 1
+--- CH_CFG_USE_SEMAPHORES_PRI: 0
+--- CH_CFG_USE_MUTEXES: 1
+--- CH_CFG_USE_MUTEXES_RECURS: 0
+--- CH_CFG_USE_CONDVARS: 1
+--- CH_CFG_USE_CONDVARS_TIMEO: 1
+--- CH_CFG_USE_EVENTS: 1
+--- CH_CFG_USE_EVENTS_TIMEOUT: 1
+--- CH_CFG_USE_MESSAGES: 1
+--- CH_CFG_USE_MESSAGES_PRI: 0
+--- CH_CFG_USE_MAILBOXES: 1
+--- CH_CFG_USE_MEMCORE: 1
+--- CH_CFG_USE_HEAP: 1
+--- CH_CFG_USE_MEMPOOLS: 1
+--- CH_CFG_USE_DYNAMIC: 1
+--- CH_DBG_STATISTICS: 0
+--- CH_DBG_SYSTEM_STATE_CHECK: 0
+--- CH_DBG_ENABLE_CHECKS: 0
+--- CH_DBG_ENABLE_ASSERTS: 0
+--- CH_DBG_TRACE_MASK: 255
+--- CH_DBG_TRACE_BUFFER_SIZE: 128
+--- CH_DBG_ENABLE_STACK_CHECK: 0
+--- CH_DBG_FILL_THREADS: 0
+--- CH_DBG_THREADS_PROFILING: 0
+--- Result: SUCCESS
+----------------------------------------------------------------------------
+--- Test Case 2.1 (System integrity functionality)
+--- Result: SUCCESS
+----------------------------------------------------------------------------
+--- Test Case 2.2 (Critical zones functionality)
+--- Result: SUCCESS
+----------------------------------------------------------------------------
+--- Test Case 2.3 (Interrupts handling functionality)
+--- Result: SUCCESS
+----------------------------------------------------------------------------
+--- Test Case 2.4 (System Tick Counter functionality)
+--- Result: SUCCESS
+----------------------------------------------------------------------------
+--- Test Case 3.1 (Thread Sleep functionality)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 1.2 (System, interrupts handling)
+--- Test Case 3.2 (Ready List functionality, threads priority order)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 1.3 (System, integrity)
+--- Test Case 3.3 (Priority change test)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 2.1 (Threads, enqueuing test #1)
+--- Test Case 3.4 (Priority change test with Priority Inheritance)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 2.2 (Threads, enqueuing test #2)
+--- Test Case 4.1 (Suspend and Resume functionality)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 2.3 (Threads, priority change)
+--- Test Case 5.1 (Semaphore primitives, no state change)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 2.4 (Threads, delays)
+--- Test Case 5.2 (Semaphore enqueuing test)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 3.1 (Semaphores, enqueuing)
+--- Test Case 5.3 (Semaphore timeout test)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 3.2 (Semaphores, timeout)
+--- Test Case 5.4 (Testing chSemAddCounterI() functionality)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 3.3 (Semaphores, atomic signal-wait)
+--- Test Case 5.5 (Testing chSemWaitSignal() functionality)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 3.4 (Binary Semaphores, functionality)
+--- Test Case 5.6 (Testing Binary Semaphores special case)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 4.1 (Mutexes, priority enqueuing test)
+--- Test Case 6.1 (Priority enqueuing test)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 4.2 (Mutexes, priority return)
+--- Test Case 6.2 (Priority return verification)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 4.3 (Mutexes, status)
+--- Test Case 6.3 (Repeated locks, non recursive scenario)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 4.4 (CondVar, signal test)
+--- Test Case 6.4 (Condition Variable signal test)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 4.5 (CondVar, broadcast test)
+--- Test Case 6.5 (Condition Variable broadcast test)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 4.6 (CondVar, boost test)
+--- Test Case 6.6 (Condition Variable priority boost test)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 5.1 (Messages, loop)
+--- Test Case 7.1 (Messages Server loop)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 6.1 (Mailboxes, queuing and timeouts)
+--- Test Case 8.1 (Events registration)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 7.1 (Events, registration and dispatch)
+--- Test Case 8.2 (Event Flags dispatching)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 7.2 (Events, wait and broadcast)
+--- Test Case 8.3 (Events Flags wait using chEvtWaitOne())
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 7.3 (Events, timeouts)
+--- Test Case 8.4 (Events Flags wait using chEvtWaitAny())
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 8.1 (Heap, allocation and fragmentation test)
+--- Test Case 8.5 (Events Flags wait using chEvtWaitAll())
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 9.1 (Memory Pools, queue/dequeue)
+--- Test Case 8.6 (Events Flags wait timeouts)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 10.1 (Dynamic APIs, threads creation from heap)
+--- Test Case 8.7 (Broadcasting using chEvtBroadcast())
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 10.2 (Dynamic APIs, threads creation from memory pool)
+--- Test Case 9.1 (Mailbox normal API, non-blocking tests)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 10.3 (Dynamic APIs, registry and references)
+--- Test Case 9.2 (Mailbox I-Class API, non-blocking tests)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 11.1 (Queues, input queues)
+--- Test Case 9.3 (Mailbox timeouts)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 11.2 (Queues, output queues)
+--- Test Case 10.1 (Loading and emptying a memory pool)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 12.1 (Benchmark, messages #1)
---- Score : 161605 msgs/S, 323210 ctxswc/S
+--- Test Case 10.2 (Loading and emptying a guarded memory pool without waiting)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 12.2 (Benchmark, messages #2)
---- Score : 128334 msgs/S, 256668 ctxswc/S
+--- Test Case 10.3 (Guarded Memory Pools timeout)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 12.3 (Benchmark, messages #3)
---- Score : 128334 msgs/S, 256668 ctxswc/S
+--- Test Case 11.1 (Allocation and fragmentation)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 12.4 (Benchmark, context switch)
---- Score : 466560 ctxswc/S
+--- Test Case 11.2 (Default Heap)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 12.5 (Benchmark, threads, full cycle)
---- Score : 102121 threads/S
+--- Test Case 12.1 (Threads creation from Memory Heap)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 12.6 (Benchmark, threads, create only)
---- Score : 146779 threads/S
+--- Test Case 12.2 (Threads creation from Memory Pool)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 12.7 (Benchmark, mass reschedule, 5 threads)
---- Score : 40506 reschedules/S, 243036 ctxswc/S
+--- Test Case 13.1 (Messages performance #1)
+--- Score : 156342 msgs/S, 312684 ctxswc/S
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 12.8 (Benchmark, round robin context switching)
---- Score : 339200 ctxswc/S
+--- Test Case 13.2 (Messages performance #2)
+--- Score : 124992 msgs/S, 249984 ctxswc/S
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 12.9 (Benchmark, I/O Queues throughput)
---- Score : 413564 bytes/S
+--- Test Case 13.3 (Messages performance #3)
+--- Score : 124992 msgs/S, 249984 ctxswc/S
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 12.10 (Benchmark, virtual timers set/reset)
---- Score : 295818 timers/S
+--- Test Case 13.4 (Context Switch performance)
+--- Score : 455488 ctxswc/S
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 12.11 (Benchmark, semaphores wait/signal)
---- Score : 872708 wait+signal/S
+--- Test Case 13.5 (Threads performance, full cycle)
+--- Score : 94483 threads/S
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 12.12 (Benchmark, mutexes lock/unlock)
---- Score : 428564 lock+unlock/S
+--- Test Case 13.6 (Threads performance, create/exit only)
+--- Score : 118219 threads/S
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 12.13 (Benchmark, RAM footprint)
---- System: 336 bytes
+--- Test Case 13.7 (Mass reschedule performance)
+--- Score : 39867 reschedules/S, 239202 ctxswc/S
+--- Result: SUCCESS
+----------------------------------------------------------------------------
+--- Test Case 13.8 (Round-Robin voluntary reschedule)
+--- Score : 320512 ctxswc/S
+--- Result: SUCCESS
+----------------------------------------------------------------------------
+--- Test Case 13.9 (Virtual Timers set/reset performance)
+--- Score : 306536 timers/S
+--- Result: SUCCESS
+----------------------------------------------------------------------------
+--- Test Case 13.10 (Semaphores wait/signal performance)
+--- Score : 853316 wait+signal/S
+--- Result: SUCCESS
+----------------------------------------------------------------------------
+--- Test Case 13.11 (Mutexes lock/unlock performance)
+--- Score : 409376 lock+unlock/S
+--- Result: SUCCESS
+----------------------------------------------------------------------------
+--- Test Case 13.12 (RAM Footprint)
+--- System: 116 bytes
--- Thread: 68 bytes
--- Timer : 20 bytes
--- Semaph: 12 bytes
---- EventS: 4 bytes
---- EventL: 20 bytes
--- Mutex : 16 bytes
--- CondV.: 8 bytes
---- Queue : 36 bytes
+--- EventS: 4 bytes
+--- EventL: 20 bytes
--- MailB.: 40 bytes
--- Result: SUCCESS
----------------------------------------------------------------------------
diff --git a/doc/rt/reports/STM32F303-72-GCC-FPU.txt b/doc/rt/reports/STM32F303-72-GCC-FPU.txt
index a4f604121..1121ab30b 100644
--- a/doc/rt/reports/STM32F303-72-GCC-FPU.txt
+++ b/doc/rt/reports/STM32F303-72-GCC-FPU.txt
@@ -1,161 +1,231 @@
-*** ChibiOS/RT test suite
+*** ChibiOS/RT Test Suite
***
-*** Kernel: 3.1.0
-*** Compiled: Jan 6 2016 - 11:01:25
-*** Compiler: GCC 4.9.3 20150529 (release) [ARM/embedded-4_9-branch revision 227977]
+*** Compiled: Sep 19 2017 - 12:15:29
+*** Platform: STM32F303xC Analog & DSP
+*** Test Board: STMicroelectronics STM32F3-Discovery
+*** Compiler: GCC 5.4.1 20160919 (release) [ARM/embedded-5-branch revision 240496]
*** Architecture: ARMv7E-M
*** Core Variant: Cortex-M4F
*** Port Info: Advanced kernel mode
-*** Platform: STM32F303xC Analog & DSP
-*** Test Board: STMicroelectronics STM32F3-Discovery
----------------------------------------------------------------------------
---- Test Case 1.1 (System, critical zones)
+--- Test Case 1.1 (Kernel Info)
+--- Product: ChibiOS/RT
+--- Stable Flag: 1
+--- Version String: 4.0.1
+--- Major Number: 4
+--- Minor Number: 0
+--- Patch Number: 1
+--- Result: SUCCESS
+----------------------------------------------------------------------------
+--- Test Case 1.2 (Kernel Settings)
+--- CH_CFG_ST_RESOLUTION: 32
+--- CH_CFG_ST_FREQUENCY: 10000
+--- CH_CFG_ST_TIMEDELTA: 2
+--- CH_CFG_TIME_QUANTUM: 0
+--- CH_CFG_MEMCORE_SIZE: 0
+--- CH_CFG_NO_IDLE_THREAD: 0
+--- CH_CFG_OPTIMIZE_SPEED: 1
+--- CH_CFG_USE_TM: 1
+--- CH_CFG_USE_REGISTRY: 1
+--- CH_CFG_USE_WAITEXIT: 1
+--- CH_CFG_USE_SEMAPHORES: 1
+--- CH_CFG_USE_SEMAPHORES_PRI: 0
+--- CH_CFG_USE_MUTEXES: 1
+--- CH_CFG_USE_MUTEXES_RECURS: 0
+--- CH_CFG_USE_CONDVARS: 1
+--- CH_CFG_USE_CONDVARS_TIMEO: 1
+--- CH_CFG_USE_EVENTS: 1
+--- CH_CFG_USE_EVENTS_TIMEOUT: 1
+--- CH_CFG_USE_MESSAGES: 1
+--- CH_CFG_USE_MESSAGES_PRI: 0
+--- CH_CFG_USE_MAILBOXES: 1
+--- CH_CFG_USE_MEMCORE: 1
+--- CH_CFG_USE_HEAP: 1
+--- CH_CFG_USE_MEMPOOLS: 1
+--- CH_CFG_USE_DYNAMIC: 1
+--- CH_DBG_STATISTICS: 0
+--- CH_DBG_SYSTEM_STATE_CHECK: 0
+--- CH_DBG_ENABLE_CHECKS: 0
+--- CH_DBG_ENABLE_ASSERTS: 0
+--- CH_DBG_TRACE_MASK: 255
+--- CH_DBG_TRACE_BUFFER_SIZE: 128
+--- CH_DBG_ENABLE_STACK_CHECK: 0
+--- CH_DBG_FILL_THREADS: 0
+--- CH_DBG_THREADS_PROFILING: 0
+--- Result: SUCCESS
+----------------------------------------------------------------------------
+--- Test Case 2.1 (System integrity functionality)
+--- Result: SUCCESS
+----------------------------------------------------------------------------
+--- Test Case 2.2 (Critical zones functionality)
+--- Result: SUCCESS
+----------------------------------------------------------------------------
+--- Test Case 2.3 (Interrupts handling functionality)
+--- Result: SUCCESS
+----------------------------------------------------------------------------
+--- Test Case 2.4 (System Tick Counter functionality)
+--- Result: SUCCESS
+----------------------------------------------------------------------------
+--- Test Case 3.1 (Thread Sleep functionality)
+--- Result: SUCCESS
+----------------------------------------------------------------------------
+--- Test Case 3.2 (Ready List functionality, threads priority order)
+--- Result: SUCCESS
+----------------------------------------------------------------------------
+--- Test Case 3.3 (Priority change test)
+--- Result: SUCCESS
+----------------------------------------------------------------------------
+--- Test Case 3.4 (Priority change test with Priority Inheritance)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 1.2 (System, interrupts handling)
+--- Test Case 4.1 (Suspend and Resume functionality)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 1.3 (System, integrity)
+--- Test Case 5.1 (Semaphore primitives, no state change)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 2.1 (Threads, enqueuing test #1)
+--- Test Case 5.2 (Semaphore enqueuing test)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 2.2 (Threads, enqueuing test #2)
+--- Test Case 5.3 (Semaphore timeout test)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 2.3 (Threads, priority change)
+--- Test Case 5.4 (Testing chSemAddCounterI() functionality)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 2.4 (Threads, delays)
+--- Test Case 5.5 (Testing chSemWaitSignal() functionality)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 3.1 (Semaphores, enqueuing)
+--- Test Case 5.6 (Testing Binary Semaphores special case)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 3.2 (Semaphores, timeout)
+--- Test Case 6.1 (Priority enqueuing test)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 3.3 (Semaphores, atomic signal-wait)
+--- Test Case 6.2 (Priority return verification)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 3.4 (Binary Semaphores, functionality)
+--- Test Case 6.3 (Repeated locks, non recursive scenario)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 4.1 (Mutexes, priority enqueuing test)
+--- Test Case 6.4 (Condition Variable signal test)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 4.2 (Mutexes, priority return)
+--- Test Case 6.5 (Condition Variable broadcast test)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 4.3 (Mutexes, status)
+--- Test Case 6.6 (Condition Variable priority boost test)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 4.4 (CondVar, signal test)
+--- Test Case 7.1 (Messages Server loop)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 4.5 (CondVar, broadcast test)
+--- Test Case 8.1 (Events registration)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 4.6 (CondVar, boost test)
+--- Test Case 8.2 (Event Flags dispatching)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 5.1 (Messages, loop)
+--- Test Case 8.3 (Events Flags wait using chEvtWaitOne())
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 6.1 (Mailboxes, queuing and timeouts)
+--- Test Case 8.4 (Events Flags wait using chEvtWaitAny())
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 7.1 (Events, registration and dispatch)
+--- Test Case 8.5 (Events Flags wait using chEvtWaitAll())
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 7.2 (Events, wait and broadcast)
+--- Test Case 8.6 (Events Flags wait timeouts)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 7.3 (Events, timeouts)
+--- Test Case 8.7 (Broadcasting using chEvtBroadcast())
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 8.1 (Heap, allocation and fragmentation test)
+--- Test Case 9.1 (Mailbox normal API, non-blocking tests)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 9.1 (Memory Pools, queue/dequeue)
+--- Test Case 9.2 (Mailbox I-Class API, non-blocking tests)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 10.1 (Dynamic APIs, threads creation from heap)
+--- Test Case 9.3 (Mailbox timeouts)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 10.2 (Dynamic APIs, threads creation from memory pool)
+--- Test Case 10.1 (Loading and emptying a memory pool)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 10.3 (Dynamic APIs, registry and references)
+--- Test Case 10.2 (Loading and emptying a guarded memory pool without waiting)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 11.1 (Queues, input queues)
+--- Test Case 10.3 (Guarded Memory Pools timeout)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 11.2 (Queues, output queues)
+--- Test Case 11.1 (Allocation and fragmentation)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 12.1 (Benchmark, messages #1)
---- Score : 221513 msgs/S, 443026 ctxswc/S
+--- Test Case 11.2 (Default Heap)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 12.2 (Benchmark, messages #2)
---- Score : 179981 msgs/S, 359962 ctxswc/S
+--- Test Case 12.1 (Threads creation from Memory Heap)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 12.3 (Benchmark, messages #3)
---- Score : 179981 msgs/S, 359962 ctxswc/S
+--- Test Case 12.2 (Threads creation from Memory Pool)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 12.4 (Benchmark, context switch)
---- Score : 639224 ctxswc/S
+--- Test Case 13.1 (Messages performance #1)
+--- Score : 218135 msgs/S, 436270 ctxswc/S
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 12.5 (Benchmark, threads, full cycle)
---- Score : 135323 threads/S
+--- Test Case 13.2 (Messages performance #2)
+--- Score : 176438 msgs/S, 352876 ctxswc/S
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 12.6 (Benchmark, threads, create only)
---- Score : 193007 threads/S
+--- Test Case 13.3 (Messages performance #3)
+--- Score : 176438 msgs/S, 352876 ctxswc/S
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 12.7 (Benchmark, mass reschedule, 5 threads)
---- Score : 57092 reschedules/S, 342552 ctxswc/S
+--- Test Case 13.4 (Context Switch performance)
+--- Score : 625960 ctxswc/S
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 12.8 (Benchmark, round robin context switching)
---- Score : 449948 ctxswc/S
+--- Test Case 13.5 (Threads performance, full cycle)
+--- Score : 133802 threads/S
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 12.9 (Benchmark, I/O Queues throughput)
---- Score : 619284 bytes/S
+--- Test Case 13.6 (Threads performance, create/exit only)
+--- Score : 169775 threads/S
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 12.10 (Benchmark, virtual timers set/reset)
---- Score : 431154 timers/S
+--- Test Case 13.7 (Mass reschedule performance)
+--- Score : 56861 reschedules/S, 341166 ctxswc/S
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 12.11 (Benchmark, semaphores wait/signal)
---- Score : 1035852 wait+signal/S
+--- Test Case 13.8 (Round-Robin voluntary reschedule)
+--- Score : 433640 ctxswc/S
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 12.12 (Benchmark, mutexes lock/unlock)
---- Score : 597440 lock+unlock/S
+--- Test Case 13.9 (Virtual Timers set/reset performance)
+--- Score : 447224 timers/S
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 12.13 (Benchmark, RAM footprint)
---- System: 472 bytes
+--- Test Case 13.10 (Semaphores wait/signal performance)
+--- Score : 1028348 wait+signal/S
+--- Result: SUCCESS
+----------------------------------------------------------------------------
+--- Test Case 13.11 (Mutexes lock/unlock performance)
+--- Score : 594920 lock+unlock/S
+--- Result: SUCCESS
+----------------------------------------------------------------------------
+--- Test Case 13.12 (RAM Footprint)
+--- System: 120 bytes
--- Thread: 68 bytes
--- Timer : 20 bytes
--- Semaph: 12 bytes
---- EventS: 4 bytes
---- EventL: 20 bytes
--- Mutex : 16 bytes
--- CondV.: 8 bytes
---- Queue : 36 bytes
+--- EventS: 4 bytes
+--- EventL: 20 bytes
--- MailB.: 40 bytes
--- Result: SUCCESS
----------------------------------------------------------------------------
diff --git a/doc/rt/reports/STM32F303-72-GCC.txt b/doc/rt/reports/STM32F303-72-GCC.txt
index 75d068868..1adf61cba 100644
--- a/doc/rt/reports/STM32F303-72-GCC.txt
+++ b/doc/rt/reports/STM32F303-72-GCC.txt
@@ -1,161 +1,231 @@
-*** ChibiOS/RT test suite
+*** ChibiOS/RT Test Suite
***
-*** Kernel: 3.1.0
-*** Compiled: Jan 6 2016 - 10:57:31
-*** Compiler: GCC 4.9.3 20150529 (release) [ARM/embedded-4_9-branch revision 227977]
+*** Compiled: Sep 19 2017 - 12:14:12
+*** Platform: STM32F303xC Analog & DSP
+*** Test Board: STMicroelectronics STM32F3-Discovery
+*** Compiler: GCC 5.4.1 20160919 (release) [ARM/embedded-5-branch revision 240496]
*** Architecture: ARMv7E-M
*** Core Variant: Cortex-M4
*** Port Info: Advanced kernel mode
-*** Platform: STM32F303xC Analog & DSP
-*** Test Board: STMicroelectronics STM32F3-Discovery
----------------------------------------------------------------------------
---- Test Case 1.1 (System, critical zones)
+--- Test Case 1.1 (Kernel Info)
+--- Product: ChibiOS/RT
+--- Stable Flag: 1
+--- Version String: 4.0.1
+--- Major Number: 4
+--- Minor Number: 0
+--- Patch Number: 1
+--- Result: SUCCESS
+----------------------------------------------------------------------------
+--- Test Case 1.2 (Kernel Settings)
+--- CH_CFG_ST_RESOLUTION: 32
+--- CH_CFG_ST_FREQUENCY: 10000
+--- CH_CFG_ST_TIMEDELTA: 2
+--- CH_CFG_TIME_QUANTUM: 0
+--- CH_CFG_MEMCORE_SIZE: 0
+--- CH_CFG_NO_IDLE_THREAD: 0
+--- CH_CFG_OPTIMIZE_SPEED: 1
+--- CH_CFG_USE_TM: 1
+--- CH_CFG_USE_REGISTRY: 1
+--- CH_CFG_USE_WAITEXIT: 1
+--- CH_CFG_USE_SEMAPHORES: 1
+--- CH_CFG_USE_SEMAPHORES_PRI: 0
+--- CH_CFG_USE_MUTEXES: 1
+--- CH_CFG_USE_MUTEXES_RECURS: 0
+--- CH_CFG_USE_CONDVARS: 1
+--- CH_CFG_USE_CONDVARS_TIMEO: 1
+--- CH_CFG_USE_EVENTS: 1
+--- CH_CFG_USE_EVENTS_TIMEOUT: 1
+--- CH_CFG_USE_MESSAGES: 1
+--- CH_CFG_USE_MESSAGES_PRI: 0
+--- CH_CFG_USE_MAILBOXES: 1
+--- CH_CFG_USE_MEMCORE: 1
+--- CH_CFG_USE_HEAP: 1
+--- CH_CFG_USE_MEMPOOLS: 1
+--- CH_CFG_USE_DYNAMIC: 1
+--- CH_DBG_STATISTICS: 0
+--- CH_DBG_SYSTEM_STATE_CHECK: 0
+--- CH_DBG_ENABLE_CHECKS: 0
+--- CH_DBG_ENABLE_ASSERTS: 0
+--- CH_DBG_TRACE_MASK: 255
+--- CH_DBG_TRACE_BUFFER_SIZE: 128
+--- CH_DBG_ENABLE_STACK_CHECK: 0
+--- CH_DBG_FILL_THREADS: 0
+--- CH_DBG_THREADS_PROFILING: 0
+--- Result: SUCCESS
+----------------------------------------------------------------------------
+--- Test Case 2.1 (System integrity functionality)
+--- Result: SUCCESS
+----------------------------------------------------------------------------
+--- Test Case 2.2 (Critical zones functionality)
+--- Result: SUCCESS
+----------------------------------------------------------------------------
+--- Test Case 2.3 (Interrupts handling functionality)
+--- Result: SUCCESS
+----------------------------------------------------------------------------
+--- Test Case 2.4 (System Tick Counter functionality)
+--- Result: SUCCESS
+----------------------------------------------------------------------------
+--- Test Case 3.1 (Thread Sleep functionality)
+--- Result: SUCCESS
+----------------------------------------------------------------------------
+--- Test Case 3.2 (Ready List functionality, threads priority order)
+--- Result: SUCCESS
+----------------------------------------------------------------------------
+--- Test Case 3.3 (Priority change test)
+--- Result: SUCCESS
+----------------------------------------------------------------------------
+--- Test Case 3.4 (Priority change test with Priority Inheritance)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 1.2 (System, interrupts handling)
+--- Test Case 4.1 (Suspend and Resume functionality)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 1.3 (System, integrity)
+--- Test Case 5.1 (Semaphore primitives, no state change)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 2.1 (Threads, enqueuing test #1)
+--- Test Case 5.2 (Semaphore enqueuing test)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 2.2 (Threads, enqueuing test #2)
+--- Test Case 5.3 (Semaphore timeout test)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 2.3 (Threads, priority change)
+--- Test Case 5.4 (Testing chSemAddCounterI() functionality)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 2.4 (Threads, delays)
+--- Test Case 5.5 (Testing chSemWaitSignal() functionality)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 3.1 (Semaphores, enqueuing)
+--- Test Case 5.6 (Testing Binary Semaphores special case)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 3.2 (Semaphores, timeout)
+--- Test Case 6.1 (Priority enqueuing test)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 3.3 (Semaphores, atomic signal-wait)
+--- Test Case 6.2 (Priority return verification)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 3.4 (Binary Semaphores, functionality)
+--- Test Case 6.3 (Repeated locks, non recursive scenario)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 4.1 (Mutexes, priority enqueuing test)
+--- Test Case 6.4 (Condition Variable signal test)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 4.2 (Mutexes, priority return)
+--- Test Case 6.5 (Condition Variable broadcast test)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 4.3 (Mutexes, status)
+--- Test Case 6.6 (Condition Variable priority boost test)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 4.4 (CondVar, signal test)
+--- Test Case 7.1 (Messages Server loop)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 4.5 (CondVar, broadcast test)
+--- Test Case 8.1 (Events registration)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 4.6 (CondVar, boost test)
+--- Test Case 8.2 (Event Flags dispatching)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 5.1 (Messages, loop)
+--- Test Case 8.3 (Events Flags wait using chEvtWaitOne())
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 6.1 (Mailboxes, queuing and timeouts)
+--- Test Case 8.4 (Events Flags wait using chEvtWaitAny())
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 7.1 (Events, registration and dispatch)
+--- Test Case 8.5 (Events Flags wait using chEvtWaitAll())
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 7.2 (Events, wait and broadcast)
+--- Test Case 8.6 (Events Flags wait timeouts)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 7.3 (Events, timeouts)
+--- Test Case 8.7 (Broadcasting using chEvtBroadcast())
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 8.1 (Heap, allocation and fragmentation test)
+--- Test Case 9.1 (Mailbox normal API, non-blocking tests)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 9.1 (Memory Pools, queue/dequeue)
+--- Test Case 9.2 (Mailbox I-Class API, non-blocking tests)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 10.1 (Dynamic APIs, threads creation from heap)
+--- Test Case 9.3 (Mailbox timeouts)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 10.2 (Dynamic APIs, threads creation from memory pool)
+--- Test Case 10.1 (Loading and emptying a memory pool)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 10.3 (Dynamic APIs, registry and references)
+--- Test Case 10.2 (Loading and emptying a guarded memory pool without waiting)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 11.1 (Queues, input queues)
+--- Test Case 10.3 (Guarded Memory Pools timeout)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 11.2 (Queues, output queues)
+--- Test Case 11.1 (Allocation and fragmentation)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 12.1 (Benchmark, messages #1)
---- Score : 280128 msgs/S, 560256 ctxswc/S
+--- Test Case 11.2 (Default Heap)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 12.2 (Benchmark, messages #2)
---- Score : 216847 msgs/S, 433694 ctxswc/S
+--- Test Case 12.1 (Threads creation from Memory Heap)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 12.3 (Benchmark, messages #3)
---- Score : 216847 msgs/S, 433694 ctxswc/S
+--- Test Case 12.2 (Threads creation from Memory Pool)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 12.4 (Benchmark, context switch)
---- Score : 915664 ctxswc/S
+--- Test Case 13.1 (Messages performance #1)
+--- Score : 274764 msgs/S, 549528 ctxswc/S
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 12.5 (Benchmark, threads, full cycle)
---- Score : 158227 threads/S
+--- Test Case 13.2 (Messages performance #2)
+--- Score : 211734 msgs/S, 423468 ctxswc/S
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 12.6 (Benchmark, threads, create only)
---- Score : 243222 threads/S
+--- Test Case 13.3 (Messages performance #3)
+--- Score : 211735 msgs/S, 423470 ctxswc/S
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 12.7 (Benchmark, mass reschedule, 5 threads)
---- Score : 68111 reschedules/S, 408666 ctxswc/S
+--- Test Case 13.4 (Context Switch performance)
+--- Score : 888752 ctxswc/S
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 12.8 (Benchmark, round robin context switching)
---- Score : 571380 ctxswc/S
+--- Test Case 13.5 (Threads performance, full cycle)
+--- Score : 153168 threads/S
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 12.9 (Benchmark, I/O Queues throughput)
---- Score : 619296 bytes/S
+--- Test Case 13.6 (Threads performance, create/exit only)
+--- Score : 202217 threads/S
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 12.10 (Benchmark, virtual timers set/reset)
---- Score : 431168 timers/S
+--- Test Case 13.7 (Mass reschedule performance)
+--- Score : 67786 reschedules/S, 406716 ctxswc/S
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 12.11 (Benchmark, semaphores wait/signal)
---- Score : 1035872 wait+signal/S
+--- Test Case 13.8 (Round-Robin voluntary reschedule)
+--- Score : 545360 ctxswc/S
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 12.12 (Benchmark, mutexes lock/unlock)
---- Score : 597452 lock+unlock/S
+--- Test Case 13.9 (Virtual Timers set/reset performance)
+--- Score : 452850 timers/S
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 12.13 (Benchmark, RAM footprint)
---- System: 336 bytes
+--- Test Case 13.10 (Semaphores wait/signal performance)
+--- Score : 1028396 wait+signal/S
+--- Result: SUCCESS
+----------------------------------------------------------------------------
+--- Test Case 13.11 (Mutexes lock/unlock performance)
+--- Score : 594944 lock+unlock/S
+--- Result: SUCCESS
+----------------------------------------------------------------------------
+--- Test Case 13.12 (RAM Footprint)
+--- System: 120 bytes
--- Thread: 68 bytes
--- Timer : 20 bytes
--- Semaph: 12 bytes
---- EventS: 4 bytes
---- EventL: 20 bytes
--- Mutex : 16 bytes
--- CondV.: 8 bytes
---- Queue : 36 bytes
+--- EventS: 4 bytes
+--- EventL: 20 bytes
--- MailB.: 40 bytes
--- Result: SUCCESS
----------------------------------------------------------------------------
diff --git a/doc/rt/reports/STM32F407-168-GCC-FPU.txt b/doc/rt/reports/STM32F407-168-GCC-FPU.txt
index 6e8eed0d3..259e6ccd3 100644
--- a/doc/rt/reports/STM32F407-168-GCC-FPU.txt
+++ b/doc/rt/reports/STM32F407-168-GCC-FPU.txt
@@ -1,161 +1,231 @@
-*** ChibiOS/RT test suite
+*** ChibiOS/RT Test Suite
***
-*** Kernel: 3.1.0
-*** Compiled: Jan 6 2016 - 11:35:21
-*** Compiler: GCC 4.9.3 20150529 (release) [ARM/embedded-4_9-branch revision 227977]
+*** Compiled: Sep 19 2017 - 12:49:16
+*** Platform: STM32F407 High Performance with DSP and FPU
+*** Test Board: STMicroelectronics STM32F4-Discovery
+*** Compiler: GCC 5.4.1 20160919 (release) [ARM/embedded-5-branch revision 240496]
*** Architecture: ARMv7E-M
*** Core Variant: Cortex-M4F
*** Port Info: Advanced kernel mode
-*** Platform: STM32F407 High Performance with DSP and FPU
-*** Test Board: STMicroelectronics STM32F4-Discovery
----------------------------------------------------------------------------
---- Test Case 1.1 (System, critical zones)
+--- Test Case 1.1 (Kernel Info)
+--- Product: ChibiOS/RT
+--- Stable Flag: 1
+--- Version String: 4.0.1
+--- Major Number: 4
+--- Minor Number: 0
+--- Patch Number: 1
+--- Result: SUCCESS
+----------------------------------------------------------------------------
+--- Test Case 1.2 (Kernel Settings)
+--- CH_CFG_ST_RESOLUTION: 32
+--- CH_CFG_ST_FREQUENCY: 10000
+--- CH_CFG_ST_TIMEDELTA: 2
+--- CH_CFG_TIME_QUANTUM: 0
+--- CH_CFG_MEMCORE_SIZE: 0
+--- CH_CFG_NO_IDLE_THREAD: 0
+--- CH_CFG_OPTIMIZE_SPEED: 1
+--- CH_CFG_USE_TM: 1
+--- CH_CFG_USE_REGISTRY: 1
+--- CH_CFG_USE_WAITEXIT: 1
+--- CH_CFG_USE_SEMAPHORES: 1
+--- CH_CFG_USE_SEMAPHORES_PRI: 0
+--- CH_CFG_USE_MUTEXES: 1
+--- CH_CFG_USE_MUTEXES_RECURS: 0
+--- CH_CFG_USE_CONDVARS: 1
+--- CH_CFG_USE_CONDVARS_TIMEO: 1
+--- CH_CFG_USE_EVENTS: 1
+--- CH_CFG_USE_EVENTS_TIMEOUT: 1
+--- CH_CFG_USE_MESSAGES: 1
+--- CH_CFG_USE_MESSAGES_PRI: 0
+--- CH_CFG_USE_MAILBOXES: 1
+--- CH_CFG_USE_MEMCORE: 1
+--- CH_CFG_USE_HEAP: 1
+--- CH_CFG_USE_MEMPOOLS: 1
+--- CH_CFG_USE_DYNAMIC: 1
+--- CH_DBG_STATISTICS: 0
+--- CH_DBG_SYSTEM_STATE_CHECK: 0
+--- CH_DBG_ENABLE_CHECKS: 0
+--- CH_DBG_ENABLE_ASSERTS: 0
+--- CH_DBG_TRACE_MASK: 255
+--- CH_DBG_TRACE_BUFFER_SIZE: 128
+--- CH_DBG_ENABLE_STACK_CHECK: 0
+--- CH_DBG_FILL_THREADS: 0
+--- CH_DBG_THREADS_PROFILING: 0
+--- Result: SUCCESS
+----------------------------------------------------------------------------
+--- Test Case 2.1 (System integrity functionality)
+--- Result: SUCCESS
+----------------------------------------------------------------------------
+--- Test Case 2.2 (Critical zones functionality)
+--- Result: SUCCESS
+----------------------------------------------------------------------------
+--- Test Case 2.3 (Interrupts handling functionality)
+--- Result: SUCCESS
+----------------------------------------------------------------------------
+--- Test Case 2.4 (System Tick Counter functionality)
+--- Result: SUCCESS
+----------------------------------------------------------------------------
+--- Test Case 3.1 (Thread Sleep functionality)
+--- Result: SUCCESS
+----------------------------------------------------------------------------
+--- Test Case 3.2 (Ready List functionality, threads priority order)
+--- Result: SUCCESS
+----------------------------------------------------------------------------
+--- Test Case 3.3 (Priority change test)
+--- Result: SUCCESS
+----------------------------------------------------------------------------
+--- Test Case 3.4 (Priority change test with Priority Inheritance)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 1.2 (System, interrupts handling)
+--- Test Case 4.1 (Suspend and Resume functionality)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 1.3 (System, integrity)
+--- Test Case 5.1 (Semaphore primitives, no state change)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 2.1 (Threads, enqueuing test #1)
+--- Test Case 5.2 (Semaphore enqueuing test)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 2.2 (Threads, enqueuing test #2)
+--- Test Case 5.3 (Semaphore timeout test)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 2.3 (Threads, priority change)
+--- Test Case 5.4 (Testing chSemAddCounterI() functionality)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 2.4 (Threads, delays)
+--- Test Case 5.5 (Testing chSemWaitSignal() functionality)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 3.1 (Semaphores, enqueuing)
+--- Test Case 5.6 (Testing Binary Semaphores special case)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 3.2 (Semaphores, timeout)
+--- Test Case 6.1 (Priority enqueuing test)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 3.3 (Semaphores, atomic signal-wait)
+--- Test Case 6.2 (Priority return verification)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 3.4 (Binary Semaphores, functionality)
+--- Test Case 6.3 (Repeated locks, non recursive scenario)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 4.1 (Mutexes, priority enqueuing test)
+--- Test Case 6.4 (Condition Variable signal test)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 4.2 (Mutexes, priority return)
+--- Test Case 6.5 (Condition Variable broadcast test)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 4.3 (Mutexes, status)
+--- Test Case 6.6 (Condition Variable priority boost test)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 4.4 (CondVar, signal test)
+--- Test Case 7.1 (Messages Server loop)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 4.5 (CondVar, broadcast test)
+--- Test Case 8.1 (Events registration)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 4.6 (CondVar, boost test)
+--- Test Case 8.2 (Event Flags dispatching)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 5.1 (Messages, loop)
+--- Test Case 8.3 (Events Flags wait using chEvtWaitOne())
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 6.1 (Mailboxes, queuing and timeouts)
+--- Test Case 8.4 (Events Flags wait using chEvtWaitAny())
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 7.1 (Events, registration and dispatch)
+--- Test Case 8.5 (Events Flags wait using chEvtWaitAll())
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 7.2 (Events, wait and broadcast)
+--- Test Case 8.6 (Events Flags wait timeouts)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 7.3 (Events, timeouts)
+--- Test Case 8.7 (Broadcasting using chEvtBroadcast())
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 8.1 (Heap, allocation and fragmentation test)
+--- Test Case 9.1 (Mailbox normal API, non-blocking tests)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 9.1 (Memory Pools, queue/dequeue)
+--- Test Case 9.2 (Mailbox I-Class API, non-blocking tests)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 10.1 (Dynamic APIs, threads creation from heap)
+--- Test Case 9.3 (Mailbox timeouts)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 10.2 (Dynamic APIs, threads creation from memory pool)
+--- Test Case 10.1 (Loading and emptying a memory pool)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 10.3 (Dynamic APIs, registry and references)
+--- Test Case 10.2 (Loading and emptying a guarded memory pool without waiting)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 11.1 (Queues, input queues)
+--- Test Case 10.3 (Guarded Memory Pools timeout)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 11.2 (Queues, output queues)
+--- Test Case 11.1 (Allocation and fragmentation)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 12.1 (Benchmark, messages #1)
---- Score : 606492 msgs/S, 1212984 ctxswc/S
+--- Test Case 11.2 (Default Heap)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 12.2 (Benchmark, messages #2)
---- Score : 506019 msgs/S, 1012038 ctxswc/S
+--- Test Case 12.1 (Threads creation from Memory Heap)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 12.3 (Benchmark, messages #3)
---- Score : 506019 msgs/S, 1012038 ctxswc/S
+--- Test Case 12.2 (Threads creation from Memory Pool)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 12.4 (Benchmark, context switch)
---- Score : 1690560 ctxswc/S
+--- Test Case 13.1 (Messages performance #1)
+--- Score : 424239 msgs/S, 848478 ctxswc/S
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 12.5 (Benchmark, threads, full cycle)
---- Score : 385317 threads/S
+--- Test Case 13.2 (Messages performance #2)
+--- Score : 355929 msgs/S, 711858 ctxswc/S
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 12.6 (Benchmark, threads, create only)
---- Score : 533328 threads/S
+--- Test Case 13.3 (Messages performance #3)
+--- Score : 355929 msgs/S, 711858 ctxswc/S
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 12.7 (Benchmark, mass reschedule, 5 threads)
---- Score : 162948 reschedules/S, 977688 ctxswc/S
+--- Test Case 13.4 (Context Switch performance)
+--- Score : 1272720 ctxswc/S
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 12.8 (Benchmark, round robin context switching)
---- Score : 1219588 ctxswc/S
+--- Test Case 13.5 (Threads performance, full cycle)
+--- Score : 279998 threads/S
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 12.9 (Benchmark, I/O Queues throughput)
---- Score : 1802808 bytes/S
+--- Test Case 13.6 (Threads performance, create/exit only)
+--- Score : 352938 threads/S
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 12.10 (Benchmark, virtual timers set/reset)
---- Score : 1344032 timers/S
+--- Test Case 13.7 (Mass reschedule performance)
+--- Score : 116667 reschedules/S, 700002 ctxswc/S
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 12.11 (Benchmark, semaphores wait/signal)
---- Score : 3862052 wait+signal/S
+--- Test Case 13.8 (Round-Robin voluntary reschedule)
+--- Score : 900800 ctxswc/S
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 12.12 (Benchmark, mutexes lock/unlock)
---- Score : 2036356 lock+unlock/S
+--- Test Case 13.9 (Virtual Timers set/reset performance)
+--- Score : 865984 timers/S
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 12.13 (Benchmark, RAM footprint)
---- System: 472 bytes
+--- Test Case 13.10 (Semaphores wait/signal performance)
+--- Score : 2399992 wait+signal/S
+--- Result: SUCCESS
+----------------------------------------------------------------------------
+--- Test Case 13.11 (Mutexes lock/unlock performance)
+--- Score : 1090904 lock+unlock/S
+--- Result: SUCCESS
+----------------------------------------------------------------------------
+--- Test Case 13.12 (RAM Footprint)
+--- System: 120 bytes
--- Thread: 68 bytes
--- Timer : 20 bytes
--- Semaph: 12 bytes
---- EventS: 4 bytes
---- EventL: 20 bytes
--- Mutex : 16 bytes
--- CondV.: 8 bytes
---- Queue : 36 bytes
+--- EventS: 4 bytes
+--- EventL: 20 bytes
--- MailB.: 40 bytes
--- Result: SUCCESS
----------------------------------------------------------------------------
diff --git a/doc/rt/reports/STM32F407-168-GCC.txt b/doc/rt/reports/STM32F407-168-GCC.txt
index aa7043dcf..c07d06f1a 100644
--- a/doc/rt/reports/STM32F407-168-GCC.txt
+++ b/doc/rt/reports/STM32F407-168-GCC.txt
@@ -1,161 +1,231 @@
-*** ChibiOS/RT test suite
+*** ChibiOS/RT Test Suite
***
-*** Kernel: 3.1.0
-*** Compiled: Jan 6 2016 - 11:31:34
-*** Compiler: GCC 4.9.3 20150529 (release) [ARM/embedded-4_9-branch revision 227977]
+*** Compiled: Sep 19 2017 - 12:47:19
+*** Platform: STM32F407 High Performance with DSP and FPU
+*** Test Board: STMicroelectronics STM32F4-Discovery
+*** Compiler: GCC 5.4.1 20160919 (release) [ARM/embedded-5-branch revision 240496]
*** Architecture: ARMv7E-M
*** Core Variant: Cortex-M4
*** Port Info: Advanced kernel mode
-*** Platform: STM32F407 High Performance with DSP and FPU
-*** Test Board: STMicroelectronics STM32F4-Discovery
----------------------------------------------------------------------------
---- Test Case 1.1 (System, critical zones)
+--- Test Case 1.1 (Kernel Info)
+--- Product: ChibiOS/RT
+--- Stable Flag: 1
+--- Version String: 4.0.1
+--- Major Number: 4
+--- Minor Number: 0
+--- Patch Number: 1
+--- Result: SUCCESS
+----------------------------------------------------------------------------
+--- Test Case 1.2 (Kernel Settings)
+--- CH_CFG_ST_RESOLUTION: 32
+--- CH_CFG_ST_FREQUENCY: 10000
+--- CH_CFG_ST_TIMEDELTA: 2
+--- CH_CFG_TIME_QUANTUM: 0
+--- CH_CFG_MEMCORE_SIZE: 0
+--- CH_CFG_NO_IDLE_THREAD: 0
+--- CH_CFG_OPTIMIZE_SPEED: 1
+--- CH_CFG_USE_TM: 1
+--- CH_CFG_USE_REGISTRY: 1
+--- CH_CFG_USE_WAITEXIT: 1
+--- CH_CFG_USE_SEMAPHORES: 1
+--- CH_CFG_USE_SEMAPHORES_PRI: 0
+--- CH_CFG_USE_MUTEXES: 1
+--- CH_CFG_USE_MUTEXES_RECURS: 0
+--- CH_CFG_USE_CONDVARS: 1
+--- CH_CFG_USE_CONDVARS_TIMEO: 1
+--- CH_CFG_USE_EVENTS: 1
+--- CH_CFG_USE_EVENTS_TIMEOUT: 1
+--- CH_CFG_USE_MESSAGES: 1
+--- CH_CFG_USE_MESSAGES_PRI: 0
+--- CH_CFG_USE_MAILBOXES: 1
+--- CH_CFG_USE_MEMCORE: 1
+--- CH_CFG_USE_HEAP: 1
+--- CH_CFG_USE_MEMPOOLS: 1
+--- CH_CFG_USE_DYNAMIC: 1
+--- CH_DBG_STATISTICS: 0
+--- CH_DBG_SYSTEM_STATE_CHECK: 0
+--- CH_DBG_ENABLE_CHECKS: 0
+--- CH_DBG_ENABLE_ASSERTS: 0
+--- CH_DBG_TRACE_MASK: 255
+--- CH_DBG_TRACE_BUFFER_SIZE: 128
+--- CH_DBG_ENABLE_STACK_CHECK: 0
+--- CH_DBG_FILL_THREADS: 0
+--- CH_DBG_THREADS_PROFILING: 0
+--- Result: SUCCESS
+----------------------------------------------------------------------------
+--- Test Case 2.1 (System integrity functionality)
+--- Result: SUCCESS
+----------------------------------------------------------------------------
+--- Test Case 2.2 (Critical zones functionality)
+--- Result: SUCCESS
+----------------------------------------------------------------------------
+--- Test Case 2.3 (Interrupts handling functionality)
+--- Result: SUCCESS
+----------------------------------------------------------------------------
+--- Test Case 2.4 (System Tick Counter functionality)
+--- Result: SUCCESS
+----------------------------------------------------------------------------
+--- Test Case 3.1 (Thread Sleep functionality)
+--- Result: SUCCESS
+----------------------------------------------------------------------------
+--- Test Case 3.2 (Ready List functionality, threads priority order)
+--- Result: SUCCESS
+----------------------------------------------------------------------------
+--- Test Case 3.3 (Priority change test)
+--- Result: SUCCESS
+----------------------------------------------------------------------------
+--- Test Case 3.4 (Priority change test with Priority Inheritance)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 1.2 (System, interrupts handling)
+--- Test Case 4.1 (Suspend and Resume functionality)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 1.3 (System, integrity)
+--- Test Case 5.1 (Semaphore primitives, no state change)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 2.1 (Threads, enqueuing test #1)
+--- Test Case 5.2 (Semaphore enqueuing test)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 2.2 (Threads, enqueuing test #2)
+--- Test Case 5.3 (Semaphore timeout test)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 2.3 (Threads, priority change)
+--- Test Case 5.4 (Testing chSemAddCounterI() functionality)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 2.4 (Threads, delays)
+--- Test Case 5.5 (Testing chSemWaitSignal() functionality)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 3.1 (Semaphores, enqueuing)
+--- Test Case 5.6 (Testing Binary Semaphores special case)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 3.2 (Semaphores, timeout)
+--- Test Case 6.1 (Priority enqueuing test)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 3.3 (Semaphores, atomic signal-wait)
+--- Test Case 6.2 (Priority return verification)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 3.4 (Binary Semaphores, functionality)
+--- Test Case 6.3 (Repeated locks, non recursive scenario)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 4.1 (Mutexes, priority enqueuing test)
+--- Test Case 6.4 (Condition Variable signal test)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 4.2 (Mutexes, priority return)
+--- Test Case 6.5 (Condition Variable broadcast test)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 4.3 (Mutexes, status)
+--- Test Case 6.6 (Condition Variable priority boost test)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 4.4 (CondVar, signal test)
+--- Test Case 7.1 (Messages Server loop)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 4.5 (CondVar, broadcast test)
+--- Test Case 8.1 (Events registration)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 4.6 (CondVar, boost test)
+--- Test Case 8.2 (Event Flags dispatching)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 5.1 (Messages, loop)
+--- Test Case 8.3 (Events Flags wait using chEvtWaitOne())
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 6.1 (Mailboxes, queuing and timeouts)
+--- Test Case 8.4 (Events Flags wait using chEvtWaitAny())
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 7.1 (Events, registration and dispatch)
+--- Test Case 8.5 (Events Flags wait using chEvtWaitAll())
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 7.2 (Events, wait and broadcast)
+--- Test Case 8.6 (Events Flags wait timeouts)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 7.3 (Events, timeouts)
+--- Test Case 8.7 (Broadcasting using chEvtBroadcast())
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 8.1 (Heap, allocation and fragmentation test)
+--- Test Case 9.1 (Mailbox normal API, non-blocking tests)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 9.1 (Memory Pools, queue/dequeue)
+--- Test Case 9.2 (Mailbox I-Class API, non-blocking tests)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 10.1 (Dynamic APIs, threads creation from heap)
+--- Test Case 9.3 (Mailbox timeouts)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 10.2 (Dynamic APIs, threads creation from memory pool)
+--- Test Case 10.1 (Loading and emptying a memory pool)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 10.3 (Dynamic APIs, registry and references)
+--- Test Case 10.2 (Loading and emptying a guarded memory pool without waiting)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 11.1 (Queues, input queues)
+--- Test Case 10.3 (Guarded Memory Pools timeout)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 11.2 (Queues, output queues)
+--- Test Case 11.1 (Allocation and fragmentation)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 12.1 (Benchmark, messages #1)
---- Score : 803821 msgs/S, 1607642 ctxswc/S
+--- Test Case 11.2 (Default Heap)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 12.2 (Benchmark, messages #2)
---- Score : 636359 msgs/S, 1272718 ctxswc/S
+--- Test Case 12.1 (Threads creation from Memory Heap)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 12.3 (Benchmark, messages #3)
---- Score : 636358 msgs/S, 1272716 ctxswc/S
+--- Test Case 12.2 (Threads creation from Memory Pool)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 12.4 (Benchmark, context switch)
---- Score : 2569784 ctxswc/S
+--- Test Case 13.1 (Messages performance #1)
+--- Score : 512191 msgs/S, 1024382 ctxswc/S
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 12.5 (Benchmark, threads, full cycle)
---- Score : 459013 threads/S
+--- Test Case 13.2 (Messages performance #2)
+--- Score : 411762 msgs/S, 823524 ctxswc/S
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 12.6 (Benchmark, threads, create only)
---- Score : 688519 threads/S
+--- Test Case 13.3 (Messages performance #3)
+--- Score : 411762 msgs/S, 823524 ctxswc/S
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 12.7 (Benchmark, mass reschedule, 5 threads)
---- Score : 203143 reschedules/S, 1218858 ctxswc/S
+--- Test Case 13.4 (Context Switch performance)
+--- Score : 1705576 ctxswc/S
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 12.8 (Benchmark, round robin context switching)
---- Score : 1619260 ctxswc/S
+--- Test Case 13.5 (Threads performance, full cycle)
+--- Score : 315787 threads/S
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 12.9 (Benchmark, I/O Queues throughput)
---- Score : 1802812 bytes/S
+--- Test Case 13.6 (Threads performance, create/exit only)
+--- Score : 415838 threads/S
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 12.10 (Benchmark, virtual timers set/reset)
---- Score : 1344184 timers/S
+--- Test Case 13.7 (Mass reschedule performance)
+--- Score : 135048 reschedules/S, 810288 ctxswc/S
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 12.11 (Benchmark, semaphores wait/signal)
---- Score : 3862056 wait+signal/S
+--- Test Case 13.8 (Round-Robin voluntary reschedule)
+--- Score : 1101628 ctxswc/S
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 12.12 (Benchmark, mutexes lock/unlock)
---- Score : 2036356 lock+unlock/S
+--- Test Case 13.9 (Virtual Timers set/reset performance)
+--- Score : 884212 timers/S
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 12.13 (Benchmark, RAM footprint)
---- System: 336 bytes
+--- Test Case 13.10 (Semaphores wait/signal performance)
+--- Score : 2399992 wait+signal/S
+--- Result: SUCCESS
+----------------------------------------------------------------------------
+--- Test Case 13.11 (Mutexes lock/unlock performance)
+--- Score : 1090908 lock+unlock/S
+--- Result: SUCCESS
+----------------------------------------------------------------------------
+--- Test Case 13.12 (RAM Footprint)
+--- System: 120 bytes
--- Thread: 68 bytes
--- Timer : 20 bytes
--- Semaph: 12 bytes
---- EventS: 4 bytes
---- EventL: 20 bytes
--- Mutex : 16 bytes
--- CondV.: 8 bytes
---- Queue : 36 bytes
+--- EventS: 4 bytes
+--- EventL: 20 bytes
--- MailB.: 40 bytes
--- Result: SUCCESS
----------------------------------------------------------------------------
diff --git a/doc/rt/reports/STM32F746-216-GCC-FPU.txt b/doc/rt/reports/STM32F746-216-GCC-FPU.txt
index dfff2e157..41037f49f 100644
--- a/doc/rt/reports/STM32F746-216-GCC-FPU.txt
+++ b/doc/rt/reports/STM32F746-216-GCC-FPU.txt
@@ -1,173 +1,223 @@
*** ChibiOS/RT Test Suite
***
-*** Compiled: Jun 4 2017 - 12:45:47
+*** Compiled: Sep 19 2017 - 12:19:01
*** Platform: STM32F746 Very High Performance with DSP and FPU
*** Test Board: STMicroelectronics STM32F746G-Discovery
+*** Compiler: GCC 5.4.1 20160919 (release) [ARM/embedded-5-branch revision 240496]
+*** Architecture: ARMv7E-M
+*** Core Variant: Cortex-M7F
+*** Port Info: Advanced kernel mode
----------------------------------------------------------------------------
---- Test Case 1.1 (System integrity functionality)
+--- Test Case 1.1 (Kernel Info)
+--- Product: ChibiOS/RT
+--- Stable Flag: 1
+--- Version String: 4.0.1
+--- Major Number: 4
+--- Minor Number: 0
+--- Patch Number: 1
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 1.2 (Critical zones functionality)
+--- Test Case 1.2 (Kernel Settings)
+--- CH_CFG_ST_RESOLUTION: 32
+--- CH_CFG_ST_FREQUENCY: 10000
+--- CH_CFG_ST_TIMEDELTA: 2
+--- CH_CFG_TIME_QUANTUM: 0
+--- CH_CFG_MEMCORE_SIZE: 0
+--- CH_CFG_NO_IDLE_THREAD: 0
+--- CH_CFG_OPTIMIZE_SPEED: 1
+--- CH_CFG_USE_TM: 1
+--- CH_CFG_USE_REGISTRY: 1
+--- CH_CFG_USE_WAITEXIT: 1
+--- CH_CFG_USE_SEMAPHORES: 1
+--- CH_CFG_USE_SEMAPHORES_PRI: 0
+--- CH_CFG_USE_MUTEXES: 1
+--- CH_CFG_USE_MUTEXES_RECURS: 0
+--- CH_CFG_USE_CONDVARS: 1
+--- CH_CFG_USE_CONDVARS_TIMEO: 1
+--- CH_CFG_USE_EVENTS: 1
+--- CH_CFG_USE_EVENTS_TIMEOUT: 1
+--- CH_CFG_USE_MESSAGES: 1
+--- CH_CFG_USE_MESSAGES_PRI: 0
+--- CH_CFG_USE_MAILBOXES: 1
+--- CH_CFG_USE_MEMCORE: 1
+--- CH_CFG_USE_HEAP: 1
+--- CH_CFG_USE_MEMPOOLS: 1
+--- CH_CFG_USE_DYNAMIC: 1
+--- CH_DBG_STATISTICS: 0
+--- CH_DBG_SYSTEM_STATE_CHECK: 0
+--- CH_DBG_ENABLE_CHECKS: 0
+--- CH_DBG_ENABLE_ASSERTS: 0
+--- CH_DBG_TRACE_MASK: 255
+--- CH_DBG_TRACE_BUFFER_SIZE: 128
+--- CH_DBG_ENABLE_STACK_CHECK: 0
+--- CH_DBG_FILL_THREADS: 0
+--- CH_DBG_THREADS_PROFILING: 0
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 1.3 (Interrupts handling functionality)
+--- Test Case 2.1 (System integrity functionality)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 1.4 (System Tick Counter functionality)
+--- Test Case 2.2 (Critical zones functionality)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 2.1 (Thread Sleep functionality)
+--- Test Case 2.3 (Interrupts handling functionality)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 2.2 (Ready List functionality, threads priority order)
+--- Test Case 2.4 (System Tick Counter functionality)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 2.3 (Priority change test)
+--- Test Case 3.1 (Thread Sleep functionality)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 2.4 (Priority change test with Priority Inheritance)
+--- Test Case 3.2 (Ready List functionality, threads priority order)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 3.1 (Suspend and Resume functionality)
+--- Test Case 3.3 (Priority change test)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 4.1 (Semaphore primitives, no state change)
+--- Test Case 3.4 (Priority change test with Priority Inheritance)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 4.2 (Semaphore enqueuing test)
+--- Test Case 4.1 (Suspend and Resume functionality)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 4.3 (Semaphore timeout test)
+--- Test Case 5.1 (Semaphore primitives, no state change)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 4.4 (Testing chSemAddCounterI() functionality)
+--- Test Case 5.2 (Semaphore enqueuing test)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 4.5 (Testing chSemWaitSignal() functionality)
+--- Test Case 5.3 (Semaphore timeout test)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 4.6 (Testing Binary Semaphores special case)
+--- Test Case 5.4 (Testing chSemAddCounterI() functionality)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 5.1 (Priority enqueuing test)
+--- Test Case 5.5 (Testing chSemWaitSignal() functionality)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 5.2 (Priority return verification)
+--- Test Case 5.6 (Testing Binary Semaphores special case)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 5.3 (Repeated locks, non recursive scenario)
+--- Test Case 6.1 (Priority enqueuing test)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 5.4 (Condition Variable signal test)
+--- Test Case 6.2 (Priority return verification)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 5.5 (Condition Variable broadcast test)
+--- Test Case 6.3 (Repeated locks, non recursive scenario)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 5.6 (Condition Variable priority boost test)
+--- Test Case 6.4 (Condition Variable signal test)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 6.1 (Messages Server loop)
+--- Test Case 6.5 (Condition Variable broadcast test)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 7.1 (Events registration)
+--- Test Case 6.6 (Condition Variable priority boost test)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 7.2 (Event Flags dispatching)
+--- Test Case 7.1 (Messages Server loop)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 7.3 (Events Flags wait using chEvtWaitOne())
+--- Test Case 8.1 (Events registration)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 7.4 (Events Flags wait using chEvtWaitAny())
+--- Test Case 8.2 (Event Flags dispatching)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 7.5 (Events Flags wait using chEvtWaitAll())
+--- Test Case 8.3 (Events Flags wait using chEvtWaitOne())
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 7.6 (Events Flags wait timeouts)
+--- Test Case 8.4 (Events Flags wait using chEvtWaitAny())
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 7.7 (Broadcasting using chEvtBroadcast())
+--- Test Case 8.5 (Events Flags wait using chEvtWaitAll())
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 8.1 (Mailbox normal API, non-blocking tests)
+--- Test Case 8.6 (Events Flags wait timeouts)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 8.2 (Mailbox I-Class API, non-blocking tests)
+--- Test Case 8.7 (Broadcasting using chEvtBroadcast())
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 8.3 (Mailbox timeouts)
+--- Test Case 9.1 (Mailbox normal API, non-blocking tests)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 9.1 (Loading and emptying a memory pool)
+--- Test Case 9.2 (Mailbox I-Class API, non-blocking tests)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 9.2 (Loading and emptying a guarded memory pool without waiting)
+--- Test Case 9.3 (Mailbox timeouts)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 9.3 (Guarded Memory Pools timeout)
+--- Test Case 10.1 (Loading and emptying a memory pool)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 10.1 (Allocation and fragmentation)
+--- Test Case 10.2 (Loading and emptying a guarded memory pool without waiting)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 10.2 (Default Heap)
+--- Test Case 10.3 (Guarded Memory Pools timeout)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 11.1 (Threads creation from Memory Heap)
+--- Test Case 11.1 (Allocation and fragmentation)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 11.2 (Threads creation from Memory Pool)
+--- Test Case 11.2 (Default Heap)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 12.1 (Messages performance #1)
---- Score : 899992 msgs/S, 1799984 ctxswc/S
+--- Test Case 12.1 (Threads creation from Memory Heap)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 12.2 (Messages performance #2)
---- Score : 760557 msgs/S, 1521114 ctxswc/S
+--- Test Case 12.2 (Threads creation from Memory Pool)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 12.3 (Messages performance #3)
---- Score : 760557 msgs/S, 1521114 ctxswc/S
+--- Test Case 13.1 (Messages performance #1)
+--- Score : 915248 msgs/S, 1830496 ctxswc/S
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 12.4 (Context Switch performance)
---- Score : 3401552 ctxswc/S
+--- Test Case 13.2 (Messages performance #2)
+--- Score : 805965 msgs/S, 1611930 ctxswc/S
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 12.5 (Threads performance, full cycle)
---- Score : 599995 threads/S
+--- Test Case 13.3 (Messages performance #3)
+--- Score : 805964 msgs/S, 1611928 ctxswc/S
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 12.6 (Threads performance, create/exit only)
---- Score : 760558 threads/S
+--- Test Case 13.4 (Context Switch performance)
+--- Score : 3401560 ctxswc/S
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 12.7 (Mass reschedule performance)
---- Score : 295081 reschedules/S, 1770486 ctxswc/S
+--- Test Case 13.5 (Threads performance, full cycle)
+--- Score : 613632 threads/S
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 12.8 (Round-Robin voluntary reschedule)
---- Score : 2062040 ctxswc/S
+--- Test Case 13.6 (Threads performance, create/exit only)
+--- Score : 782603 threads/S
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 12.9 (Virtual Timers set/reset performance)
---- Score : 2075986 timers/S
+--- Test Case 13.7 (Mass reschedule performance)
+--- Score : 299999 reschedules/S, 1799994 ctxswc/S
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 12.10 (Semaphores wait/signal performance)
---- Score : 2918912 wait+signal/S
+--- Test Case 13.8 (Round-Robin voluntary reschedule)
+--- Score : 2081920 ctxswc/S
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 12.11 (Mutexes lock/unlock performance)
---- Score : 2399992 lock+unlock/S
+--- Test Case 13.9 (Virtual Timers set/reset performance)
+--- Score : 2203280 timers/S
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 12.12 (RAM Footprint)
+--- Test Case 13.10 (Semaphores wait/signal performance)
+--- Score : 3176460 wait+signal/S
+--- Result: SUCCESS
+----------------------------------------------------------------------------
+--- Test Case 13.11 (Mutexes lock/unlock performance)
+--- Score : 2602400 lock+unlock/S
+--- Result: SUCCESS
+----------------------------------------------------------------------------
+--- Test Case 13.12 (RAM Footprint)
--- System: 120 bytes
--- Thread: 68 bytes
--- Timer : 20 bytes
@@ -181,3 +231,4 @@
----------------------------------------------------------------------------
Final result: SUCCESS
+
diff --git a/doc/rt/reports/STM32F746-216-GCC.txt b/doc/rt/reports/STM32F746-216-GCC.txt
index 628954ac7..d32dbc505 100644
--- a/doc/rt/reports/STM32F746-216-GCC.txt
+++ b/doc/rt/reports/STM32F746-216-GCC.txt
@@ -1,173 +1,223 @@
*** ChibiOS/RT Test Suite
***
-*** Compiled: Jun 4 2017 - 12:35:38
+*** Compiled: Sep 19 2017 - 12:17:36
*** Platform: STM32F746 Very High Performance with DSP and FPU
*** Test Board: STMicroelectronics STM32F746G-Discovery
+*** Compiler: GCC 5.4.1 20160919 (release) [ARM/embedded-5-branch revision 240496]
+*** Architecture: ARMv7E-M
+*** Core Variant: Cortex-M7
+*** Port Info: Advanced kernel mode
----------------------------------------------------------------------------
---- Test Case 1.1 (System integrity functionality)
+--- Test Case 1.1 (Kernel Info)
+--- Product: ChibiOS/RT
+--- Stable Flag: 1
+--- Version String: 4.0.1
+--- Major Number: 4
+--- Minor Number: 0
+--- Patch Number: 1
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 1.2 (Critical zones functionality)
+--- Test Case 1.2 (Kernel Settings)
+--- CH_CFG_ST_RESOLUTION: 32
+--- CH_CFG_ST_FREQUENCY: 10000
+--- CH_CFG_ST_TIMEDELTA: 2
+--- CH_CFG_TIME_QUANTUM: 0
+--- CH_CFG_MEMCORE_SIZE: 0
+--- CH_CFG_NO_IDLE_THREAD: 0
+--- CH_CFG_OPTIMIZE_SPEED: 1
+--- CH_CFG_USE_TM: 1
+--- CH_CFG_USE_REGISTRY: 1
+--- CH_CFG_USE_WAITEXIT: 1
+--- CH_CFG_USE_SEMAPHORES: 1
+--- CH_CFG_USE_SEMAPHORES_PRI: 0
+--- CH_CFG_USE_MUTEXES: 1
+--- CH_CFG_USE_MUTEXES_RECURS: 0
+--- CH_CFG_USE_CONDVARS: 1
+--- CH_CFG_USE_CONDVARS_TIMEO: 1
+--- CH_CFG_USE_EVENTS: 1
+--- CH_CFG_USE_EVENTS_TIMEOUT: 1
+--- CH_CFG_USE_MESSAGES: 1
+--- CH_CFG_USE_MESSAGES_PRI: 0
+--- CH_CFG_USE_MAILBOXES: 1
+--- CH_CFG_USE_MEMCORE: 1
+--- CH_CFG_USE_HEAP: 1
+--- CH_CFG_USE_MEMPOOLS: 1
+--- CH_CFG_USE_DYNAMIC: 1
+--- CH_DBG_STATISTICS: 0
+--- CH_DBG_SYSTEM_STATE_CHECK: 0
+--- CH_DBG_ENABLE_CHECKS: 0
+--- CH_DBG_ENABLE_ASSERTS: 0
+--- CH_DBG_TRACE_MASK: 255
+--- CH_DBG_TRACE_BUFFER_SIZE: 128
+--- CH_DBG_ENABLE_STACK_CHECK: 0
+--- CH_DBG_FILL_THREADS: 0
+--- CH_DBG_THREADS_PROFILING: 0
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 1.3 (Interrupts handling functionality)
+--- Test Case 2.1 (System integrity functionality)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 1.4 (System Tick Counter functionality)
+--- Test Case 2.2 (Critical zones functionality)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 2.1 (Thread Sleep functionality)
+--- Test Case 2.3 (Interrupts handling functionality)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 2.2 (Ready List functionality, threads priority order)
+--- Test Case 2.4 (System Tick Counter functionality)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 2.3 (Priority change test)
+--- Test Case 3.1 (Thread Sleep functionality)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 2.4 (Priority change test with Priority Inheritance)
+--- Test Case 3.2 (Ready List functionality, threads priority order)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 3.1 (Suspend and Resume functionality)
+--- Test Case 3.3 (Priority change test)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 4.1 (Semaphore primitives, no state change)
+--- Test Case 3.4 (Priority change test with Priority Inheritance)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 4.2 (Semaphore enqueuing test)
+--- Test Case 4.1 (Suspend and Resume functionality)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 4.3 (Semaphore timeout test)
+--- Test Case 5.1 (Semaphore primitives, no state change)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 4.4 (Testing chSemAddCounterI() functionality)
+--- Test Case 5.2 (Semaphore enqueuing test)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 4.5 (Testing chSemWaitSignal() functionality)
+--- Test Case 5.3 (Semaphore timeout test)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 4.6 (Testing Binary Semaphores special case)
+--- Test Case 5.4 (Testing chSemAddCounterI() functionality)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 5.1 (Priority enqueuing test)
+--- Test Case 5.5 (Testing chSemWaitSignal() functionality)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 5.2 (Priority return verification)
+--- Test Case 5.6 (Testing Binary Semaphores special case)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 5.3 (Repeated locks, non recursive scenario)
+--- Test Case 6.1 (Priority enqueuing test)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 5.4 (Condition Variable signal test)
+--- Test Case 6.2 (Priority return verification)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 5.5 (Condition Variable broadcast test)
+--- Test Case 6.3 (Repeated locks, non recursive scenario)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 5.6 (Condition Variable priority boost test)
+--- Test Case 6.4 (Condition Variable signal test)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 6.1 (Messages Server loop)
+--- Test Case 6.5 (Condition Variable broadcast test)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 7.1 (Events registration)
+--- Test Case 6.6 (Condition Variable priority boost test)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 7.2 (Event Flags dispatching)
+--- Test Case 7.1 (Messages Server loop)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 7.3 (Events Flags wait using chEvtWaitOne())
+--- Test Case 8.1 (Events registration)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 7.4 (Events Flags wait using chEvtWaitAny())
+--- Test Case 8.2 (Event Flags dispatching)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 7.5 (Events Flags wait using chEvtWaitAll())
+--- Test Case 8.3 (Events Flags wait using chEvtWaitOne())
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 7.6 (Events Flags wait timeouts)
+--- Test Case 8.4 (Events Flags wait using chEvtWaitAny())
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 7.7 (Broadcasting using chEvtBroadcast())
+--- Test Case 8.5 (Events Flags wait using chEvtWaitAll())
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 8.1 (Mailbox normal API, non-blocking tests)
+--- Test Case 8.6 (Events Flags wait timeouts)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 8.2 (Mailbox I-Class API, non-blocking tests)
+--- Test Case 8.7 (Broadcasting using chEvtBroadcast())
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 8.3 (Mailbox timeouts)
+--- Test Case 9.1 (Mailbox normal API, non-blocking tests)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 9.1 (Loading and emptying a memory pool)
+--- Test Case 9.2 (Mailbox I-Class API, non-blocking tests)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 9.2 (Loading and emptying a guarded memory pool without waiting)
+--- Test Case 9.3 (Mailbox timeouts)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 9.3 (Guarded Memory Pools timeout)
+--- Test Case 10.1 (Loading and emptying a memory pool)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 10.1 (Allocation and fragmentation)
+--- Test Case 10.2 (Loading and emptying a guarded memory pool without waiting)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 10.2 (Default Heap)
+--- Test Case 10.3 (Guarded Memory Pools timeout)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 11.1 (Threads creation from Memory Heap)
+--- Test Case 11.1 (Allocation and fragmentation)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 11.2 (Threads creation from Memory Pool)
+--- Test Case 11.2 (Default Heap)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 12.1 (Messages performance #1)
---- Score : 1038453 msgs/S, 2076906 ctxswc/S
+--- Test Case 12.1 (Threads creation from Memory Heap)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 12.2 (Messages performance #2)
---- Score : 870961 msgs/S, 1741922 ctxswc/S
+--- Test Case 12.2 (Threads creation from Memory Pool)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 12.3 (Messages performance #3)
---- Score : 870961 msgs/S, 1741922 ctxswc/S
+--- Test Case 13.1 (Messages performance #1)
+--- Score : 1079993 msgs/S, 2159986 ctxswc/S
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 12.4 (Context Switch performance)
+--- Test Case 13.2 (Messages performance #2)
+--- Score : 915249 msgs/S, 1830498 ctxswc/S
+--- Result: SUCCESS
+----------------------------------------------------------------------------
+--- Test Case 13.3 (Messages performance #3)
+--- Score : 915248 msgs/S, 1830496 ctxswc/S
+--- Result: SUCCESS
+----------------------------------------------------------------------------
+--- Test Case 13.4 (Context Switch performance)
--- Score : 4645136 ctxswc/S
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 12.5 (Threads performance, full cycle)
---- Score : 658531 threads/S
+--- Test Case 13.5 (Threads performance, full cycle)
+--- Score : 674996 threads/S
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 12.6 (Threads performance, create/exit only)
---- Score : 870962 threads/S
+--- Test Case 13.6 (Threads performance, create/exit only)
+--- Score : 885241 threads/S
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 12.7 (Mass reschedule performance)
---- Score : 339622 reschedules/S, 2037732 ctxswc/S
+--- Test Case 13.7 (Mass reschedule performance)
+--- Score : 346153 reschedules/S, 2076918 ctxswc/S
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 12.8 (Round-Robin voluntary reschedule)
---- Score : 2354200 ctxswc/S
+--- Test Case 13.8 (Round-Robin voluntary reschedule)
+--- Score : 2489900 ctxswc/S
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 12.9 (Virtual Timers set/reset performance)
---- Score : 2075988 timers/S
+--- Test Case 13.9 (Virtual Timers set/reset performance)
+--- Score : 2203294 timers/S
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 12.10 (Semaphores wait/signal performance)
---- Score : 2918912 wait+signal/S
+--- Test Case 13.10 (Semaphores wait/signal performance)
+--- Score : 3176464 wait+signal/S
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 12.11 (Mutexes lock/unlock performance)
---- Score : 2399992 lock+unlock/S
+--- Test Case 13.11 (Mutexes lock/unlock performance)
+--- Score : 2602404 lock+unlock/S
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 12.12 (RAM Footprint)
+--- Test Case 13.12 (RAM Footprint)
--- System: 120 bytes
--- Thread: 68 bytes
--- Timer : 20 bytes
@@ -181,3 +231,4 @@
----------------------------------------------------------------------------
Final result: SUCCESS
+
diff --git a/doc/rt/reports/STM32L053-32-GCC.txt b/doc/rt/reports/STM32L053-32-GCC.txt
index 9619cbd94..07f5b5f1d 100644
--- a/doc/rt/reports/STM32L053-32-GCC.txt
+++ b/doc/rt/reports/STM32L053-32-GCC.txt
@@ -1,161 +1,231 @@
-*** ChibiOS/RT test suite
+*** ChibiOS/RT Test Suite
***
-*** Kernel: 3.1.0
-*** Compiled: Jan 6 2016 - 12:05:15
-*** Compiler: GCC 4.9.3 20150529 (release) [ARM/embedded-4_9-branch revision 227977]
+*** Compiled: Sep 19 2017 - 12:53:40
+*** Platform: STM32L053xx ultra-low-power MCU
+*** Test Board: STMicroelectronics STM32 Nucleo64-L053R8
+*** Compiler: GCC 5.4.1 20160919 (release) [ARM/embedded-5-branch revision 240496]
*** Architecture: ARMv6-M
*** Core Variant: Cortex-M0+
*** Port Info: Preemption through NMI
-*** Platform: STM32L053xx ultra-low-power MCU
-*** Test Board: STMicroelectronics NUCLEO-L053R8
----------------------------------------------------------------------------
---- Test Case 1.1 (System, critical zones)
+--- Test Case 1.1 (Kernel Info)
+--- Product: ChibiOS/RT
+--- Stable Flag: 1
+--- Version String: 4.0.1
+--- Major Number: 4
+--- Minor Number: 0
+--- Patch Number: 1
+--- Result: SUCCESS
+----------------------------------------------------------------------------
+--- Test Case 1.2 (Kernel Settings)
+--- CH_CFG_ST_RESOLUTION: 16
+--- CH_CFG_ST_FREQUENCY: 1000
+--- CH_CFG_ST_TIMEDELTA: 2
+--- CH_CFG_TIME_QUANTUM: 0
+--- CH_CFG_MEMCORE_SIZE: 0
+--- CH_CFG_NO_IDLE_THREAD: 0
+--- CH_CFG_OPTIMIZE_SPEED: 1
+--- CH_CFG_USE_TM: 0
+--- CH_CFG_USE_REGISTRY: 1
+--- CH_CFG_USE_WAITEXIT: 1
+--- CH_CFG_USE_SEMAPHORES: 1
+--- CH_CFG_USE_SEMAPHORES_PRI: 0
+--- CH_CFG_USE_MUTEXES: 1
+--- CH_CFG_USE_MUTEXES_RECURS: 0
+--- CH_CFG_USE_CONDVARS: 1
+--- CH_CFG_USE_CONDVARS_TIMEO: 1
+--- CH_CFG_USE_EVENTS: 1
+--- CH_CFG_USE_EVENTS_TIMEOUT: 1
+--- CH_CFG_USE_MESSAGES: 1
+--- CH_CFG_USE_MESSAGES_PRI: 0
+--- CH_CFG_USE_MAILBOXES: 1
+--- CH_CFG_USE_MEMCORE: 1
+--- CH_CFG_USE_HEAP: 1
+--- CH_CFG_USE_MEMPOOLS: 1
+--- CH_CFG_USE_DYNAMIC: 1
+--- CH_DBG_STATISTICS: 0
+--- CH_DBG_SYSTEM_STATE_CHECK: 0
+--- CH_DBG_ENABLE_CHECKS: 0
+--- CH_DBG_ENABLE_ASSERTS: 0
+--- CH_DBG_TRACE_MASK: 255
+--- CH_DBG_TRACE_BUFFER_SIZE: 128
+--- CH_DBG_ENABLE_STACK_CHECK: 0
+--- CH_DBG_FILL_THREADS: 0
+--- CH_DBG_THREADS_PROFILING: 0
+--- Result: SUCCESS
+----------------------------------------------------------------------------
+--- Test Case 2.1 (System integrity functionality)
+--- Result: SUCCESS
+----------------------------------------------------------------------------
+--- Test Case 2.2 (Critical zones functionality)
+--- Result: SUCCESS
+----------------------------------------------------------------------------
+--- Test Case 2.3 (Interrupts handling functionality)
+--- Result: SUCCESS
+----------------------------------------------------------------------------
+--- Test Case 2.4 (System Tick Counter functionality)
+--- Result: SUCCESS
+----------------------------------------------------------------------------
+--- Test Case 3.1 (Thread Sleep functionality)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 1.2 (System, interrupts handling)
+--- Test Case 3.2 (Ready List functionality, threads priority order)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 1.3 (System, integrity)
+--- Test Case 3.3 (Priority change test)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 2.1 (Threads, enqueuing test #1)
+--- Test Case 3.4 (Priority change test with Priority Inheritance)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 2.2 (Threads, enqueuing test #2)
+--- Test Case 4.1 (Suspend and Resume functionality)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 2.3 (Threads, priority change)
+--- Test Case 5.1 (Semaphore primitives, no state change)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 2.4 (Threads, delays)
+--- Test Case 5.2 (Semaphore enqueuing test)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 3.1 (Semaphores, enqueuing)
+--- Test Case 5.3 (Semaphore timeout test)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 3.2 (Semaphores, timeout)
+--- Test Case 5.4 (Testing chSemAddCounterI() functionality)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 3.3 (Semaphores, atomic signal-wait)
+--- Test Case 5.5 (Testing chSemWaitSignal() functionality)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 3.4 (Binary Semaphores, functionality)
+--- Test Case 5.6 (Testing Binary Semaphores special case)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 4.1 (Mutexes, priority enqueuing test)
+--- Test Case 6.1 (Priority enqueuing test)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 4.2 (Mutexes, priority return)
+--- Test Case 6.2 (Priority return verification)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 4.3 (Mutexes, status)
+--- Test Case 6.3 (Repeated locks, non recursive scenario)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 4.4 (CondVar, signal test)
+--- Test Case 6.4 (Condition Variable signal test)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 4.5 (CondVar, broadcast test)
+--- Test Case 6.5 (Condition Variable broadcast test)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 4.6 (CondVar, boost test)
+--- Test Case 6.6 (Condition Variable priority boost test)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 5.1 (Messages, loop)
+--- Test Case 7.1 (Messages Server loop)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 6.1 (Mailboxes, queuing and timeouts)
+--- Test Case 8.1 (Events registration)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 7.1 (Events, registration and dispatch)
+--- Test Case 8.2 (Event Flags dispatching)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 7.2 (Events, wait and broadcast)
+--- Test Case 8.3 (Events Flags wait using chEvtWaitOne())
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 7.3 (Events, timeouts)
+--- Test Case 8.4 (Events Flags wait using chEvtWaitAny())
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 8.1 (Heap, allocation and fragmentation test)
+--- Test Case 8.5 (Events Flags wait using chEvtWaitAll())
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 9.1 (Memory Pools, queue/dequeue)
+--- Test Case 8.6 (Events Flags wait timeouts)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 10.1 (Dynamic APIs, threads creation from heap)
+--- Test Case 8.7 (Broadcasting using chEvtBroadcast())
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 10.2 (Dynamic APIs, threads creation from memory pool)
+--- Test Case 9.1 (Mailbox normal API, non-blocking tests)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 10.3 (Dynamic APIs, registry and references)
+--- Test Case 9.2 (Mailbox I-Class API, non-blocking tests)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 11.1 (Queues, input queues)
+--- Test Case 9.3 (Mailbox timeouts)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 11.2 (Queues, output queues)
+--- Test Case 10.1 (Loading and emptying a memory pool)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 12.1 (Benchmark, messages #1)
---- Score : 113068 msgs/S, 226136 ctxswc/S
+--- Test Case 10.2 (Loading and emptying a guarded memory pool without waiting)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 12.2 (Benchmark, messages #2)
---- Score : 90648 msgs/S, 181296 ctxswc/S
+--- Test Case 10.3 (Guarded Memory Pools timeout)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 12.3 (Benchmark, messages #3)
---- Score : 90648 msgs/S, 181296 ctxswc/S
+--- Test Case 11.1 (Allocation and fragmentation)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 12.4 (Benchmark, context switch)
---- Score : 329040 ctxswc/S
+--- Test Case 11.2 (Default Heap)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 12.5 (Benchmark, threads, full cycle)
---- Score : 71108 threads/S
+--- Test Case 12.1 (Threads creation from Memory Heap)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 12.6 (Benchmark, threads, create only)
---- Score : 102232 threads/S
+--- Test Case 12.2 (Threads creation from Memory Pool)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 12.7 (Benchmark, mass reschedule, 5 threads)
---- Score : 28751 reschedules/S, 172506 ctxswc/S
+--- Test Case 13.1 (Messages performance #1)
+--- Score : 109210 msgs/S, 218420 ctxswc/S
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 12.8 (Benchmark, round robin context switching)
---- Score : 240140 ctxswc/S
+--- Test Case 13.2 (Messages performance #2)
+--- Score : 88151 msgs/S, 176302 ctxswc/S
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 12.9 (Benchmark, I/O Queues throughput)
---- Score : 294924 bytes/S
+--- Test Case 13.3 (Messages performance #3)
+--- Score : 88151 msgs/S, 176302 ctxswc/S
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 12.10 (Benchmark, virtual timers set/reset)
---- Score : 196290 timers/S
+--- Test Case 13.4 (Context Switch performance)
+--- Score : 319192 ctxswc/S
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 12.11 (Benchmark, semaphores wait/signal)
---- Score : 630528 wait+signal/S
+--- Test Case 13.5 (Threads performance, full cycle)
+--- Score : 65437 threads/S
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 12.12 (Benchmark, mutexes lock/unlock)
---- Score : 314492 lock+unlock/S
+--- Test Case 13.6 (Threads performance, create/exit only)
+--- Score : 81838 threads/S
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 12.13 (Benchmark, RAM footprint)
---- System: 328 bytes
+--- Test Case 13.7 (Mass reschedule performance)
+--- Score : 28394 reschedules/S, 170364 ctxswc/S
+--- Result: SUCCESS
+----------------------------------------------------------------------------
+--- Test Case 13.8 (Round-Robin voluntary reschedule)
+--- Score : 226140 ctxswc/S
+--- Result: SUCCESS
+----------------------------------------------------------------------------
+--- Test Case 13.9 (Virtual Timers set/reset performance)
+--- Score : 201854 timers/S
+--- Result: SUCCESS
+----------------------------------------------------------------------------
+--- Test Case 13.10 (Semaphores wait/signal performance)
+--- Score : 615372 wait+signal/S
+--- Result: SUCCESS
+----------------------------------------------------------------------------
+--- Test Case 13.11 (Mutexes lock/unlock performance)
+--- Score : 296292 lock+unlock/S
+--- Result: SUCCESS
+----------------------------------------------------------------------------
+--- Test Case 13.12 (RAM Footprint)
+--- System: 112 bytes
--- Thread: 68 bytes
--- Timer : 20 bytes
--- Semaph: 12 bytes
---- EventS: 4 bytes
---- EventL: 20 bytes
--- Mutex : 16 bytes
--- CondV.: 8 bytes
---- Queue : 36 bytes
+--- EventS: 4 bytes
+--- EventL: 20 bytes
--- MailB.: 40 bytes
--- Result: SUCCESS
----------------------------------------------------------------------------
diff --git a/doc/rt/reports/STM32L476-80-GCC-FPU.txt b/doc/rt/reports/STM32L476-80-GCC-FPU.txt
index 2e311ffc2..43dfb9bd0 100644
--- a/doc/rt/reports/STM32L476-80-GCC-FPU.txt
+++ b/doc/rt/reports/STM32L476-80-GCC-FPU.txt
@@ -1,161 +1,231 @@
-*** ChibiOS/RT test suite
+*** ChibiOS/RT Test Suite
***
-*** Kernel: 3.1.0
-*** Compiled: Jan 6 2016 - 12:13:33
-*** Compiler: GCC 4.9.3 20150529 (release) [ARM/embedded-4_9-branch revision 227977]
+*** Compiled: Sep 19 2017 - 12:23:02
+*** Platform: STM32L4xx Ultra Low Power
+*** Test Board: STMicroelectronics STM32L476-Discovery
+*** Compiler: GCC 5.4.1 20160919 (release) [ARM/embedded-5-branch revision 240496]
*** Architecture: ARMv7E-M
*** Core Variant: Cortex-M4F
*** Port Info: Advanced kernel mode
-*** Platform: STM32L4xx Ultra Low Power
-*** Test Board: STMicroelectronics NUCLEO-L476RG
----------------------------------------------------------------------------
---- Test Case 1.1 (System, critical zones)
+--- Test Case 1.1 (Kernel Info)
+--- Product: ChibiOS/RT
+--- Stable Flag: 1
+--- Version String: 4.0.1
+--- Major Number: 4
+--- Minor Number: 0
+--- Patch Number: 1
+--- Result: SUCCESS
+----------------------------------------------------------------------------
+--- Test Case 1.2 (Kernel Settings)
+--- CH_CFG_ST_RESOLUTION: 32
+--- CH_CFG_ST_FREQUENCY: 10000
+--- CH_CFG_ST_TIMEDELTA: 2
+--- CH_CFG_TIME_QUANTUM: 0
+--- CH_CFG_MEMCORE_SIZE: 0
+--- CH_CFG_NO_IDLE_THREAD: 0
+--- CH_CFG_OPTIMIZE_SPEED: 1
+--- CH_CFG_USE_TM: 1
+--- CH_CFG_USE_REGISTRY: 1
+--- CH_CFG_USE_WAITEXIT: 1
+--- CH_CFG_USE_SEMAPHORES: 1
+--- CH_CFG_USE_SEMAPHORES_PRI: 0
+--- CH_CFG_USE_MUTEXES: 1
+--- CH_CFG_USE_MUTEXES_RECURS: 0
+--- CH_CFG_USE_CONDVARS: 1
+--- CH_CFG_USE_CONDVARS_TIMEO: 1
+--- CH_CFG_USE_EVENTS: 1
+--- CH_CFG_USE_EVENTS_TIMEOUT: 1
+--- CH_CFG_USE_MESSAGES: 1
+--- CH_CFG_USE_MESSAGES_PRI: 0
+--- CH_CFG_USE_MAILBOXES: 1
+--- CH_CFG_USE_MEMCORE: 1
+--- CH_CFG_USE_HEAP: 1
+--- CH_CFG_USE_MEMPOOLS: 1
+--- CH_CFG_USE_DYNAMIC: 1
+--- CH_DBG_STATISTICS: 0
+--- CH_DBG_SYSTEM_STATE_CHECK: 0
+--- CH_DBG_ENABLE_CHECKS: 0
+--- CH_DBG_ENABLE_ASSERTS: 0
+--- CH_DBG_TRACE_MASK: 255
+--- CH_DBG_TRACE_BUFFER_SIZE: 128
+--- CH_DBG_ENABLE_STACK_CHECK: 0
+--- CH_DBG_FILL_THREADS: 0
+--- CH_DBG_THREADS_PROFILING: 0
+--- Result: SUCCESS
+----------------------------------------------------------------------------
+--- Test Case 2.1 (System integrity functionality)
+--- Result: SUCCESS
+----------------------------------------------------------------------------
+--- Test Case 2.2 (Critical zones functionality)
+--- Result: SUCCESS
+----------------------------------------------------------------------------
+--- Test Case 2.3 (Interrupts handling functionality)
+--- Result: SUCCESS
+----------------------------------------------------------------------------
+--- Test Case 2.4 (System Tick Counter functionality)
+--- Result: SUCCESS
+----------------------------------------------------------------------------
+--- Test Case 3.1 (Thread Sleep functionality)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 1.2 (System, interrupts handling)
+--- Test Case 3.2 (Ready List functionality, threads priority order)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 1.3 (System, integrity)
+--- Test Case 3.3 (Priority change test)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 2.1 (Threads, enqueuing test #1)
+--- Test Case 3.4 (Priority change test with Priority Inheritance)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 2.2 (Threads, enqueuing test #2)
+--- Test Case 4.1 (Suspend and Resume functionality)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 2.3 (Threads, priority change)
+--- Test Case 5.1 (Semaphore primitives, no state change)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 2.4 (Threads, delays)
+--- Test Case 5.2 (Semaphore enqueuing test)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 3.1 (Semaphores, enqueuing)
+--- Test Case 5.3 (Semaphore timeout test)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 3.2 (Semaphores, timeout)
+--- Test Case 5.4 (Testing chSemAddCounterI() functionality)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 3.3 (Semaphores, atomic signal-wait)
+--- Test Case 5.5 (Testing chSemWaitSignal() functionality)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 3.4 (Binary Semaphores, functionality)
+--- Test Case 5.6 (Testing Binary Semaphores special case)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 4.1 (Mutexes, priority enqueuing test)
+--- Test Case 6.1 (Priority enqueuing test)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 4.2 (Mutexes, priority return)
+--- Test Case 6.2 (Priority return verification)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 4.3 (Mutexes, status)
+--- Test Case 6.3 (Repeated locks, non recursive scenario)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 4.4 (CondVar, signal test)
+--- Test Case 6.4 (Condition Variable signal test)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 4.5 (CondVar, broadcast test)
+--- Test Case 6.5 (Condition Variable broadcast test)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 4.6 (CondVar, boost test)
+--- Test Case 6.6 (Condition Variable priority boost test)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 5.1 (Messages, loop)
+--- Test Case 7.1 (Messages Server loop)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 6.1 (Mailboxes, queuing and timeouts)
+--- Test Case 8.1 (Events registration)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 7.1 (Events, registration and dispatch)
+--- Test Case 8.2 (Event Flags dispatching)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 7.2 (Events, wait and broadcast)
+--- Test Case 8.3 (Events Flags wait using chEvtWaitOne())
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 7.3 (Events, timeouts)
+--- Test Case 8.4 (Events Flags wait using chEvtWaitAny())
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 8.1 (Heap, allocation and fragmentation test)
+--- Test Case 8.5 (Events Flags wait using chEvtWaitAll())
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 9.1 (Memory Pools, queue/dequeue)
+--- Test Case 8.6 (Events Flags wait timeouts)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 10.1 (Dynamic APIs, threads creation from heap)
+--- Test Case 8.7 (Broadcasting using chEvtBroadcast())
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 10.2 (Dynamic APIs, threads creation from memory pool)
+--- Test Case 9.1 (Mailbox normal API, non-blocking tests)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 10.3 (Dynamic APIs, registry and references)
+--- Test Case 9.2 (Mailbox I-Class API, non-blocking tests)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 11.1 (Queues, input queues)
+--- Test Case 9.3 (Mailbox timeouts)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 11.2 (Queues, output queues)
+--- Test Case 10.1 (Loading and emptying a memory pool)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 12.1 (Benchmark, messages #1)
---- Score : 293033 msgs/S, 586066 ctxswc/S
+--- Test Case 10.2 (Loading and emptying a guarded memory pool without waiting)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 12.2 (Benchmark, messages #2)
---- Score : 246148 msgs/S, 492296 ctxswc/S
+--- Test Case 10.3 (Guarded Memory Pools timeout)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 12.3 (Benchmark, messages #3)
---- Score : 246148 msgs/S, 492296 ctxswc/S
+--- Test Case 11.1 (Allocation and fragmentation)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 12.4 (Benchmark, context switch)
---- Score : 817360 ctxswc/S
+--- Test Case 11.2 (Default Heap)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 12.5 (Benchmark, threads, full cycle)
---- Score : 186911 threads/S
+--- Test Case 12.1 (Threads creation from Memory Heap)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 12.6 (Benchmark, threads, create only)
---- Score : 257228 threads/S
+--- Test Case 12.2 (Threads creation from Memory Pool)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 12.7 (Benchmark, mass reschedule, 5 threads)
---- Score : 79286 reschedules/S, 475716 ctxswc/S
+--- Test Case 13.1 (Messages performance #1)
+--- Score : 293017 msgs/S, 586034 ctxswc/S
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 12.8 (Benchmark, round robin context switching)
---- Score : 586060 ctxswc/S
+--- Test Case 13.2 (Messages performance #2)
+--- Score : 247661 msgs/S, 495322 ctxswc/S
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 12.9 (Benchmark, I/O Queues throughput)
---- Score : 868376 bytes/S
+--- Test Case 13.3 (Messages performance #3)
+--- Score : 247661 msgs/S, 495322 ctxswc/S
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 12.10 (Benchmark, virtual timers set/reset)
---- Score : 730616 timers/S
+--- Test Case 13.4 (Context Switch performance)
+--- Score : 804984 ctxswc/S
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 12.11 (Benchmark, semaphores wait/signal)
---- Score : 1839060 wait+signal/S
+--- Test Case 13.5 (Threads performance, full cycle)
+--- Score : 187777 threads/S
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 12.12 (Benchmark, mutexes lock/unlock)
---- Score : 981584 lock+unlock/S
+--- Test Case 13.6 (Threads performance, create/exit only)
+--- Score : 231196 threads/S
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 12.13 (Benchmark, RAM footprint)
---- System: 472 bytes
+--- Test Case 13.7 (Mass reschedule performance)
+--- Score : 78973 reschedules/S, 473838 ctxswc/S
+--- Result: SUCCESS
+----------------------------------------------------------------------------
+--- Test Case 13.8 (Round-Robin voluntary reschedule)
+--- Score : 577580 ctxswc/S
+--- Result: SUCCESS
+----------------------------------------------------------------------------
+--- Test Case 13.9 (Virtual Timers set/reset performance)
+--- Score : 757996 timers/S
+--- Result: SUCCESS
+----------------------------------------------------------------------------
+--- Test Case 13.10 (Semaphores wait/signal performance)
+--- Score : 1807892 wait+signal/S
+--- Result: SUCCESS
+----------------------------------------------------------------------------
+--- Test Case 13.11 (Mutexes lock/unlock performance)
+--- Score : 972636 lock+unlock/S
+--- Result: SUCCESS
+----------------------------------------------------------------------------
+--- Test Case 13.12 (RAM Footprint)
+--- System: 120 bytes
--- Thread: 68 bytes
--- Timer : 20 bytes
--- Semaph: 12 bytes
---- EventS: 4 bytes
---- EventL: 20 bytes
--- Mutex : 16 bytes
--- CondV.: 8 bytes
---- Queue : 36 bytes
+--- EventS: 4 bytes
+--- EventL: 20 bytes
--- MailB.: 40 bytes
--- Result: SUCCESS
----------------------------------------------------------------------------
diff --git a/doc/rt/reports/STM32L476-80-GCC.txt b/doc/rt/reports/STM32L476-80-GCC.txt
index 990dc5008..decf316af 100644
--- a/doc/rt/reports/STM32L476-80-GCC.txt
+++ b/doc/rt/reports/STM32L476-80-GCC.txt
@@ -1,161 +1,231 @@
-*** ChibiOS/RT test suite
+*** ChibiOS/RT Test Suite
***
-*** Kernel: 3.1.0
-*** Compiled: Jan 6 2016 - 12:09:20
-*** Compiler: GCC 4.9.3 20150529 (release) [ARM/embedded-4_9-branch revision 227977]
+*** Compiled: Sep 19 2017 - 12:21:44
+*** Platform: STM32L4xx Ultra Low Power
+*** Test Board: STMicroelectronics STM32L476-Discovery
+*** Compiler: GCC 5.4.1 20160919 (release) [ARM/embedded-5-branch revision 240496]
*** Architecture: ARMv7E-M
*** Core Variant: Cortex-M4
*** Port Info: Advanced kernel mode
-*** Platform: STM32L4xx Ultra Low Power
-*** Test Board: STMicroelectronics NUCLEO-L476RG
----------------------------------------------------------------------------
---- Test Case 1.1 (System, critical zones)
+--- Test Case 1.1 (Kernel Info)
+--- Product: ChibiOS/RT
+--- Stable Flag: 1
+--- Version String: 4.0.1
+--- Major Number: 4
+--- Minor Number: 0
+--- Patch Number: 1
+--- Result: SUCCESS
+----------------------------------------------------------------------------
+--- Test Case 1.2 (Kernel Settings)
+--- CH_CFG_ST_RESOLUTION: 32
+--- CH_CFG_ST_FREQUENCY: 10000
+--- CH_CFG_ST_TIMEDELTA: 2
+--- CH_CFG_TIME_QUANTUM: 0
+--- CH_CFG_MEMCORE_SIZE: 0
+--- CH_CFG_NO_IDLE_THREAD: 0
+--- CH_CFG_OPTIMIZE_SPEED: 1
+--- CH_CFG_USE_TM: 1
+--- CH_CFG_USE_REGISTRY: 1
+--- CH_CFG_USE_WAITEXIT: 1
+--- CH_CFG_USE_SEMAPHORES: 1
+--- CH_CFG_USE_SEMAPHORES_PRI: 0
+--- CH_CFG_USE_MUTEXES: 1
+--- CH_CFG_USE_MUTEXES_RECURS: 0
+--- CH_CFG_USE_CONDVARS: 1
+--- CH_CFG_USE_CONDVARS_TIMEO: 1
+--- CH_CFG_USE_EVENTS: 1
+--- CH_CFG_USE_EVENTS_TIMEOUT: 1
+--- CH_CFG_USE_MESSAGES: 1
+--- CH_CFG_USE_MESSAGES_PRI: 0
+--- CH_CFG_USE_MAILBOXES: 1
+--- CH_CFG_USE_MEMCORE: 1
+--- CH_CFG_USE_HEAP: 1
+--- CH_CFG_USE_MEMPOOLS: 1
+--- CH_CFG_USE_DYNAMIC: 1
+--- CH_DBG_STATISTICS: 0
+--- CH_DBG_SYSTEM_STATE_CHECK: 0
+--- CH_DBG_ENABLE_CHECKS: 0
+--- CH_DBG_ENABLE_ASSERTS: 0
+--- CH_DBG_TRACE_MASK: 255
+--- CH_DBG_TRACE_BUFFER_SIZE: 128
+--- CH_DBG_ENABLE_STACK_CHECK: 0
+--- CH_DBG_FILL_THREADS: 0
+--- CH_DBG_THREADS_PROFILING: 0
+--- Result: SUCCESS
+----------------------------------------------------------------------------
+--- Test Case 2.1 (System integrity functionality)
+--- Result: SUCCESS
+----------------------------------------------------------------------------
+--- Test Case 2.2 (Critical zones functionality)
+--- Result: SUCCESS
+----------------------------------------------------------------------------
+--- Test Case 2.3 (Interrupts handling functionality)
+--- Result: SUCCESS
+----------------------------------------------------------------------------
+--- Test Case 2.4 (System Tick Counter functionality)
+--- Result: SUCCESS
+----------------------------------------------------------------------------
+--- Test Case 3.1 (Thread Sleep functionality)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 1.2 (System, interrupts handling)
+--- Test Case 3.2 (Ready List functionality, threads priority order)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 1.3 (System, integrity)
+--- Test Case 3.3 (Priority change test)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 2.1 (Threads, enqueuing test #1)
+--- Test Case 3.4 (Priority change test with Priority Inheritance)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 2.2 (Threads, enqueuing test #2)
+--- Test Case 4.1 (Suspend and Resume functionality)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 2.3 (Threads, priority change)
+--- Test Case 5.1 (Semaphore primitives, no state change)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 2.4 (Threads, delays)
+--- Test Case 5.2 (Semaphore enqueuing test)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 3.1 (Semaphores, enqueuing)
+--- Test Case 5.3 (Semaphore timeout test)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 3.2 (Semaphores, timeout)
+--- Test Case 5.4 (Testing chSemAddCounterI() functionality)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 3.3 (Semaphores, atomic signal-wait)
+--- Test Case 5.5 (Testing chSemWaitSignal() functionality)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 3.4 (Binary Semaphores, functionality)
+--- Test Case 5.6 (Testing Binary Semaphores special case)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 4.1 (Mutexes, priority enqueuing test)
+--- Test Case 6.1 (Priority enqueuing test)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 4.2 (Mutexes, priority return)
+--- Test Case 6.2 (Priority return verification)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 4.3 (Mutexes, status)
+--- Test Case 6.3 (Repeated locks, non recursive scenario)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 4.4 (CondVar, signal test)
+--- Test Case 6.4 (Condition Variable signal test)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 4.5 (CondVar, broadcast test)
+--- Test Case 6.5 (Condition Variable broadcast test)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 4.6 (CondVar, boost test)
+--- Test Case 6.6 (Condition Variable priority boost test)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 5.1 (Messages, loop)
+--- Test Case 7.1 (Messages Server loop)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 6.1 (Mailboxes, queuing and timeouts)
+--- Test Case 8.1 (Events registration)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 7.1 (Events, registration and dispatch)
+--- Test Case 8.2 (Event Flags dispatching)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 7.2 (Events, wait and broadcast)
+--- Test Case 8.3 (Events Flags wait using chEvtWaitOne())
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 7.3 (Events, timeouts)
+--- Test Case 8.4 (Events Flags wait using chEvtWaitAny())
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 8.1 (Heap, allocation and fragmentation test)
+--- Test Case 8.5 (Events Flags wait using chEvtWaitAll())
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 9.1 (Memory Pools, queue/dequeue)
+--- Test Case 8.6 (Events Flags wait timeouts)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 10.1 (Dynamic APIs, threads creation from heap)
+--- Test Case 8.7 (Broadcasting using chEvtBroadcast())
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 10.2 (Dynamic APIs, threads creation from memory pool)
+--- Test Case 9.1 (Mailbox normal API, non-blocking tests)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 10.3 (Dynamic APIs, registry and references)
+--- Test Case 9.2 (Mailbox I-Class API, non-blocking tests)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 11.1 (Queues, input queues)
+--- Test Case 9.3 (Mailbox timeouts)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 11.2 (Queues, output queues)
+--- Test Case 10.1 (Loading and emptying a memory pool)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 12.1 (Benchmark, messages #1)
---- Score : 390235 msgs/S, 780470 ctxswc/S
+--- Test Case 10.2 (Loading and emptying a guarded memory pool without waiting)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 12.2 (Benchmark, messages #2)
---- Score : 311278 msgs/S, 622556 ctxswc/S
+--- Test Case 10.3 (Guarded Memory Pools timeout)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 12.3 (Benchmark, messages #3)
---- Score : 311278 msgs/S, 622556 ctxswc/S
+--- Test Case 11.1 (Allocation and fragmentation)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 12.4 (Benchmark, context switch)
---- Score : 1252432 ctxswc/S
+--- Test Case 11.2 (Default Heap)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 12.5 (Benchmark, threads, full cycle)
---- Score : 223459 threads/S
+--- Test Case 12.1 (Threads creation from Memory Heap)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 12.6 (Benchmark, threads, create only)
---- Score : 333327 threads/S
+--- Test Case 12.2 (Threads creation from Memory Pool)
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 12.7 (Benchmark, mass reschedule, 5 threads)
---- Score : 99378 reschedules/S, 596268 ctxswc/S
+--- Test Case 13.1 (Messages performance #1)
+--- Score : 388325 msgs/S, 776650 ctxswc/S
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 12.8 (Benchmark, round robin context switching)
---- Score : 780476 ctxswc/S
+--- Test Case 13.2 (Messages performance #2)
+--- Score : 311266 msgs/S, 622532 ctxswc/S
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 12.9 (Benchmark, I/O Queues throughput)
---- Score : 868380 bytes/S
+--- Test Case 13.3 (Messages performance #3)
+--- Score : 311267 msgs/S, 622534 ctxswc/S
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 12.10 (Benchmark, virtual timers set/reset)
---- Score : 730694 timers/S
+--- Test Case 13.4 (Context Switch performance)
+--- Score : 1214368 ctxswc/S
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 12.11 (Benchmark, semaphores wait/signal)
---- Score : 1839064 wait+signal/S
+--- Test Case 13.5 (Threads performance, full cycle)
+--- Score : 222824 threads/S
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 12.12 (Benchmark, mutexes lock/unlock)
---- Score : 981588 lock+unlock/S
+--- Test Case 13.6 (Threads performance, create/exit only)
+--- Score : 287750 threads/S
--- Result: SUCCESS
----------------------------------------------------------------------------
---- Test Case 12.13 (Benchmark, RAM footprint)
---- System: 336 bytes
+--- Test Case 13.7 (Mass reschedule performance)
+--- Score : 98280 reschedules/S, 589680 ctxswc/S
+--- Result: SUCCESS
+----------------------------------------------------------------------------
+--- Test Case 13.8 (Round-Robin voluntary reschedule)
+--- Score : 765500 ctxswc/S
+--- Result: SUCCESS
+----------------------------------------------------------------------------
+--- Test Case 13.9 (Virtual Timers set/reset performance)
+--- Score : 768902 timers/S
+--- Result: SUCCESS
+----------------------------------------------------------------------------
+--- Test Case 13.10 (Semaphores wait/signal performance)
+--- Score : 1807900 wait+signal/S
+--- Result: SUCCESS
+----------------------------------------------------------------------------
+--- Test Case 13.11 (Mutexes lock/unlock performance)
+--- Score : 972640 lock+unlock/S
+--- Result: SUCCESS
+----------------------------------------------------------------------------
+--- Test Case 13.12 (RAM Footprint)
+--- System: 120 bytes
--- Thread: 68 bytes
--- Timer : 20 bytes
--- Semaph: 12 bytes
---- EventS: 4 bytes
---- EventL: 20 bytes
--- Mutex : 16 bytes
--- CondV.: 8 bytes
---- Queue : 36 bytes
+--- EventS: 4 bytes
+--- EventL: 20 bytes
--- MailB.: 40 bytes
--- Result: SUCCESS
----------------------------------------------------------------------------
diff --git a/doc/rt/reports/testbuild.7z b/doc/rt/reports/testbuild.7z
index 7388aa5d5..09f98f1dd 100644
--- a/doc/rt/reports/testbuild.7z
+++ b/doc/rt/reports/testbuild.7z
Binary files differ