mirror of
https://github.com/pvvx/RTL00MP3.git
synced 2026-07-08 12:35:41 +00:00
up freertos v9.0.0
This commit is contained in:
parent
abb51466bd
commit
b882fe7efb
132 changed files with 50587 additions and 2707 deletions
|
|
@ -90,9 +90,27 @@
|
|||
extern "C" {
|
||||
#endif
|
||||
|
||||
#ifndef _PLATFORM_AUTOCONFIG_H_
|
||||
#include "platform_autoconf.h"
|
||||
#endif
|
||||
|
||||
/* Application specific configuration options. */
|
||||
#include "FreeRTOSConfig.h"
|
||||
|
||||
//-----------
|
||||
#if defined(CONFIG_PLATFORM_8195A)
|
||||
#ifndef CONFIG_USE_TCM_HEAP
|
||||
#define CONFIG_USE_TCM_HEAP
|
||||
#endif
|
||||
#ifndef configUSE_STACK_TCM_HEAP
|
||||
#define configUSE_STACK_TCM_HEAP 1
|
||||
#endif
|
||||
#else
|
||||
#undef configUSE_STACK_TCM_HEAP
|
||||
#define configUSE_STACK_TCM_HEAP 0
|
||||
#endif
|
||||
//-----------
|
||||
|
||||
/* Basic FreeRTOS definitions. */
|
||||
#include "projdefs.h"
|
||||
|
||||
|
|
|
|||
|
|
@ -724,12 +724,18 @@ __attribute__(( weak )) void vPortSetupTimerInterrupt( void )
|
|||
#endif /* configASSERT_DEFINED */
|
||||
|
||||
/*-----------------------------------------------------------*/
|
||||
#if configUSE_IDLE_HOOK
|
||||
void vApplicationIdleHook( void )
|
||||
{
|
||||
/* Use the idle task to place the CPU into a low power mode. Greater power
|
||||
saving could be achieved by not including any demo tasks that never block. */
|
||||
#ifdef CONFIG_WDG_ON_IDLE
|
||||
WDGRefresh();
|
||||
#endif
|
||||
}
|
||||
#endif
|
||||
|
||||
#if configCHECK_FOR_STACK_OVERFLOW
|
||||
#include "diag.h"
|
||||
void vApplicationStackOverflowHook( xTaskHandle pxTask, signed char *pcTaskName )
|
||||
{
|
||||
|
|
@ -741,6 +747,6 @@ void vApplicationStackOverflowHook( xTaskHandle pxTask, signed char *pcTaskName
|
|||
DiagPrintf("\n[%s] STACK OVERFLOW - TaskName(%s)\n", __FUNCTION__, pcTaskName);
|
||||
for( ;; );
|
||||
}
|
||||
|
||||
#endif
|
||||
/*-----------------------------------------------------------*/
|
||||
|
||||
|
|
|
|||
|
|
@ -530,7 +530,14 @@ static void prvResetNextTaskUnblockTime( void );
|
|||
|
||||
/*-----------------------------------------------------------*/
|
||||
|
||||
BaseType_t xTaskGenericCreate( TaskFunction_t pxTaskCode, const char * const pcName, const uint16_t usStackDepth, void * const pvParameters, UBaseType_t uxPriority, TaskHandle_t * const pxCreatedTask, StackType_t * const puxStackBuffer, const MemoryRegion_t * const xRegions ) /*lint !e971 Unqualified char types are allowed for strings and single characters only. */
|
||||
BaseType_t xTaskGenericCreate( TaskFunction_t pxTaskCode,
|
||||
const char * const pcName,
|
||||
const uint16_t usStackDepth,
|
||||
void * const pvParameters,
|
||||
UBaseType_t uxPriority,
|
||||
TaskHandle_t * const pxCreatedTask,
|
||||
StackType_t * const puxStackBuffer,
|
||||
const MemoryRegion_t * const xRegions ) /*lint !e971 Unqualified char types are allowed for strings and single characters only. */
|
||||
{
|
||||
BaseType_t xReturn;
|
||||
TCB_t * pxNewTCB;
|
||||
|
|
@ -2753,9 +2760,6 @@ static portTASK_FUNCTION( prvIdleTask, pvParameters )
|
|||
{
|
||||
mtCOVERAGE_TEST_MARKER();
|
||||
}
|
||||
#ifdef CONFIG_WDG_ON_IDLE
|
||||
WDGRefresh();
|
||||
#endif
|
||||
}
|
||||
#endif /* configUSE_TICKLESS_IDLE */
|
||||
}
|
||||
|
|
@ -3019,7 +3023,6 @@ static void prvAddCurrentTaskToDelayedList( const TickType_t xTimeToWake )
|
|||
}
|
||||
}
|
||||
/*-----------------------------------------------------------*/
|
||||
|
||||
static TCB_t *prvAllocateTCBAndStack( const uint16_t usStackDepth, StackType_t * const puxStackBuffer )
|
||||
{
|
||||
TCB_t *pxNewTCB;
|
||||
|
|
@ -3033,12 +3036,12 @@ TCB_t *pxNewTCB;
|
|||
/* Allocate space for the stack used by the task being created.
|
||||
The base of the stack memory stored in the TCB so the task can
|
||||
be deleted later if required. */
|
||||
//pvvx
|
||||
#if CONFIG_USE_TCM_HEAP
|
||||
#if configUSE_STACK_TCM_HEAP
|
||||
if(puxStackBuffer == NULL) {
|
||||
pxNewTCB->pxStack = ( StackType_t * ) tcm_heap_malloc((( size_t ) puxStackBuffer) * sizeof(StackType_t));
|
||||
if(pxNewTCB->pxStack == NULL) pxNewTCB->pxStack = ( StackType_t * ) pvPortMalloc((( size_t ) puxStackBuffer) * sizeof(StackType_t));
|
||||
pxNewTCB->pxStack = ( StackType_t * ) tcm_heap_malloc((( size_t ) usStackDepth) * sizeof(StackType_t));
|
||||
if(pxNewTCB->pxStack == NULL) pxNewTCB->pxStack = ( StackType_t * ) pvPortMalloc((( size_t ) usStackDepth) * sizeof(StackType_t));
|
||||
}
|
||||
else pxNewTCB->pxStack = puxStackBuffer;
|
||||
#else
|
||||
pxNewTCB->pxStack = ( StackType_t * ) pvPortMallocAligned( ( ( ( size_t ) usStackDepth ) * sizeof( StackType_t ) ), puxStackBuffer ); /*lint !e961 MISRA exception as the casts are only redundant for some ports. */
|
||||
#endif
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue