* See http://www.freertos.org/a00110.html.\r
*----------------------------------------------------------*/\r
\r
-#define configCLINT_BASE_ADDRESS CLINT_CTRL_ADDR\r
+/* See https://www.freertos.org/Using-FreeRTOS-on-RISC-V.html */\r
+#define configMTIME_BASE_ADDRESS ( ( CLINT_CTRL_ADDR ) + 0xBFF8UL )\r
+#define configMTIMECMP_BASE_ADDRESS ( ( CLINT_CTRL_ADDR ) + 0x4000UL )\r
+\r
#define configUSE_PREEMPTION 1\r
#define configUSE_IDLE_HOOK 0\r
#define configUSE_TICK_HOOK 1\r
-#define configCPU_CLOCK_HZ ( 10000000 ) /*QEMU*/\r
+#define configCPU_CLOCK_HZ ( 1000000 )\r
#define configTICK_RATE_HZ ( ( TickType_t ) 1000 )\r
#define configMAX_PRIORITIES ( 7 )\r
-#define configMINIMAL_STACK_SIZE ( ( unsigned short ) 70 )\r
+#define configMINIMAL_STACK_SIZE ( ( unsigned short ) 105 )\r
#define configTOTAL_HEAP_SIZE ( ( size_t ) 14500 )\r
#define configMAX_TASK_NAME_LEN ( 16 )\r
#define configUSE_TRACE_FACILITY 0\r
/* Software timer definitions. */\r
#define configUSE_TIMERS 1\r
#define configTIMER_TASK_PRIORITY ( configMAX_PRIORITIES - 1 )\r
-#define configTIMER_QUEUE_LENGTH 4\r
-#define configTIMER_TASK_STACK_DEPTH ( 120 )\r
+#define configTIMER_QUEUE_LENGTH 6\r
+#define configTIMER_TASK_STACK_DEPTH ( 110 )\r
\r
/* Task priorities. Allow these to be overridden. */\r
#ifndef uartPRIMARY_PRIORITY\r
/* Overwrite some of the stack sizes allocated to various test and demo tasks.\r
Like all task stack sizes, the value is the number of words, not bytes. */\r
#define bktBLOCK_TIME_TASK_STACK_SIZE 100\r
-#define notifyNOTIFIED_TASK_STACK_SIZE 120\r
+#define notifyNOTIFIED_TASK_STACK_SIZE 110\r
#define priSUSPENDED_RX_TASK_STACK_SIZE 90\r
#define tmrTIMER_TEST_TASK_STACK_SIZE 100\r
#define ebRENDESVOUS_TEST_TASK_STACK_SIZE 100\r
#define ebEVENT_GROUP_SET_BITS_TEST_TASK_STACK_SIZE 115\r
#define genqMUTEX_TEST_TASK_STACK_SIZE 90\r
-#define genqGENERIC_QUEUE_TEST_TASK_STACK_SIZE 100\r
-#define recmuRECURSIVE_MUTEX_TEST_TASK_STACK_SIZE 90\r
+#define recmuRECURSIVE_MUTEX_TEST_TASK_STACK_SIZE 110\r
\r
#endif /* FREERTOS_CONFIG_H */\r