mirror of
https://github.com/espressif/esp-idf.git
synced 2025-08-03 20:54:32 +02:00
Merge branch 'refactor/update_xtensa_freertos_files' into 'master'
FreeRTOS: Add FreeRTOS license identifiers, update xtensa port files to v10.4.3 See merge request espressif/esp-idf!16903
This commit is contained in:
@@ -20,6 +20,8 @@ _xt_gdbstub_int:
|
|||||||
s32i a0, sp, XT_STK_PS
|
s32i a0, sp, XT_STK_PS
|
||||||
rsr a0, EPC_1 /* save interruptee's PC */
|
rsr a0, EPC_1 /* save interruptee's PC */
|
||||||
s32i a0, sp, XT_STK_PC
|
s32i a0, sp, XT_STK_PC
|
||||||
|
rsr a0, EXCSAVE_1 /* save interruptee's a0 */
|
||||||
|
s32i a0, sp, XT_STK_A0
|
||||||
#if XCHAL_HAVE_WINDOWED
|
#if XCHAL_HAVE_WINDOWED
|
||||||
s32e a0, sp, -16 /* for debug backtrace */
|
s32e a0, sp, -16 /* for debug backtrace */
|
||||||
#endif
|
#endif
|
||||||
@@ -32,12 +34,6 @@ _xt_gdbstub_int:
|
|||||||
rsr a0, EXCVADDR
|
rsr a0, EXCVADDR
|
||||||
s32i a0, sp, XT_STK_EXCVADDR
|
s32i a0, sp, XT_STK_EXCVADDR
|
||||||
|
|
||||||
|
|
||||||
/* _xt_context_save seems to save the current a0, but we need the interuptees a0. Fix this. */
|
|
||||||
rsr a0, EXCSAVE_1 /* save interruptee's a0 */
|
|
||||||
|
|
||||||
s32i a0, sp, XT_STK_A0
|
|
||||||
|
|
||||||
mov a6,sp
|
mov a6,sp
|
||||||
movi a3, gdbstub_handle_uart_int
|
movi a3, gdbstub_handle_uart_int
|
||||||
callx0 a3
|
callx0 a3
|
||||||
|
@@ -35,6 +35,8 @@ _xt_panic:
|
|||||||
s32i a0, sp, XT_STK_PS
|
s32i a0, sp, XT_STK_PS
|
||||||
rsr a0, EPC_1 /* save interruptee's PC */
|
rsr a0, EPC_1 /* save interruptee's PC */
|
||||||
s32i a0, sp, XT_STK_PC
|
s32i a0, sp, XT_STK_PC
|
||||||
|
rsr a0, EXCSAVE_1 /* save interruptee's a0 */
|
||||||
|
s32i a0, sp, XT_STK_A0
|
||||||
#if XCHAL_HAVE_WINDOWED
|
#if XCHAL_HAVE_WINDOWED
|
||||||
s32e a0, sp, -16 /* for debug backtrace */
|
s32e a0, sp, -16 /* for debug backtrace */
|
||||||
#endif
|
#endif
|
||||||
@@ -48,11 +50,6 @@ _xt_panic:
|
|||||||
rsr a0, EXCVADDR
|
rsr a0, EXCVADDR
|
||||||
s32i a0, sp, XT_STK_EXCVADDR
|
s32i a0, sp, XT_STK_EXCVADDR
|
||||||
|
|
||||||
/* _xt_context_save seems to save the current a0, but we need the interuptees a0. Fix this. */
|
|
||||||
rsr a0, EXCSAVE_1 /* save interruptee's a0 */
|
|
||||||
|
|
||||||
s32i a0, sp, XT_STK_A0
|
|
||||||
|
|
||||||
/* Set up PS for C, disable all interrupts except NMI and debug, and clear EXCM. */
|
/* Set up PS for C, disable all interrupts except NMI and debug, and clear EXCM. */
|
||||||
movi a0, PS_INTLEVEL(XCHAL_DEBUGLEVEL - 2) | PS_UM | PS_WOE
|
movi a0, PS_INTLEVEL(XCHAL_DEBUGLEVEL - 2) | PS_UM | PS_WOE
|
||||||
wsr a0, PS
|
wsr a0, PS
|
||||||
|
@@ -228,6 +228,8 @@ xt_highintx:
|
|||||||
s32i a0, sp, XT_STK_PS
|
s32i a0, sp, XT_STK_PS
|
||||||
rsr a0, EPC_X /* save interruptee's PC */
|
rsr a0, EPC_X /* save interruptee's PC */
|
||||||
s32i a0, sp, XT_STK_PC
|
s32i a0, sp, XT_STK_PC
|
||||||
|
rsr a0, EXCSAVE_X /* save interruptee's a0 */
|
||||||
|
s32i a0, sp, XT_STK_A0
|
||||||
#if XCHAL_HAVE_WINDOWED
|
#if XCHAL_HAVE_WINDOWED
|
||||||
s32e a0, sp, -16 /* for debug backtrace */
|
s32e a0, sp, -16 /* for debug backtrace */
|
||||||
#endif
|
#endif
|
||||||
@@ -279,11 +281,6 @@ xt_highintx:
|
|||||||
/* Found the reason, now save it. */
|
/* Found the reason, now save it. */
|
||||||
s32i a0, sp, XT_STK_EXCCAUSE
|
s32i a0, sp, XT_STK_EXCCAUSE
|
||||||
|
|
||||||
/* _xt_context_save seems to save the current a0, but we need the interuptees a0. Fix this. */
|
|
||||||
rsr a0, EXCSAVE_X /* save interruptee's a0 */
|
|
||||||
|
|
||||||
s32i a0, sp, XT_STK_A0
|
|
||||||
|
|
||||||
/* Set up PS for C, disable all interrupts except NMI and debug, and clear EXCM. */
|
/* Set up PS for C, disable all interrupts except NMI and debug, and clear EXCM. */
|
||||||
movi a0, PS_INTLEVEL(5) | PS_UM | PS_WOE
|
movi a0, PS_INTLEVEL(5) | PS_UM | PS_WOE
|
||||||
wsr a0, PS
|
wsr a0, PS
|
||||||
|
@@ -47,6 +47,8 @@ xt_highint4:
|
|||||||
s32i a0, sp, XT_STK_PS
|
s32i a0, sp, XT_STK_PS
|
||||||
rsr a0, EPC_4 /* save interruptee's PC */
|
rsr a0, EPC_4 /* save interruptee's PC */
|
||||||
s32i a0, sp, XT_STK_PC
|
s32i a0, sp, XT_STK_PC
|
||||||
|
rsr a0, EXCSAVE_4 /* save interruptee's a0 */
|
||||||
|
s32i a0, sp, XT_STK_A0
|
||||||
#if XCHAL_HAVE_WINDOWED
|
#if XCHAL_HAVE_WINDOWED
|
||||||
s32e a0, sp, -16 /* for debug backtrace */
|
s32e a0, sp, -16 /* for debug backtrace */
|
||||||
#endif
|
#endif
|
||||||
@@ -77,11 +79,6 @@ xt_highint4:
|
|||||||
/* Found the reason, now save it. */
|
/* Found the reason, now save it. */
|
||||||
s32i a0, sp, XT_STK_EXCCAUSE
|
s32i a0, sp, XT_STK_EXCCAUSE
|
||||||
|
|
||||||
/* _xt_context_save seems to save the current a0, but we need the interuptees a0. Fix this. */
|
|
||||||
rsr a0, EXCSAVE_4 /* save interruptee's a0 */
|
|
||||||
|
|
||||||
s32i a0, sp, XT_STK_A0
|
|
||||||
|
|
||||||
/* Set up PS for C, disable all interrupts except NMI and debug, and clear EXCM. */
|
/* Set up PS for C, disable all interrupts except NMI and debug, and clear EXCM. */
|
||||||
movi a0, PS_INTLEVEL(5) | PS_UM | PS_WOE
|
movi a0, PS_INTLEVEL(5) | PS_UM | PS_WOE
|
||||||
wsr a0, PS
|
wsr a0, PS
|
||||||
|
@@ -63,6 +63,8 @@ xt_highint4:
|
|||||||
s32i a0, sp, XT_STK_PS
|
s32i a0, sp, XT_STK_PS
|
||||||
rsr a0, EPC_4 /* save interruptee's PC */
|
rsr a0, EPC_4 /* save interruptee's PC */
|
||||||
s32i a0, sp, XT_STK_PC
|
s32i a0, sp, XT_STK_PC
|
||||||
|
rsr a0, EXCSAVE_4 /* save interruptee's a0 */
|
||||||
|
s32i a0, sp, XT_STK_A0
|
||||||
#if XCHAL_HAVE_WINDOWED
|
#if XCHAL_HAVE_WINDOWED
|
||||||
s32e a0, sp, -16 /* for debug backtrace */
|
s32e a0, sp, -16 /* for debug backtrace */
|
||||||
#endif
|
#endif
|
||||||
@@ -105,11 +107,6 @@ xt_highint4:
|
|||||||
/* Found the reason, now save it. */
|
/* Found the reason, now save it. */
|
||||||
s32i a0, sp, XT_STK_EXCCAUSE
|
s32i a0, sp, XT_STK_EXCCAUSE
|
||||||
|
|
||||||
/* _xt_context_save seems to save the current a0, but we need the interuptees a0. Fix this. */
|
|
||||||
rsr a0, EXCSAVE_4 /* save interruptee's a0 */
|
|
||||||
|
|
||||||
s32i a0, sp, XT_STK_A0
|
|
||||||
|
|
||||||
/* Set up PS for C, disable all interrupts except NMI and debug, and clear EXCM. */
|
/* Set up PS for C, disable all interrupts except NMI and debug, and clear EXCM. */
|
||||||
movi a0, PS_INTLEVEL(5) | PS_UM | PS_WOE
|
movi a0, PS_INTLEVEL(5) | PS_UM | PS_WOE
|
||||||
wsr a0, PS
|
wsr a0, PS
|
||||||
|
@@ -1,3 +1,10 @@
|
|||||||
|
/*
|
||||||
|
* SPDX-FileCopyrightText: 2020 Amazon.com, Inc. or its affiliates
|
||||||
|
*
|
||||||
|
* SPDX-License-Identifier: MIT
|
||||||
|
*
|
||||||
|
* SPDX-FileContributor: 2016-2022 Espressif Systems (Shanghai) CO LTD
|
||||||
|
*/
|
||||||
/*
|
/*
|
||||||
* FreeRTOS Kernel V10.4.3
|
* FreeRTOS Kernel V10.4.3
|
||||||
* Copyright (C) 2020 Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
* Copyright (C) 2020 Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
||||||
|
@@ -1,3 +1,10 @@
|
|||||||
|
/*
|
||||||
|
* SPDX-FileCopyrightText: 2020 Amazon.com, Inc. or its affiliates
|
||||||
|
*
|
||||||
|
* SPDX-License-Identifier: MIT
|
||||||
|
*
|
||||||
|
* SPDX-FileContributor: 2016-2022 Espressif Systems (Shanghai) CO LTD
|
||||||
|
*/
|
||||||
/*
|
/*
|
||||||
* FreeRTOS Kernel V10.4.3
|
* FreeRTOS Kernel V10.4.3
|
||||||
* Copyright (C) 2020 Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
* Copyright (C) 2020 Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
||||||
|
@@ -1,3 +1,10 @@
|
|||||||
|
/*
|
||||||
|
* SPDX-FileCopyrightText: 2020 Amazon.com, Inc. or its affiliates
|
||||||
|
*
|
||||||
|
* SPDX-License-Identifier: MIT
|
||||||
|
*
|
||||||
|
* SPDX-FileContributor: 2016-2022 Espressif Systems (Shanghai) CO LTD
|
||||||
|
*/
|
||||||
/*
|
/*
|
||||||
* FreeRTOS Kernel V10.4.3
|
* FreeRTOS Kernel V10.4.3
|
||||||
* Copyright (C) 2020 Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
* Copyright (C) 2020 Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
||||||
|
@@ -1,3 +1,10 @@
|
|||||||
|
/*
|
||||||
|
* SPDX-FileCopyrightText: 2020 Amazon.com, Inc. or its affiliates
|
||||||
|
*
|
||||||
|
* SPDX-License-Identifier: MIT
|
||||||
|
*
|
||||||
|
* SPDX-FileContributor: 2016-2022 Espressif Systems (Shanghai) CO LTD
|
||||||
|
*/
|
||||||
/*
|
/*
|
||||||
* FreeRTOS Kernel V10.4.3
|
* FreeRTOS Kernel V10.4.3
|
||||||
* Copyright (C) 2020 Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
* Copyright (C) 2020 Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
||||||
|
@@ -1,3 +1,10 @@
|
|||||||
|
/*
|
||||||
|
* SPDX-FileCopyrightText: 2020 Amazon.com, Inc. or its affiliates
|
||||||
|
*
|
||||||
|
* SPDX-License-Identifier: MIT
|
||||||
|
*
|
||||||
|
* SPDX-FileContributor: 2016-2022 Espressif Systems (Shanghai) CO LTD
|
||||||
|
*/
|
||||||
/*
|
/*
|
||||||
* FreeRTOS Kernel V10.4.3
|
* FreeRTOS Kernel V10.4.3
|
||||||
* Copyright (C) 2020 Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
* Copyright (C) 2020 Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
||||||
|
@@ -1,3 +1,10 @@
|
|||||||
|
/*
|
||||||
|
* SPDX-FileCopyrightText: 2020 Amazon.com, Inc. or its affiliates
|
||||||
|
*
|
||||||
|
* SPDX-License-Identifier: MIT
|
||||||
|
*
|
||||||
|
* SPDX-FileContributor: 2016-2022 Espressif Systems (Shanghai) CO LTD
|
||||||
|
*/
|
||||||
/*
|
/*
|
||||||
* FreeRTOS Kernel V10.4.3
|
* FreeRTOS Kernel V10.4.3
|
||||||
* Copyright (C) 2020 Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
* Copyright (C) 2020 Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
||||||
|
@@ -1,3 +1,10 @@
|
|||||||
|
/*
|
||||||
|
* SPDX-FileCopyrightText: 2020 Amazon.com, Inc. or its affiliates
|
||||||
|
*
|
||||||
|
* SPDX-License-Identifier: MIT
|
||||||
|
*
|
||||||
|
* SPDX-FileContributor: 2016-2022 Espressif Systems (Shanghai) CO LTD
|
||||||
|
*/
|
||||||
/*
|
/*
|
||||||
* FreeRTOS Kernel V10.4.3
|
* FreeRTOS Kernel V10.4.3
|
||||||
* Copyright (C) 2020 Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
* Copyright (C) 2020 Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
||||||
|
@@ -1,3 +1,10 @@
|
|||||||
|
/*
|
||||||
|
* SPDX-FileCopyrightText: 2020 Amazon.com, Inc. or its affiliates
|
||||||
|
*
|
||||||
|
* SPDX-License-Identifier: MIT
|
||||||
|
*
|
||||||
|
* SPDX-FileContributor: 2016-2022 Espressif Systems (Shanghai) CO LTD
|
||||||
|
*/
|
||||||
/*
|
/*
|
||||||
* FreeRTOS Kernel V10.4.3
|
* FreeRTOS Kernel V10.4.3
|
||||||
* Copyright (C) 2020 Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
* Copyright (C) 2020 Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
||||||
|
@@ -1,3 +1,10 @@
|
|||||||
|
/*
|
||||||
|
* SPDX-FileCopyrightText: 2020 Amazon.com, Inc. or its affiliates
|
||||||
|
*
|
||||||
|
* SPDX-License-Identifier: MIT
|
||||||
|
*
|
||||||
|
* SPDX-FileContributor: 2016-2022 Espressif Systems (Shanghai) CO LTD
|
||||||
|
*/
|
||||||
/*
|
/*
|
||||||
* FreeRTOS Kernel V10.4.3
|
* FreeRTOS Kernel V10.4.3
|
||||||
* Copyright (C) 2020 Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
* Copyright (C) 2020 Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
||||||
|
@@ -1,3 +1,10 @@
|
|||||||
|
/*
|
||||||
|
* SPDX-FileCopyrightText: 2020 Amazon.com, Inc. or its affiliates
|
||||||
|
*
|
||||||
|
* SPDX-License-Identifier: MIT
|
||||||
|
*
|
||||||
|
* SPDX-FileContributor: 2016-2022 Espressif Systems (Shanghai) CO LTD
|
||||||
|
*/
|
||||||
/*
|
/*
|
||||||
* FreeRTOS Kernel V10.4.3
|
* FreeRTOS Kernel V10.4.3
|
||||||
* Copyright (C) 2020 Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
* Copyright (C) 2020 Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
||||||
|
@@ -1,3 +1,10 @@
|
|||||||
|
/*
|
||||||
|
* SPDX-FileCopyrightText: 2020 Amazon.com, Inc. or its affiliates
|
||||||
|
*
|
||||||
|
* SPDX-License-Identifier: MIT
|
||||||
|
*
|
||||||
|
* SPDX-FileContributor: 2016-2022 Espressif Systems (Shanghai) CO LTD
|
||||||
|
*/
|
||||||
/*
|
/*
|
||||||
* FreeRTOS Kernel V10.4.3
|
* FreeRTOS Kernel V10.4.3
|
||||||
* Copyright (C) 2020 Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
* Copyright (C) 2020 Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
||||||
|
@@ -1,3 +1,10 @@
|
|||||||
|
/*
|
||||||
|
* SPDX-FileCopyrightText: 2020 Amazon.com, Inc. or its affiliates
|
||||||
|
*
|
||||||
|
* SPDX-License-Identifier: MIT
|
||||||
|
*
|
||||||
|
* SPDX-FileContributor: 2016-2022 Espressif Systems (Shanghai) CO LTD
|
||||||
|
*/
|
||||||
/*
|
/*
|
||||||
* FreeRTOS Kernel V10.4.3
|
* FreeRTOS Kernel V10.4.3
|
||||||
* Copyright (C) 2020 Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
* Copyright (C) 2020 Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
||||||
|
@@ -1,3 +1,10 @@
|
|||||||
|
/*
|
||||||
|
* SPDX-FileCopyrightText: 2020 Amazon.com, Inc. or its affiliates
|
||||||
|
*
|
||||||
|
* SPDX-License-Identifier: MIT
|
||||||
|
*
|
||||||
|
* SPDX-FileContributor: 2016-2022 Espressif Systems (Shanghai) CO LTD
|
||||||
|
*/
|
||||||
/*
|
/*
|
||||||
* FreeRTOS Kernel V10.4.3
|
* FreeRTOS Kernel V10.4.3
|
||||||
* Copyright (C) 2020 Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
* Copyright (C) 2020 Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
||||||
|
@@ -1,3 +1,10 @@
|
|||||||
|
/*
|
||||||
|
* SPDX-FileCopyrightText: 2020 Amazon.com, Inc. or its affiliates
|
||||||
|
*
|
||||||
|
* SPDX-License-Identifier: MIT
|
||||||
|
*
|
||||||
|
* SPDX-FileContributor: 2016-2022 Espressif Systems (Shanghai) CO LTD
|
||||||
|
*/
|
||||||
/*
|
/*
|
||||||
* FreeRTOS Kernel V10.4.3
|
* FreeRTOS Kernel V10.4.3
|
||||||
* Copyright (C) 2020 Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
* Copyright (C) 2020 Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
||||||
|
@@ -1,3 +1,10 @@
|
|||||||
|
/*
|
||||||
|
* SPDX-FileCopyrightText: 2020 Amazon.com, Inc. or its affiliates
|
||||||
|
*
|
||||||
|
* SPDX-License-Identifier: MIT
|
||||||
|
*
|
||||||
|
* SPDX-FileContributor: 2016-2022 Espressif Systems (Shanghai) CO LTD
|
||||||
|
*/
|
||||||
/*
|
/*
|
||||||
* FreeRTOS Kernel V10.4.3
|
* FreeRTOS Kernel V10.4.3
|
||||||
* Copyright (C) 2020 Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
* Copyright (C) 2020 Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
||||||
|
@@ -1,3 +1,10 @@
|
|||||||
|
/*
|
||||||
|
* SPDX-FileCopyrightText: 2020 Amazon.com, Inc. or its affiliates
|
||||||
|
*
|
||||||
|
* SPDX-License-Identifier: MIT
|
||||||
|
*
|
||||||
|
* SPDX-FileContributor: 2016-2022 Espressif Systems (Shanghai) CO LTD
|
||||||
|
*/
|
||||||
/*
|
/*
|
||||||
* FreeRTOS Kernel V10.4.3
|
* FreeRTOS Kernel V10.4.3
|
||||||
* Copyright (C) 2020 Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
* Copyright (C) 2020 Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
||||||
|
@@ -1,3 +1,10 @@
|
|||||||
|
/*
|
||||||
|
* SPDX-FileCopyrightText: 2020 Amazon.com, Inc. or its affiliates
|
||||||
|
*
|
||||||
|
* SPDX-License-Identifier: MIT
|
||||||
|
*
|
||||||
|
* SPDX-FileContributor: 2016-2022 Espressif Systems (Shanghai) CO LTD
|
||||||
|
*/
|
||||||
/*
|
/*
|
||||||
* FreeRTOS Kernel V10.4.3
|
* FreeRTOS Kernel V10.4.3
|
||||||
* Copyright (C) 2020 Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
* Copyright (C) 2020 Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
||||||
|
@@ -1,3 +1,10 @@
|
|||||||
|
/*
|
||||||
|
* SPDX-FileCopyrightText: 2020 Amazon.com, Inc. or its affiliates
|
||||||
|
*
|
||||||
|
* SPDX-License-Identifier: MIT
|
||||||
|
*
|
||||||
|
* SPDX-FileContributor: 2016-2022 Espressif Systems (Shanghai) CO LTD
|
||||||
|
*/
|
||||||
/*
|
/*
|
||||||
* FreeRTOS Kernel V10.4.3
|
* FreeRTOS Kernel V10.4.3
|
||||||
* Copyright (C) 2020 Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
* Copyright (C) 2020 Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
||||||
|
@@ -1,3 +1,10 @@
|
|||||||
|
/*
|
||||||
|
* SPDX-FileCopyrightText: 2020 Amazon.com, Inc. or its affiliates
|
||||||
|
*
|
||||||
|
* SPDX-License-Identifier: MIT
|
||||||
|
*
|
||||||
|
* SPDX-FileContributor: 2016-2022 Espressif Systems (Shanghai) CO LTD
|
||||||
|
*/
|
||||||
/*
|
/*
|
||||||
* FreeRTOS Kernel V10.4.3
|
* FreeRTOS Kernel V10.4.3
|
||||||
* Copyright (C) 2020 Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
* Copyright (C) 2020 Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
||||||
|
@@ -1,3 +1,10 @@
|
|||||||
|
/*
|
||||||
|
* SPDX-FileCopyrightText: 2020 Amazon.com, Inc. or its affiliates
|
||||||
|
*
|
||||||
|
* SPDX-License-Identifier: MIT
|
||||||
|
*
|
||||||
|
* SPDX-FileContributor: 2016-2022 Espressif Systems (Shanghai) CO LTD
|
||||||
|
*/
|
||||||
/*
|
/*
|
||||||
* FreeRTOS Kernel V10.4.3
|
* FreeRTOS Kernel V10.4.3
|
||||||
* Copyright (C) 2020 Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
* Copyright (C) 2020 Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
||||||
|
@@ -1,3 +1,10 @@
|
|||||||
|
/*
|
||||||
|
* SPDX-FileCopyrightText: 2020 Amazon.com, Inc. or its affiliates
|
||||||
|
*
|
||||||
|
* SPDX-License-Identifier: MIT
|
||||||
|
*
|
||||||
|
* SPDX-FileContributor: 2016-2022 Espressif Systems (Shanghai) CO LTD
|
||||||
|
*/
|
||||||
/*
|
/*
|
||||||
* FreeRTOS Kernel V10.4.3
|
* FreeRTOS Kernel V10.4.3
|
||||||
* Copyright (C) 2020 Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
* Copyright (C) 2020 Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
||||||
|
@@ -1,3 +1,10 @@
|
|||||||
|
/*
|
||||||
|
* SPDX-FileCopyrightText: 2020 Amazon.com, Inc. or its affiliates
|
||||||
|
*
|
||||||
|
* SPDX-License-Identifier: MIT
|
||||||
|
*
|
||||||
|
* SPDX-FileContributor: 2016-2022 Espressif Systems (Shanghai) CO LTD
|
||||||
|
*/
|
||||||
/*
|
/*
|
||||||
* FreeRTOS Kernel V10.4.3
|
* FreeRTOS Kernel V10.4.3
|
||||||
* Copyright (C) 2020 Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
* Copyright (C) 2020 Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
||||||
|
@@ -1,70 +1,7 @@
|
|||||||
/*
|
/*
|
||||||
FreeRTOS V10 - Copyright (C) 2021 Real Time Engineers Ltd.
|
* SPDX-FileCopyrightText: 2015-2022 Espressif Systems (Shanghai) CO LTD
|
||||||
All rights reserved
|
*
|
||||||
|
* SPDX-License-Identifier: Apache-2.0
|
||||||
VISIT http://www.FreeRTOS.org TO ENSURE YOU ARE USING THE LATEST VERSION.
|
|
||||||
|
|
||||||
This file is part of the FreeRTOS distribution.
|
|
||||||
|
|
||||||
FreeRTOS is free software; you can redistribute it and/or modify it under
|
|
||||||
the terms of the GNU General Public License (version 2) as published by the
|
|
||||||
Free Software Foundation >>!AND MODIFIED BY!<< the FreeRTOS exception.
|
|
||||||
|
|
||||||
***************************************************************************
|
|
||||||
>>! NOTE: The modification to the GPL is included to allow you to !<<
|
|
||||||
>>! distribute a combined work that includes FreeRTOS without being !<<
|
|
||||||
>>! obliged to provide the source code for proprietary components !<<
|
|
||||||
>>! outside of the FreeRTOS kernel. !<<
|
|
||||||
***************************************************************************
|
|
||||||
|
|
||||||
FreeRTOS is distributed in the hope that it will be useful, but WITHOUT ANY
|
|
||||||
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
|
|
||||||
FOR A PARTICULAR PURPOSE. Full license text is available on the following
|
|
||||||
link: http://www.freertos.org/a00114.html
|
|
||||||
|
|
||||||
***************************************************************************
|
|
||||||
* *
|
|
||||||
* FreeRTOS provides completely free yet professionally developed, *
|
|
||||||
* robust, strictly quality controlled, supported, and cross *
|
|
||||||
* platform software that is more than just the market leader, it *
|
|
||||||
* is the industry's de facto standard. *
|
|
||||||
* *
|
|
||||||
* Help yourself get started quickly while simultaneously helping *
|
|
||||||
* to support the FreeRTOS project by purchasing a FreeRTOS *
|
|
||||||
* tutorial book, reference manual, or both: *
|
|
||||||
* http://www.FreeRTOS.org/Documentation *
|
|
||||||
* *
|
|
||||||
***************************************************************************
|
|
||||||
|
|
||||||
http://www.FreeRTOS.org/FAQHelp.html - Having a problem? Start by reading
|
|
||||||
the FAQ page "My application does not run, what could be wrong?". Have you
|
|
||||||
defined configASSERT()?
|
|
||||||
|
|
||||||
http://www.FreeRTOS.org/support - In return for receiving this top quality
|
|
||||||
embedded software for free we request you assist our global community by
|
|
||||||
participating in the support forum.
|
|
||||||
|
|
||||||
http://www.FreeRTOS.org/training - Investing in training allows your team to
|
|
||||||
be as productive as possible as early as possible. Now you can receive
|
|
||||||
FreeRTOS training directly from Richard Barry, CEO of Real Time Engineers
|
|
||||||
Ltd, and the world's leading authority on the world's leading RTOS.
|
|
||||||
|
|
||||||
http://www.FreeRTOS.org/plus - A selection of FreeRTOS ecosystem products,
|
|
||||||
including FreeRTOS+Trace - an indispensable productivity tool, a DOS
|
|
||||||
compatible FAT file system, and our tiny thread aware UDP/IP stack.
|
|
||||||
|
|
||||||
http://www.FreeRTOS.org/labs - Where new FreeRTOS products go to incubate.
|
|
||||||
Come and try FreeRTOS+TCP, our new open source TCP/IP stack for FreeRTOS.
|
|
||||||
|
|
||||||
http://www.OpenRTOS.com - Real Time Engineers ltd. license FreeRTOS to High
|
|
||||||
Integrity Systems ltd. to sell under the OpenRTOS brand. Low cost OpenRTOS
|
|
||||||
licenses offer ticketed support, indemnification and commercial middleware.
|
|
||||||
|
|
||||||
http://www.SafeRTOS.com - High Integrity Systems also provide a safety
|
|
||||||
engineered and independently SIL3 certified version for use in safety and
|
|
||||||
mission critical applications that require provable dependability.
|
|
||||||
|
|
||||||
1 tab == 4 spaces!
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifndef FREERTOS_CONFIG_LINUX_H
|
#ifndef FREERTOS_CONFIG_LINUX_H
|
||||||
|
@@ -157,7 +157,9 @@ IRAM_ATTR void SysTickIsrHandler(void *arg)
|
|||||||
*/
|
*/
|
||||||
BaseType_t xPortSysTickHandler(void)
|
BaseType_t xPortSysTickHandler(void)
|
||||||
{
|
{
|
||||||
|
#if configBENCHMARK
|
||||||
portbenchmarkIntLatency();
|
portbenchmarkIntLatency();
|
||||||
|
#endif //configBENCHMARK
|
||||||
traceISR_ENTER(SYSTICK_INTR_ID);
|
traceISR_ENTER(SYSTICK_INTR_ID);
|
||||||
BaseType_t ret = xTaskIncrementTick();
|
BaseType_t ret = xTaskIncrementTick();
|
||||||
if(ret != pdFALSE) {
|
if(ret != pdFALSE) {
|
||||||
|
@@ -1,70 +1,7 @@
|
|||||||
/*
|
/*
|
||||||
FreeRTOS V10 - Copyright (C) 2021 Real Time Engineers Ltd.
|
* SPDX-FileCopyrightText: 2015-2022 Espressif Systems (Shanghai) CO LTD
|
||||||
All rights reserved
|
*
|
||||||
|
* SPDX-License-Identifier: Apache-2.0
|
||||||
VISIT http://www.FreeRTOS.org TO ENSURE YOU ARE USING THE LATEST VERSION.
|
|
||||||
|
|
||||||
This file is part of the FreeRTOS distribution.
|
|
||||||
|
|
||||||
FreeRTOS is free software; you can redistribute it and/or modify it under
|
|
||||||
the terms of the GNU General Public License (version 2) as published by the
|
|
||||||
Free Software Foundation >>!AND MODIFIED BY!<< the FreeRTOS exception.
|
|
||||||
|
|
||||||
***************************************************************************
|
|
||||||
>>! NOTE: The modification to the GPL is included to allow you to !<<
|
|
||||||
>>! distribute a combined work that includes FreeRTOS without being !<<
|
|
||||||
>>! obliged to provide the source code for proprietary components !<<
|
|
||||||
>>! outside of the FreeRTOS kernel. !<<
|
|
||||||
***************************************************************************
|
|
||||||
|
|
||||||
FreeRTOS is distributed in the hope that it will be useful, but WITHOUT ANY
|
|
||||||
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
|
|
||||||
FOR A PARTICULAR PURPOSE. Full license text is available on the following
|
|
||||||
link: http://www.freertos.org/a00114.html
|
|
||||||
|
|
||||||
***************************************************************************
|
|
||||||
* *
|
|
||||||
* FreeRTOS provides completely free yet professionally developed, *
|
|
||||||
* robust, strictly quality controlled, supported, and cross *
|
|
||||||
* platform software that is more than just the market leader, it *
|
|
||||||
* is the industry's de facto standard. *
|
|
||||||
* *
|
|
||||||
* Help yourself get started quickly while simultaneously helping *
|
|
||||||
* to support the FreeRTOS project by purchasing a FreeRTOS *
|
|
||||||
* tutorial book, reference manual, or both: *
|
|
||||||
* http://www.FreeRTOS.org/Documentation *
|
|
||||||
* *
|
|
||||||
***************************************************************************
|
|
||||||
|
|
||||||
http://www.FreeRTOS.org/FAQHelp.html - Having a problem? Start by reading
|
|
||||||
the FAQ page "My application does not run, what could be wrong?". Have you
|
|
||||||
defined configASSERT()?
|
|
||||||
|
|
||||||
http://www.FreeRTOS.org/support - In return for receiving this top quality
|
|
||||||
embedded software for free we request you assist our global community by
|
|
||||||
participating in the support forum.
|
|
||||||
|
|
||||||
http://www.FreeRTOS.org/training - Investing in training allows your team to
|
|
||||||
be as productive as possible as early as possible. Now you can receive
|
|
||||||
FreeRTOS training directly from Richard Barry, CEO of Real Time Engineers
|
|
||||||
Ltd, and the world's leading authority on the world's leading RTOS.
|
|
||||||
|
|
||||||
http://www.FreeRTOS.org/plus - A selection of FreeRTOS ecosystem products,
|
|
||||||
including FreeRTOS+Trace - an indispensable productivity tool, a DOS
|
|
||||||
compatible FAT file system, and our tiny thread aware UDP/IP stack.
|
|
||||||
|
|
||||||
http://www.FreeRTOS.org/labs - Where new FreeRTOS products go to incubate.
|
|
||||||
Come and try FreeRTOS+TCP, our new open source TCP/IP stack for FreeRTOS.
|
|
||||||
|
|
||||||
http://www.OpenRTOS.com - Real Time Engineers ltd. license FreeRTOS to High
|
|
||||||
Integrity Systems ltd. to sell under the OpenRTOS brand. Low cost OpenRTOS
|
|
||||||
licenses offer ticketed support, indemnification and commercial middleware.
|
|
||||||
|
|
||||||
http://www.SafeRTOS.com - High Integrity Systems also provide a safety
|
|
||||||
engineered and independently SIL3 certified version for use in safety and
|
|
||||||
mission critical applications that require provable dependability.
|
|
||||||
|
|
||||||
1 tab == 4 spaces!
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifndef FREERTOS_CONFIG_RISCV_H
|
#ifndef FREERTOS_CONFIG_RISCV_H
|
||||||
|
@@ -1,46 +0,0 @@
|
|||||||
/*******************************************************************************
|
|
||||||
// Copyright (c) 2003-2015 Cadence Design Systems, Inc.
|
|
||||||
//
|
|
||||||
// Permission is hereby granted, free of charge, to any person obtaining
|
|
||||||
// a copy of this software and associated documentation files (the
|
|
||||||
// "Software"), to deal in the Software without restriction, including
|
|
||||||
// without limitation the rights to use, copy, modify, merge, publish,
|
|
||||||
// distribute, sublicense, and/or sell copies of the Software, and to
|
|
||||||
// permit persons to whom the Software is furnished to do so, subject to
|
|
||||||
// the following conditions:
|
|
||||||
//
|
|
||||||
// The above copyright notice and this permission notice shall be included
|
|
||||||
// in all copies or substantial portions of the Software.
|
|
||||||
//
|
|
||||||
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
|
||||||
// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
|
||||||
// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
|
|
||||||
// IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
|
|
||||||
// CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
|
|
||||||
// TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
|
|
||||||
// SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
|
||||||
--------------------------------------------------------------------------------
|
|
||||||
*/
|
|
||||||
|
|
||||||
/*
|
|
||||||
* This utility helps benchmarking interrupt latency and context switches.
|
|
||||||
* In order to enable it, set configBENCHMARK to 1 in FreeRTOSConfig.h.
|
|
||||||
* You will also need to download the FreeRTOS_trace patch that contains
|
|
||||||
* portbenchmark.c and the complete version of portbenchmark.h
|
|
||||||
*/
|
|
||||||
|
|
||||||
#ifndef PORTBENCHMARK_H
|
|
||||||
#define PORTBENCHMARK_H
|
|
||||||
|
|
||||||
#if configBENCHMARK
|
|
||||||
#error "You need to download the FreeRTOS_trace patch that overwrites this file"
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#define portbenchmarkINTERRUPT_DISABLE()
|
|
||||||
#define portbenchmarkINTERRUPT_RESTORE(newstate)
|
|
||||||
#define portbenchmarkIntLatency()
|
|
||||||
#define portbenchmarkIntWait()
|
|
||||||
#define portbenchmarkReset()
|
|
||||||
#define portbenchmarkPrint()
|
|
||||||
|
|
||||||
#endif /* PORTBENCHMARK */
|
|
@@ -1,3 +1,10 @@
|
|||||||
|
/*
|
||||||
|
* SPDX-FileCopyrightText: 2020 Amazon.com, Inc. or its affiliates
|
||||||
|
*
|
||||||
|
* SPDX-License-Identifier: MIT
|
||||||
|
*
|
||||||
|
* SPDX-FileContributor: 2016-2022 Espressif Systems (Shanghai) CO LTD
|
||||||
|
*/
|
||||||
/*
|
/*
|
||||||
* FreeRTOS Kernel V10.4.3
|
* FreeRTOS Kernel V10.4.3
|
||||||
* Copyright (C) 2019 Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
* Copyright (C) 2019 Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
||||||
@@ -43,7 +50,6 @@
|
|||||||
#include "esp_heap_caps.h"
|
#include "esp_heap_caps.h"
|
||||||
#include "esp_system.h" /* required by esp_get_...() functions in portable.h. [refactor-todo] Update portable.h */
|
#include "esp_system.h" /* required by esp_get_...() functions in portable.h. [refactor-todo] Update portable.h */
|
||||||
#include "esp_newlib.h"
|
#include "esp_newlib.h"
|
||||||
#include "portbenchmark.h"
|
|
||||||
|
|
||||||
/* [refactor-todo] These includes are not directly used in this file. They are kept into to prevent a breaking change. Remove these. */
|
/* [refactor-todo] These includes are not directly used in this file. They are kept into to prevent a breaking change. Remove these. */
|
||||||
#include <limits.h>
|
#include <limits.h>
|
||||||
|
@@ -1,73 +1,35 @@
|
|||||||
/*
|
/*
|
||||||
FreeRTOS V8.2.3 - Copyright (C) 2015 Real Time Engineers Ltd.
|
* SPDX-FileCopyrightText: 2020 Amazon.com, Inc. or its affiliates
|
||||||
All rights reserved
|
*
|
||||||
|
* SPDX-License-Identifier: MIT
|
||||||
VISIT http://www.FreeRTOS.org TO ENSURE YOU ARE USING THE LATEST VERSION.
|
*
|
||||||
|
* SPDX-FileContributor: 2016-2022 Espressif Systems (Shanghai) CO LTD
|
||||||
This file is part of the FreeRTOS distribution and was contributed
|
*/
|
||||||
to the project by Technolution B.V. (www.technolution.nl,
|
/*
|
||||||
freertos-riscv@technolution.eu) under the terms of the FreeRTOS
|
* FreeRTOS Kernel V10.4.3
|
||||||
contributors license.
|
* Copyright (C) 2020 Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
||||||
|
*
|
||||||
FreeRTOS is free software; you can redistribute it and/or modify it under
|
* Permission is hereby granted, free of charge, to any person obtaining a copy of
|
||||||
the terms of the GNU General Public License (version 2) as published by the
|
* this software and associated documentation files (the "Software"), to deal in
|
||||||
Free Software Foundation >>>> AND MODIFIED BY <<<< the FreeRTOS exception.
|
* the Software without restriction, including without limitation the rights to
|
||||||
|
* use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
|
||||||
***************************************************************************
|
* the Software, and to permit persons to whom the Software is furnished to do so,
|
||||||
>>! NOTE: The modification to the GPL is included to allow you to !<<
|
* subject to the following conditions:
|
||||||
>>! distribute a combined work that includes FreeRTOS without being !<<
|
*
|
||||||
>>! obliged to provide the source code for proprietary components !<<
|
* The above copyright notice and this permission notice shall be included in all
|
||||||
>>! outside of the FreeRTOS kernel. !<<
|
* copies or substantial portions of the Software.
|
||||||
***************************************************************************
|
*
|
||||||
|
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||||
FreeRTOS is distributed in the hope that it will be useful, but WITHOUT ANY
|
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
|
||||||
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
|
* FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
|
||||||
FOR A PARTICULAR PURPOSE. Full license text is available on the following
|
* COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
|
||||||
link: http://www.freertos.org/a00114.html
|
* IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
|
||||||
|
* CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||||
***************************************************************************
|
*
|
||||||
* *
|
* https://www.FreeRTOS.org
|
||||||
* FreeRTOS provides completely free yet professionally developed, *
|
* https://github.com/FreeRTOS
|
||||||
* robust, strictly quality controlled, supported, and cross *
|
*
|
||||||
* platform software that is more than just the market leader, it *
|
* 1 tab == 4 spaces!
|
||||||
* is the industry's de facto standard. *
|
|
||||||
* *
|
|
||||||
* Help yourself get started quickly while simultaneously helping *
|
|
||||||
* to support the FreeRTOS project by purchasing a FreeRTOS *
|
|
||||||
* tutorial book, reference manual, or both: *
|
|
||||||
* http://www.FreeRTOS.org/Documentation *
|
|
||||||
* *
|
|
||||||
***************************************************************************
|
|
||||||
|
|
||||||
http://www.FreeRTOS.org/FAQHelp.html - Having a problem? Start by reading
|
|
||||||
the FAQ page "My application does not run, what could be wrong?". Have you
|
|
||||||
defined configASSERT()?
|
|
||||||
|
|
||||||
http://www.FreeRTOS.org/support - In return for receiving this top quality
|
|
||||||
embedded software for free we request you assist our global community by
|
|
||||||
participating in the support forum.
|
|
||||||
|
|
||||||
http://www.FreeRTOS.org/training - Investing in training allows your team to
|
|
||||||
be as productive as possible as early as possible. Now you can receive
|
|
||||||
FreeRTOS training directly from Richard Barry, CEO of Real Time Engineers
|
|
||||||
Ltd, and the world's leading authority on the world's leading RTOS.
|
|
||||||
|
|
||||||
http://www.FreeRTOS.org/plus - A selection of FreeRTOS ecosystem products,
|
|
||||||
including FreeRTOS+Trace - an indispensable productivity tool, a DOS
|
|
||||||
compatible FAT file system, and our tiny thread aware UDP/IP stack.
|
|
||||||
|
|
||||||
http://www.FreeRTOS.org/labs - Where new FreeRTOS products go to incubate.
|
|
||||||
Come and try FreeRTOS+TCP, our new open source TCP/IP stack for FreeRTOS.
|
|
||||||
|
|
||||||
http://www.OpenRTOS.com - Real Time Engineers ltd. license FreeRTOS to High
|
|
||||||
Integrity Systems ltd. to sell under the OpenRTOS brand. Low cost OpenRTOS
|
|
||||||
licenses offer ticketed support, indemnification and commercial middleware.
|
|
||||||
|
|
||||||
http://www.SafeRTOS.com - High Integrity Systems also provide a safety
|
|
||||||
engineered and independently SIL3 certified version for use in safety and
|
|
||||||
mission critical applications that require provable dependability.
|
|
||||||
|
|
||||||
1 tab == 4 spaces!
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/*-----------------------------------------------------------------------
|
/*-----------------------------------------------------------------------
|
||||||
|
@@ -1,16 +1,8 @@
|
|||||||
// Copyright 2015-2020 Espressif Systems (Shanghai) PTE LTD
|
/*
|
||||||
//
|
* SPDX-FileCopyrightText: 2015-2022 Espressif Systems (Shanghai) CO LTD
|
||||||
// Licensed under the Apache License, Version 2.0 (the "License");
|
*
|
||||||
// you may not use this file except in compliance with the License.
|
* SPDX-License-Identifier: Apache-2.0
|
||||||
// You may obtain a copy of the License at
|
*/
|
||||||
|
|
||||||
// http://www.apache.org/licenses/LICENSE-2.0
|
|
||||||
//
|
|
||||||
// Unless required by applicable law or agreed to in writing, software
|
|
||||||
// distributed under the License is distributed on an "AS IS" BASIS,
|
|
||||||
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
// See the License for the specific language governing permissions and
|
|
||||||
// limitations under the License.
|
|
||||||
|
|
||||||
.global uxInterruptNesting
|
.global uxInterruptNesting
|
||||||
.global uxSchedulerRunning
|
.global uxSchedulerRunning
|
||||||
|
@@ -1,70 +1,7 @@
|
|||||||
/*
|
/*
|
||||||
FreeRTOS V10 - Copyright (C) 2021 Real Time Engineers Ltd.
|
* SPDX-FileCopyrightText: 2015-2022 Espressif Systems (Shanghai) CO LTD
|
||||||
All rights reserved
|
*
|
||||||
|
* SPDX-License-Identifier: Apache-2.0
|
||||||
VISIT http://www.FreeRTOS.org TO ENSURE YOU ARE USING THE LATEST VERSION.
|
|
||||||
|
|
||||||
This file is part of the FreeRTOS distribution.
|
|
||||||
|
|
||||||
FreeRTOS is free software; you can redistribute it and/or modify it under
|
|
||||||
the terms of the GNU General Public License (version 2) as published by the
|
|
||||||
Free Software Foundation >>!AND MODIFIED BY!<< the FreeRTOS exception.
|
|
||||||
|
|
||||||
***************************************************************************
|
|
||||||
>>! NOTE: The modification to the GPL is included to allow you to !<<
|
|
||||||
>>! distribute a combined work that includes FreeRTOS without being !<<
|
|
||||||
>>! obliged to provide the source code for proprietary components !<<
|
|
||||||
>>! outside of the FreeRTOS kernel. !<<
|
|
||||||
***************************************************************************
|
|
||||||
|
|
||||||
FreeRTOS is distributed in the hope that it will be useful, but WITHOUT ANY
|
|
||||||
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
|
|
||||||
FOR A PARTICULAR PURPOSE. Full license text is available on the following
|
|
||||||
link: http://www.freertos.org/a00114.html
|
|
||||||
|
|
||||||
***************************************************************************
|
|
||||||
* *
|
|
||||||
* FreeRTOS provides completely free yet professionally developed, *
|
|
||||||
* robust, strictly quality controlled, supported, and cross *
|
|
||||||
* platform software that is more than just the market leader, it *
|
|
||||||
* is the industry's de facto standard. *
|
|
||||||
* *
|
|
||||||
* Help yourself get started quickly while simultaneously helping *
|
|
||||||
* to support the FreeRTOS project by purchasing a FreeRTOS *
|
|
||||||
* tutorial book, reference manual, or both: *
|
|
||||||
* http://www.FreeRTOS.org/Documentation *
|
|
||||||
* *
|
|
||||||
***************************************************************************
|
|
||||||
|
|
||||||
http://www.FreeRTOS.org/FAQHelp.html - Having a problem? Start by reading
|
|
||||||
the FAQ page "My application does not run, what could be wrong?". Have you
|
|
||||||
defined configASSERT()?
|
|
||||||
|
|
||||||
http://www.FreeRTOS.org/support - In return for receiving this top quality
|
|
||||||
embedded software for free we request you assist our global community by
|
|
||||||
participating in the support forum.
|
|
||||||
|
|
||||||
http://www.FreeRTOS.org/training - Investing in training allows your team to
|
|
||||||
be as productive as possible as early as possible. Now you can receive
|
|
||||||
FreeRTOS training directly from Richard Barry, CEO of Real Time Engineers
|
|
||||||
Ltd, and the world's leading authority on the world's leading RTOS.
|
|
||||||
|
|
||||||
http://www.FreeRTOS.org/plus - A selection of FreeRTOS ecosystem products,
|
|
||||||
including FreeRTOS+Trace - an indispensable productivity tool, a DOS
|
|
||||||
compatible FAT file system, and our tiny thread aware UDP/IP stack.
|
|
||||||
|
|
||||||
http://www.FreeRTOS.org/labs - Where new FreeRTOS products go to incubate.
|
|
||||||
Come and try FreeRTOS+TCP, our new open source TCP/IP stack for FreeRTOS.
|
|
||||||
|
|
||||||
http://www.OpenRTOS.com - Real Time Engineers ltd. license FreeRTOS to High
|
|
||||||
Integrity Systems ltd. to sell under the OpenRTOS brand. Low cost OpenRTOS
|
|
||||||
licenses offer ticketed support, indemnification and commercial middleware.
|
|
||||||
|
|
||||||
http://www.SafeRTOS.com - High Integrity Systems also provide a safety
|
|
||||||
engineered and independently SIL3 certified version for use in safety and
|
|
||||||
mission critical applications that require provable dependability.
|
|
||||||
|
|
||||||
1 tab == 4 spaces!
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifndef FREERTOS_CONFIG_XTENSA_H
|
#ifndef FREERTOS_CONFIG_XTENSA_H
|
||||||
@@ -123,6 +60,7 @@ int xt_clock_freq(void) __attribute__((deprecated));
|
|||||||
|
|
||||||
#define configXT_BOARD 1 /* Board mode */
|
#define configXT_BOARD 1 /* Board mode */
|
||||||
#define configXT_SIMULATOR 0
|
#define configXT_SIMULATOR 0
|
||||||
|
#define configBENCHMARK 0
|
||||||
|
|
||||||
/* The maximum interrupt priority from which FreeRTOS.org API functions can
|
/* The maximum interrupt priority from which FreeRTOS.org API functions can
|
||||||
be called. Only API functions that end in ...FromISR() can be used within
|
be called. Only API functions that end in ...FromISR() can be used within
|
||||||
|
@@ -1,25 +1,31 @@
|
|||||||
/*******************************************************************************
|
/*
|
||||||
// Copyright (c) 2003-2015 Cadence Design Systems, Inc.
|
* SPDX-FileCopyrightText: 2015-2019 Cadence Design Systems, Inc.
|
||||||
//
|
*
|
||||||
// Permission is hereby granted, free of charge, to any person obtaining
|
* SPDX-License-Identifier: MIT
|
||||||
// a copy of this software and associated documentation files (the
|
*
|
||||||
// "Software"), to deal in the Software without restriction, including
|
* SPDX-FileContributor: 2016-2022 Espressif Systems (Shanghai) CO LTD
|
||||||
// without limitation the rights to use, copy, modify, merge, publish,
|
*/
|
||||||
// distribute, sublicense, and/or sell copies of the Software, and to
|
/*
|
||||||
// permit persons to whom the Software is furnished to do so, subject to
|
* Copyright (c) 2015-2019 Cadence Design Systems, Inc.
|
||||||
// the following conditions:
|
*
|
||||||
//
|
* Permission is hereby granted, free of charge, to any person obtaining
|
||||||
// The above copyright notice and this permission notice shall be included
|
* a copy of this software and associated documentation files (the
|
||||||
// in all copies or substantial portions of the Software.
|
* "Software"), to deal in the Software without restriction, including
|
||||||
//
|
* without limitation the rights to use, copy, modify, merge, publish,
|
||||||
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
* distribute, sublicense, and/or sell copies of the Software, and to
|
||||||
// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
* permit persons to whom the Software is furnished to do so, subject to
|
||||||
// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
|
* the following conditions:
|
||||||
// IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
|
*
|
||||||
// CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
|
* The above copyright notice and this permission notice shall be included
|
||||||
// TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
|
* in all copies or substantial portions of the Software.
|
||||||
// SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
*
|
||||||
--------------------------------------------------------------------------------
|
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
||||||
|
* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
||||||
|
* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
|
||||||
|
* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
|
||||||
|
* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
|
||||||
|
* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
|
||||||
|
* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
@@ -1,6 +1,14 @@
|
|||||||
|
/*
|
||||||
|
* SPDX-FileCopyrightText: 2017 Amazon.com, Inc. or its affiliates
|
||||||
|
* SPDX-FileCopyrightText: 2015-2019 Cadence Design Systems, Inc.
|
||||||
|
*
|
||||||
|
* SPDX-License-Identifier: MIT
|
||||||
|
*
|
||||||
|
* SPDX-FileContributor: 2016-2022 Espressif Systems (Shanghai) CO LTD
|
||||||
|
*/
|
||||||
/*
|
/*
|
||||||
* FreeRTOS Kernel V10.4.3
|
* FreeRTOS Kernel V10.4.3
|
||||||
* Copyright (C) 2019 Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
* Copyright (C) 2017 Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
||||||
*
|
*
|
||||||
* Permission is hereby granted, free of charge, to any person obtaining a copy of
|
* Permission is hereby granted, free of charge, to any person obtaining a copy of
|
||||||
* this software and associated documentation files (the "Software"), to deal in
|
* this software and associated documentation files (the "Software"), to deal in
|
||||||
@@ -10,7 +18,8 @@
|
|||||||
* subject to the following conditions:
|
* subject to the following conditions:
|
||||||
*
|
*
|
||||||
* The above copyright notice and this permission notice shall be included in all
|
* The above copyright notice and this permission notice shall be included in all
|
||||||
* copies or substantial portions of the Software.
|
* copies or substantial portions of the Software. If you wish to use our Amazon
|
||||||
|
* FreeRTOS name, please do so in a fair use way that does not cause confusion.
|
||||||
*
|
*
|
||||||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||||
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
|
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
|
||||||
@@ -19,12 +28,35 @@
|
|||||||
* IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
|
* IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
|
||||||
* CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
* CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||||
*
|
*
|
||||||
* http://www.FreeRTOS.org
|
* https://www.FreeRTOS.org
|
||||||
* http://aws.amazon.com/freertos
|
* https://github.com/FreeRTOS
|
||||||
*
|
*
|
||||||
* 1 tab == 4 spaces!
|
* 1 tab == 4 spaces!
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Copyright (c) 2015-2019 Cadence Design Systems, Inc.
|
||||||
|
*
|
||||||
|
* Permission is hereby granted, free of charge, to any person obtaining
|
||||||
|
* a copy of this software and associated documentation files (the
|
||||||
|
* "Software"), to deal in the Software without restriction, including
|
||||||
|
* without limitation the rights to use, copy, modify, merge, publish,
|
||||||
|
* distribute, sublicense, and/or sell copies of the Software, and to
|
||||||
|
* permit persons to whom the Software is furnished to do so, subject to
|
||||||
|
* the following conditions:
|
||||||
|
*
|
||||||
|
* The above copyright notice and this permission notice shall be included
|
||||||
|
* in all copies or substantial portions of the Software.
|
||||||
|
*
|
||||||
|
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
||||||
|
* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
||||||
|
* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
|
||||||
|
* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
|
||||||
|
* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
|
||||||
|
* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
|
||||||
|
* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||||
|
*/
|
||||||
|
|
||||||
#ifndef PORTMACRO_H
|
#ifndef PORTMACRO_H
|
||||||
#define PORTMACRO_H
|
#define PORTMACRO_H
|
||||||
|
|
||||||
|
@@ -1,34 +1,41 @@
|
|||||||
/*******************************************************************************
|
/*
|
||||||
// Copyright (c) 2003-2015 Cadence Design Systems, Inc.
|
* SPDX-FileCopyrightText: 2015-2019 Cadence Design Systems, Inc.
|
||||||
//
|
*
|
||||||
// Permission is hereby granted, free of charge, to any person obtaining
|
* SPDX-License-Identifier: MIT
|
||||||
// a copy of this software and associated documentation files (the
|
*
|
||||||
// "Software"), to deal in the Software without restriction, including
|
* SPDX-FileContributor: 2016-2022 Espressif Systems (Shanghai) CO LTD
|
||||||
// without limitation the rights to use, copy, modify, merge, publish,
|
*/
|
||||||
// distribute, sublicense, and/or sell copies of the Software, and to
|
/*
|
||||||
// permit persons to whom the Software is furnished to do so, subject to
|
* Copyright (c) 2015-2019 Cadence Design Systems, Inc.
|
||||||
// the following conditions:
|
*
|
||||||
//
|
* Permission is hereby granted, free of charge, to any person obtaining
|
||||||
// The above copyright notice and this permission notice shall be included
|
* a copy of this software and associated documentation files (the
|
||||||
// in all copies or substantial portions of the Software.
|
* "Software"), to deal in the Software without restriction, including
|
||||||
//
|
* without limitation the rights to use, copy, modify, merge, publish,
|
||||||
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
* distribute, sublicense, and/or sell copies of the Software, and to
|
||||||
// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
* permit persons to whom the Software is furnished to do so, subject to
|
||||||
// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
|
* the following conditions:
|
||||||
// IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
|
*
|
||||||
// CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
|
* The above copyright notice and this permission notice shall be included
|
||||||
// TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
|
* in all copies or substantial portions of the Software.
|
||||||
// SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
*
|
||||||
--------------------------------------------------------------------------------
|
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
||||||
|
* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
||||||
|
* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
|
||||||
|
* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
|
||||||
|
* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
|
||||||
|
* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
|
||||||
|
* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||||
|
*/
|
||||||
|
|
||||||
Configuration-specific information for Xtensa build. This file must be
|
/*
|
||||||
included in FreeRTOSConfig.h to properly set up the config-dependent
|
* Configuration-specific information for Xtensa build. This file must be
|
||||||
parameters correctly.
|
* included in FreeRTOSConfig.h to properly set up the config-dependent
|
||||||
|
* parameters correctly.
|
||||||
NOTE: To enable thread-safe C library support, XT_USE_THREAD_SAFE_CLIB must
|
*
|
||||||
be defined to be > 0 somewhere above or on the command line.
|
* NOTE: To enable thread-safe C library support, XT_USE_THREAD_SAFE_CLIB must
|
||||||
|
* be defined to be > 0 somewhere above or on the command line.
|
||||||
*******************************************************************************/
|
*/
|
||||||
|
|
||||||
#ifndef XTENSA_CONFIG_H
|
#ifndef XTENSA_CONFIG_H
|
||||||
#define XTENSA_CONFIG_H
|
#define XTENSA_CONFIG_H
|
||||||
|
@@ -1,43 +1,50 @@
|
|||||||
/*******************************************************************************
|
/*
|
||||||
// Copyright (c) 2003-2015 Cadence Design Systems, Inc.
|
* SPDX-FileCopyrightText: 2015-2019 Cadence Design Systems, Inc.
|
||||||
//
|
*
|
||||||
// Permission is hereby granted, free of charge, to any person obtaining
|
* SPDX-License-Identifier: MIT
|
||||||
// a copy of this software and associated documentation files (the
|
*
|
||||||
// "Software"), to deal in the Software without restriction, including
|
* SPDX-FileContributor: 2016-2022 Espressif Systems (Shanghai) CO LTD
|
||||||
// without limitation the rights to use, copy, modify, merge, publish,
|
*/
|
||||||
// distribute, sublicense, and/or sell copies of the Software, and to
|
/*
|
||||||
// permit persons to whom the Software is furnished to do so, subject to
|
* Copyright (c) 2015-2019 Cadence Design Systems, Inc.
|
||||||
// the following conditions:
|
*
|
||||||
//
|
* Permission is hereby granted, free of charge, to any person obtaining
|
||||||
// The above copyright notice and this permission notice shall be included
|
* a copy of this software and associated documentation files (the
|
||||||
// in all copies or substantial portions of the Software.
|
* "Software"), to deal in the Software without restriction, including
|
||||||
//
|
* without limitation the rights to use, copy, modify, merge, publish,
|
||||||
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
* distribute, sublicense, and/or sell copies of the Software, and to
|
||||||
// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
* permit persons to whom the Software is furnished to do so, subject to
|
||||||
// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
|
* the following conditions:
|
||||||
// IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
|
*
|
||||||
// CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
|
* The above copyright notice and this permission notice shall be included
|
||||||
// TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
|
* in all copies or substantial portions of the Software.
|
||||||
// SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
*
|
||||||
--------------------------------------------------------------------------------
|
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
||||||
|
* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
||||||
|
* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
|
||||||
|
* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
|
||||||
|
* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
|
||||||
|
* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
|
||||||
|
* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||||
|
*/
|
||||||
|
|
||||||
RTOS-SPECIFIC INFORMATION FOR XTENSA RTOS ASSEMBLER SOURCES
|
/*
|
||||||
(FreeRTOS Port)
|
* RTOS-SPECIFIC INFORMATION FOR XTENSA RTOS ASSEMBLER SOURCES
|
||||||
|
* (FreeRTOS Port)
|
||||||
This header is the primary glue between generic Xtensa RTOS support
|
*
|
||||||
sources and a specific RTOS port for Xtensa. It contains definitions
|
* This header is the primary glue between generic Xtensa RTOS support
|
||||||
and macros for use primarily by Xtensa assembly coded source files.
|
* sources and a specific RTOS port for Xtensa. It contains definitions
|
||||||
|
* and macros for use primarily by Xtensa assembly coded source files.
|
||||||
Macros in this header map callouts from generic Xtensa files to specific
|
*
|
||||||
RTOS functions. It may also be included in C source files.
|
* Macros in this header map callouts from generic Xtensa files to specific
|
||||||
|
* RTOS functions. It may also be included in C source files.
|
||||||
Xtensa RTOS ports support all RTOS-compatible configurations of the Xtensa
|
*
|
||||||
architecture, using the Xtensa hardware abstraction layer (HAL) to deal
|
* Xtensa RTOS ports support all RTOS-compatible configurations of the Xtensa
|
||||||
with configuration specifics.
|
* architecture, using the Xtensa hardware abstraction layer (HAL) to deal
|
||||||
|
* with configuration specifics.
|
||||||
Should be included by all Xtensa generic and RTOS port-specific sources.
|
*
|
||||||
|
* Should be included by all Xtensa generic and RTOS port-specific sources.
|
||||||
*******************************************************************************/
|
*/
|
||||||
|
|
||||||
#ifndef XTENSA_RTOS_H
|
#ifndef XTENSA_RTOS_H
|
||||||
#define XTENSA_RTOS_H
|
#define XTENSA_RTOS_H
|
||||||
@@ -86,7 +93,7 @@ However these can still be overridden from the command line.
|
|||||||
#endif
|
#endif
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if !defined(XT_SIMULATOR) && !defined(XT_BOARD)
|
#if (!XT_SIMULATOR) && (!XT_BOARD)
|
||||||
#error Either XT_SIMULATOR or XT_BOARD must be defined.
|
#error Either XT_SIMULATOR or XT_BOARD must be defined.
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
@@ -228,7 +235,7 @@ Xtensa Port Version.
|
|||||||
|
|
||||||
*******************************************************************************/
|
*******************************************************************************/
|
||||||
|
|
||||||
#define XTENSA_PORT_VERSION 1.4.2
|
#define XTENSA_PORT_VERSION 1.7
|
||||||
#define XTENSA_PORT_VERSION_STRING "1.4.2"
|
#define XTENSA_PORT_VERSION_STRING "1.7"
|
||||||
|
|
||||||
#endif /* XTENSA_RTOS_H */
|
#endif /* XTENSA_RTOS_H */
|
||||||
|
@@ -1,41 +1,48 @@
|
|||||||
/*******************************************************************************
|
/*
|
||||||
// Copyright (c) 2003-2015 Cadence Design Systems, Inc.
|
* SPDX-FileCopyrightText: 2015-2019 Cadence Design Systems, Inc.
|
||||||
//
|
*
|
||||||
// Permission is hereby granted, free of charge, to any person obtaining
|
* SPDX-License-Identifier: MIT
|
||||||
// a copy of this software and associated documentation files (the
|
*
|
||||||
// "Software"), to deal in the Software without restriction, including
|
* SPDX-FileContributor: 2016-2022 Espressif Systems (Shanghai) CO LTD
|
||||||
// without limitation the rights to use, copy, modify, merge, publish,
|
*/
|
||||||
// distribute, sublicense, and/or sell copies of the Software, and to
|
/*
|
||||||
// permit persons to whom the Software is furnished to do so, subject to
|
* Copyright (c) 2015-2019 Cadence Design Systems, Inc.
|
||||||
// the following conditions:
|
*
|
||||||
//
|
* Permission is hereby granted, free of charge, to any person obtaining
|
||||||
// The above copyright notice and this permission notice shall be included
|
* a copy of this software and associated documentation files (the
|
||||||
// in all copies or substantial portions of the Software.
|
* "Software"), to deal in the Software without restriction, including
|
||||||
//
|
* without limitation the rights to use, copy, modify, merge, publish,
|
||||||
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
* distribute, sublicense, and/or sell copies of the Software, and to
|
||||||
// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
* permit persons to whom the Software is furnished to do so, subject to
|
||||||
// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
|
* the following conditions:
|
||||||
// IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
|
*
|
||||||
// CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
|
* The above copyright notice and this permission notice shall be included
|
||||||
// TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
|
* in all copies or substantial portions of the Software.
|
||||||
// SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
*
|
||||||
--------------------------------------------------------------------------------
|
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
||||||
|
* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
||||||
|
* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
|
||||||
|
* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
|
||||||
|
* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
|
||||||
|
* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
|
||||||
|
* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||||
|
*/
|
||||||
|
|
||||||
XTENSA INFORMATION FOR RTOS TICK TIMER AND CLOCK FREQUENCY
|
/*
|
||||||
|
* XTENSA INFORMATION FOR RTOS TICK TIMER AND CLOCK FREQUENCY
|
||||||
This header contains definitions and macros for use primarily by Xtensa
|
*
|
||||||
RTOS assembly coded source files. It includes and uses the Xtensa hardware
|
* This header contains definitions and macros for use primarily by Xtensa
|
||||||
abstraction layer (HAL) to deal with config specifics. It may also be
|
* RTOS assembly coded source files. It includes and uses the Xtensa hardware
|
||||||
included in C source files.
|
* abstraction layer (HAL) to deal with config specifics. It may also be
|
||||||
|
* included in C source files.
|
||||||
User may edit to modify timer selection and to specify clock frequency and
|
*
|
||||||
tick duration to match timer interrupt to the real-time tick duration.
|
* Edit this file to modify timer selection and to specify clock frequency and
|
||||||
|
* tick duration to match timer interrupt to the real-time tick duration.
|
||||||
If the RTOS has no timer interrupt, then there is no tick timer and the
|
*
|
||||||
clock frequency is irrelevant, so all of these macros are left undefined
|
* If the RTOS has no timer interrupt, then there is no tick timer and the
|
||||||
and the Xtensa core configuration need not have a timer.
|
* clock frequency is irrelevant, so all of these macros are left undefined
|
||||||
|
* and the Xtensa core configuration need not have a timer.
|
||||||
*******************************************************************************/
|
*/
|
||||||
|
|
||||||
#ifndef XTENSA_TIMER_H
|
#ifndef XTENSA_TIMER_H
|
||||||
#define XTENSA_TIMER_H
|
#define XTENSA_TIMER_H
|
||||||
|
@@ -1,26 +1,31 @@
|
|||||||
/*
|
/*
|
||||||
//-----------------------------------------------------------------------------
|
* SPDX-FileCopyrightText: 2015-2019 Cadence Design Systems, Inc.
|
||||||
// Copyright (c) 2003-2015 Cadence Design Systems, Inc.
|
*
|
||||||
//
|
* SPDX-License-Identifier: MIT
|
||||||
// Permission is hereby granted, free of charge, to any person obtaining
|
*
|
||||||
// a copy of this software and associated documentation files (the
|
* SPDX-FileContributor: 2016-2022 Espressif Systems (Shanghai) CO LTD
|
||||||
// "Software"), to deal in the Software without restriction, including
|
*/
|
||||||
// without limitation the rights to use, copy, modify, merge, publish,
|
/*
|
||||||
// distribute, sublicense, and/or sell copies of the Software, and to
|
* Copyright (c) 2015-2019 Cadence Design Systems, Inc.
|
||||||
// permit persons to whom the Software is furnished to do so, subject to
|
*
|
||||||
// the following conditions:
|
* Permission is hereby granted, free of charge, to any person obtaining
|
||||||
//
|
* a copy of this software and associated documentation files (the
|
||||||
// The above copyright notice and this permission notice shall be included
|
* "Software"), to deal in the Software without restriction, including
|
||||||
// in all copies or substantial portions of the Software.
|
* without limitation the rights to use, copy, modify, merge, publish,
|
||||||
//
|
* distribute, sublicense, and/or sell copies of the Software, and to
|
||||||
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
* permit persons to whom the Software is furnished to do so, subject to
|
||||||
// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
* the following conditions:
|
||||||
// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
|
*
|
||||||
// IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
|
* The above copyright notice and this permission notice shall be included
|
||||||
// CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
|
* in all copies or substantial portions of the Software.
|
||||||
// TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
|
*
|
||||||
// SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
||||||
//-----------------------------------------------------------------------------
|
* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
||||||
|
* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
|
||||||
|
* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
|
||||||
|
* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
|
||||||
|
* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
|
||||||
|
* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include "xtensa_rtos.h"
|
#include "xtensa_rtos.h"
|
||||||
@@ -37,12 +42,10 @@
|
|||||||
* parameter "configISR_STACK_SIZE" in FreeRTOSConfig.h
|
* parameter "configISR_STACK_SIZE" in FreeRTOSConfig.h
|
||||||
*******************************************************************************
|
*******************************************************************************
|
||||||
*/
|
*/
|
||||||
|
|
||||||
.data
|
.data
|
||||||
.align 16
|
.align 16
|
||||||
.global port_IntStack
|
.global port_IntStack
|
||||||
.global port_IntStackTop
|
.global port_switch_flag //Required by sysview_tracing build
|
||||||
.global port_switch_flag
|
|
||||||
port_IntStack:
|
port_IntStack:
|
||||||
.space configISR_STACK_SIZE*portNUM_PROCESSORS /* This allocates stacks for each individual CPU. */
|
.space configISR_STACK_SIZE*portNUM_PROCESSORS /* This allocates stacks for each individual CPU. */
|
||||||
port_IntStackTop:
|
port_IntStackTop:
|
||||||
@@ -72,17 +75,11 @@ _frxt_setup_switch:
|
|||||||
getcoreid a3
|
getcoreid a3
|
||||||
movi a2, port_switch_flag
|
movi a2, port_switch_flag
|
||||||
addx4 a2, a3, a2
|
addx4 a2, a3, a2
|
||||||
|
|
||||||
movi a3, 1
|
movi a3, 1
|
||||||
s32i a3, a2, 0
|
s32i a3, a2, 0
|
||||||
|
|
||||||
RET(16)
|
RET(16)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
*******************************************************************************
|
*******************************************************************************
|
||||||
* _frxt_int_enter
|
* _frxt_int_enter
|
||||||
|
@@ -1,7 +1,7 @@
|
|||||||
FreeRTOS Port for Xtensa Configurable and Diamond Processors
|
FreeRTOS Port for Xtensa Configurable and Diamond Processors
|
||||||
============================================================
|
============================================================
|
||||||
|
|
||||||
FreeRTOS Version 8.2.0
|
FreeRTOS Kernel Version 10.0.0
|
||||||
|
|
||||||
|
|
||||||
Introduction
|
Introduction
|
||||||
@@ -11,7 +11,7 @@ This document describes the Xtensa port for FreeRTOS multitasking RTOS.
|
|||||||
For an introduction to FreeRTOS itself, please refer to FreeRTOS
|
For an introduction to FreeRTOS itself, please refer to FreeRTOS
|
||||||
documentation.
|
documentation.
|
||||||
|
|
||||||
This port currently works with version 8.2.0.
|
This port currently works with FreeRTOS kernel version 10.0.0.
|
||||||
|
|
||||||
|
|
||||||
Xtensa Configuration Requirements and Restrictions
|
Xtensa Configuration Requirements and Restrictions
|
||||||
@@ -28,12 +28,13 @@ xtensa-linux tools provided you have the correct overlay for your Xtensa
|
|||||||
configuration. However, this has not been tested and is currently not
|
configuration. However, this has not been tested and is currently not
|
||||||
supported by Cadence.
|
supported by Cadence.
|
||||||
|
|
||||||
This port includes optional reentrancy support for the 'newlib' C runtime
|
This port includes optional reentrancy support for the 'newlib' and
|
||||||
library that is distributed with Xtensa Tools, providing thread-safety on
|
'xclib' C runtime libraries distributed with Xtensa Tools, providing
|
||||||
a per task basis (for use in tasks only, not interrupt handlers).
|
thread-safety on a per task basis (for use in tasks only, not interrupt
|
||||||
|
handlers).
|
||||||
|
|
||||||
NOTE: At this time only the 'newlib' C library is supported for thread
|
NOTE: At this time only 'newlib' and 'xclib' C libraries are supported
|
||||||
safety. The 'xclib' and 'uclibc' libraries are not reentrant and do not
|
for thread safety. The 'uclibc' library is not reentrant and does not
|
||||||
provide thread safety at this time. However, if you are not concerned
|
provide thread safety at this time. However, if you are not concerned
|
||||||
with reentrancy then you can use any of these libraries.
|
with reentrancy then you can use any of these libraries.
|
||||||
|
|
||||||
@@ -65,10 +66,17 @@ and drivers for any on-board devices you want to use.
|
|||||||
Installation
|
Installation
|
||||||
------------
|
------------
|
||||||
|
|
||||||
This port is downloaded in a ZIP file from FreeRTOS Web site. You will
|
The Xtensa port of FreeRTOS is available at this location:
|
||||||
also need to obtain the common FreeRTOS source package from FreeRTOS's
|
|
||||||
website in order to build the OS and applications. The Xtensa port files
|
https://github.com/foss-xtensa/amazon-freertos
|
||||||
are not currently included in the common package.
|
|
||||||
|
This download includes the core FreeRTOS source and include files needed
|
||||||
|
to build the port. You can also download the official release of FreeRTOS
|
||||||
|
version 1.0.0 or later from this location:
|
||||||
|
|
||||||
|
https://github.com/aws/amazon-freertos
|
||||||
|
|
||||||
|
The Xtensa port files are currently not included in the official package.
|
||||||
|
|
||||||
All source is provided along with a Makefile that works for any host
|
All source is provided along with a Makefile that works for any host
|
||||||
platform supported by Xtensa Tools (Windows, Linux). These instructions
|
platform supported by Xtensa Tools (Windows, Linux). These instructions
|
||||||
@@ -78,26 +86,24 @@ to other host platforms.
|
|||||||
First install the FreeRTOS common package in a directory of your choosing.
|
First install the FreeRTOS common package in a directory of your choosing.
|
||||||
The structure of that package will look like this:
|
The structure of that package will look like this:
|
||||||
|
|
||||||
FreeRTOS
|
<install directory>
|
||||||
|-- Demo
|
|-- demos
|
||||||
|
| `-- cadence
|
||||||
|
| `-- sim
|
||||||
|
| |-- common
|
||||||
|
| | |-- application_code
|
||||||
|
| | | `-- cadence_code
|
||||||
|
| | `-- config_files
|
||||||
|
| `-- xplorer
|
||||||
|
`-- lib
|
||||||
|
|-- FreeRTOS
|
||||||
|
| `-- portable
|
||||||
| |-- Common
|
| |-- Common
|
||||||
| | |-- Minimal
|
| |-- MemMang
|
||||||
| | `-- include
|
| `-- XCC
|
||||||
| |
|
| `-- Xtensa
|
||||||
| |-- Xtensa_XCC
|
`-- include
|
||||||
| `-- ParTest
|
`-- private
|
||||||
|
|
|
||||||
`-- Source
|
|
||||||
|-- include
|
|
||||||
`-- portable
|
|
||||||
|-- MemMang
|
|
||||||
`-- XCC
|
|
||||||
`-- Xtensa
|
|
||||||
|
|
||||||
Since the Xtensa specific files are currently unavailable in the common
|
|
||||||
package, then you will need the separate zip file containing the Xtensa port
|
|
||||||
files. Extract from that zip file the Source/portable/XCC and Demo/Xtensa_XCC
|
|
||||||
folders and place them in the appropriate location under the common tree.
|
|
||||||
|
|
||||||
The Xtensa Tools are available from Cadence as part of a processor
|
The Xtensa Tools are available from Cadence as part of a processor
|
||||||
license. Be sure you have installed the Xtensa Tools and your processor
|
license. Be sure you have installed the Xtensa Tools and your processor
|
||||||
@@ -107,10 +113,11 @@ configuration.
|
|||||||
Building FreeRTOS for Xtensa
|
Building FreeRTOS for Xtensa
|
||||||
----------------------------
|
----------------------------
|
||||||
|
|
||||||
The Makefiles are provided for your convenience and you do not need to
|
To build the FreeRTOS library and the example programs, go into the
|
||||||
use them. Essentially you need to compile all the FreeRTOS common files,
|
directory 'demos/cadence/sim' and use the makefile in that directory.
|
||||||
the port files, and your application, and link them all. However all the
|
"make all" will build all the examples. There is another makefile in
|
||||||
build instructions in this note use the Makefiles.
|
the 'lib/FreeRTOS/portable/XCC/Xtensa' directory that builds just the
|
||||||
|
FreeRTOS library.
|
||||||
|
|
||||||
By default, you will build for the Xtensa instruction set simulator. If
|
By default, you will build for the Xtensa instruction set simulator. If
|
||||||
you have a supported emulation board, you can build to run on that. You
|
you have a supported emulation board, you can build to run on that. You
|
||||||
@@ -120,19 +127,21 @@ recommends doing functional development on the simulator because it
|
|||||||
is easier to debug with, then move to a board if/when you need to test
|
is easier to debug with, then move to a board if/when you need to test
|
||||||
hardware drivers or real-time performance.
|
hardware drivers or real-time performance.
|
||||||
|
|
||||||
The provided Makefile simplifies building FreeRTOS and the example
|
The provided makefile simplifies building FreeRTOS and the example
|
||||||
for your Xtensa configuration and platform (ISS, board, etc.). There
|
for your Xtensa configuration and platform (ISS, board, etc.). There
|
||||||
are detailed instructions in the comment at the top of the Makefile.
|
are detailed instructions in the comments at the top of the makefile.
|
||||||
The test/Makefile provides similar support for building the tests,
|
|
||||||
and may be invoked directly from the top level Makefile.
|
|
||||||
|
|
||||||
The Makefiles work on any host platform and support incremental builds.
|
The makefiles work on Windows and Linux and support incremental builds.
|
||||||
The build for each Xtensa configuration and target platform is placed in
|
The build for each Xtensa configuration and target platform is placed in
|
||||||
a subdirectory so several core and platform builds can co-exist even with
|
a subdirectory so several core and platform builds can co-exist even with
|
||||||
incremental rebuilds. You may specify the root of the build area (if tou
|
incremental rebuilds. You may specify the root of the build area (if tou
|
||||||
want it to be elsewhere than under the source tree) by defining BLDROOT
|
want it to be elsewhere than under the source tree) by defining BLDROOT
|
||||||
either in the make command or your shell environment.
|
either in the make command or your shell environment.
|
||||||
|
|
||||||
|
|
||||||
|
Building the FreeRTOS Library
|
||||||
|
-----------------------------
|
||||||
|
|
||||||
First, be sure you have installed Xtensa Tools and your processor
|
First, be sure you have installed Xtensa Tools and your processor
|
||||||
configuration, and be sure that Xtensa Tools are in your search path.
|
configuration, and be sure that Xtensa Tools are in your search path.
|
||||||
You can use xt-make, which comes with the Xtensa Tools, to run the
|
You can use xt-make, which comes with the Xtensa Tools, to run the
|
||||||
@@ -140,7 +149,7 @@ makefiles.
|
|||||||
|
|
||||||
Change directories to the Xtensa port directory:
|
Change directories to the Xtensa port directory:
|
||||||
|
|
||||||
> cd FreeRTOS/Source/portable/XCC/Xtensa
|
> cd lib/FreeRTOS/portable/XCC/Xtensa
|
||||||
|
|
||||||
Now build the FreeRTOS RTOS as a library (libfreertos.a) as follows:
|
Now build the FreeRTOS RTOS as a library (libfreertos.a) as follows:
|
||||||
|
|
||||||
@@ -169,29 +178,31 @@ After the library has been built, you must link your application with this
|
|||||||
library in order to use FreeRTOS.
|
library in order to use FreeRTOS.
|
||||||
|
|
||||||
|
|
||||||
Building a FreeRTOS Application
|
Building the FreeRTOS Examples
|
||||||
-------------------------------
|
------------------------------
|
||||||
|
|
||||||
The provided FreeRTOS example is designed to run on the Xtensa instruction
|
The provided examples are designed to run on the Xtensa instruction set
|
||||||
set simulator (ISS) or a supported evaluation board programmed with your
|
simulator (ISS) or a supported evaluation board programmed with your
|
||||||
Xtensa processor configuration.
|
Xtensa processor configuration.
|
||||||
|
|
||||||
To build the example for the default platform (simulator):
|
To build the examples for the default platform (simulator):
|
||||||
|
|
||||||
> xt-make example
|
> cd demos/cadence/sim
|
||||||
|
|
||||||
|
> xt-make all
|
||||||
|
|
||||||
which is the same as
|
which is the same as
|
||||||
|
|
||||||
> xt-make example TARGET=sim
|
> xt-make all TARGET=sim
|
||||||
|
|
||||||
The boards currently supported are the Xilinx ML605 and KC705 FPGA
|
The boards currently supported are the Xilinx ML605 and KC705 FPGA
|
||||||
development boards. To target these boards, type
|
development boards. To target these boards, type
|
||||||
|
|
||||||
> xt-make example TARGET=ml605
|
> xt-make all TARGET=ml605
|
||||||
|
|
||||||
or
|
or
|
||||||
|
|
||||||
> xt-make example TARGET=kc705
|
> xt-make all TARGET=kc705
|
||||||
|
|
||||||
To build in a location other than the default, specify the new location
|
To build in a location other than the default, specify the new location
|
||||||
using the BLDROOT variable. Note that this makefile will invoke the
|
using the BLDROOT variable. Note that this makefile will invoke the
|
||||||
@@ -201,31 +212,28 @@ parameters based on what you specified.
|
|||||||
You can override the default compilation options by specifying the new
|
You can override the default compilation options by specifying the new
|
||||||
options via CFLAGS. For example:
|
options via CFLAGS. For example:
|
||||||
|
|
||||||
> xt-make example TARGET=sim CFLAGS="-O2 -Os -g"
|
> xt-make all TARGET=sim CFLAGS="-O2 -Os -g"
|
||||||
|
|
||||||
This compiles example.c and links it with the FreeRTOS library
|
This compiles the examples and links them with the FreeRTOS library
|
||||||
libfreertos.a and the appropriate linker-support package (LSP) for your
|
libfreertos.a and the appropriate linker-support package (LSP) for your
|
||||||
target platform (you can override the LSP by adding LSP=<lsp> to the
|
target platform (you can override the LSP by adding LSP=<lsp> to the
|
||||||
xt-make command line). The resulting file example.exe is an ELF binary
|
xt-make command line). The resulting ELF files can be downloaded and
|
||||||
file that can be downloaded and executed on the target.
|
executed on the target. The example binaries appear in the platform
|
||||||
|
specific subdirectory described earlier.
|
||||||
|
|
||||||
The example.exe binary appears in the platform specific subdirectory
|
To build your application with thread-safe C library support, you
|
||||||
described earlier. For the following commands, change to that directory
|
|
||||||
or prepend it as the path of example.exe.
|
|
||||||
|
|
||||||
To build your application with thread-safe C library support using
|
|
||||||
the open-source 'newlib' library provided with the Xtensa Tools, you
|
|
||||||
need to make certain modifications to the application to plug in and
|
need to make certain modifications to the application to plug in and
|
||||||
invoke the newlib reentrancy support. This allows each task to use
|
invoke the reentrancy support. This allows each task to use the library
|
||||||
the library without interference with other tasks (it is not safe for
|
without interference with other tasks (it is not safe for interrupt
|
||||||
interrupt handlers to call the C library).
|
handlers to call the C library).
|
||||||
|
|
||||||
First, you must define
|
First, you must define
|
||||||
|
|
||||||
XT_USE_THREAD_SAFE_CLIB
|
XT_USE_THREAD_SAFE_CLIB
|
||||||
|
|
||||||
to a nonzero either in FreeRTOSConfig.h or in the compiler's command
|
to a nonzero value either in xtensa_config.h or on the compiler's command
|
||||||
line.
|
line. Note that the default xtensa_config.h provided with this port does
|
||||||
|
define this to 1 if either newlib or xclib is detected.
|
||||||
|
|
||||||
Then, you must also make sure to allocate extra space on the stack for
|
Then, you must also make sure to allocate extra space on the stack for
|
||||||
each task that will use the C library reentrant functions. This extra
|
each task that will use the C library reentrant functions. This extra
|
||||||
@@ -239,13 +247,19 @@ saving the context for the C library as well as the coprocessors if any.
|
|||||||
E.g. if your task requires 2000 bytes of stack space, you must allocate
|
E.g. if your task requires 2000 bytes of stack space, you must allocate
|
||||||
(2000 + XT_STACK_EXTRA_CLIB) bytes for the stack.
|
(2000 + XT_STACK_EXTRA_CLIB) bytes for the stack.
|
||||||
|
|
||||||
To build the example with thread-safe C library support:
|
|
||||||
|
|
||||||
> xt-make CFLAGS="-O0 -DXT_USE_THREAD_SAFE_CLIB" example
|
IMPORTANT NOTE
|
||||||
|
--------------
|
||||||
|
|
||||||
The "-O0" is necessary because you are overriding the default COPT=-O0.
|
The header file FreeRTOS.h, which is a part of the core FreeRTOS sources,
|
||||||
You can specify any optimization level you require (if none, the compiler
|
includes <reent.h> if thread safety for the C libraries is enabled. For
|
||||||
defaults to -O2).
|
xclib, this file exists in <sys/reent.h> and so is reported as missing.
|
||||||
|
To work around this, the makefiles supplied with this port will copy the
|
||||||
|
reent.h header into the build directory during the build process. If you
|
||||||
|
use a different build process, then you must make sure to copy this file
|
||||||
|
to a location that is included in the list of include paths. This can be
|
||||||
|
the build directory or the directory that contains the Xtensa port source
|
||||||
|
files.
|
||||||
|
|
||||||
|
|
||||||
Running or Debugging an Application
|
Running or Debugging an Application
|
||||||
@@ -350,8 +364,8 @@ Many definitions can be provided at compile-time via the -D option
|
|||||||
without editing the source code. Here are some of the more useful ones:
|
without editing the source code. Here are some of the more useful ones:
|
||||||
|
|
||||||
XT_USE_THREAD_SAFE_CLIB Enable support for the reentrancy to provide
|
XT_USE_THREAD_SAFE_CLIB Enable support for the reentrancy to provide
|
||||||
thread-safety in the GNU newlib supplied with
|
thread-safety for the newlib and xclib libraries
|
||||||
Xtensa Tools. Default off.
|
supplied with Xtensa Tools. Default ON.
|
||||||
|
|
||||||
Note, the follwing defines are unique to the Xtensa port so have names
|
Note, the follwing defines are unique to the Xtensa port so have names
|
||||||
beginning with "XT_".
|
beginning with "XT_".
|
||||||
@@ -746,23 +760,4 @@ Overlay Support
|
|||||||
never defined when building.
|
never defined when building.
|
||||||
|
|
||||||
|
|
||||||
Note on Porting Methodology and Copyrights
|
|
||||||
------------------------------------------
|
|
||||||
|
|
||||||
This port is based on a well-tested Cadence RTOS porting layer
|
|
||||||
that abstracts out Xtensa-generic aspects from the RTOS specifics
|
|
||||||
in the same way most RTOSes abstract out their generic code from the
|
|
||||||
architecture specific port code. This code is common to several RTOSes
|
|
||||||
ported by Cadence, and deals with highly Xtensa specific aspects such
|
|
||||||
as context save/restore, interrupt and exception dispatch, and handling
|
|
||||||
of co-processor, alloc and window over/underflow exceptions.
|
|
||||||
|
|
||||||
The porting layer files are prefixed "xtensa_" and belong to Cadence
|
|
||||||
(they are provided freely as part of this port but are not subject to
|
|
||||||
FreeRTOS's copyright). The rest of the port is FreeRTOS specific and
|
|
||||||
are under FreeRTOS's copyright.
|
|
||||||
|
|
||||||
The Makefiles are also provided by Cadence so have much in common with
|
|
||||||
other RTOS Makefiles provided by Cadence.
|
|
||||||
|
|
||||||
-End-
|
-End-
|
||||||
|
@@ -1,13 +1,9 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (c) 2017, Intel Corporation
|
* SPDX-FileCopyrightText: 2017, Intel Corporation
|
||||||
*
|
*
|
||||||
* SPDX-License-Identifier: Apache-2.0
|
* SPDX-License-Identifier: Apache-2.0
|
||||||
*/
|
|
||||||
|
|
||||||
/*
|
|
||||||
* SPDX-FileCopyrightText: 2015-2021 Espressif Systems (Shanghai) CO LTD
|
|
||||||
*
|
*
|
||||||
* SPDX-License-Identifier: Apache-2.0
|
* SPDX-FileContributor: 2016-2022 Espressif Systems (Shanghai) CO LTD
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/* File adapted to use on IDF FreeRTOS component, extracted
|
/* File adapted to use on IDF FreeRTOS component, extracted
|
||||||
|
@@ -1,47 +1,54 @@
|
|||||||
/*******************************************************************************
|
/*
|
||||||
Copyright (c) 2006-2015 Cadence Design Systems Inc.
|
* SPDX-FileCopyrightText: 2015-2019 Cadence Design Systems, Inc.
|
||||||
|
*
|
||||||
|
* SPDX-License-Identifier: MIT
|
||||||
|
*
|
||||||
|
* SPDX-FileContributor: 2016-2022 Espressif Systems (Shanghai) CO LTD
|
||||||
|
*/
|
||||||
|
/*
|
||||||
|
* Copyright (c) 2015-2019 Cadence Design Systems, Inc.
|
||||||
|
*
|
||||||
|
* Permission is hereby granted, free of charge, to any person obtaining
|
||||||
|
* a copy of this software and associated documentation files (the
|
||||||
|
* "Software"), to deal in the Software without restriction, including
|
||||||
|
* without limitation the rights to use, copy, modify, merge, publish,
|
||||||
|
* distribute, sublicense, and/or sell copies of the Software, and to
|
||||||
|
* permit persons to whom the Software is furnished to do so, subject to
|
||||||
|
* the following conditions:
|
||||||
|
*
|
||||||
|
* The above copyright notice and this permission notice shall be included
|
||||||
|
* in all copies or substantial portions of the Software.
|
||||||
|
*
|
||||||
|
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
||||||
|
* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
||||||
|
* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
|
||||||
|
* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
|
||||||
|
* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
|
||||||
|
* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
|
||||||
|
* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||||
|
*/
|
||||||
|
|
||||||
Permission is hereby granted, free of charge, to any person obtaining
|
/*
|
||||||
a copy of this software and associated documentation files (the
|
* XTENSA CONTEXT SAVE AND RESTORE ROUTINES
|
||||||
"Software"), to deal in the Software without restriction, including
|
*
|
||||||
without limitation the rights to use, copy, modify, merge, publish,
|
* Low-level Call0 functions for handling generic context save and restore of
|
||||||
distribute, sublicense, and/or sell copies of the Software, and to
|
* registers not specifically addressed by the interrupt vectors and handlers.
|
||||||
permit persons to whom the Software is furnished to do so, subject to
|
* Those registers (not handled by these functions) are PC, PS, A0, A1 (SP).
|
||||||
the following conditions:
|
* Except for the calls to RTOS functions, this code is generic to Xtensa.
|
||||||
|
*
|
||||||
The above copyright notice and this permission notice shall be included
|
* Note that in Call0 ABI, interrupt handlers are expected to preserve the callee-
|
||||||
in all copies or substantial portions of the Software.
|
* save regs (A12-A15), which is always the case if the handlers are coded in C.
|
||||||
|
* However A12, A13 are made available as scratch registers for interrupt dispatch
|
||||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
* code, so are presumed saved anyway, and are always restored even in Call0 ABI.
|
||||||
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
* Only A14, A15 are truly handled as callee-save regs.
|
||||||
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
|
*
|
||||||
IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
|
* Because Xtensa is a configurable architecture, this port supports all user
|
||||||
CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
|
* generated configurations (except restrictions stated in the release notes).
|
||||||
TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
|
* This is accomplished by conditional compilation using macros and functions
|
||||||
SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
* defined in the Xtensa HAL (hardware adaptation layer) for your configuration.
|
||||||
--------------------------------------------------------------------------------
|
* Only the processor state included in your configuration is saved and restored,
|
||||||
|
* including any processor state added by user configuration options or TIE.
|
||||||
XTENSA CONTEXT SAVE AND RESTORE ROUTINES
|
*/
|
||||||
|
|
||||||
Low-level Call0 functions for handling generic context save and restore of
|
|
||||||
registers not specifically addressed by the interrupt vectors and handlers.
|
|
||||||
Those registers (not handled by these functions) are PC, PS, A0, A1 (SP).
|
|
||||||
Except for the calls to RTOS functions, this code is generic to Xtensa.
|
|
||||||
|
|
||||||
Note that in Call0 ABI, interrupt handlers are expected to preserve the callee-
|
|
||||||
save regs (A12-A15), which is always the case if the handlers are coded in C.
|
|
||||||
However A12, A13 are made available as scratch registers for interrupt dispatch
|
|
||||||
code, so are presumed saved anyway, and are always restored even in Call0 ABI.
|
|
||||||
Only A14, A15 are truly handled as callee-save regs.
|
|
||||||
|
|
||||||
Because Xtensa is a configurable architecture, this port supports all user
|
|
||||||
generated configurations (except restrictions stated in the release notes).
|
|
||||||
This is accomplished by conditional compilation using macros and functions
|
|
||||||
defined in the Xtensa HAL (hardware adaptation layer) for your configuration.
|
|
||||||
Only the processor state included in your configuration is saved and restored,
|
|
||||||
including any processor state added by user configuration options or TIE.
|
|
||||||
|
|
||||||
*******************************************************************************/
|
|
||||||
|
|
||||||
/* Warn nicely if this file gets named with a lowercase .s instead of .S: */
|
/* Warn nicely if this file gets named with a lowercase .s instead of .S: */
|
||||||
#define NOERROR #
|
#define NOERROR #
|
||||||
@@ -98,6 +105,7 @@ Exit conditions:
|
|||||||
.align 4
|
.align 4
|
||||||
|
|
||||||
_xt_context_save:
|
_xt_context_save:
|
||||||
|
|
||||||
s32i a2, sp, XT_STK_A2
|
s32i a2, sp, XT_STK_A2
|
||||||
s32i a3, sp, XT_STK_A3
|
s32i a3, sp, XT_STK_A3
|
||||||
s32i a4, sp, XT_STK_A4
|
s32i a4, sp, XT_STK_A4
|
||||||
|
@@ -1,32 +1,39 @@
|
|||||||
/*******************************************************************************
|
/*
|
||||||
// Copyright (c) 2003-2015 Cadence Design Systems, Inc.
|
* SPDX-FileCopyrightText: 2015-2019 Cadence Design Systems, Inc.
|
||||||
//
|
*
|
||||||
// Permission is hereby granted, free of charge, to any person obtaining
|
* SPDX-License-Identifier: MIT
|
||||||
// a copy of this software and associated documentation files (the
|
*
|
||||||
// "Software"), to deal in the Software without restriction, including
|
* SPDX-FileContributor: 2016-2022 Espressif Systems (Shanghai) CO LTD
|
||||||
// without limitation the rights to use, copy, modify, merge, publish,
|
*/
|
||||||
// distribute, sublicense, and/or sell copies of the Software, and to
|
/*
|
||||||
// permit persons to whom the Software is furnished to do so, subject to
|
* Copyright (c) 2015-2019 Cadence Design Systems, Inc.
|
||||||
// the following conditions:
|
*
|
||||||
//
|
* Permission is hereby granted, free of charge, to any person obtaining
|
||||||
// The above copyright notice and this permission notice shall be included
|
* a copy of this software and associated documentation files (the
|
||||||
// in all copies or substantial portions of the Software.
|
* "Software"), to deal in the Software without restriction, including
|
||||||
//
|
* without limitation the rights to use, copy, modify, merge, publish,
|
||||||
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
* distribute, sublicense, and/or sell copies of the Software, and to
|
||||||
// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
* permit persons to whom the Software is furnished to do so, subject to
|
||||||
// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
|
* the following conditions:
|
||||||
// IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
|
*
|
||||||
// CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
|
* The above copyright notice and this permission notice shall be included
|
||||||
// TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
|
* in all copies or substantial portions of the Software.
|
||||||
// SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
*
|
||||||
--------------------------------------------------------------------------------
|
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
||||||
|
* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
||||||
|
* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
|
||||||
|
* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
|
||||||
|
* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
|
||||||
|
* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
|
||||||
|
* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||||
|
*/
|
||||||
|
|
||||||
XTENSA INITIALIZATION ROUTINES CODED IN C
|
/*
|
||||||
|
* XTENSA INITIALIZATION ROUTINES CODED IN C
|
||||||
This file contains miscellaneous Xtensa RTOS-generic initialization functions
|
*
|
||||||
that are implemented in C.
|
* This file contains miscellaneous Xtensa RTOS-generic initialization functions
|
||||||
|
* that are implemented in C.
|
||||||
*******************************************************************************/
|
*/
|
||||||
|
|
||||||
|
|
||||||
#ifdef XT_BOARD
|
#ifdef XT_BOARD
|
||||||
|
@@ -1,17 +1,7 @@
|
|||||||
/*
|
/*
|
||||||
Copyright 2019 Espressif Systems (Shanghai) PTE LTD
|
* SPDX-FileCopyrightText: 2015-2022 Espressif Systems (Shanghai) CO LTD
|
||||||
|
*
|
||||||
Licensed under the Apache License, Version 2.0 (the "License");
|
* SPDX-License-Identifier: Apache-2.0
|
||||||
you may not use this file except in compliance with the License.
|
|
||||||
You may obtain a copy of the License at
|
|
||||||
|
|
||||||
http://www.apache.org/licenses/LICENSE-2.0
|
|
||||||
|
|
||||||
Unless required by applicable law or agreed to in writing, software
|
|
||||||
distributed under the License is distributed on an "AS IS" BASIS,
|
|
||||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
See the License for the specific language governing permissions and
|
|
||||||
limitations under the License.
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
@@ -1,26 +1,36 @@
|
|||||||
// xtensa_overlay_os_hook.c -- Overlay manager OS hooks for FreeRTOS.
|
/*
|
||||||
|
* SPDX-FileCopyrightText: 2015-2019 Cadence Design Systems, Inc.
|
||||||
// Copyright (c) 2015-2015 Cadence Design Systems Inc.
|
*
|
||||||
//
|
* SPDX-License-Identifier: MIT
|
||||||
// Permission is hereby granted, free of charge, to any person obtaining
|
*
|
||||||
// a copy of this software and associated documentation files (the
|
* SPDX-FileContributor: 2016-2022 Espressif Systems (Shanghai) CO LTD
|
||||||
// "Software"), to deal in the Software without restriction, including
|
*/
|
||||||
// without limitation the rights to use, copy, modify, merge, publish,
|
/*
|
||||||
// distribute, sublicense, and/or sell copies of the Software, and to
|
* Copyright (c) 2015-2019 Cadence Design Systems, Inc.
|
||||||
// permit persons to whom the Software is furnished to do so, subject to
|
*
|
||||||
// the following conditions:
|
* Permission is hereby granted, free of charge, to any person obtaining
|
||||||
//
|
* a copy of this software and associated documentation files (the
|
||||||
// The above copyright notice and this permission notice shall be included
|
* "Software"), to deal in the Software without restriction, including
|
||||||
// in all copies or substantial portions of the Software.
|
* without limitation the rights to use, copy, modify, merge, publish,
|
||||||
//
|
* distribute, sublicense, and/or sell copies of the Software, and to
|
||||||
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
* permit persons to whom the Software is furnished to do so, subject to
|
||||||
// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
* the following conditions:
|
||||||
// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
|
*
|
||||||
// IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
|
* The above copyright notice and this permission notice shall be included
|
||||||
// CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
|
* in all copies or substantial portions of the Software.
|
||||||
// TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
|
*
|
||||||
// SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
||||||
|
* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
||||||
|
* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
|
||||||
|
* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
|
||||||
|
* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
|
||||||
|
* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
|
||||||
|
* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||||
|
*/
|
||||||
|
|
||||||
|
/*
|
||||||
|
* xtensa_overlay_os_hook.c -- Overlay manager OS hooks for FreeRTOS.
|
||||||
|
*/
|
||||||
|
|
||||||
#include "FreeRTOS.h"
|
#include "FreeRTOS.h"
|
||||||
#include "semphr.h"
|
#include "semphr.h"
|
||||||
|
@@ -1,16 +1,8 @@
|
|||||||
// Copyright 2015-2017 Espressif Systems (Shanghai) PTE LTD
|
/*
|
||||||
//
|
* SPDX-FileCopyrightText: 2015-2022 Espressif Systems (Shanghai) CO LTD
|
||||||
// Licensed under the Apache License, Version 2.0 (the "License");
|
*
|
||||||
// you may not use this file except in compliance with the License.
|
* SPDX-License-Identifier: Apache-2.0
|
||||||
// You may obtain a copy of the License at
|
*/
|
||||||
|
|
||||||
// http://www.apache.org/licenses/LICENSE-2.0
|
|
||||||
//
|
|
||||||
// Unless required by applicable law or agreed to in writing, software
|
|
||||||
// distributed under the License is distributed on an "AS IS" BASIS,
|
|
||||||
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
// See the License for the specific language governing permissions and
|
|
||||||
// limitations under the License.
|
|
||||||
|
|
||||||
#include "xtensa_rtos.h"
|
#include "xtensa_rtos.h"
|
||||||
#include "esp_private/panic_reason.h"
|
#include "esp_private/panic_reason.h"
|
||||||
|
@@ -1,26 +1,34 @@
|
|||||||
/*******************************************************************************
|
/*
|
||||||
Copyright (c) 2006-2015 Cadence Design Systems Inc.
|
* SPDX-FileCopyrightText: 2015-2019 Cadence Design Systems, Inc.
|
||||||
|
*
|
||||||
Permission is hereby granted, free of charge, to any person obtaining
|
* SPDX-License-Identifier: MIT
|
||||||
a copy of this software and associated documentation files (the
|
*
|
||||||
"Software"), to deal in the Software without restriction, including
|
* SPDX-FileContributor: 2016-2022 Espressif Systems (Shanghai) CO LTD
|
||||||
without limitation the rights to use, copy, modify, merge, publish,
|
*/
|
||||||
distribute, sublicense, and/or sell copies of the Software, and to
|
/*
|
||||||
permit persons to whom the Software is furnished to do so, subject to
|
* Copyright (c) 2015-2019 Cadence Design Systems, Inc.
|
||||||
the following conditions:
|
*
|
||||||
|
* Permission is hereby granted, free of charge, to any person obtaining
|
||||||
The above copyright notice and this permission notice shall be included
|
* a copy of this software and associated documentation files (the
|
||||||
in all copies or substantial portions of the Software.
|
* "Software"), to deal in the Software without restriction, including
|
||||||
|
* without limitation the rights to use, copy, modify, merge, publish,
|
||||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
* distribute, sublicense, and/or sell copies of the Software, and to
|
||||||
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
* permit persons to whom the Software is furnished to do so, subject to
|
||||||
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
|
* the following conditions:
|
||||||
IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
|
*
|
||||||
CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
|
* The above copyright notice and this permission notice shall be included
|
||||||
TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
|
* in all copies or substantial portions of the Software.
|
||||||
SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
*
|
||||||
--------------------------------------------------------------------------------
|
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
||||||
|
* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
||||||
|
* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
|
||||||
|
* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
|
||||||
|
* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
|
||||||
|
* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
|
||||||
|
* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||||
|
*/
|
||||||
|
|
||||||
|
/*
|
||||||
XTENSA VECTORS AND LOW LEVEL HANDLERS FOR AN RTOS
|
XTENSA VECTORS AND LOW LEVEL HANDLERS FOR AN RTOS
|
||||||
|
|
||||||
Xtensa low level exception and interrupt vectors and handlers for an RTOS.
|
Xtensa low level exception and interrupt vectors and handlers for an RTOS.
|
||||||
@@ -88,7 +96,7 @@ SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
|||||||
call but needs to be ensured if 'call0' is used as a jump in lieu of 'j'.
|
call but needs to be ensured if 'call0' is used as a jump in lieu of 'j'.
|
||||||
4. This use of 'call0' is independent of the C function call ABI.
|
4. This use of 'call0' is independent of the C function call ABI.
|
||||||
|
|
||||||
*******************************************************************************/
|
*/
|
||||||
|
|
||||||
#include "xtensa_rtos.h"
|
#include "xtensa_rtos.h"
|
||||||
#include "esp_private/panic_reason.h"
|
#include "esp_private/panic_reason.h"
|
||||||
@@ -192,7 +200,7 @@ SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
|||||||
|
|
||||||
NOTE: For CALL0 ABI, a12-a15 have not yet been saved.
|
NOTE: For CALL0 ABI, a12-a15 have not yet been saved.
|
||||||
|
|
||||||
NOTE: This macro will use registers a0 and a2-a7. The arguments are:
|
NOTE: This macro will use registers a0 and a2-a6. The arguments are:
|
||||||
level -- interrupt level
|
level -- interrupt level
|
||||||
mask -- interrupt bitmask for this level
|
mask -- interrupt bitmask for this level
|
||||||
--------------------------------------------------------------------------------
|
--------------------------------------------------------------------------------
|
||||||
@@ -622,6 +630,8 @@ _xt_user_exc:
|
|||||||
s32i a0, sp, XT_STK_PS
|
s32i a0, sp, XT_STK_PS
|
||||||
rsr a0, EPC_1 /* save interruptee's PC */
|
rsr a0, EPC_1 /* save interruptee's PC */
|
||||||
s32i a0, sp, XT_STK_PC
|
s32i a0, sp, XT_STK_PC
|
||||||
|
rsr a0, EXCSAVE_1 /* save interruptee's a0 */
|
||||||
|
s32i a0, sp, XT_STK_A0
|
||||||
#if XCHAL_HAVE_WINDOWED
|
#if XCHAL_HAVE_WINDOWED
|
||||||
s32e a0, sp, -16 /* for debug backtrace */
|
s32e a0, sp, -16 /* for debug backtrace */
|
||||||
#endif
|
#endif
|
||||||
@@ -635,10 +645,6 @@ _xt_user_exc:
|
|||||||
rsr a0, EXCVADDR
|
rsr a0, EXCVADDR
|
||||||
s32i a0, sp, XT_STK_EXCVADDR
|
s32i a0, sp, XT_STK_EXCVADDR
|
||||||
|
|
||||||
/* _xt_context_save seems to save the current a0, but we need the interuptees a0. Fix this. */
|
|
||||||
rsr a0, EXCSAVE_1 /* save interruptee's a0 */
|
|
||||||
s32i a0, sp, XT_STK_A0
|
|
||||||
|
|
||||||
/* Set up PS for C, reenable debug and NMI interrupts, and clear EXCM. */
|
/* Set up PS for C, reenable debug and NMI interrupts, and clear EXCM. */
|
||||||
#ifdef __XTENSA_CALL0_ABI__
|
#ifdef __XTENSA_CALL0_ABI__
|
||||||
movi a0, PS_INTLEVEL(XCHAL_DEBUGLEVEL - 2) | PS_UM
|
movi a0, PS_INTLEVEL(XCHAL_DEBUGLEVEL - 2) | PS_UM
|
||||||
|
@@ -1,3 +1,10 @@
|
|||||||
|
/*
|
||||||
|
* SPDX-FileCopyrightText: 2020 Amazon.com, Inc. or its affiliates
|
||||||
|
*
|
||||||
|
* SPDX-License-Identifier: MIT
|
||||||
|
*
|
||||||
|
* SPDX-FileContributor: 2016-2022 Espressif Systems (Shanghai) CO LTD
|
||||||
|
*/
|
||||||
/*
|
/*
|
||||||
* FreeRTOS Kernel V10.4.3
|
* FreeRTOS Kernel V10.4.3
|
||||||
* Copyright (C) 2020 Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
* Copyright (C) 2020 Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
||||||
|
@@ -1,3 +1,10 @@
|
|||||||
|
/*
|
||||||
|
* SPDX-FileCopyrightText: 2020 Amazon.com, Inc. or its affiliates
|
||||||
|
*
|
||||||
|
* SPDX-License-Identifier: MIT
|
||||||
|
*
|
||||||
|
* SPDX-FileContributor: 2016-2022 Espressif Systems (Shanghai) CO LTD
|
||||||
|
*/
|
||||||
/*
|
/*
|
||||||
* FreeRTOS Kernel V10.4.3
|
* FreeRTOS Kernel V10.4.3
|
||||||
* Copyright (C) 2020 Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
* Copyright (C) 2020 Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
||||||
|
@@ -1,3 +1,10 @@
|
|||||||
|
/*
|
||||||
|
* SPDX-FileCopyrightText: 2020 Amazon.com, Inc. or its affiliates
|
||||||
|
*
|
||||||
|
* SPDX-License-Identifier: MIT
|
||||||
|
*
|
||||||
|
* SPDX-FileContributor: 2016-2022 Espressif Systems (Shanghai) CO LTD
|
||||||
|
*/
|
||||||
/*
|
/*
|
||||||
* FreeRTOS Kernel V10.4.3
|
* FreeRTOS Kernel V10.4.3
|
||||||
* Copyright (C) 2020 Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
* Copyright (C) 2020 Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
||||||
|
@@ -1,3 +1,10 @@
|
|||||||
|
/*
|
||||||
|
* SPDX-FileCopyrightText: 2020 Amazon.com, Inc. or its affiliates
|
||||||
|
*
|
||||||
|
* SPDX-License-Identifier: MIT
|
||||||
|
*
|
||||||
|
* SPDX-FileContributor: 2016-2022 Espressif Systems (Shanghai) CO LTD
|
||||||
|
*/
|
||||||
/*
|
/*
|
||||||
* FreeRTOS Kernel V10.4.3
|
* FreeRTOS Kernel V10.4.3
|
||||||
* Copyright (C) 2020 Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
* Copyright (C) 2020 Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
||||||
|
@@ -1,70 +1,7 @@
|
|||||||
/*
|
/*
|
||||||
FreeRTOS V10 - Copyright (C) 2021 Real Time Engineers Ltd.
|
* SPDX-FileCopyrightText: 2015-2022 Espressif Systems (Shanghai) CO LTD
|
||||||
All rights reserved
|
*
|
||||||
|
* SPDX-License-Identifier: Apache-2.0
|
||||||
VISIT http://www.FreeRTOS.org TO ENSURE YOU ARE USING THE LATEST VERSION.
|
|
||||||
|
|
||||||
This file is part of the FreeRTOS distribution.
|
|
||||||
|
|
||||||
FreeRTOS is free software; you can redistribute it and/or modify it under
|
|
||||||
the terms of the GNU General Public License (version 2) as published by the
|
|
||||||
Free Software Foundation >>!AND MODIFIED BY!<< the FreeRTOS exception.
|
|
||||||
|
|
||||||
***************************************************************************
|
|
||||||
>>! NOTE: The modification to the GPL is included to allow you to !<<
|
|
||||||
>>! distribute a combined work that includes FreeRTOS without being !<<
|
|
||||||
>>! obliged to provide the source code for proprietary components !<<
|
|
||||||
>>! outside of the FreeRTOS kernel. !<<
|
|
||||||
***************************************************************************
|
|
||||||
|
|
||||||
FreeRTOS is distributed in the hope that it will be useful, but WITHOUT ANY
|
|
||||||
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
|
|
||||||
FOR A PARTICULAR PURPOSE. Full license text is available on the following
|
|
||||||
link: http://www.freertos.org/a00114.html
|
|
||||||
|
|
||||||
***************************************************************************
|
|
||||||
* *
|
|
||||||
* FreeRTOS provides completely free yet professionally developed, *
|
|
||||||
* robust, strictly quality controlled, supported, and cross *
|
|
||||||
* platform software that is more than just the market leader, it *
|
|
||||||
* is the industry's de facto standard. *
|
|
||||||
* *
|
|
||||||
* Help yourself get started quickly while simultaneously helping *
|
|
||||||
* to support the FreeRTOS project by purchasing a FreeRTOS *
|
|
||||||
* tutorial book, reference manual, or both: *
|
|
||||||
* http://www.FreeRTOS.org/Documentation *
|
|
||||||
* *
|
|
||||||
***************************************************************************
|
|
||||||
|
|
||||||
http://www.FreeRTOS.org/FAQHelp.html - Having a problem? Start by reading
|
|
||||||
the FAQ page "My application does not run, what could be wrong?". Have you
|
|
||||||
defined configASSERT()?
|
|
||||||
|
|
||||||
http://www.FreeRTOS.org/support - In return for receiving this top quality
|
|
||||||
embedded software for free we request you assist our global community by
|
|
||||||
participating in the support forum.
|
|
||||||
|
|
||||||
http://www.FreeRTOS.org/training - Investing in training allows your team to
|
|
||||||
be as productive as possible as early as possible. Now you can receive
|
|
||||||
FreeRTOS training directly from Richard Barry, CEO of Real Time Engineers
|
|
||||||
Ltd, and the world's leading authority on the world's leading RTOS.
|
|
||||||
|
|
||||||
http://www.FreeRTOS.org/plus - A selection of FreeRTOS ecosystem products,
|
|
||||||
including FreeRTOS+Trace - an indispensable productivity tool, a DOS
|
|
||||||
compatible FAT file system, and our tiny thread aware UDP/IP stack.
|
|
||||||
|
|
||||||
http://www.FreeRTOS.org/labs - Where new FreeRTOS products go to incubate.
|
|
||||||
Come and try FreeRTOS+TCP, our new open source TCP/IP stack for FreeRTOS.
|
|
||||||
|
|
||||||
http://www.OpenRTOS.com - Real Time Engineers ltd. license FreeRTOS to High
|
|
||||||
Integrity Systems ltd. to sell under the OpenRTOS brand. Low cost OpenRTOS
|
|
||||||
licenses offer ticketed support, indemnification and commercial middleware.
|
|
||||||
|
|
||||||
http://www.SafeRTOS.com - High Integrity Systems also provide a safety
|
|
||||||
engineered and independently SIL3 certified version for use in safety and
|
|
||||||
mission critical applications that require provable dependability.
|
|
||||||
|
|
||||||
1 tab == 4 spaces!
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifndef FREERTOS_CONFIG_H
|
#ifndef FREERTOS_CONFIG_H
|
||||||
@@ -204,7 +141,6 @@
|
|||||||
#define configGENERATE_RUN_TIME_STATS 1 /* Used by vTaskGetRunTimeStats() */
|
#define configGENERATE_RUN_TIME_STATS 1 /* Used by vTaskGetRunTimeStats() */
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#define configBENCHMARK 0
|
|
||||||
#define configUSE_16_BIT_TICKS 0
|
#define configUSE_16_BIT_TICKS 0
|
||||||
#define configIDLE_SHOULD_YIELD 0
|
#define configIDLE_SHOULD_YIELD 0
|
||||||
#define configQUEUE_REGISTRY_SIZE CONFIG_FREERTOS_QUEUE_REGISTRY_SIZE
|
#define configQUEUE_REGISTRY_SIZE CONFIG_FREERTOS_QUEUE_REGISTRY_SIZE
|
||||||
|
@@ -1,38 +1,39 @@
|
|||||||
/*******************************************************************************
|
|
||||||
Copyright (c) 2006-2015 Cadence Design Systems Inc.
|
|
||||||
|
|
||||||
Permission is hereby granted, free of charge, to any person obtaining
|
/*
|
||||||
a copy of this software and associated documentation files (the
|
* Copyright (c) 2015-2019 Cadence Design Systems, Inc.
|
||||||
"Software"), to deal in the Software without restriction, including
|
*
|
||||||
without limitation the rights to use, copy, modify, merge, publish,
|
* Permission is hereby granted, free of charge, to any person obtaining
|
||||||
distribute, sublicense, and/or sell copies of the Software, and to
|
* a copy of this software and associated documentation files (the
|
||||||
permit persons to whom the Software is furnished to do so, subject to
|
* "Software"), to deal in the Software without restriction, including
|
||||||
the following conditions:
|
* without limitation the rights to use, copy, modify, merge, publish,
|
||||||
|
* distribute, sublicense, and/or sell copies of the Software, and to
|
||||||
|
* permit persons to whom the Software is furnished to do so, subject to
|
||||||
|
* the following conditions:
|
||||||
|
*
|
||||||
|
* The above copyright notice and this permission notice shall be included
|
||||||
|
* in all copies or substantial portions of the Software.
|
||||||
|
*
|
||||||
|
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
||||||
|
* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
||||||
|
* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
|
||||||
|
* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
|
||||||
|
* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
|
||||||
|
* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
|
||||||
|
* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||||
|
*/
|
||||||
|
|
||||||
The above copyright notice and this permission notice shall be included
|
/*
|
||||||
in all copies or substantial portions of the Software.
|
* XTENSA CONTEXT FRAMES AND MACROS FOR RTOS ASSEMBLER SOURCES
|
||||||
|
*
|
||||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
* This header contains definitions and macros for use primarily by Xtensa
|
||||||
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
* RTOS assembly coded source files. It includes and uses the Xtensa hardware
|
||||||
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
|
* abstraction layer (HAL) to deal with config specifics. It may also be
|
||||||
IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
|
* included in C source files.
|
||||||
CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
|
*
|
||||||
TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
|
* !! Supports only Xtensa Exception Architecture 2 (XEA2). XEA1 not supported. !!
|
||||||
SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
*
|
||||||
--------------------------------------------------------------------------------
|
* NOTE: The Xtensa architecture requires stack pointer alignment to 16 bytes.
|
||||||
|
*/
|
||||||
XTENSA CONTEXT FRAMES AND MACROS FOR RTOS ASSEMBLER SOURCES
|
|
||||||
|
|
||||||
This header contains definitions and macros for use primarily by Xtensa
|
|
||||||
RTOS assembly coded source files. It includes and uses the Xtensa hardware
|
|
||||||
abstraction layer (HAL) to deal with config specifics. It may also be
|
|
||||||
included in C source files.
|
|
||||||
|
|
||||||
!! Supports only Xtensa Exception Architecture 2 (XEA2). XEA1 not supported. !!
|
|
||||||
|
|
||||||
NOTE: The Xtensa architecture requires stack pointer alignment to 16 bytes.
|
|
||||||
|
|
||||||
*******************************************************************************/
|
|
||||||
|
|
||||||
#ifndef XTENSA_CONTEXT_H
|
#ifndef XTENSA_CONTEXT_H
|
||||||
#define XTENSA_CONTEXT_H
|
#define XTENSA_CONTEXT_H
|
||||||
@@ -57,6 +58,10 @@ NOTE: The Xtensa architecture requires stack pointer alignment to 16 bytes.
|
|||||||
-------------------------------------------------------------------------------
|
-------------------------------------------------------------------------------
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
/*
|
||||||
|
We need to undef due to redefinition from xtruntime.h
|
||||||
|
[refactor-todo] Prevent xtruntime.h from being included in IDF
|
||||||
|
*/
|
||||||
#ifdef STRUCT_BEGIN
|
#ifdef STRUCT_BEGIN
|
||||||
#undef STRUCT_BEGIN
|
#undef STRUCT_BEGIN
|
||||||
#undef STRUCT_FIELD
|
#undef STRUCT_FIELD
|
||||||
@@ -380,7 +385,4 @@ STRUCT_END(XtSolFrame)
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
#endif /* XTENSA_CONTEXT_H */
|
#endif /* XTENSA_CONTEXT_H */
|
||||||
|
@@ -1,30 +1,31 @@
|
|||||||
/*******************************************************************************
|
|
||||||
Copyright (c) 2006-2015 Cadence Design Systems Inc.
|
|
||||||
|
|
||||||
Permission is hereby granted, free of charge, to any person obtaining
|
/*
|
||||||
a copy of this software and associated documentation files (the
|
* Copyright (c) 2015-2019 Cadence Design Systems, Inc.
|
||||||
"Software"), to deal in the Software without restriction, including
|
*
|
||||||
without limitation the rights to use, copy, modify, merge, publish,
|
* Permission is hereby granted, free of charge, to any person obtaining
|
||||||
distribute, sublicense, and/or sell copies of the Software, and to
|
* a copy of this software and associated documentation files (the
|
||||||
permit persons to whom the Software is furnished to do so, subject to
|
* "Software"), to deal in the Software without restriction, including
|
||||||
the following conditions:
|
* without limitation the rights to use, copy, modify, merge, publish,
|
||||||
|
* distribute, sublicense, and/or sell copies of the Software, and to
|
||||||
|
* permit persons to whom the Software is furnished to do so, subject to
|
||||||
|
* the following conditions:
|
||||||
|
*
|
||||||
|
* The above copyright notice and this permission notice shall be included
|
||||||
|
* in all copies or substantial portions of the Software.
|
||||||
|
*
|
||||||
|
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
||||||
|
* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
||||||
|
* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
|
||||||
|
* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
|
||||||
|
* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
|
||||||
|
* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
|
||||||
|
* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||||
|
*/
|
||||||
|
|
||||||
The above copyright notice and this permission notice shall be included
|
/*
|
||||||
in all copies or substantial portions of the Software.
|
* Xtensa-specific interrupt and exception functions for RTOS ports.
|
||||||
|
* Also see xtensa_intr_asm.S.
|
||||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
*/
|
||||||
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
|
||||||
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
|
|
||||||
IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
|
|
||||||
CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
|
|
||||||
TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
|
|
||||||
SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
|
||||||
******************************************************************************/
|
|
||||||
|
|
||||||
/******************************************************************************
|
|
||||||
Xtensa-specific interrupt and exception functions for RTOS ports.
|
|
||||||
Also see xtensa_intr_asm.S.
|
|
||||||
******************************************************************************/
|
|
||||||
|
|
||||||
#include <stdlib.h>
|
#include <stdlib.h>
|
||||||
|
|
||||||
|
@@ -1,30 +1,31 @@
|
|||||||
/*******************************************************************************
|
|
||||||
Copyright (c) 2006-2015 Cadence Design Systems Inc.
|
|
||||||
|
|
||||||
Permission is hereby granted, free of charge, to any person obtaining
|
/*
|
||||||
a copy of this software and associated documentation files (the
|
* Copyright (c) 2015-2019 Cadence Design Systems, Inc.
|
||||||
"Software"), to deal in the Software without restriction, including
|
*
|
||||||
without limitation the rights to use, copy, modify, merge, publish,
|
* Permission is hereby granted, free of charge, to any person obtaining
|
||||||
distribute, sublicense, and/or sell copies of the Software, and to
|
* a copy of this software and associated documentation files (the
|
||||||
permit persons to whom the Software is furnished to do so, subject to
|
* "Software"), to deal in the Software without restriction, including
|
||||||
the following conditions:
|
* without limitation the rights to use, copy, modify, merge, publish,
|
||||||
|
* distribute, sublicense, and/or sell copies of the Software, and to
|
||||||
|
* permit persons to whom the Software is furnished to do so, subject to
|
||||||
|
* the following conditions:
|
||||||
|
*
|
||||||
|
* The above copyright notice and this permission notice shall be included
|
||||||
|
* in all copies or substantial portions of the Software.
|
||||||
|
*
|
||||||
|
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
||||||
|
* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
||||||
|
* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
|
||||||
|
* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
|
||||||
|
* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
|
||||||
|
* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
|
||||||
|
* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||||
|
*/
|
||||||
|
|
||||||
The above copyright notice and this permission notice shall be included
|
/*
|
||||||
in all copies or substantial portions of the Software.
|
* Xtensa interrupt handling data and assembly routines.
|
||||||
|
* Also see xtensa_intr.c and xtensa_vectors.S.
|
||||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
*/
|
||||||
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
|
||||||
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
|
|
||||||
IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
|
|
||||||
CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
|
|
||||||
TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
|
|
||||||
SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
|
||||||
******************************************************************************/
|
|
||||||
|
|
||||||
/******************************************************************************
|
|
||||||
Xtensa interrupt handling data and assembly routines.
|
|
||||||
Also see xtensa_intr.c and xtensa_vectors.S.
|
|
||||||
******************************************************************************/
|
|
||||||
|
|
||||||
#include <xtensa/hal.h>
|
#include <xtensa/hal.h>
|
||||||
#include <xtensa/config/core.h>
|
#include <xtensa/config/core.h>
|
||||||
|
@@ -74,6 +74,13 @@ lwip_component:
|
|||||||
- BSD-3-Clause
|
- BSD-3-Clause
|
||||||
license_for_new_files: Apache-2.0
|
license_for_new_files: Apache-2.0
|
||||||
|
|
||||||
|
freertos_component:
|
||||||
|
include:
|
||||||
|
- 'components/freertos/**'
|
||||||
|
allowed_licenses:
|
||||||
|
- Apache-2.0 #Files added to the freertos added by us
|
||||||
|
- MIT #FreeRTOS sources and port files
|
||||||
|
|
||||||
# files matching this section do not perform the check
|
# files matching this section do not perform the check
|
||||||
# file patterns starting with ! are negated, meaning files matching them won't match the section.
|
# file patterns starting with ! are negated, meaning files matching them won't match the section.
|
||||||
ignore:
|
ignore:
|
||||||
|
@@ -868,79 +868,6 @@ components/fatfs/vfs/esp_vfs_fat.h
|
|||||||
components/fatfs/vfs/vfs_fat_internal.h
|
components/fatfs/vfs/vfs_fat_internal.h
|
||||||
components/fatfs/vfs/vfs_fat_sdmmc.c
|
components/fatfs/vfs/vfs_fat_sdmmc.c
|
||||||
components/fatfs/vfs/vfs_fat_spiflash.c
|
components/fatfs/vfs/vfs_fat_spiflash.c
|
||||||
components/freertos/FreeRTOS-Kernel/croutine.c
|
|
||||||
components/freertos/FreeRTOS-Kernel/event_groups.c
|
|
||||||
components/freertos/FreeRTOS-Kernel/include/freertos/FreeRTOS.h
|
|
||||||
components/freertos/FreeRTOS-Kernel/include/freertos/StackMacros.h
|
|
||||||
components/freertos/FreeRTOS-Kernel/include/freertos/atomic.h
|
|
||||||
components/freertos/FreeRTOS-Kernel/include/freertos/croutine.h
|
|
||||||
components/freertos/FreeRTOS-Kernel/include/freertos/deprecated_definitions.h
|
|
||||||
components/freertos/FreeRTOS-Kernel/include/freertos/event_groups.h
|
|
||||||
components/freertos/FreeRTOS-Kernel/include/freertos/list.h
|
|
||||||
components/freertos/FreeRTOS-Kernel/include/freertos/message_buffer.h
|
|
||||||
components/freertos/FreeRTOS-Kernel/include/freertos/mpu_prototypes.h
|
|
||||||
components/freertos/FreeRTOS-Kernel/include/freertos/mpu_wrappers.h
|
|
||||||
components/freertos/FreeRTOS-Kernel/include/freertos/portable.h
|
|
||||||
components/freertos/FreeRTOS-Kernel/include/freertos/projdefs.h
|
|
||||||
components/freertos/FreeRTOS-Kernel/include/freertos/queue.h
|
|
||||||
components/freertos/FreeRTOS-Kernel/include/freertos/semphr.h
|
|
||||||
components/freertos/FreeRTOS-Kernel/include/freertos/stack_macros.h
|
|
||||||
components/freertos/FreeRTOS-Kernel/include/freertos/stream_buffer.h
|
|
||||||
components/freertos/FreeRTOS-Kernel/include/freertos/task.h
|
|
||||||
components/freertos/FreeRTOS-Kernel/include/freertos/timers.h
|
|
||||||
components/freertos/FreeRTOS-Kernel/list.c
|
|
||||||
components/freertos/FreeRTOS-Kernel/portable/linux/include/freertos/FreeRTOSConfig_arch.h
|
|
||||||
components/freertos/FreeRTOS-Kernel/portable/linux/include/freertos/portmacro.h
|
|
||||||
components/freertos/FreeRTOS-Kernel/portable/riscv/include/freertos/FreeRTOSConfig_arch.h
|
|
||||||
components/freertos/FreeRTOS-Kernel/portable/riscv/include/freertos/portbenchmark.h
|
|
||||||
components/freertos/FreeRTOS-Kernel/portable/riscv/include/freertos/portmacro.h
|
|
||||||
components/freertos/FreeRTOS-Kernel/portable/riscv/port.c
|
|
||||||
components/freertos/FreeRTOS-Kernel/portable/xtensa/include/freertos/FreeRTOSConfig_arch.h
|
|
||||||
components/freertos/FreeRTOS-Kernel/portable/xtensa/include/freertos/portbenchmark.h
|
|
||||||
components/freertos/FreeRTOS-Kernel/portable/xtensa/include/freertos/portmacro.h
|
|
||||||
components/freertos/FreeRTOS-Kernel/portable/xtensa/include/freertos/portmacro_priv.h
|
|
||||||
components/freertos/FreeRTOS-Kernel/portable/xtensa/include/freertos/xtensa_api.h
|
|
||||||
components/freertos/FreeRTOS-Kernel/portable/xtensa/include/freertos/xtensa_config.h
|
|
||||||
components/freertos/FreeRTOS-Kernel/portable/xtensa/include/freertos/xtensa_context.h
|
|
||||||
components/freertos/FreeRTOS-Kernel/portable/xtensa/include/freertos/xtensa_rtos.h
|
|
||||||
components/freertos/FreeRTOS-Kernel/portable/xtensa/include/freertos/xtensa_timer.h
|
|
||||||
components/freertos/FreeRTOS-Kernel/portable/xtensa/port.c
|
|
||||||
components/freertos/FreeRTOS-Kernel/portable/xtensa/xtensa_init.c
|
|
||||||
components/freertos/FreeRTOS-Kernel/portable/xtensa/xtensa_overlay_os_hook.c
|
|
||||||
components/freertos/FreeRTOS-Kernel/queue.c
|
|
||||||
components/freertos/FreeRTOS-Kernel/stream_buffer.c
|
|
||||||
components/freertos/FreeRTOS-Kernel/tasks.c
|
|
||||||
components/freertos/FreeRTOS-Kernel/timers.c
|
|
||||||
components/freertos/FreeRTOS-openocd.c
|
|
||||||
components/freertos/esp_additions/include/freertos/FreeRTOSConfig.h
|
|
||||||
components/freertos/esp_additions/task_snapshot.c
|
|
||||||
components/freertos/test/test_context_save_clobber.c
|
|
||||||
components/freertos/test/test_float_in_isr.c
|
|
||||||
components/freertos/test/test_freertos_backported_functions.c
|
|
||||||
components/freertos/test/test_freertos_debug_functions.c
|
|
||||||
components/freertos/test/test_freertos_eventgroups.c
|
|
||||||
components/freertos/test/test_freertos_get_state.c
|
|
||||||
components/freertos/test/test_freertos_isinisrcontext.c
|
|
||||||
components/freertos/test/test_freertos_mutex.c
|
|
||||||
components/freertos/test/test_freertos_scheduling_time.c
|
|
||||||
components/freertos/test/test_freertos_task_delay_until.c
|
|
||||||
components/freertos/test/test_freertos_task_delete.c
|
|
||||||
components/freertos/test/test_freertos_task_notify.c
|
|
||||||
components/freertos/test/test_freertos_trace_utilities.c
|
|
||||||
components/freertos/test/test_isr_latency.c
|
|
||||||
components/freertos/test/test_legacy_hooks.c
|
|
||||||
components/freertos/test/test_newlib_reent.c
|
|
||||||
components/freertos/test/test_panic.c
|
|
||||||
components/freertos/test/test_preemption.c
|
|
||||||
components/freertos/test/test_queuesets.c
|
|
||||||
components/freertos/test/test_spinlocks.c
|
|
||||||
components/freertos/test/test_stream_buffers.c
|
|
||||||
components/freertos/test/test_suspend_scheduler.c
|
|
||||||
components/freertos/test/test_task_priorities.c
|
|
||||||
components/freertos/test/test_task_suspend_resume.c
|
|
||||||
components/freertos/test/test_tasks_snapshot.c
|
|
||||||
components/freertos/test/test_thread_local.c
|
|
||||||
components/freertos/test/test_xtensa_loadstore_handler.c
|
|
||||||
components/hal/aes_hal.c
|
components/hal/aes_hal.c
|
||||||
components/hal/cpu_hal.c
|
components/hal/cpu_hal.c
|
||||||
components/hal/dac_hal.c
|
components/hal/dac_hal.c
|
||||||
|
Reference in New Issue
Block a user