Allow the size of the stack used by many of the standard demo/test tasks to be overridden by FreeRTOSConfig.h settings.

Update the Freedom Studio RISC-V project so the 'full' build configuration is now functional.
This commit is contained in:
Richard Barry 2018-12-28 00:44:18 +00:00
parent 178fe4f143
commit d369110167
15 changed files with 138 additions and 61 deletions

View file

@ -73,6 +73,16 @@
#include "platform.h"
/*
* For some reason the standard demo timer demo/test tasks fail when executing
* in QEMU, although they pass on other RISC-V platforms. This requires
* further investigation, but for now, defining _WINDOWS_ has the effect of
* using the wider timer test thresholds that are normally only used when the
* tests are used with the FreeRTOS Windows port (which is not deterministic
* and therefore requires wider margins).
*/
#define _WINDOWS_
/*-----------------------------------------------------------
* Application specific definitions.
*
@ -92,8 +102,8 @@
#define configCPU_CLOCK_HZ ( 10000000 ) /*QEMU*/
#define configTICK_RATE_HZ ( ( TickType_t ) 1000 )
#define configMAX_PRIORITIES ( 7 )
#define configMINIMAL_STACK_SIZE ( ( unsigned short ) 95 )
#define configTOTAL_HEAP_SIZE ( ( size_t ) 14300 )
#define configMINIMAL_STACK_SIZE ( ( unsigned short ) 70 )
#define configTOTAL_HEAP_SIZE ( ( size_t ) 14100 )
#define configMAX_TASK_NAME_LEN ( 16 )
#define configUSE_TRACE_FACILITY 0
#define configUSE_16_BIT_TICKS 0
@ -106,6 +116,7 @@
#define configUSE_APPLICATION_TASK_TAG 0
#define configUSE_COUNTING_SEMAPHORES 1
#define configGENERATE_RUN_TIME_STATS 0
#define configUSE_PORT_OPTIMISED_TASK_SELECTION 1
/* Co-routine definitions. */
#define configUSE_CO_ROUTINES 0
@ -115,7 +126,7 @@
#define configUSE_TIMERS 1
#define configTIMER_TASK_PRIORITY ( configMAX_PRIORITIES - 1 )
#define configTIMER_QUEUE_LENGTH 4
#define configTIMER_TASK_STACK_DEPTH ( 120 )
#define configTIMER_TASK_STACK_DEPTH ( 100 )
/* Task priorities. Allow these to be overridden. */
#ifndef uartPRIMARY_PRIORITY
@ -141,13 +152,14 @@ void vAssertCalled( void );
/* Overwrite some of the stack sizes allocated to various test and demo tasks.
Like all task stack sizes, the value is the number of words, not bytes. */
#define configTIMER_TEST_TASK_STACK_SIZE 150
#define configNOTIFIED_TEST_TASK_STACK_SIZE 130
#define configEVENT_GROUP_SET_BIT_TEST_TASK_STACK_SIZE 110
#define configEVENT_GROUP_RENDEZVOUS_TASK_STACK_SIZE 100
#define configRECURSIVE_MUTEX_TASK_STACK_SIZE 110
#define configBLOCK_TIME_TEST_TASK_STACK_SIZE 110
#define configUSE_PORT_OPTIMISED_TASK_SELECTION 1
#define bktBLOCK_TIME_TASK_STACK_SIZE 100
#define notifyNOTIFIED_TASK_STACK_SIZE 120
#define priSUSPENDED_RX_TASK_STACK_SIZE 90
#define tmrTIMER_TEST_TASK_STACK_SIZE 100
#define ebRENDESVOUS_TEST_TASK_STACK_SIZE 100
#define ebEVENT_GROUP_SET_BITS_TEST_TASK_STACK_SIZE 115
#define genqMUTEX_TEST_TASK_STACK_SIZE 90
#define genqGENERIC_QUEUE_TEST_TASK_STACK_SIZE 100
#define recmuRECURSIVE_MUTEX_TEST_TASK_STACK_SIZE 90
#endif /* FREERTOS_CONFIG_H */