Page 3 of 4

Re: New Makefile

Posted: Sat Oct 21, 2017 10:10 pm
by tfAteba
Giovanni,

I just made the test with chibios 17.6.2.

To make the test in the same condition, I have modify the chconf.h file:

Code: Select all

/**
 * @brief   Core Memory Manager APIs.
 * @details If enabled then the core memory manager APIs are included
 *          in the kernel.
 *
 * @note    The default is @p TRUE.
 */
#define CH_CFG_USE_MEMCORE                 TRUE

/**
 * @brief   Heap Allocator APIs.
 * @details If enabled then the memory heap allocator APIs are included
 *          in the kernel.
 *
 * @note    The default is @p TRUE.
 * @note    Requires @p CH_CFG_USE_MEMCORE and either @p CH_CFG_USE_MUTEXES or
 *          @p CH_CFG_USE_SEMAPHORES.
 * @note    Mutexes are recommended.
 */
#define CH_CFG_USE_HEAP                     TRUE

/**
 * @brief   Memory Pools Allocator APIs.
 * @details If enabled then the memory pools allocator APIs are included
 *          in the kernel.
 *
 * @note    The default is @p TRUE.
 */
#define CH_CFG_USE_MEMPOOLS             TRUE

/**
 * @brief   Dynamic Threads APIs.
 * @details If enabled then the dynamic threads creation APIs are included
 *          in the kernel.
 *
 * @note    The default is @p TRUE.
 * @note    Requires @p CH_CFG_USE_WAITEXIT.
 * @note    Requires @p CH_CFG_USE_HEAP and/or @p CH_CFG_USE_MEMPOOLS.
 */
#define CH_CFG_USE_DYNAMIC                 TRUE

The test also fail in the test sequence 11.1, but in this case, the test frezze at test case 12.1

Here is the output:

Code: Select all

*** ChibiOS/RT Test Suite
***
*** Compiled:     Oct 21 2017 - 22:57:45
*** Platform:     AVR
*** Test Board:   Arduino Mega
*** Compiler:     GCC 4.9.2
*** Architecture: MegaAVR
*** Port Info:    None

----------------------------------------------------------------------------
--- Test Case 1.1 (Kernel Info)
--- Product:                   ChibiOS/RT
--- Stable Flag:               1
--- Version String:            4.0.2
--- Major Number:              4
--- Minor Number:              0
--- Patch Number:              2
--- Result: SUCCESS
----------------------------------------------------------------------------
--- Test Case 1.2 (Kernel Settings)
--- CH_CFG_ST_RESOLUTION:      16
--- CH_CFG_ST_FREQUENCY:       15624
--- CH_CFG_ST_TIMEDELTA:       2
--- CH_CFG_TIME_QUANTUM:       0
--- CH_CFG_MEMCORE_SIZE:       128
--- 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 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 4.1 (Suspend and Resume functionality)
--- Result: SUCCESS
----------------------------------------------------------------------------
--- Test Case 5.1 (Semaphore primitives, no state change)
--- Result: SUCCESS
----------------------------------------------------------------------------
--- Test Case 5.2 (Semaphore enqueuing test)
--- Result: SUCCESS
----------------------------------------------------------------------------
--- Test Case 5.3 (Semaphore timeout test)
--- Result: SUCCESS
----------------------------------------------------------------------------
--- Test Case 5.4 (Testing chSemAddCounterI() functionality)
--- Result: SUCCESS
----------------------------------------------------------------------------
--- Test Case 5.5 (Testing chSemWaitSignal() functionality)
--- Result: SUCCESS
----------------------------------------------------------------------------
--- Test Case 5.6 (Testing Binary Semaphores special case)
--- Result: SUCCESS
----------------------------------------------------------------------------
--- Test Case 6.1 (Priority enqueuing test)
--- Result: SUCCESS
----------------------------------------------------------------------------
--- Test Case 6.2 (Priority return verification)
--- Result: SUCCESS
----------------------------------------------------------------------------
--- Test Case 6.3 (Repeated locks, non recursive scenario)
--- Result: SUCCESS
----------------------------------------------------------------------------
--- Test Case 6.4 (Condition Variable signal test)
--- Result: SUCCESS
----------------------------------------------------------------------------
--- Test Case 6.5 (Condition Variable broadcast test)
--- Result: SUCCESS
----------------------------------------------------------------------------
--- Test Case 6.6 (Condition Variable priority boost test)
--- Result: SUCCESS
----------------------------------------------------------------------------
--- Test Case 7.1 (Messages Server loop)
--- Result: SUCCESS
----------------------------------------------------------------------------
--- Test Case 8.1 (Events registration)
--- Result: SUCCESS
----------------------------------------------------------------------------
--- Test Case 8.2 (Event Flags dispatching)
--- Result: SUCCESS
----------------------------------------------------------------------------
--- Test Case 8.3 (Events Flags wait using chEvtWaitOne())
--- Result: SUCCESS
----------------------------------------------------------------------------
--- Test Case 8.4 (Events Flags wait using chEvtWaitAny())
--- Result: SUCCESS
----------------------------------------------------------------------------
--- Test Case 8.5 (Events Flags wait using chEvtWaitAll())
--- Result: SUCCESS
----------------------------------------------------------------------------
--- Test Case 8.6 (Events Flags wait timeouts)
--- Result: SUCCESS
----------------------------------------------------------------------------
--- Test Case 8.7 (Broadcasting using chEvtBroadcast())
--- Result: SUCCESS
----------------------------------------------------------------------------
--- Test Case 9.1 (Mailbox normal API, non-blocking tests)
--- Result: SUCCESS
----------------------------------------------------------------------------
--- Test Case 9.2 (Mailbox I-Class API, non-blocking tests)
--- Result: SUCCESS
----------------------------------------------------------------------------
--- Test Case 9.3 (Mailbox timeouts)
--- Result: SUCCESS
----------------------------------------------------------------------------
--- Test Case 10.1 (Loading and emptying a memory pool)
--- Result: SUCCESS
----------------------------------------------------------------------------
--- Test Case 10.2 (Loading and emptying a guarded memory pool without waiting)
--- Result: SUCCESS
----------------------------------------------------------------------------
--- Test Case 10.3 (Guarded Memory Pools timeout)
--- Result: SUCCESS
----------------------------------------------------------------------------
--- Test Case 11.1 (Allocation and fragmentation)
--- Result: FAILURE (#4 [] "missing free block")
----------------------------------------------------------------------------
--- Test Case 11.2 (Default Heap)
--- Result: SUCCESS
----------------------------------------------------------------------------
--- Test Case 12.1 (Threads creation from Memory Heap)

Re: New Makefile

Posted: Sun Oct 22, 2017 11:26 am
by Giovanni
I cannot debug on AVR, you should find details of what exactly is failing, probably it is an insufficient heap space.

Giovanni

Re: New Makefile

Posted: Sun Oct 22, 2017 9:37 pm
by tfAteba
Ok Giovanni,

I can't also debug AVR, I do not have any debugger tools.

I hope I will have the opportunity to buy one this week to be able to make some debug 8-) .

So Nico, to resume, it is not the compilation option that make the test suite fails but there is some thing else.
The problem is still opened and I need some materials to investigate.

Thanks.

Re: New Makefile

Posted: Mon Oct 23, 2017 7:31 pm
by wurstnase
Many thanks for working on this.

I'm pretty sorry that I can't help with debugging AVRs.

Re: New Makefile

Posted: Mon Oct 23, 2017 9:52 pm
by tfAteba
Thanks for your implication, don't worry about the debug. :lol:

Re: New Makefile

Posted: Tue Oct 31, 2017 9:34 am
by Giovanni
Hi,

The problem has been fixed as bug #899.

Fixed in trunk, will be fixed in 17.6.3.

Giovanni

Re: New Makefile

Posted: Tue Oct 31, 2017 4:57 pm
by tfAteba
Hello Giovanni,

Thanks for this good news, did you made some real tests on a board?

I will run it tonight and see if the problem is fixed if you didn't make any onboard test. I will also take a look to see what you did to solve the problem :)

Re: New Makefile

Posted: Tue Oct 31, 2017 5:01 pm
by tfAteba
Giovanni,

When does the release version 17.6.3 is planed to be available?

I want to update some files and the global architecture of the AVR so that it look like in the trunk to be similar to STM part.

It will help me if I know the amount of time left :D

Re: New Makefile

Posted: Tue Oct 31, 2017 6:10 pm
by Giovanni
Hi,

Usually stable versions only get bug fixes, changes are for trunk until next major release.

Giovanni

Re: New Makefile

Posted: Tue Oct 31, 2017 8:26 pm
by tfAteba
I got it :)