1 /**************************************************************************//**
2  * @file     cmsis_xcc.h
3  * @brief    CMSIS DSP Core Peripheral Access Layer Header File
4  * @version  V1.0
5  * @date     20. January 2019
6  ******************************************************************************/
7 /*
8  * Copyright (c) 2009-2019 ARM Limited. All rights reserved.
9  *
10  * SPDX-License-Identifier: Apache-2.0
11  *
12  * Licensed under the Apache License, Version 2.0 (the License); you may
13  * not use this file except in compliance with the License.
14  * You may obtain a copy of the License at
15  *
16  * www.apache.org/licenses/LICENSE-2.0
17  *
18  * Unless required by applicable law or agreed to in writing, software
19  * distributed under the License is distributed on an AS IS BASIS, WITHOUT
20  * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
21  * See the License for the specific language governing permissions and
22  * limitations under the License.
23  */
24 
25 #ifndef __CORE_DSP_H_GENERIC
26 #define __CORE_DSP_H_GENERIC
27 
28 #include <stdint.h>
29 
30 #ifdef __cplusplus
31  extern "C" {
32 #endif
33 
34 /* IO definitions (access restrictions to peripheral registers) */
35 /**
36     \defgroup CMSIS_glob_defs CMSIS Global Defines
37 
38     <strong>IO Type Qualifiers</strong> are used
39     \li to specify the access to peripheral variables.
40     \li for automatic generation of peripheral register debug information.
41 */
42 #ifdef __cplusplus
43   #define   __I     volatile             /*!< Defines 'read only' permissions */
44 #else
45   #define   __I     volatile const       /*!< Defines 'read only' permissions */
46 #endif
47 #define     __O     volatile             /*!< Defines 'write only' permissions */
48 #define     __IO    volatile             /*!< Defines 'read / write' permissions */
49 
50 /* following defines should be used for structure members */
51 #define     __IM     volatile const      /*! Defines 'read only' structure member permissions */
52 #define     __OM     volatile            /*! Defines 'write only' structure member permissions */
53 #define     __IOM    volatile            /*! Defines 'read / write' structure member permissions */
54 
55 #define __STATIC_INLINE static inline
56 
57 #define __BKPT(value) do {} while(0)
58 #define __NOP() do {} while(0)
59 
60 #define NVIC_SetPriorityGrouping(value) do {} while(0)
61 #define NVIC_GetPriorityGrouping() do {} while(0)
62 #define NVIC_EnableIRQ(value) do {} while(0)
63 #define NVIC_GetEnableIRQ(value) do {} while(0)
64 #define NVIC_DisableIRQ(value) do {} while(0)
65 #define NVIC_GetPendingIRQ(value) do {} while(0)
66 #define NVIC_SetPendingIRQ(value) do {} while(0)
67 #define NVIC_ClearPendingIRQ(value) do {} while(0)
68 #define NVIC_GetActive(value) do {} while(0)
69 
70 #ifdef __cplusplus
71 }
72 #endif
73 
74 #endif /* __CORE_DSP_H_GENERIC */
75