Skip to content

Commit da66cbd

Browse files
committed
Synced to kernel release 10.3.0
1 parent 0b9e3b2 commit da66cbd

File tree

430 files changed

+2242
-1340
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

430 files changed

+2242
-1340
lines changed

croutine.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
/*
2-
* FreeRTOS Kernel V10.2.1
3-
* Copyright (C) 2019 Amazon.com, Inc. or its affiliates. All Rights Reserved.
2+
* FreeRTOS Kernel V10.3.0
3+
* Copyright (C) 2020 Amazon.com, Inc. or its affiliates. All Rights Reserved.
44
*
55
* Permission is hereby granted, free of charge, to any person obtaining a copy of
66
* this software and associated documentation files (the "Software"), to deal in

event_groups.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
/*
2-
* FreeRTOS Kernel V10.2.1
3-
* Copyright (C) 2019 Amazon.com, Inc. or its affiliates. All Rights Reserved.
2+
* FreeRTOS Kernel V10.3.0
3+
* Copyright (C) 2020 Amazon.com, Inc. or its affiliates. All Rights Reserved.
44
*
55
* Permission is hereby granted, free of charge, to any person obtaining a copy of
66
* this software and associated documentation files (the "Software"), to deal in

include/FreeRTOS.h

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
/*
2-
* FreeRTOS Kernel V10.2.1
3-
* Copyright (C) 2019 Amazon.com, Inc. or its affiliates. All Rights Reserved.
2+
* FreeRTOS Kernel V10.3.0
3+
* Copyright (C) 2020 Amazon.com, Inc. or its affiliates. All Rights Reserved.
44
*
55
* Permission is hereby granted, free of charge, to any person obtaining a copy of
66
* this software and associated documentation files (the "Software"), to deal in
@@ -241,7 +241,7 @@ extern "C" {
241241
#define configASSERT_DEFINED 1
242242
#endif
243243

244-
/* configPRECONDITION should be resolve to configASSERT.
244+
/* configPRECONDITION should be defined as configASSERT.
245245
The CBMC proofs need a way to track assumptions and assertions.
246246
A configPRECONDITION statement should express an implicit invariant or
247247
assumption made. A configASSERT statement should express an invariant that must
@@ -953,6 +953,7 @@ V8 if desired. */
953953
#define pcTimerGetTimerName pcTimerGetName
954954
#define pcQueueGetQueueName pcQueueGetName
955955
#define vTaskGetTaskInfo vTaskGetInfo
956+
#define xTaskGetIdleRunTimeCounter ulTaskGetIdleRunTimeCounter
956957

957958
/* Backward compatibility within the scheduler code only - these definitions
958959
are not really required but are included for completeness. */

include/StackMacros.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
/*
2-
* FreeRTOS Kernel V10.2.1
3-
* Copyright (C) 2019 Amazon.com, Inc. or its affiliates. All Rights Reserved.
2+
* FreeRTOS Kernel V10.3.0
3+
* Copyright (C) 2020 Amazon.com, Inc. or its affiliates. All Rights Reserved.
44
*
55
* Permission is hereby granted, free of charge, to any person obtaining a copy of
66
* this software and associated documentation files (the "Software"), to deal in

include/atomic.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
/*
2-
* FreeRTOS Kernel V10.2.1
3-
* Copyright (C) 2019 Amazon.com, Inc. or its affiliates. All Rights Reserved.
2+
* FreeRTOS Kernel V10.3.0
3+
* Copyright (C) 2020 Amazon.com, Inc. or its affiliates. All Rights Reserved.
44
*
55
* Permission is hereby granted, free of charge, to any person obtaining a copy of
66
* this software and associated documentation files (the "Software"), to deal in

include/croutine.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
/*
2-
* FreeRTOS Kernel V10.2.1
3-
* Copyright (C) 2019 Amazon.com, Inc. or its affiliates. All Rights Reserved.
2+
* FreeRTOS Kernel V10.3.0
3+
* Copyright (C) 2020 Amazon.com, Inc. or its affiliates. All Rights Reserved.
44
*
55
* Permission is hereby granted, free of charge, to any person obtaining a copy of
66
* this software and associated documentation files (the "Software"), to deal in

include/deprecated_definitions.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
/*
2-
* FreeRTOS Kernel V10.2.1
3-
* Copyright (C) 2019 Amazon.com, Inc. or its affiliates. All Rights Reserved.
2+
* FreeRTOS Kernel V10.3.0
3+
* Copyright (C) 2020 Amazon.com, Inc. or its affiliates. All Rights Reserved.
44
*
55
* Permission is hereby granted, free of charge, to any person obtaining a copy of
66
* this software and associated documentation files (the "Software"), to deal in

include/event_groups.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
/*
2-
* FreeRTOS Kernel V10.2.1
3-
* Copyright (C) 2019 Amazon.com, Inc. or its affiliates. All Rights Reserved.
2+
* FreeRTOS Kernel V10.3.0
3+
* Copyright (C) 2020 Amazon.com, Inc. or its affiliates. All Rights Reserved.
44
*
55
* Permission is hereby granted, free of charge, to any person obtaining a copy of
66
* this software and associated documentation files (the "Software"), to deal in

include/list.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
/*
2-
* FreeRTOS Kernel V10.2.1
3-
* Copyright (C) 2019 Amazon.com, Inc. or its affiliates. All Rights Reserved.
2+
* FreeRTOS Kernel V10.3.0
3+
* Copyright (C) 2020 Amazon.com, Inc. or its affiliates. All Rights Reserved.
44
*
55
* Permission is hereby granted, free of charge, to any person obtaining a copy of
66
* this software and associated documentation files (the "Software"), to deal in

include/message_buffer.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
/*
2-
* FreeRTOS Kernel V10.2.1
3-
* Copyright (C) 2019 Amazon.com, Inc. or its affiliates. All Rights Reserved.
2+
* FreeRTOS Kernel V10.3.0
3+
* Copyright (C) 2020 Amazon.com, Inc. or its affiliates. All Rights Reserved.
44
*
55
* Permission is hereby granted, free of charge, to any person obtaining a copy of
66
* this software and associated documentation files (the "Software"), to deal in

include/mpu_prototypes.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
/*
2-
* FreeRTOS Kernel V10.2.1
3-
* Copyright (C) 2019 Amazon.com, Inc. or its affiliates. All Rights Reserved.
2+
* FreeRTOS Kernel V10.3.0
3+
* Copyright (C) 2020 Amazon.com, Inc. or its affiliates. All Rights Reserved.
44
*
55
* Permission is hereby granted, free of charge, to any person obtaining a copy of
66
* this software and associated documentation files (the "Software"), to deal in

include/mpu_wrappers.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
/*
2-
* FreeRTOS Kernel V10.2.1
3-
* Copyright (C) 2019 Amazon.com, Inc. or its affiliates. All Rights Reserved.
2+
* FreeRTOS Kernel V10.3.0
3+
* Copyright (C) 2020 Amazon.com, Inc. or its affiliates. All Rights Reserved.
44
*
55
* Permission is hereby granted, free of charge, to any person obtaining a copy of
66
* this software and associated documentation files (the "Software"), to deal in

include/portable.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
/*
2-
* FreeRTOS Kernel V10.2.1
3-
* Copyright (C) 2019 Amazon.com, Inc. or its affiliates. All Rights Reserved.
2+
* FreeRTOS Kernel V10.3.0
3+
* Copyright (C) 2020 Amazon.com, Inc. or its affiliates. All Rights Reserved.
44
*
55
* Permission is hereby granted, free of charge, to any person obtaining a copy of
66
* this software and associated documentation files (the "Software"), to deal in

include/projdefs.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
/*
2-
* FreeRTOS Kernel V10.2.1
3-
* Copyright (C) 2019 Amazon.com, Inc. or its affiliates. All Rights Reserved.
2+
* FreeRTOS Kernel V10.3.0
3+
* Copyright (C) 2020 Amazon.com, Inc. or its affiliates. All Rights Reserved.
44
*
55
* Permission is hereby granted, free of charge, to any person obtaining a copy of
66
* this software and associated documentation files (the "Software"), to deal in

include/queue.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
/*
2-
* FreeRTOS Kernel V10.2.1
3-
* Copyright (C) 2019 Amazon.com, Inc. or its affiliates. All Rights Reserved.
2+
* FreeRTOS Kernel V10.3.0
3+
* Copyright (C) 2020 Amazon.com, Inc. or its affiliates. All Rights Reserved.
44
*
55
* Permission is hereby granted, free of charge, to any person obtaining a copy of
66
* this software and associated documentation files (the "Software"), to deal in

include/semphr.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
/*
2-
* FreeRTOS Kernel V10.2.1
3-
* Copyright (C) 2019 Amazon.com, Inc. or its affiliates. All Rights Reserved.
2+
* FreeRTOS Kernel V10.3.0
3+
* Copyright (C) 2020 Amazon.com, Inc. or its affiliates. All Rights Reserved.
44
*
55
* Permission is hereby granted, free of charge, to any person obtaining a copy of
66
* this software and associated documentation files (the "Software"), to deal in

include/stack_macros.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
/*
2-
* FreeRTOS Kernel V10.2.1
3-
* Copyright (C) 2019 Amazon.com, Inc. or its affiliates. All Rights Reserved.
2+
* FreeRTOS Kernel V10.3.0
3+
* Copyright (C) 2020 Amazon.com, Inc. or its affiliates. All Rights Reserved.
44
*
55
* Permission is hereby granted, free of charge, to any person obtaining a copy of
66
* this software and associated documentation files (the "Software"), to deal in

include/stream_buffer.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
/*
2-
* FreeRTOS Kernel V10.2.1
3-
* Copyright (C) 2019 Amazon.com, Inc. or its affiliates. All Rights Reserved.
2+
* FreeRTOS Kernel V10.3.0
3+
* Copyright (C) 2020 Amazon.com, Inc. or its affiliates. All Rights Reserved.
44
*
55
* Permission is hereby granted, free of charge, to any person obtaining a copy of
66
* this software and associated documentation files (the "Software"), to deal in

include/task.h

Lines changed: 11 additions & 39 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
/*
2-
* FreeRTOS Kernel V10.2.1
3-
* Copyright (C) 2019 Amazon.com, Inc. or its affiliates. All Rights Reserved.
2+
* FreeRTOS Kernel V10.3.0
3+
* Copyright (C) 2020 Amazon.com, Inc. or its affiliates. All Rights Reserved.
44
*
55
* Permission is hereby granted, free of charge, to any person obtaining a copy of
66
* this software and associated documentation files (the "Software"), to deal in
@@ -43,10 +43,10 @@ extern "C" {
4343
* MACROS AND DEFINITIONS
4444
*----------------------------------------------------------*/
4545

46-
#define tskKERNEL_VERSION_NUMBER "V10.2.1"
46+
#define tskKERNEL_VERSION_NUMBER "V10.3.0"
4747
#define tskKERNEL_VERSION_MAJOR 10
48-
#define tskKERNEL_VERSION_MINOR 2
49-
#define tskKERNEL_VERSION_BUILD 1
48+
#define tskKERNEL_VERSION_MINOR 3
49+
#define tskKERNEL_VERSION_BUILD 0
5050

5151
/* MPU region parameters passed in ulParameters
5252
* of MemoryRegion_t struct. */
@@ -831,6 +831,11 @@ void vTaskDelayUntil( TickType_t * const pxPreviousWakeTime, const TickType_t xT
831831
* task will leave the Blocked state, and return from whichever function call
832832
* placed the task into the Blocked state.
833833
*
834+
* There is no 'FromISR' version of this function as an interrupt would need to
835+
* know which object a task was blocked on in order to know which actions to
836+
* take. For example, if the task was blocked on a queue the interrupt handler
837+
* would then need to know if the queue was locked.
838+
*
834839
* @param xTask The handle of the task to remove from the Blocked state.
835840
*
836841
* @return If the task referenced by xTask was not in the Blocked state then
@@ -841,39 +846,6 @@ void vTaskDelayUntil( TickType_t * const pxPreviousWakeTime, const TickType_t xT
841846
*/
842847
BaseType_t xTaskAbortDelay( TaskHandle_t xTask ) PRIVILEGED_FUNCTION;
843848

844-
/**
845-
* task. h
846-
* <pre>BaseType_t xTaskAbortDelayFromISR( TaskHandle_t xTask, BaseType_t * const pxHigherPriorityTaskWoken )</pre>
847-
*
848-
* INCLUDE_xTaskAbortDelay must be defined as 1 in FreeRTOSConfig.h for this
849-
* function to be available.
850-
*
851-
* A version of xTaskAbortDelay() that can be used from an interrupt service routine.
852-
*
853-
* A task will enter the Blocked state when it is waiting for an event. The
854-
* event it is waiting for can be a temporal event (waiting for a time), such
855-
* as when vTaskDelay() is called, or an event on an object, such as when
856-
* xQueueReceive() or ulTaskNotifyTake() is called. If the handle of a task
857-
* that is in the Blocked state is used in a call to xTaskAbortDelay() then the
858-
* task will leave the Blocked state, and return from whichever function call
859-
* placed the task into the Blocked state.
860-
*
861-
* @param xTask The handle of the task to remove from the Blocked state.
862-
*
863-
* @param pxHigherPriorityTaskWoken xTaskAbortDelayFromISR() will set
864-
* *pxHigherPriorityTaskWoken to pdTRUE if a task was removed from the Blocked state,
865-
* and the task that was removed from the Blocked state has a priority higher than the
866-
* currently running task. If xTaskAbortDelayFromISR() sets this value to pdTRUE then
867-
* a context switch should be requested before the interrupt is exited.
868-
*
869-
* @return If the task referenced by xTask was not in the Blocked state then
870-
* pdFAIL is returned. Otherwise pdPASS is returned.
871-
*
872-
* \defgroup xTaskAbortDelay xTaskAbortDelayFromISR
873-
* \ingroup TaskCtrl
874-
*/
875-
BaseType_t xTaskAbortDelayFromISR( TaskHandle_t xTask, BaseType_t * const pxHigherPriorityTaskWoken ) PRIVILEGED_FUNCTION;
876-
877849
/**
878850
* task. h
879851
* <pre>UBaseType_t uxTaskPriorityGet( const TaskHandle_t xTask );</pre>
@@ -2241,7 +2213,7 @@ BaseType_t xTaskNotifyStateClear( TaskHandle_t xTask );
22412213
* Clears the bits specified by the ulBitsToClear bit mask in the notification
22422214
* value of the task referenced by xTask.
22432215
*
2244-
* Set ulBitsToClear to to 0xffffffff (UINT_MAX on 32-bit architectures) to clear
2216+
* Set ulBitsToClear to 0xffffffff (UINT_MAX on 32-bit architectures) to clear
22452217
* the notification value to 0. Set ulBitsToClear to 0 to query the task's
22462218
* notification value without clearing any bits.
22472219
*

include/timers.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
/*
2-
* FreeRTOS Kernel V10.2.1
3-
* Copyright (C) 2019 Amazon.com, Inc. or its affiliates. All Rights Reserved.
2+
* FreeRTOS Kernel V10.3.0
3+
* Copyright (C) 2020 Amazon.com, Inc. or its affiliates. All Rights Reserved.
44
*
55
* Permission is hereby granted, free of charge, to any person obtaining a copy of
66
* this software and associated documentation files (the "Software"), to deal in

list.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
/*
2-
* FreeRTOS Kernel V10.2.1
3-
* Copyright (C) 2019 Amazon.com, Inc. or its affiliates. All Rights Reserved.
2+
* FreeRTOS Kernel V10.3.0
3+
* Copyright (C) 2020 Amazon.com, Inc. or its affiliates. All Rights Reserved.
44
*
55
* Permission is hereby granted, free of charge, to any person obtaining a copy of
66
* this software and associated documentation files (the "Software"), to deal in

portable/ARMv8M/copy_files.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
#/*
2-
# * FreeRTOS Kernel V10.2.1
3-
# * Copyright (C) 2019 Amazon.com, Inc. or its affiliates. All Rights Reserved.
2+
# * FreeRTOS Kernel V10.3.0
3+
# * Copyright (C) 2020 Amazon.com, Inc. or its affiliates. All Rights Reserved.
44
# *
55
# * Permission is hereby granted, free of charge, to any person obtaining a copy of
66
# * this software and associated documentation files (the "Software"), to deal in

portable/ARMv8M/non_secure/port.c

Lines changed: 43 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
/*
2-
* FreeRTOS Kernel V10.2.1
3-
* Copyright (C) 2019 Amazon.com, Inc. or its affiliates. All Rights Reserved.
2+
* FreeRTOS Kernel V10.3.0
3+
* Copyright (C) 2020 Amazon.com, Inc. or its affiliates. All Rights Reserved.
44
*
55
* Permission is hereby granted, free of charge, to any person obtaining a copy of
66
* this software and associated documentation files (the "Software"), to deal in
@@ -257,11 +257,6 @@
257257
#define portNO_SECURE_CONTEXT 0
258258
/*-----------------------------------------------------------*/
259259

260-
/**
261-
* @brief Setup the timer to generate the tick interrupts.
262-
*/
263-
static void prvSetupTimerInterrupt( void ) PRIVILEGED_FUNCTION;
264-
265260
/**
266261
* @brief Used to catch tasks that attempt to return from their implementing
267262
* function.
@@ -282,6 +277,22 @@ static void prvTaskExitError( void );
282277
static void prvSetupFPU( void ) PRIVILEGED_FUNCTION;
283278
#endif /* configENABLE_FPU */
284279

280+
/**
281+
* @brief Setup the timer to generate the tick interrupts.
282+
*
283+
* The implementation in this file is weak to allow application writers to
284+
* change the timer used to generate the tick interrupt.
285+
*/
286+
void vPortSetupTimerInterrupt( void ) PRIVILEGED_FUNCTION;
287+
288+
/**
289+
* @brief Checks whether the current execution context is interrupt.
290+
*
291+
* @return pdTRUE if the current execution context is interrupt, pdFALSE
292+
* otherwise.
293+
*/
294+
BaseType_t xPortIsInsideInterrupt( void );
295+
285296
/**
286297
* @brief Yield the processor.
287298
*/
@@ -323,7 +334,7 @@ static volatile uint32_t ulCriticalNesting = 0xaaaaaaaaUL;
323334
#endif /* configENABLE_TRUSTZONE */
324335
/*-----------------------------------------------------------*/
325336

326-
static void prvSetupTimerInterrupt( void ) /* PRIVILEGED_FUNCTION */
337+
__attribute__(( weak )) void vPortSetupTimerInterrupt( void ) /* PRIVILEGED_FUNCTION */
327338
{
328339
/* Stop and reset the SysTick. */
329340
*( portNVIC_SYSTICK_CTRL ) = 0UL;
@@ -773,7 +784,7 @@ BaseType_t xPortStartScheduler( void ) /* PRIVILEGED_FUNCTION */
773784

774785
/* Start the timer that generates the tick ISR. Interrupts are disabled
775786
* here already. */
776-
prvSetupTimerInterrupt();
787+
vPortSetupTimerInterrupt();
777788

778789
/* Initialize the critical nesting count ready for the first task. */
779790
ulCriticalNesting = 0;
@@ -897,3 +908,26 @@ void vPortEndScheduler( void ) /* PRIVILEGED_FUNCTION */
897908
}
898909
#endif /* configENABLE_MPU */
899910
/*-----------------------------------------------------------*/
911+
912+
BaseType_t xPortIsInsideInterrupt( void )
913+
{
914+
uint32_t ulCurrentInterrupt;
915+
BaseType_t xReturn;
916+
917+
/* Obtain the number of the currently executing interrupt. Interrupt Program
918+
* Status Register (IPSR) holds the exception number of the currently-executing
919+
* exception or zero for Thread mode.*/
920+
__asm volatile( "mrs %0, ipsr" : "=r"( ulCurrentInterrupt ) :: "memory" );
921+
922+
if( ulCurrentInterrupt == 0 )
923+
{
924+
xReturn = pdFALSE;
925+
}
926+
else
927+
{
928+
xReturn = pdTRUE;
929+
}
930+
931+
return xReturn;
932+
}
933+
/*-----------------------------------------------------------*/

0 commit comments

Comments
 (0)