Improved tests.

git-svn-id: svn://svn.code.sf.net/p/chibios/svn/trunk@11138 35acf78f-673a-0410-8e92-d51de3d6d3f4
This commit is contained in:
Giovanni Di Sirio 2017-12-10 14:16:32 +00:00
parent 16201b81af
commit d430fa4e4f
6 changed files with 239 additions and 190 deletions

View File

@ -33,7 +33,7 @@
<intAttribute key="org.eclipse.cdt.launch.ATTR_BUILD_BEFORE_LAUNCH_ATTR" value="2"/> <intAttribute key="org.eclipse.cdt.launch.ATTR_BUILD_BEFORE_LAUNCH_ATTR" value="2"/>
<stringAttribute key="org.eclipse.cdt.launch.COREFILE_PATH" value=""/> <stringAttribute key="org.eclipse.cdt.launch.COREFILE_PATH" value=""/>
<stringAttribute key="org.eclipse.cdt.launch.DEBUGGER_REGISTER_GROUPS" value=""/> <stringAttribute key="org.eclipse.cdt.launch.DEBUGGER_REGISTER_GROUPS" value=""/>
<stringAttribute key="org.eclipse.cdt.launch.FORMAT" value="&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot; standalone=&quot;no&quot;?&gt;&lt;contentList&gt;&lt;content id=&quot;r0-(format)&quot; val=&quot;4&quot;/&gt;&lt;content id=&quot;r1-(format)&quot; val=&quot;4&quot;/&gt;&lt;/contentList&gt;"/> <stringAttribute key="org.eclipse.cdt.launch.FORMAT" value="&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot; standalone=&quot;no&quot;?&gt;&lt;contentList&gt;&lt;content id=&quot;r1-(format)&quot; val=&quot;4&quot;/&gt;&lt;content id=&quot;r0-(format)&quot; val=&quot;4&quot;/&gt;&lt;/contentList&gt;"/>
<stringAttribute key="org.eclipse.cdt.launch.GLOBAL_VARIABLES" value="&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot; standalone=&quot;no&quot;?&gt;&#10;&lt;globalVariableList/&gt;&#10;"/> <stringAttribute key="org.eclipse.cdt.launch.GLOBAL_VARIABLES" value="&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot; standalone=&quot;no&quot;?&gt;&#10;&lt;globalVariableList/&gt;&#10;"/>
<stringAttribute key="org.eclipse.cdt.launch.MEMORY_BLOCKS" value="&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot; standalone=&quot;no&quot;?&gt;&#10;&lt;memoryBlockExpressionList/&gt;&#10;"/> <stringAttribute key="org.eclipse.cdt.launch.MEMORY_BLOCKS" value="&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot; standalone=&quot;no&quot;?&gt;&#10;&lt;memoryBlockExpressionList/&gt;&#10;"/>
<stringAttribute key="org.eclipse.cdt.launch.PROGRAM_NAME" value="./build/ch.elf"/> <stringAttribute key="org.eclipse.cdt.launch.PROGRAM_NAME" value="./build/ch.elf"/>

View File

