Infineon MOTIX™ MCU TLE987x Device Family SDK
cmsis_misra.h
Go to the documentation of this file.
1 /*
2  ***********************************************************************************************************************
3  *
4  * Copyright (c) Infineon Technologies AG
5  * All rights reserved.
6  *
7  * The applicable license agreement can be found at this pack's installation directory in the file
8  * license/IFX_SW_Licence_MOTIX_LITIX.txt
9  *
10  **********************************************************************************************************************/
22 /*******************************************************************************
23 ** Author(s) Identity **
24 ********************************************************************************
25 ** Initials Name **
26 ** ---------------------------------------------------------------------------**
27 ** DM Daniel Mysliwitz **
28 ** JO Julia Ott **
29 ** BG Blandine Guillot **
30 *******************************************************************************/
31 
32 /*******************************************************************************
33 ** Revision Control History **
34 ********************************************************************************
35 ** V0.1.0: 2018-06-13, DM: Initial version **
36 ** V0.1.1: 2019-04-18, JO: Modified CMSIS_Irq_Dis to be ARM GCC compliant **
37 ** V0.1.2: 2020-04-15, BG: Updated revision history **
38 ** V0.1.3: 2020-04-17, BG: Added inline function CMSIS_SEV() **
39 ** V0.1.4: 2020-07-21, BG: EP-439: Formatted .h/.c files **
40 ** V0.1.5: 2022-02-17, JO: EP-1040: Corrected CMSIS_Irq_Dis (for ARMCC v6) **
41 ** V0.1.6: 2022-02-28, JO: EP-936: Updated copyright and branding **
42 ** V0.1.7: 2025-01-02, JO: EP-1493: Updated license **
43 *******************************************************************************/
44 
45 #ifndef _CMSIS_MISRA_H
46 #define _CMSIS_MISRA_H
47 
48 /*******************************************************************************
49 ** Includes **
50 *******************************************************************************/
51 #include "types.h"
52 #include "core_cm3.h"
53 
54 /*******************************************************************************
55 ** Unit Test Declarations **
56 *******************************************************************************/
57 #if defined(TESTING) || defined(UNIT_TESTING_LV2)
58 
59 sint32 CMSIS_Irq_Dis(void);
60 void CMSIS_Irq_En(void);
61 void CMSIS_NOP(void);
62 void CMSIS_WFE(void);
63 void CMSIS_SEV(void);
64 
65 #else
66 
67 /*******************************************************************************
68 ** Global Function Declarations **
69 *******************************************************************************/
70 
74 INLINE void CMSIS_Irq_Dis(void);
75 
79 INLINE void CMSIS_Irq_En(void);
80 
84 INLINE void CMSIS_NOP(void);
85 
89 INLINE void CMSIS_WFE(void);
90 
94 INLINE void CMSIS_SEV(void);
95 
96 
97 /*******************************************************************************
98 ** Global Function Definitions **
99 *******************************************************************************/
100 
102 {
103  /* violation: Symbol '__disable_irq' undeclared, assumed to return int [MISRA Rule 20], [MISRA Rule 71]*/
104  /* violation: call to function '__disable_irq()' not made in the presence of a prototype [MISRA Rule 71] */
105  (void)__disable_irq();
106 }
107 
109 {
110  /* violation: Symbol '__enable_irq' undeclared, assumed to return int [MISRA Rule 20], [MISRA Rule 71]*/
111  /* violation: call to function '__enable_irq()' not made in the presence of a prototype [MISRA Rule 71] */
112  __enable_irq();
113 }
114 
115 INLINE void CMSIS_NOP(void)
116 {
117  /* violation: Symbol '__nop' undeclared, assumed to return int [MISRA Rule 20], [MISRA Rule 71]*/
118  /* violation: call to function '__nop()' not made in the presence of a prototype [MISRA Rule 71] */
119  __NOP();
120 }
121 
122 INLINE void CMSIS_WFE(void)
123 {
124  /* violation: Symbol '__wfe' undeclared, assumed to return int [MISRA Rule 20], [MISRA Rule 71]*/
125  /* violation: call to function '__wfe()' not made in the presence of a prototype [MISRA Rule 71] */
126  __WFE();
127 }
128 
129 INLINE void CMSIS_SEV(void)
130 {
131  /* violation: Symbol '__sev' undeclared, assumed to return int [MISRA Rule 20], [MISRA Rule 71]*/
132  /* violation: call to function '__sev()' not made in the presence of a prototype [MISRA Rule 71] */
133  __SEV();
134 }
135 
136 #endif
137 
138 
139 #endif /*_CMSIS_MISRA_H*/
INLINE void CMSIS_NOP(void)
Access to the CMSIS intrinsic __NOP().
Definition: cmsis_misra.h:115
INLINE void CMSIS_Irq_En(void)
Access to the CMSIS intrinsic __enable_irq().
Definition: cmsis_misra.h:108
INLINE void CMSIS_SEV(void)
Access to the CMSIS intrinsic __SEV().
Definition: cmsis_misra.h:129
INLINE void CMSIS_WFE(void)
Access to the CMSIS intrinsic __WFE().
Definition: cmsis_misra.h:122
INLINE void CMSIS_Irq_Dis(void)
Access to the CMSIS intrinsic __disable_irq().
Definition: cmsis_misra.h:101
General type declarations.
#define INLINE
Definition: types.h:132
int32_t sint32
32 bit signed value
Definition: types.h:144