]> git.sur5r.net Git - freertos/blobdiff - FreeRTOS/Source/portable/IAR/ARM_CM23/non_secure/portmacro.h
Add "is inside interrupt" function to MPU ports.
[freertos] / FreeRTOS / Source / portable / IAR / ARM_CM23 / non_secure / portmacro.h
index 8f9a88d0ba4497bec565e91307bfa3dce0ff75b6..14cb37f863b108bb047e21cb9a0c2fe60971fc67 100644 (file)
@@ -1,5 +1,5 @@
 /*\r
- * FreeRTOS Kernel V10.2.0\r
+ * FreeRTOS Kernel V10.2.1\r
  * Copyright (C) 2019 Amazon.com, Inc. or its affiliates.  All Rights Reserved.\r
  *\r
  * Permission is hereby granted, free of charge, to any person obtaining a copy of\r
@@ -103,13 +103,15 @@ typedef unsigned long                                                                             UBaseType_t;
 /**\r
  * @brief Extern declarations.\r
  */\r
+extern BaseType_t xPortIsInsideInterrupt( void );\r
+\r
 extern void vPortYield( void ) /* PRIVILEGED_FUNCTION */;\r
 \r
 extern void vPortEnterCritical( void ) /* PRIVILEGED_FUNCTION */;\r
 extern void vPortExitCritical( void ) /* PRIVILEGED_FUNCTION */;\r
 \r
-extern uint32_t ulSetInterruptMaskFromISR( void ) /* __attribute__(( naked )) PRIVILEGED_FUNCTION */;\r
-extern void vClearInterruptMaskFromISR( uint32_t ulMask ) /* __attribute__(( naked )) PRIVILEGED_FUNCTION */;\r
+extern uint32_t ulSetInterruptMask( void ) /* __attribute__(( naked )) PRIVILEGED_FUNCTION */;\r
+extern void vClearInterruptMask( uint32_t ulMask ) /* __attribute__(( naked )) PRIVILEGED_FUNCTION */;\r
 \r
 #if( configENABLE_TRUSTZONE == 1 )\r
        extern void vPortAllocateSecureContext( uint32_t ulSecureStackSize ); /* __attribute__ (( naked )) */\r
@@ -217,8 +219,8 @@ typedef struct MPU_SETTINGS
 /**\r
  * @brief Critical section management.\r
  */\r
-#define portSET_INTERRUPT_MASK_FROM_ISR()                                      ulSetInterruptMaskFromISR()\r
-#define portCLEAR_INTERRUPT_MASK_FROM_ISR(x)                           vClearInterruptMaskFromISR( x )\r
+#define portSET_INTERRUPT_MASK_FROM_ISR()                                      ulSetInterruptMask()\r
+#define portCLEAR_INTERRUPT_MASK_FROM_ISR(x)                           vClearInterruptMask( x )\r
 #define portDISABLE_INTERRUPTS()                                                       __asm volatile ( " cpsid i " ::: "memory" )\r
 #define portENABLE_INTERRUPTS()                                                                __asm volatile ( " cpsie i " ::: "memory" )\r
 #define portENTER_CRITICAL()                                                           vPortEnterCritical()\r
@@ -292,6 +294,13 @@ typedef struct MPU_SETTINGS
 #define portMEMORY_BARRIER() __asm volatile( "" ::: "memory" )\r
 /*-----------------------------------------------------------*/\r
 \r
+/* Suppress warnings that are generated by the IAR tools, but cannot be fixed in\r
+ * the source code because to do so would cause other compilers to generate\r
+ * warnings. */\r
+#pragma diag_suppress=Be006\r
+#pragma diag_suppress=Pa082\r
+/*-----------------------------------------------------------*/\r
+\r
 #ifdef __cplusplus\r
 }\r
 #endif\r