@ -1,7 +1,7 @@
*** ChibiOS/RT Test Suite *** ChibiOS/RT Test Suite
*** ***
*** Compiled: Dec 7 2017 - 09:22:24 *** Compiled: Dec 10 2017 - 13:15:45
*** Platform: STM32F746 Very High Performance with DSP and FPU *** Platform: STM32F746 Very High Performance with DSP and FPU
*** Test Board: STMicroelectronics STM32F746G-Discovery *** Test Board: STMicroelectronics STM32F746G-Discovery
@ -9,57 +9,69 @@
=== Test Sequence 1 (Information) === Test Sequence 1 (Information)
---------------------------------------------------------------------------- ----------------------------------------------------------------------------
--- Test Case 1.1 (Port Info) --- Test Case 1.1 (Port Info)
--- Architecture: ARMv7E-M --- Architecture: ARMv7E-M
--- Compiler: GCC 5.4.1 20160609 (release) [ARM/embedded-5-branch revision 237715] --- Core Variant: Cortex-M7
--- Natural alignment: 4 --- Compiler: GCC 5.4.1 20160919 (release) [ARM/embedded-5-branch revision 240496]
--- Stack alignment: 8 --- Port Info: Advanced kernel mode
--- Working area alignment: 8 --- Natural alignment: 4
--- Stack alignment: 8
--- Working area alignment: 8
--- Result: SUCCESS --- Result: SUCCESS
---------------------------------------------------------------------------- ----------------------------------------------------------------------------
--- Test Case 1.2 (Kernel Info) --- Test Case 1.2 (Kernel Info)
--- Product: ChibiOS/RT --- Product: ChibiOS/RT
--- Stable Flag: 0 --- Stable Flag: 0
--- Version String: 5.0.0 --- Version String: 5.0.0
--- Major Number: 5 --- Major Number: 5
--- Minor Number: 0 --- Minor Number: 0
--- Patch Number: 0 --- Patch Number: 0
--- Result: SUCCESS --- Result: SUCCESS
---------------------------------------------------------------------------- ----------------------------------------------------------------------------
--- Test Case 1.3 (Kernel Settings) --- Test Case 1.3 (Kernel Settings)
--- CH_CFG_ST_RESOLUTION: 32 --- CH_CFG_ST_RESOLUTION: 32
--- CH_CFG_ST_FREQUENCY: 10000 --- CH_CFG_ST_FREQUENCY: 10000
--- CH_CFG_ST_TIMEDELTA: 2 --- CH_CFG_INTERVALS_SIZE: 32
--- CH_CFG_TIME_QUANTUM: 0 --- CH_CFG_TIME_TYPES_SIZE: 32
--- CH_CFG_MEMCORE_SIZE: 0 --- CH_CFG_ST_TIMEDELTA: 2
--- CH_CFG_NO_IDLE_THREAD: 0 --- CH_CFG_TIME_QUANTUM: 0
--- CH_CFG_OPTIMIZE_SPEED: 1 --- CH_CFG_MEMCORE_SIZE: 0
--- CH_CFG_USE_TM: 1 --- CH_CFG_NO_IDLE_THREAD: 0
--- CH_CFG_USE_REGISTRY: 1 --- CH_CFG_OPTIMIZE_SPEED: 1
--- CH_CFG_USE_WAITEXIT: 1 --- CH_CFG_USE_TM: 1
--- CH_CFG_USE_SEMAPHORES: 1 --- CH_CFG_USE_REGISTRY: 1
--- CH_CFG_USE_SEMAPHORES_PRI: 0 --- CH_CFG_USE_WAITEXIT: 1
--- CH_CFG_USE_MUTEXES: 1 --- CH_CFG_USE_SEMAPHORES: 1
--- CH_CFG_USE_MUTEXES_RECURS: 0 --- CH_CFG_USE_SEMAPHORES_PRI: 0
--- CH_CFG_USE_CONDVARS: 1 --- CH_CFG_USE_MUTEXES: 1
--- CH_CFG_USE_CONDVARS_TIMEO: 1 --- CH_CFG_USE_MUTEXES_RECURS: 0
--- CH_CFG_USE_EVENTS: 1 --- CH_CFG_USE_CONDVARS: 1
--- CH_CFG_USE_EVENTS_TIMEOUT: 1 --- CH_CFG_USE_CONDVARS_TIMEO: 1
--- CH_CFG_USE_MESSAGES: 1 --- CH_CFG_USE_EVENTS: 1
--- CH_CFG_USE_MESSAGES_PRI: 0 --- CH_CFG_USE_EVENTS_TIMEOUT: 1
--- CH_CFG_USE_MAILBOXES: 1 --- CH_CFG_USE_MESSAGES: 1
--- CH_CFG_USE_MEMCORE: 1 --- CH_CFG_USE_MESSAGES_PRI: 0
--- CH_CFG_USE_HEAP: 1 --- CH_CFG_USE_MAILBOXES: 1
--- CH_CFG_USE_MEMPOOLS: 1 --- CH_CFG_USE_MEMCORE: 1
--- CH_CFG_USE_DYNAMIC: 1 --- CH_CFG_USE_HEAP: 1
--- CH_DBG_STATISTICS: 0 --- CH_CFG_USE_MEMPOOLS: 1
--- CH_DBG_SYSTEM_STATE_CHECK: 0 --- CH_CFG_USE_OBJ_FIFOS: 1
--- CH_DBG_ENABLE_CHECKS: 0 --- CH_CFG_USE_DYNAMIC: 1
--- CH_DBG_ENABLE_ASSERTS: 0 --- CH_CFG_USE_FACTORY: 1
--- CH_DBG_TRACE_MASK: 0 --- CH_CFG_FACTORY_MAX_NAMES_LENGTH: 8
--- CH_DBG_TRACE_BUFFER_SIZE: 128 --- CH_CFG_FACTORY_OBJECTS_REGISTRY: 1
--- CH_DBG_ENABLE_STACK_CHECK: 0 --- CH_CFG_FACTORY_GENERIC_BUFFERS: 1
--- CH_DBG_FILL_THREADS: 0 --- CH_CFG_FACTORY_SEMAPHORES: 1
--- CH_DBG_THREADS_PROFILING: 0 --- CH_CFG_FACTORY_MAILBOXES: 1
--- CH_CFG_FACTORY_OBJ_FIFOS: 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: 0
--- CH_DBG_TRACE_BUFFER_SIZE: 128
--- CH_DBG_ENABLE_STACK_CHECK: 0
--- CH_DBG_FILL_THREADS: 0
--- CH_DBG_THREADS_PROFILING: 0
--- Result: SUCCESS --- Result: SUCCESS
============================================================================ ============================================================================
=== Test Sequence 2 (System layer and port interface) === Test Sequence 2 (System layer and port interface)
@ -174,7 +186,7 @@
=== Test Sequence 10 (Benchmarks) === Test Sequence 10 (Benchmarks)
---------------------------------------------------------------------------- ----------------------------------------------------------------------------
--- Test Case 10.1 (Messages performance #1) --- Test Case 10.1 (Messages performance #1)
--- Score : 931025 msgs/S, 1862050 ctxswc/S --- Score : 931026 msgs/S, 1862052 ctxswc/S
--- Result: SUCCESS --- Result: SUCCESS
---------------------------------------------------------------------------- ----------------------------------------------------------------------------
--- Test Case 10.2 (Messages performance #2) --- Test Case 10.2 (Messages performance #2)
@ -182,7 +194,7 @@
--- Result: SUCCESS --- Result: SUCCESS
---------------------------------------------------------------------------- ----------------------------------------------------------------------------
--- Test Case 10.3 (Messages performance #3) --- Test Case 10.3 (Messages performance #3)
--- Score : 818173 msgs/S, 1636346 ctxswc/S --- Score : 818174 msgs/S, 1636348 ctxswc/S
--- Result: SUCCESS --- Result: SUCCESS
---------------------------------------------------------------------------- ----------------------------------------------------------------------------
--- Test Case 10.4 (Context Switch performance) --- Test Case 10.4 (Context Switch performance)
@ -198,23 +210,23 @@
--- Result: SUCCESS --- Result: SUCCESS
---------------------------------------------------------------------------- ----------------------------------------------------------------------------
--- Test Case 10.7 (Mass reschedule performance) --- Test Case 10.7 (Mass reschedule performance)
--- Score : 291889 reschedules/S, 1751334 ctxswc/S --- Score : 293476 reschedules/S, 1760856 ctxswc/S
--- Result: SUCCESS --- Result: SUCCESS
---------------------------------------------------------------------------- ----------------------------------------------------------------------------
--- Test Case 10.8 (Round-Robin voluntary reschedule) --- Test Case 10.8 (Round-Robin voluntary reschedule)
--- Score : 2102168 ctxswc/S --- Score : 2303980 ctxswc/S
--- Result: SUCCESS --- Result: SUCCESS
---------------------------------------------------------------------------- ----------------------------------------------------------------------------
--- Test Case 10.9 (Virtual Timers set/reset performance) --- Test Case 10.9 (Virtual Timers set/reset performance)
--- Score : 1928652 timers/S --- Score : 1928654 timers/S
--- Result: SUCCESS --- Result: SUCCESS
---------------------------------------------------------------------------- ----------------------------------------------------------------------------
--- Test Case 10.10 (Semaphores wait/signal performance) --- Test Case 10.10 (Semaphores wait/signal performance)
--- Score : 2918896 wait+signal/S --- Score : 2918900 wait+signal/S
--- Result: SUCCESS --- Result: SUCCESS
---------------------------------------------------------------------------- ----------------------------------------------------------------------------
--- Test Case 10.11 (Mutexes lock/unlock performance) --- Test Case 10.11 (Mutexes lock/unlock performance)
--- Score : 2399976 lock+unlock/S --- Score : 2399984 lock+unlock/S
--- Result: SUCCESS --- Result: SUCCESS
---------------------------------------------------------------------------- ----------------------------------------------------------------------------
--- Test Case 10.12 (RAM Footprint) --- Test Case 10.12 (RAM Footprint)
@ -234,7 +246,7 @@ Final result: SUCCESS
*** ChibiOS OS Library Test Suite *** ChibiOS OS Library Test Suite
*** ***
*** Compiled: Dec 7 2017 - 09:22:24 *** Compiled: Dec 10 2017 - 13:15:45
*** Platform: STM32F746 Very High Performance with DSP and FPU *** Platform: STM32F746 Very High Performance with DSP and FPU
*** Test Board: STMicroelectronics STM32F746G-Discovery *** Test Board: STMicroelectronics STM32F746G-Discovery

View File

@ -67,8 +67,6 @@
#define WA_SIZE MEM_ALIGN_NEXT(THD_WORKING_AREA_SIZE(THREADS_STACK_SIZE), \ #define WA_SIZE MEM_ALIGN_NEXT(THD_WORKING_AREA_SIZE(THREADS_STACK_SIZE), \
PORT_WORKING_AREA_ALIGN) PORT_WORKING_AREA_ALIGN)
#define TEST_REPORT_HOOK_HEADER test_print_port_info();
extern uint8_t test_buffer[WA_SIZE * 5]; extern uint8_t test_buffer[WA_SIZE * 5];
extern thread_t *threads[MAX_THREADS]; extern thread_t *threads[MAX_THREADS];
extern void * ROMCONST wa[5]; extern void * ROMCONST wa[5];
@ -79,25 +77,7 @@ void test_wait_threads(void);
systime_t test_wait_tick(void);]]></value> systime_t test_wait_tick(void);]]></value>
</global_definitions> </global_definitions>
<global_code> <global_code>
<value><![CDATA[void test_print_port_info(void) { <value><![CDATA[/*
#ifdef PORT_COMPILER_NAME
test_print("*** Compiler: ");
test_println(PORT_COMPILER_NAME);
#endif
test_print("*** Architecture: ");
test_println(PORT_ARCHITECTURE_NAME);
#ifdef PORT_CORE_VARIANT_NAME
test_print("*** Core Variant: ");
test_println(PORT_CORE_VARIANT_NAME);
#endif
#ifdef PORT_INFO
test_print("*** Port Info: ");
test_println(PORT_INFO);
#endif
}
/*
* Global test buffer holding 5 working areas. * Global test buffer holding 5 working areas.
*/ */
ALIGNED_VAR(PORT_WORKING_AREA_ALIGN) uint8_t test_buffer[WA_SIZE * 5]; ALIGNED_VAR(PORT_WORKING_AREA_ALIGN) uint8_t test_buffer[WA_SIZE * 5];
@ -199,25 +179,33 @@ systime_t test_wait_tick(void) {
</tags> </tags>
<code> <code>
<value><![CDATA[#if defined(PORT_ARCHITECTURE_NAME) <value><![CDATA[#if defined(PORT_ARCHITECTURE_NAME)
test_print("--- Architecture: "); test_print("--- Architecture: ");
test_println(PORT_ARCHITECTURE_NAME); test_println(PORT_ARCHITECTURE_NAME);
#endif #endif
#if defined(PORT_CORE_VARIANT_NAME)
test_print("--- Core Variant: ");
test_println(PORT_CORE_VARIANT_NAME);
#endif
#if defined(PORT_COMPILER_NAME) #if defined(PORT_COMPILER_NAME)
test_print("--- Compiler: "); test_print("--- Compiler: ");
test_println(PORT_COMPILER_NAME); test_println(PORT_COMPILER_NAME);
#endif #endif
#if defined(PORT_INFO)
test_print("--- Port Info: ");
test_println(PORT_INFO);
#endif
#if defined(PORT_NATURAL_ALIGN) #if defined(PORT_NATURAL_ALIGN)
test_print("--- Natural alignment: "); test_print("--- Natural alignment: ");
test_printn(PORT_NATURAL_ALIGN); test_printn(PORT_NATURAL_ALIGN);
test_println(""); test_println("");
#endif #endif
#if defined(PORT_STACK_ALIGN) #if defined(PORT_STACK_ALIGN)
test_print("--- Stack alignment: "); test_print("--- Stack alignment: ");
test_printn(PORT_STACK_ALIGN); test_printn(PORT_STACK_ALIGN);
test_println(""); test_println("");
#endif #endif
#if defined(PORT_WORKING_AREA_ALIGN) #if defined(PORT_WORKING_AREA_ALIGN)
test_print("--- Working area alignment: "); test_print("--- Working area alignment: ");
test_printn(PORT_WORKING_AREA_ALIGN); test_printn(PORT_WORKING_AREA_ALIGN);
test_println(""); test_println("");
#endif]]></value> #endif]]></value>
@ -255,19 +243,20 @@ test_println("");
<value /> <value />
</tags> </tags>
<code> <code>
<value><![CDATA[test_println("--- Product: ChibiOS/RT"); <value><![CDATA[
test_print("--- Stable Flag: "); test_println("--- Product: ChibiOS/RT");
test_print("--- Stable Flag: ");
test_printn(CH_KERNEL_STABLE); test_printn(CH_KERNEL_STABLE);
test_println(""); test_println("");
test_print("--- Version String: "); test_print("--- Version String: ");
test_println(CH_KERNEL_VERSION); test_println(CH_KERNEL_VERSION);
test_print("--- Major Number: "); test_print("--- Major Number: ");
test_printn(CH_KERNEL_MAJOR); test_printn(CH_KERNEL_MAJOR);
test_println(""); test_println("");
test_print("--- Minor Number: "); test_print("--- Minor Number: ");
test_printn(CH_KERNEL_MINOR); test_printn(CH_KERNEL_MINOR);
test_println(""); test_println("");
test_print("--- Patch Number: "); test_print("--- Patch Number: ");
test_printn(CH_KERNEL_PATCH); test_printn(CH_KERNEL_PATCH);
test_println("");]]></value> test_println("");]]></value>
</code> </code>
@ -304,106 +293,136 @@ test_println("");]]></value>
<value /> <value />
</tags> </tags>
<code> <code>
<value><![CDATA[test_print("--- CH_CFG_ST_RESOLUTION: "); <value><![CDATA[test_print("--- CH_CFG_ST_RESOLUTION: ");
test_printn(CH_CFG_ST_RESOLUTION); test_printn(CH_CFG_ST_RESOLUTION);
test_println(""); test_println("");
test_print("--- CH_CFG_ST_FREQUENCY: "); test_print("--- CH_CFG_ST_FREQUENCY: ");
test_printn(CH_CFG_ST_FREQUENCY); test_printn(CH_CFG_ST_FREQUENCY);
test_println(""); test_println("");
test_print("--- CH_CFG_ST_TIMEDELTA: "); test_print("--- CH_CFG_INTERVALS_SIZE: ");
test_printn(CH_CFG_INTERVALS_SIZE);
test_println("");
test_print("--- CH_CFG_TIME_TYPES_SIZE: ");
test_printn(CH_CFG_TIME_TYPES_SIZE);
test_println("");
test_print("--- CH_CFG_ST_TIMEDELTA: ");
test_printn(CH_CFG_ST_TIMEDELTA); test_printn(CH_CFG_ST_TIMEDELTA);
test_println(""); test_println("");
test_print("--- CH_CFG_TIME_QUANTUM: "); test_print("--- CH_CFG_TIME_QUANTUM: ");
test_printn(CH_CFG_TIME_QUANTUM); test_printn(CH_CFG_TIME_QUANTUM);
test_println(""); test_println("");
test_print("--- CH_CFG_MEMCORE_SIZE: "); test_print("--- CH_CFG_MEMCORE_SIZE: ");
test_printn(CH_CFG_MEMCORE_SIZE); test_printn(CH_CFG_MEMCORE_SIZE);
test_println(""); test_println("");
test_print("--- CH_CFG_NO_IDLE_THREAD: "); test_print("--- CH_CFG_NO_IDLE_THREAD: ");
test_printn(CH_CFG_NO_IDLE_THREAD); test_printn(CH_CFG_NO_IDLE_THREAD);
test_println(""); test_println("");
test_print("--- CH_CFG_OPTIMIZE_SPEED: "); test_print("--- CH_CFG_OPTIMIZE_SPEED: ");
test_printn(CH_CFG_OPTIMIZE_SPEED); test_printn(CH_CFG_OPTIMIZE_SPEED);
test_println(""); test_println("");
test_print("--- CH_CFG_USE_TM: "); test_print("--- CH_CFG_USE_TM: ");
test_printn(CH_CFG_USE_TM); test_printn(CH_CFG_USE_TM);
test_println(""); test_println("");
test_print("--- CH_CFG_USE_REGISTRY: "); test_print("--- CH_CFG_USE_REGISTRY: ");
test_printn(CH_CFG_USE_REGISTRY); test_printn(CH_CFG_USE_REGISTRY);
test_println(""); test_println("");
test_print("--- CH_CFG_USE_WAITEXIT: "); test_print("--- CH_CFG_USE_WAITEXIT: ");
test_printn(CH_CFG_USE_WAITEXIT); test_printn(CH_CFG_USE_WAITEXIT);
test_println(""); test_println("");
test_print("--- CH_CFG_USE_SEMAPHORES: "); test_print("--- CH_CFG_USE_SEMAPHORES: ");
test_printn(CH_CFG_USE_SEMAPHORES); test_printn(CH_CFG_USE_SEMAPHORES);
test_println(""); test_println("");
test_print("--- CH_CFG_USE_SEMAPHORES_PRI: "); test_print("--- CH_CFG_USE_SEMAPHORES_PRI: ");
test_printn(CH_CFG_USE_SEMAPHORES_PRIORITY); test_printn(CH_CFG_USE_SEMAPHORES_PRIORITY);
test_println(""); test_println("");
test_print("--- CH_CFG_USE_MUTEXES: "); test_print("--- CH_CFG_USE_MUTEXES: ");
test_printn(CH_CFG_USE_MUTEXES); test_printn(CH_CFG_USE_MUTEXES);
test_println(""); test_println("");
test_print("--- CH_CFG_USE_MUTEXES_RECURS: "); test_print("--- CH_CFG_USE_MUTEXES_RECURS: ");
test_printn(CH_CFG_USE_MUTEXES_RECURSIVE); test_printn(CH_CFG_USE_MUTEXES_RECURSIVE);
test_println(""); test_println("");
test_print("--- CH_CFG_USE_CONDVARS: "); test_print("--- CH_CFG_USE_CONDVARS: ");
test_printn(CH_CFG_USE_CONDVARS); test_printn(CH_CFG_USE_CONDVARS);
test_println(""); test_println("");
test_print("--- CH_CFG_USE_CONDVARS_TIMEO: "); test_print("--- CH_CFG_USE_CONDVARS_TIMEO: ");
test_printn(CH_CFG_USE_CONDVARS_TIMEOUT); test_printn(CH_CFG_USE_CONDVARS_TIMEOUT);
test_println(""); test_println("");
test_print("--- CH_CFG_USE_EVENTS: "); test_print("--- CH_CFG_USE_EVENTS: ");
test_printn(CH_CFG_USE_EVENTS); test_printn(CH_CFG_USE_EVENTS);
test_println(""); test_println("");
test_print("--- CH_CFG_USE_EVENTS_TIMEOUT: "); test_print("--- CH_CFG_USE_EVENTS_TIMEOUT: ");
test_printn(CH_CFG_USE_EVENTS_TIMEOUT); test_printn(CH_CFG_USE_EVENTS_TIMEOUT);
test_println(""); test_println("");
test_print("--- CH_CFG_USE_MESSAGES: "); test_print("--- CH_CFG_USE_MESSAGES: ");
test_printn(CH_CFG_USE_MESSAGES); test_printn(CH_CFG_USE_MESSAGES);
test_println(""); test_println("");
test_print("--- CH_CFG_USE_MESSAGES_PRI: "); test_print("--- CH_CFG_USE_MESSAGES_PRI: ");
test_printn(CH_CFG_USE_MESSAGES_PRIORITY); test_printn(CH_CFG_USE_MESSAGES_PRIORITY);
test_println(""); test_println("");
test_print("--- CH_CFG_USE_MAILBOXES: "); test_print("--- CH_CFG_USE_MAILBOXES: ");
test_printn(CH_CFG_USE_MAILBOXES); test_printn(CH_CFG_USE_MAILBOXES);
test_println(""); test_println("");
test_print("--- CH_CFG_USE_MEMCORE: "); test_print("--- CH_CFG_USE_MEMCORE: ");
test_printn(CH_CFG_USE_MEMCORE); test_printn(CH_CFG_USE_MEMCORE);
test_println(""); test_println("");
test_print("--- CH_CFG_USE_HEAP: "); test_print("--- CH_CFG_USE_HEAP: ");
test_printn(CH_CFG_USE_HEAP); test_printn(CH_CFG_USE_HEAP);
test_println(""); test_println("");
test_print("--- CH_CFG_USE_MEMPOOLS: "); test_print("--- CH_CFG_USE_MEMPOOLS: ");
test_printn(CH_CFG_USE_MEMPOOLS); test_printn(CH_CFG_USE_MEMPOOLS);
test_println(""); test_println("");
test_print("--- CH_CFG_USE_DYNAMIC: "); test_print("--- CH_CFG_USE_OBJ_FIFOS: ");
test_printn(CH_CFG_USE_DYNAMIC); test_printn(CH_CFG_USE_OBJ_FIFOS);
test_println(""); test_println("");
test_print("--- CH_DBG_STATISTICS: "); test_print("--- CH_CFG_USE_DYNAMIC: ");
test_printn(CH_CFG_USE_DYNAMIC);
test_println("");
test_print("--- CH_CFG_USE_FACTORY: ");
test_printn(CH_CFG_USE_FACTORY);
test_println("");
test_print("--- CH_CFG_FACTORY_MAX_NAMES_LENGTH: ");
test_printn(CH_CFG_FACTORY_MAX_NAMES_LENGTH);
test_println("");
test_print("--- CH_CFG_FACTORY_OBJECTS_REGISTRY: ");
test_printn(CH_CFG_FACTORY_OBJECTS_REGISTRY);
test_println("");
test_print("--- CH_CFG_FACTORY_GENERIC_BUFFERS: ");
test_printn(CH_CFG_FACTORY_GENERIC_BUFFERS);
test_println("");
test_print("--- CH_CFG_FACTORY_SEMAPHORES: ");
test_printn(CH_CFG_FACTORY_SEMAPHORES);
test_println("");
test_print("--- CH_CFG_FACTORY_MAILBOXES: ");
test_printn(CH_CFG_FACTORY_MAILBOXES);
test_println("");
test_print("--- CH_CFG_FACTORY_OBJ_FIFOS: ");
test_printn(CH_CFG_FACTORY_OBJ_FIFOS);
test_println("");
test_print("--- CH_DBG_STATISTICS: ");
test_printn(CH_DBG_STATISTICS); test_printn(CH_DBG_STATISTICS);
test_println(""); test_println("");
test_print("--- CH_DBG_SYSTEM_STATE_CHECK: "); test_print("--- CH_DBG_SYSTEM_STATE_CHECK: ");
test_printn(CH_DBG_SYSTEM_STATE_CHECK); test_printn(CH_DBG_SYSTEM_STATE_CHECK);
test_println(""); test_println("");
test_print("--- CH_DBG_ENABLE_CHECKS: "); test_print("--- CH_DBG_ENABLE_CHECKS: ");
test_printn(CH_DBG_ENABLE_CHECKS); test_printn(CH_DBG_ENABLE_CHECKS);
test_println(""); test_println("");
test_print("--- CH_DBG_ENABLE_ASSERTS: "); test_print("--- CH_DBG_ENABLE_ASSERTS: ");
test_printn(CH_DBG_ENABLE_ASSERTS); test_printn(CH_DBG_ENABLE_ASSERTS);
test_println(""); test_println("");
test_print("--- CH_DBG_TRACE_MASK: "); test_print("--- CH_DBG_TRACE_MASK: ");
test_printn(CH_DBG_TRACE_MASK); test_printn(CH_DBG_TRACE_MASK);
test_println(""); test_println("");
test_print("--- CH_DBG_TRACE_BUFFER_SIZE: "); test_print("--- CH_DBG_TRACE_BUFFER_SIZE: ");
test_printn(CH_DBG_TRACE_BUFFER_SIZE); test_printn(CH_DBG_TRACE_BUFFER_SIZE);
test_println(""); test_println("");
test_print("--- CH_DBG_ENABLE_STACK_CHECK: "); test_print("--- CH_DBG_ENABLE_STACK_CHECK: ");
test_printn(CH_DBG_ENABLE_STACK_CHECK); test_printn(CH_DBG_ENABLE_STACK_CHECK);
test_println(""); test_println("");
test_print("--- CH_DBG_FILL_THREADS: "); test_print("--- CH_DBG_FILL_THREADS: ");
test_printn(CH_DBG_FILL_THREADS); test_printn(CH_DBG_FILL_THREADS);
test_println(""); test_println("");
test_print("--- CH_DBG_THREADS_PROFILING: "); test_print("--- CH_DBG_THREADS_PROFILING: ");
test_printn(CH_DBG_THREADS_PROFILING); test_printn(CH_DBG_THREADS_PROFILING);
test_println("");]]></value> test_println("");]]></value>
</code> </code>

View File

@ -87,24 +87,6 @@ const testsuite_t rt_test_suite = {
/* Shared code. */ /* Shared code. */
/*===========================================================================*/ /*===========================================================================*/
void test_print_port_info(void) {
#ifdef PORT_COMPILER_NAME
test_print("*** Compiler: ");
test_println(PORT_COMPILER_NAME);
#endif
test_print("*** Architecture: ");
test_println(PORT_ARCHITECTURE_NAME);
#ifdef PORT_CORE_VARIANT_NAME
test_print("*** Core Variant: ");
test_println(PORT_CORE_VARIANT_NAME);
#endif
#ifdef PORT_INFO
test_print("*** Port Info: ");
test_println(PORT_INFO);
#endif
}
/* /*
* Global test buffer holding 5 working areas. * Global test buffer holding 5 working areas.
*/ */

View File

@ -83,8 +83,6 @@ extern "C" {
#define WA_SIZE MEM_ALIGN_NEXT(THD_WORKING_AREA_SIZE(THREADS_STACK_SIZE), \ #define WA_SIZE MEM_ALIGN_NEXT(THD_WORKING_AREA_SIZE(THREADS_STACK_SIZE), \
PORT_WORKING_AREA_ALIGN) PORT_WORKING_AREA_ALIGN)
#define TEST_REPORT_HOOK_HEADER test_print_port_info();
extern uint8_t test_buffer[WA_SIZE * 5]; extern uint8_t test_buffer[WA_SIZE * 5];
extern thread_t *threads[MAX_THREADS]; extern thread_t *threads[MAX_THREADS];
extern void * ROMCONST wa[5]; extern void * ROMCONST wa[5];

View File

@ -63,25 +63,33 @@ static void rt_test_001_001_execute(void) {
test_set_step(1); test_set_step(1);
{ {
#if defined(PORT_ARCHITECTURE_NAME) #if defined(PORT_ARCHITECTURE_NAME)
test_print("--- Architecture: "); test_print("--- Architecture: ");
test_println(PORT_ARCHITECTURE_NAME); test_println(PORT_ARCHITECTURE_NAME);
#endif #endif
#if defined(PORT_CORE_VARIANT_NAME)
test_print("--- Core Variant: ");
test_println(PORT_CORE_VARIANT_NAME);
#endif
#if defined(PORT_COMPILER_NAME) #if defined(PORT_COMPILER_NAME)
test_print("--- Compiler: "); test_print("--- Compiler: ");
test_println(PORT_COMPILER_NAME); test_println(PORT_COMPILER_NAME);
#endif #endif
#if defined(PORT_INFO)
test_print("--- Port Info: ");
test_println(PORT_INFO);
#endif
#if defined(PORT_NATURAL_ALIGN) #if defined(PORT_NATURAL_ALIGN)
test_print("--- Natural alignment: "); test_print("--- Natural alignment: ");
test_printn(PORT_NATURAL_ALIGN); test_printn(PORT_NATURAL_ALIGN);
test_println(""); test_println("");
#endif #endif
#if defined(PORT_STACK_ALIGN) #if defined(PORT_STACK_ALIGN)
test_print("--- Stack alignment: "); test_print("--- Stack alignment: ");
test_printn(PORT_STACK_ALIGN); test_printn(PORT_STACK_ALIGN);
test_println(""); test_println("");
#endif #endif
#if defined(PORT_WORKING_AREA_ALIGN) #if defined(PORT_WORKING_AREA_ALIGN)
test_print("--- Working area alignment: "); test_print("--- Working area alignment: ");
test_printn(PORT_WORKING_AREA_ALIGN); test_printn(PORT_WORKING_AREA_ALIGN);
test_println(""); test_println("");
#endif #endif
@ -111,19 +119,19 @@ static void rt_test_001_002_execute(void) {
/* [1.2.1] Prints the version string.*/ /* [1.2.1] Prints the version string.*/
test_set_step(1); test_set_step(1);
{ {
test_println("--- Product: ChibiOS/RT"); test_println("--- Product: ChibiOS/RT");
test_print("--- Stable Flag: "); test_print("--- Stable Flag: ");
test_printn(CH_KERNEL_STABLE); test_printn(CH_KERNEL_STABLE);
test_println(""); test_println("");
test_print("--- Version String: "); test_print("--- Version String: ");
test_println(CH_KERNEL_VERSION); test_println(CH_KERNEL_VERSION);
test_print("--- Major Number: "); test_print("--- Major Number: ");
test_printn(CH_KERNEL_MAJOR); test_printn(CH_KERNEL_MAJOR);
test_println(""); test_println("");
test_print("--- Minor Number: "); test_print("--- Minor Number: ");
test_printn(CH_KERNEL_MINOR); test_printn(CH_KERNEL_MINOR);
test_println(""); test_println("");
test_print("--- Patch Number: "); test_print("--- Patch Number: ");
test_printn(CH_KERNEL_PATCH); test_printn(CH_KERNEL_PATCH);
test_println(""); test_println("");
} }
@ -152,106 +160,136 @@ static void rt_test_001_003_execute(void) {
/* [1.3.1] Prints the configuration options settings.*/ /* [1.3.1] Prints the configuration options settings.*/
test_set_step(1); test_set_step(1);
{ {
test_print("--- CH_CFG_ST_RESOLUTION: "); test_print("--- CH_CFG_ST_RESOLUTION: ");
test_printn(CH_CFG_ST_RESOLUTION); test_printn(CH_CFG_ST_RESOLUTION);
test_println(""); test_println("");
test_print("--- CH_CFG_ST_FREQUENCY: "); test_print("--- CH_CFG_ST_FREQUENCY: ");
test_printn(CH_CFG_ST_FREQUENCY); test_printn(CH_CFG_ST_FREQUENCY);
test_println(""); test_println("");
test_print("--- CH_CFG_ST_TIMEDELTA: "); test_print("--- CH_CFG_INTERVALS_SIZE: ");
test_printn(CH_CFG_INTERVALS_SIZE);
test_println("");
test_print("--- CH_CFG_TIME_TYPES_SIZE: ");
test_printn(CH_CFG_TIME_TYPES_SIZE);
test_println("");
test_print("--- CH_CFG_ST_TIMEDELTA: ");
test_printn(CH_CFG_ST_TIMEDELTA); test_printn(CH_CFG_ST_TIMEDELTA);
test_println(""); test_println("");
test_print("--- CH_CFG_TIME_QUANTUM: "); test_print("--- CH_CFG_TIME_QUANTUM: ");
test_printn(CH_CFG_TIME_QUANTUM); test_printn(CH_CFG_TIME_QUANTUM);
test_println(""); test_println("");
test_print("--- CH_CFG_MEMCORE_SIZE: "); test_print("--- CH_CFG_MEMCORE_SIZE: ");
test_printn(CH_CFG_MEMCORE_SIZE); test_printn(CH_CFG_MEMCORE_SIZE);
test_println(""); test_println("");
test_print("--- CH_CFG_NO_IDLE_THREAD: "); test_print("--- CH_CFG_NO_IDLE_THREAD: ");
test_printn(CH_CFG_NO_IDLE_THREAD); test_printn(CH_CFG_NO_IDLE_THREAD);
test_println(""); test_println("");
test_print("--- CH_CFG_OPTIMIZE_SPEED: "); test_print("--- CH_CFG_OPTIMIZE_SPEED: ");
test_printn(CH_CFG_OPTIMIZE_SPEED); test_printn(CH_CFG_OPTIMIZE_SPEED);
test_println(""); test_println("");
test_print("--- CH_CFG_USE_TM: "); test_print("--- CH_CFG_USE_TM: ");
test_printn(CH_CFG_USE_TM); test_printn(CH_CFG_USE_TM);
test_println(""); test_println("");
test_print("--- CH_CFG_USE_REGISTRY: "); test_print("--- CH_CFG_USE_REGISTRY: ");
test_printn(CH_CFG_USE_REGISTRY); test_printn(CH_CFG_USE_REGISTRY);
test_println(""); test_println("");
test_print("--- CH_CFG_USE_WAITEXIT: "); test_print("--- CH_CFG_USE_WAITEXIT: ");
test_printn(CH_CFG_USE_WAITEXIT); test_printn(CH_CFG_USE_WAITEXIT);
test_println(""); test_println("");
test_print("--- CH_CFG_USE_SEMAPHORES: "); test_print("--- CH_CFG_USE_SEMAPHORES: ");
test_printn(CH_CFG_USE_SEMAPHORES); test_printn(CH_CFG_USE_SEMAPHORES);
test_println(""); test_println("");
test_print("--- CH_CFG_USE_SEMAPHORES_PRI: "); test_print("--- CH_CFG_USE_SEMAPHORES_PRI: ");
test_printn(CH_CFG_USE_SEMAPHORES_PRIORITY); test_printn(CH_CFG_USE_SEMAPHORES_PRIORITY);
test_println(""); test_println("");
test_print("--- CH_CFG_USE_MUTEXES: "); test_print("--- CH_CFG_USE_MUTEXES: ");
test_printn(CH_CFG_USE_MUTEXES); test_printn(CH_CFG_USE_MUTEXES);
test_println(""); test_println("");
test_print("--- CH_CFG_USE_MUTEXES_RECURS: "); test_print("--- CH_CFG_USE_MUTEXES_RECURS: ");
test_printn(CH_CFG_USE_MUTEXES_RECURSIVE); test_printn(CH_CFG_USE_MUTEXES_RECURSIVE);
test_println(""); test_println("");
test_print("--- CH_CFG_USE_CONDVARS: "); test_print("--- CH_CFG_USE_CONDVARS: ");
test_printn(CH_CFG_USE_CONDVARS); test_printn(CH_CFG_USE_CONDVARS);
test_println(""); test_println("");
test_print("--- CH_CFG_USE_CONDVARS_TIMEO: "); test_print("--- CH_CFG_USE_CONDVARS_TIMEO: ");
test_printn(CH_CFG_USE_CONDVARS_TIMEOUT); test_printn(CH_CFG_USE_CONDVARS_TIMEOUT);
test_println(""); test_println("");
test_print("--- CH_CFG_USE_EVENTS: "); test_print("--- CH_CFG_USE_EVENTS: ");
test_printn(CH_CFG_USE_EVENTS); test_printn(CH_CFG_USE_EVENTS);
test_println(""); test_println("");
test_print("--- CH_CFG_USE_EVENTS_TIMEOUT: "); test_print("--- CH_CFG_USE_EVENTS_TIMEOUT: ");
test_printn(CH_CFG_USE_EVENTS_TIMEOUT); test_printn(CH_CFG_USE_EVENTS_TIMEOUT);
test_println(""); test_println("");
test_print("--- CH_CFG_USE_MESSAGES: "); test_print("--- CH_CFG_USE_MESSAGES: ");
test_printn(CH_CFG_USE_MESSAGES); test_printn(CH_CFG_USE_MESSAGES);
test_println(""); test_println("");
test_print("--- CH_CFG_USE_MESSAGES_PRI: "); test_print("--- CH_CFG_USE_MESSAGES_PRI: ");
test_printn(CH_CFG_USE_MESSAGES_PRIORITY); test_printn(CH_CFG_USE_MESSAGES_PRIORITY);
test_println(""); test_println("");
test_print("--- CH_CFG_USE_MAILBOXES: "); test_print("--- CH_CFG_USE_MAILBOXES: ");
test_printn(CH_CFG_USE_MAILBOXES); test_printn(CH_CFG_USE_MAILBOXES);
test_println(""); test_println("");
test_print("--- CH_CFG_USE_MEMCORE: "); test_print("--- CH_CFG_USE_MEMCORE: ");
test_printn(CH_CFG_USE_MEMCORE); test_printn(CH_CFG_USE_MEMCORE);
test_println(""); test_println("");
test_print("--- CH_CFG_USE_HEAP: "); test_print("--- CH_CFG_USE_HEAP: ");
test_printn(CH_CFG_USE_HEAP); test_printn(CH_CFG_USE_HEAP);
test_println(""); test_println("");
test_print("--- CH_CFG_USE_MEMPOOLS: "); test_print("--- CH_CFG_USE_MEMPOOLS: ");
test_printn(CH_CFG_USE_MEMPOOLS); test_printn(CH_CFG_USE_MEMPOOLS);
test_println(""); test_println("");
test_print("--- CH_CFG_USE_DYNAMIC: "); test_print("--- CH_CFG_USE_OBJ_FIFOS: ");
test_printn(CH_CFG_USE_OBJ_FIFOS);
test_println("");
test_print("--- CH_CFG_USE_DYNAMIC: ");
test_printn(CH_CFG_USE_DYNAMIC); test_printn(CH_CFG_USE_DYNAMIC);
test_println(""); test_println("");
test_print("--- CH_DBG_STATISTICS: "); test_print("--- CH_CFG_USE_FACTORY: ");
test_printn(CH_CFG_USE_FACTORY);
test_println("");
test_print("--- CH_CFG_FACTORY_MAX_NAMES_LENGTH: ");
test_printn(CH_CFG_FACTORY_MAX_NAMES_LENGTH);
test_println("");
test_print("--- CH_CFG_FACTORY_OBJECTS_REGISTRY: ");
test_printn(CH_CFG_FACTORY_OBJECTS_REGISTRY);
test_println("");
test_print("--- CH_CFG_FACTORY_GENERIC_BUFFERS: ");
test_printn(CH_CFG_FACTORY_GENERIC_BUFFERS);
test_println("");
test_print("--- CH_CFG_FACTORY_SEMAPHORES: ");
test_printn(CH_CFG_FACTORY_SEMAPHORES);
test_println("");
test_print("--- CH_CFG_FACTORY_MAILBOXES: ");
test_printn(CH_CFG_FACTORY_MAILBOXES);
test_println("");
test_print("--- CH_CFG_FACTORY_OBJ_FIFOS: ");
test_printn(CH_CFG_FACTORY_OBJ_FIFOS);
test_println("");
test_print("--- CH_DBG_STATISTICS: ");
test_printn(CH_DBG_STATISTICS); test_printn(CH_DBG_STATISTICS);
test_println(""); test_println("");
test_print("--- CH_DBG_SYSTEM_STATE_CHECK: "); test_print("--- CH_DBG_SYSTEM_STATE_CHECK: ");
test_printn(CH_DBG_SYSTEM_STATE_CHECK); test_printn(CH_DBG_SYSTEM_STATE_CHECK);
test_println(""); test_println("");
test_print("--- CH_DBG_ENABLE_CHECKS: "); test_print("--- CH_DBG_ENABLE_CHECKS: ");
test_printn(CH_DBG_ENABLE_CHECKS); test_printn(CH_DBG_ENABLE_CHECKS);
test_println(""); test_println("");
test_print("--- CH_DBG_ENABLE_ASSERTS: "); test_print("--- CH_DBG_ENABLE_ASSERTS: ");
test_printn(CH_DBG_ENABLE_ASSERTS); test_printn(CH_DBG_ENABLE_ASSERTS);
test_println(""); test_println("");
test_print("--- CH_DBG_TRACE_MASK: "); test_print("--- CH_DBG_TRACE_MASK: ");
test_printn(CH_DBG_TRACE_MASK); test_printn(CH_DBG_TRACE_MASK);
test_println(""); test_println("");
test_print("--- CH_DBG_TRACE_BUFFER_SIZE: "); test_print("--- CH_DBG_TRACE_BUFFER_SIZE: ");
test_printn(CH_DBG_TRACE_BUFFER_SIZE); test_printn(CH_DBG_TRACE_BUFFER_SIZE);
test_println(""); test_println("");
test_print("--- CH_DBG_ENABLE_STACK_CHECK: "); test_print("--- CH_DBG_ENABLE_STACK_CHECK: ");
test_printn(CH_DBG_ENABLE_STACK_CHECK); test_printn(CH_DBG_ENABLE_STACK_CHECK);
test_println(""); test_println("");
test_print("--- CH_DBG_FILL_THREADS: "); test_print("--- CH_DBG_FILL_THREADS: ");
test_printn(CH_DBG_FILL_THREADS); test_printn(CH_DBG_FILL_THREADS);
test_println(""); test_println("");
test_print("--- CH_DBG_THREADS_PROFILING: "); test_print("--- CH_DBG_THREADS_PROFILING: ");
test_printn(CH_DBG_THREADS_PROFILING); test_printn(CH_DBG_THREADS_PROFILING);
test_println(""); test_println("");
} }