1 /**
2  * @file    gcr_regs.h
3  * @brief   Registers, Bit Masks and Bit Positions for the GCR Peripheral Module.
4  * @note    This file is @generated.
5  * @ingroup gcr_registers
6  */
7 
8 /******************************************************************************
9  *
10  * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by
11  * Analog Devices, Inc.),
12  * Copyright (C) 2023-2024 Analog Devices, Inc.
13  *
14  * Licensed under the Apache License, Version 2.0 (the "License");
15  * you may not use this file except in compliance with the License.
16  * You may obtain a copy of the License at
17  *
18  *     http://www.apache.org/licenses/LICENSE-2.0
19  *
20  * Unless required by applicable law or agreed to in writing, software
21  * distributed under the License is distributed on an "AS IS" BASIS,
22  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
23  * See the License for the specific language governing permissions and
24  * limitations under the License.
25  *
26  ******************************************************************************/
27 
28 #ifndef LIBRARIES_CMSIS_DEVICE_MAXIM_MAX32660_INCLUDE_GCR_REGS_H_
29 #define LIBRARIES_CMSIS_DEVICE_MAXIM_MAX32660_INCLUDE_GCR_REGS_H_
30 
31 /* **** Includes **** */
32 #include <stdint.h>
33 
34 #ifdef __cplusplus
35 extern "C" {
36 #endif
37 
38 #if defined (__ICCARM__)
39   #pragma system_include
40 #endif
41 
42 #if defined (__CC_ARM)
43   #pragma anon_unions
44 #endif
45 /// @cond
46 /*
47     If types are not defined elsewhere (CMSIS) define them here
48 */
49 #ifndef __IO
50 #define __IO volatile
51 #endif
52 #ifndef __I
53 #define __I  volatile const
54 #endif
55 #ifndef __O
56 #define __O  volatile
57 #endif
58 #ifndef __R
59 #define __R  volatile const
60 #endif
61 /// @endcond
62 
63 /* **** Definitions **** */
64 
65 /**
66  * @ingroup     gcr
67  * @defgroup    gcr_registers GCR_Registers
68  * @brief       Registers, Bit Masks and Bit Positions for the GCR Peripheral Module.
69  * @details     Global Control Registers.
70  */
71 
72 /**
73  * @ingroup gcr_registers
74  * Structure type to access the GCR Registers.
75  */
76 typedef struct {
77     __IO uint32_t scon;                 /**< <tt>\b 0x00:</tt> GCR SCON Register */
78     __IO uint32_t rst0;                 /**< <tt>\b 0x04:</tt> GCR RST0 Register */
79     __IO uint32_t clk_ctrl;             /**< <tt>\b 0x08:</tt> GCR CLK_CTRL Register */
80     __IO uint32_t pm;                   /**< <tt>\b 0x0C:</tt> GCR PM Register */
81     __R  uint32_t rsv_0x10_0x23[5];
82     __IO uint32_t pclk_dis0;            /**< <tt>\b 0x24:</tt> GCR PCLK_DIS0 Register */
83     __IO uint32_t mem_ctrl;             /**< <tt>\b 0x28:</tt> GCR MEM_CTRL Register */
84     __IO uint32_t mem_zctrl;            /**< <tt>\b 0x2C:</tt> GCR MEM_ZCTRL Register */
85     __R  uint32_t rsv_0x30_0x3f[4];
86     __IO uint32_t sys_stat;             /**< <tt>\b 0x40:</tt> GCR SYS_STAT Register */
87     __IO uint32_t rst1;                 /**< <tt>\b 0x44:</tt> GCR RST1 Register */
88     __IO uint32_t pclk_dis1;            /**< <tt>\b 0x48:</tt> GCR PCLK_DIS1 Register */
89     __IO uint32_t evten;                /**< <tt>\b 0x4C:</tt> GCR EVTEN Register */
90     __I  uint32_t rev;                  /**< <tt>\b 0x50:</tt> GCR REV Register */
91     __IO uint32_t sys_ie;               /**< <tt>\b 0x54:</tt> GCR SYS_IE Register */
92 } mxc_gcr_regs_t;
93 
94 /* Register offsets for module GCR */
95 /**
96  * @ingroup    gcr_registers
97  * @defgroup   GCR_Register_Offsets Register Offsets
98  * @brief      GCR Peripheral Register Offsets from the GCR Base Peripheral Address.
99  * @{
100  */
101 #define MXC_R_GCR_SCON                     ((uint32_t)0x00000000UL) /**< Offset from GCR Base Address: <tt> 0x0000</tt> */
102 #define MXC_R_GCR_RST0                     ((uint32_t)0x00000004UL) /**< Offset from GCR Base Address: <tt> 0x0004</tt> */
103 #define MXC_R_GCR_CLK_CTRL                 ((uint32_t)0x00000008UL) /**< Offset from GCR Base Address: <tt> 0x0008</tt> */
104 #define MXC_R_GCR_PM                       ((uint32_t)0x0000000CUL) /**< Offset from GCR Base Address: <tt> 0x000C</tt> */
105 #define MXC_R_GCR_PCLK_DIS0                ((uint32_t)0x00000024UL) /**< Offset from GCR Base Address: <tt> 0x0024</tt> */
106 #define MXC_R_GCR_MEM_CTRL                 ((uint32_t)0x00000028UL) /**< Offset from GCR Base Address: <tt> 0x0028</tt> */
107 #define MXC_R_GCR_MEM_ZCTRL                ((uint32_t)0x0000002CUL) /**< Offset from GCR Base Address: <tt> 0x002C</tt> */
108 #define MXC_R_GCR_SYS_STAT                 ((uint32_t)0x00000040UL) /**< Offset from GCR Base Address: <tt> 0x0040</tt> */
109 #define MXC_R_GCR_RST1                     ((uint32_t)0x00000044UL) /**< Offset from GCR Base Address: <tt> 0x0044</tt> */
110 #define MXC_R_GCR_PCLK_DIS1                ((uint32_t)0x00000048UL) /**< Offset from GCR Base Address: <tt> 0x0048</tt> */
111 #define MXC_R_GCR_EVTEN                    ((uint32_t)0x0000004CUL) /**< Offset from GCR Base Address: <tt> 0x004C</tt> */
112 #define MXC_R_GCR_REV                      ((uint32_t)0x00000050UL) /**< Offset from GCR Base Address: <tt> 0x0050</tt> */
113 #define MXC_R_GCR_SYS_IE                   ((uint32_t)0x00000054UL) /**< Offset from GCR Base Address: <tt> 0x0054</tt> */
114 /**@} end of group gcr_registers */
115 
116 /**
117  * @ingroup  gcr_registers
118  * @defgroup GCR_SCON GCR_SCON
119  * @brief    System Control.
120  * @{
121  */
122 #define MXC_F_GCR_SCON_FLASH_PAGE_FLIP_POS             4 /**< SCON_FLASH_PAGE_FLIP Position */
123 #define MXC_F_GCR_SCON_FLASH_PAGE_FLIP                 ((uint32_t)(0x1UL << MXC_F_GCR_SCON_FLASH_PAGE_FLIP_POS)) /**< SCON_FLASH_PAGE_FLIP Mask */
124 
125 #define MXC_F_GCR_SCON_FPU_DIS_POS                     5 /**< SCON_FPU_DIS Position */
126 #define MXC_F_GCR_SCON_FPU_DIS                         ((uint32_t)(0x1UL << MXC_F_GCR_SCON_FPU_DIS_POS)) /**< SCON_FPU_DIS Mask */
127 
128 #define MXC_F_GCR_SCON_ICC0_FLUSH_POS                  6 /**< SCON_ICC0_FLUSH Position */
129 #define MXC_F_GCR_SCON_ICC0_FLUSH                      ((uint32_t)(0x1UL << MXC_F_GCR_SCON_ICC0_FLUSH_POS)) /**< SCON_ICC0_FLUSH Mask */
130 
131 #define MXC_F_GCR_SCON_SWD_DIS_POS                     14 /**< SCON_SWD_DIS Position */
132 #define MXC_F_GCR_SCON_SWD_DIS                         ((uint32_t)(0x1UL << MXC_F_GCR_SCON_SWD_DIS_POS)) /**< SCON_SWD_DIS Mask */
133 
134 /**@} end of group GCR_SCON_Register */
135 
136 /**
137  * @ingroup  gcr_registers
138  * @defgroup GCR_RST0 GCR_RST0
139  * @brief    Reset.
140  * @{
141  */
142 #define MXC_F_GCR_RST0_DMA_POS                         0 /**< RST0_DMA Position */
143 #define MXC_F_GCR_RST0_DMA                             ((uint32_t)(0x1UL << MXC_F_GCR_RST0_DMA_POS)) /**< RST0_DMA Mask */
144 
145 #define MXC_F_GCR_RST0_WDT0_POS                        1 /**< RST0_WDT0 Position */
146 #define MXC_F_GCR_RST0_WDT0                            ((uint32_t)(0x1UL << MXC_F_GCR_RST0_WDT0_POS)) /**< RST0_WDT0 Mask */
147 
148 #define MXC_F_GCR_RST0_GPIO0_POS                       2 /**< RST0_GPIO0 Position */
149 #define MXC_F_GCR_RST0_GPIO0                           ((uint32_t)(0x1UL << MXC_F_GCR_RST0_GPIO0_POS)) /**< RST0_GPIO0 Mask */
150 
151 #define MXC_F_GCR_RST0_TIMER0_POS                      5 /**< RST0_TIMER0 Position */
152 #define MXC_F_GCR_RST0_TIMER0                          ((uint32_t)(0x1UL << MXC_F_GCR_RST0_TIMER0_POS)) /**< RST0_TIMER0 Mask */
153 
154 #define MXC_F_GCR_RST0_TIMER1_POS                      6 /**< RST0_TIMER1 Position */
155 #define MXC_F_GCR_RST0_TIMER1                          ((uint32_t)(0x1UL << MXC_F_GCR_RST0_TIMER1_POS)) /**< RST0_TIMER1 Mask */
156 
157 #define MXC_F_GCR_RST0_TIMER2_POS                      7 /**< RST0_TIMER2 Position */
158 #define MXC_F_GCR_RST0_TIMER2                          ((uint32_t)(0x1UL << MXC_F_GCR_RST0_TIMER2_POS)) /**< RST0_TIMER2 Mask */
159 
160 #define MXC_F_GCR_RST0_UART0_POS                       11 /**< RST0_UART0 Position */
161 #define MXC_F_GCR_RST0_UART0                           ((uint32_t)(0x1UL << MXC_F_GCR_RST0_UART0_POS)) /**< RST0_UART0 Mask */
162 
163 #define MXC_F_GCR_RST0_UART1_POS                       12 /**< RST0_UART1 Position */
164 #define MXC_F_GCR_RST0_UART1                           ((uint32_t)(0x1UL << MXC_F_GCR_RST0_UART1_POS)) /**< RST0_UART1 Mask */
165 
166 #define MXC_F_GCR_RST0_SPI0_POS                        13 /**< RST0_SPI0 Position */
167 #define MXC_F_GCR_RST0_SPI0                            ((uint32_t)(0x1UL << MXC_F_GCR_RST0_SPI0_POS)) /**< RST0_SPI0 Mask */
168 
169 #define MXC_F_GCR_RST0_SPI1_POS                        14 /**< RST0_SPI1 Position */
170 #define MXC_F_GCR_RST0_SPI1                            ((uint32_t)(0x1UL << MXC_F_GCR_RST0_SPI1_POS)) /**< RST0_SPI1 Mask */
171 
172 #define MXC_F_GCR_RST0_I2C0_POS                        16 /**< RST0_I2C0 Position */
173 #define MXC_F_GCR_RST0_I2C0                            ((uint32_t)(0x1UL << MXC_F_GCR_RST0_I2C0_POS)) /**< RST0_I2C0 Mask */
174 
175 #define MXC_F_GCR_RST0_RTC_POS                         17 /**< RST0_RTC Position */
176 #define MXC_F_GCR_RST0_RTC                             ((uint32_t)(0x1UL << MXC_F_GCR_RST0_RTC_POS)) /**< RST0_RTC Mask */
177 
178 #define MXC_F_GCR_RST0_SOFT_POS                        29 /**< RST0_SOFT Position */
179 #define MXC_F_GCR_RST0_SOFT                            ((uint32_t)(0x1UL << MXC_F_GCR_RST0_SOFT_POS)) /**< RST0_SOFT Mask */
180 
181 #define MXC_F_GCR_RST0_PERIPH_POS                      30 /**< RST0_PERIPH Position */
182 #define MXC_F_GCR_RST0_PERIPH                          ((uint32_t)(0x1UL << MXC_F_GCR_RST0_PERIPH_POS)) /**< RST0_PERIPH Mask */
183 
184 #define MXC_F_GCR_RST0_SYSTEM_POS                      31 /**< RST0_SYSTEM Position */
185 #define MXC_F_GCR_RST0_SYSTEM                          ((uint32_t)(0x1UL << MXC_F_GCR_RST0_SYSTEM_POS)) /**< RST0_SYSTEM Mask */
186 
187 /**@} end of group GCR_RST0_Register */
188 
189 /**
190  * @ingroup  gcr_registers
191  * @defgroup GCR_CLK_CTRL GCR_CLK_CTRL
192  * @brief    Clock Control.
193  * @{
194  */
195 #define MXC_F_GCR_CLK_CTRL_PSC_POS                     6 /**< CLK_CTRL_PSC Position */
196 #define MXC_F_GCR_CLK_CTRL_PSC                         ((uint32_t)(0x7UL << MXC_F_GCR_CLK_CTRL_PSC_POS)) /**< CLK_CTRL_PSC Mask */
197 #define MXC_V_GCR_CLK_CTRL_PSC_DIV1                    ((uint32_t)0x0UL) /**< CLK_CTRL_PSC_DIV1 Value */
198 #define MXC_S_GCR_CLK_CTRL_PSC_DIV1                    (MXC_V_GCR_CLK_CTRL_PSC_DIV1 << MXC_F_GCR_CLK_CTRL_PSC_POS) /**< CLK_CTRL_PSC_DIV1 Setting */
199 #define MXC_V_GCR_CLK_CTRL_PSC_DIV2                    ((uint32_t)0x1UL) /**< CLK_CTRL_PSC_DIV2 Value */
200 #define MXC_S_GCR_CLK_CTRL_PSC_DIV2                    (MXC_V_GCR_CLK_CTRL_PSC_DIV2 << MXC_F_GCR_CLK_CTRL_PSC_POS) /**< CLK_CTRL_PSC_DIV2 Setting */
201 #define MXC_V_GCR_CLK_CTRL_PSC_DIV4                    ((uint32_t)0x2UL) /**< CLK_CTRL_PSC_DIV4 Value */
202 #define MXC_S_GCR_CLK_CTRL_PSC_DIV4                    (MXC_V_GCR_CLK_CTRL_PSC_DIV4 << MXC_F_GCR_CLK_CTRL_PSC_POS) /**< CLK_CTRL_PSC_DIV4 Setting */
203 #define MXC_V_GCR_CLK_CTRL_PSC_DIV8                    ((uint32_t)0x3UL) /**< CLK_CTRL_PSC_DIV8 Value */
204 #define MXC_S_GCR_CLK_CTRL_PSC_DIV8                    (MXC_V_GCR_CLK_CTRL_PSC_DIV8 << MXC_F_GCR_CLK_CTRL_PSC_POS) /**< CLK_CTRL_PSC_DIV8 Setting */
205 #define MXC_V_GCR_CLK_CTRL_PSC_DIV16                   ((uint32_t)0x4UL) /**< CLK_CTRL_PSC_DIV16 Value */
206 #define MXC_S_GCR_CLK_CTRL_PSC_DIV16                   (MXC_V_GCR_CLK_CTRL_PSC_DIV16 << MXC_F_GCR_CLK_CTRL_PSC_POS) /**< CLK_CTRL_PSC_DIV16 Setting */
207 #define MXC_V_GCR_CLK_CTRL_PSC_DIV32                   ((uint32_t)0x5UL) /**< CLK_CTRL_PSC_DIV32 Value */
208 #define MXC_S_GCR_CLK_CTRL_PSC_DIV32                   (MXC_V_GCR_CLK_CTRL_PSC_DIV32 << MXC_F_GCR_CLK_CTRL_PSC_POS) /**< CLK_CTRL_PSC_DIV32 Setting */
209 #define MXC_V_GCR_CLK_CTRL_PSC_DIV64                   ((uint32_t)0x6UL) /**< CLK_CTRL_PSC_DIV64 Value */
210 #define MXC_S_GCR_CLK_CTRL_PSC_DIV64                   (MXC_V_GCR_CLK_CTRL_PSC_DIV64 << MXC_F_GCR_CLK_CTRL_PSC_POS) /**< CLK_CTRL_PSC_DIV64 Setting */
211 #define MXC_V_GCR_CLK_CTRL_PSC_DIV128                  ((uint32_t)0x7UL) /**< CLK_CTRL_PSC_DIV128 Value */
212 #define MXC_S_GCR_CLK_CTRL_PSC_DIV128                  (MXC_V_GCR_CLK_CTRL_PSC_DIV128 << MXC_F_GCR_CLK_CTRL_PSC_POS) /**< CLK_CTRL_PSC_DIV128 Setting */
213 
214 #define MXC_F_GCR_CLK_CTRL_CLKSEL_POS                  9 /**< CLK_CTRL_CLKSEL Position */
215 #define MXC_F_GCR_CLK_CTRL_CLKSEL                      ((uint32_t)(0x7UL << MXC_F_GCR_CLK_CTRL_CLKSEL_POS)) /**< CLK_CTRL_CLKSEL Mask */
216 #define MXC_V_GCR_CLK_CTRL_CLKSEL_HIRC                 ((uint32_t)0x0UL) /**< CLK_CTRL_CLKSEL_HIRC Value */
217 #define MXC_S_GCR_CLK_CTRL_CLKSEL_HIRC                 (MXC_V_GCR_CLK_CTRL_CLKSEL_HIRC << MXC_F_GCR_CLK_CTRL_CLKSEL_POS) /**< CLK_CTRL_CLKSEL_HIRC Setting */
218 #define MXC_V_GCR_CLK_CTRL_CLKSEL_NANORING             ((uint32_t)0x3UL) /**< CLK_CTRL_CLKSEL_NANORING Value */
219 #define MXC_S_GCR_CLK_CTRL_CLKSEL_NANORING             (MXC_V_GCR_CLK_CTRL_CLKSEL_NANORING << MXC_F_GCR_CLK_CTRL_CLKSEL_POS) /**< CLK_CTRL_CLKSEL_NANORING Setting */
220 #define MXC_V_GCR_CLK_CTRL_CLKSEL_HFXIN                ((uint32_t)0x6UL) /**< CLK_CTRL_CLKSEL_HFXIN Value */
221 #define MXC_S_GCR_CLK_CTRL_CLKSEL_HFXIN                (MXC_V_GCR_CLK_CTRL_CLKSEL_HFXIN << MXC_F_GCR_CLK_CTRL_CLKSEL_POS) /**< CLK_CTRL_CLKSEL_HFXIN Setting */
222 
223 #define MXC_F_GCR_CLK_CTRL_CLKRDY_POS                  13 /**< CLK_CTRL_CLKRDY Position */
224 #define MXC_F_GCR_CLK_CTRL_CLKRDY                      ((uint32_t)(0x1UL << MXC_F_GCR_CLK_CTRL_CLKRDY_POS)) /**< CLK_CTRL_CLKRDY Mask */
225 
226 #define MXC_F_GCR_CLK_CTRL_X32K_EN_POS                 17 /**< CLK_CTRL_X32K_EN Position */
227 #define MXC_F_GCR_CLK_CTRL_X32K_EN                     ((uint32_t)(0x1UL << MXC_F_GCR_CLK_CTRL_X32K_EN_POS)) /**< CLK_CTRL_X32K_EN Mask */
228 
229 #define MXC_F_GCR_CLK_CTRL_HIRC_EN_POS                 18 /**< CLK_CTRL_HIRC_EN Position */
230 #define MXC_F_GCR_CLK_CTRL_HIRC_EN                     ((uint32_t)(0x1UL << MXC_F_GCR_CLK_CTRL_HIRC_EN_POS)) /**< CLK_CTRL_HIRC_EN Mask */
231 
232 #define MXC_F_GCR_CLK_CTRL_X32K_RDY_POS                25 /**< CLK_CTRL_X32K_RDY Position */
233 #define MXC_F_GCR_CLK_CTRL_X32K_RDY                    ((uint32_t)(0x1UL << MXC_F_GCR_CLK_CTRL_X32K_RDY_POS)) /**< CLK_CTRL_X32K_RDY Mask */
234 
235 #define MXC_F_GCR_CLK_CTRL_HIRC_RDY_POS                26 /**< CLK_CTRL_HIRC_RDY Position */
236 #define MXC_F_GCR_CLK_CTRL_HIRC_RDY                    ((uint32_t)(0x1UL << MXC_F_GCR_CLK_CTRL_HIRC_RDY_POS)) /**< CLK_CTRL_HIRC_RDY Mask */
237 
238 #define MXC_F_GCR_CLK_CTRL_LIRC8K_RDY_POS              29 /**< CLK_CTRL_LIRC8K_RDY Position */
239 #define MXC_F_GCR_CLK_CTRL_LIRC8K_RDY                  ((uint32_t)(0x1UL << MXC_F_GCR_CLK_CTRL_LIRC8K_RDY_POS)) /**< CLK_CTRL_LIRC8K_RDY Mask */
240 
241 /**@} end of group GCR_CLK_CTRL_Register */
242 
243 /**
244  * @ingroup  gcr_registers
245  * @defgroup GCR_PM GCR_PM
246  * @brief    Power Management.
247  * @{
248  */
249 #define MXC_F_GCR_PM_MODE_POS                          0 /**< PM_MODE Position */
250 #define MXC_F_GCR_PM_MODE                              ((uint32_t)(0x7UL << MXC_F_GCR_PM_MODE_POS)) /**< PM_MODE Mask */
251 #define MXC_V_GCR_PM_MODE_ACTIVE                       ((uint32_t)0x0UL) /**< PM_MODE_ACTIVE Value */
252 #define MXC_S_GCR_PM_MODE_ACTIVE                       (MXC_V_GCR_PM_MODE_ACTIVE << MXC_F_GCR_PM_MODE_POS) /**< PM_MODE_ACTIVE Setting */
253 #define MXC_V_GCR_PM_MODE_SHUTDOWN                     ((uint32_t)0x3UL) /**< PM_MODE_SHUTDOWN Value */
254 #define MXC_S_GCR_PM_MODE_SHUTDOWN                     (MXC_V_GCR_PM_MODE_SHUTDOWN << MXC_F_GCR_PM_MODE_POS) /**< PM_MODE_SHUTDOWN Setting */
255 #define MXC_V_GCR_PM_MODE_BACKUP                       ((uint32_t)0x4UL) /**< PM_MODE_BACKUP Value */
256 #define MXC_S_GCR_PM_MODE_BACKUP                       (MXC_V_GCR_PM_MODE_BACKUP << MXC_F_GCR_PM_MODE_POS) /**< PM_MODE_BACKUP Setting */
257 
258 #define MXC_F_GCR_PM_GPIOWK_EN_POS                     4 /**< PM_GPIOWK_EN Position */
259 #define MXC_F_GCR_PM_GPIOWK_EN                         ((uint32_t)(0x1UL << MXC_F_GCR_PM_GPIOWK_EN_POS)) /**< PM_GPIOWK_EN Mask */
260 
261 #define MXC_F_GCR_PM_RTCWK_EN_POS                      5 /**< PM_RTCWK_EN Position */
262 #define MXC_F_GCR_PM_RTCWK_EN                          ((uint32_t)(0x1UL << MXC_F_GCR_PM_RTCWK_EN_POS)) /**< PM_RTCWK_EN Mask */
263 
264 #define MXC_F_GCR_PM_HFIOPD_POS                        15 /**< PM_HFIOPD Position */
265 #define MXC_F_GCR_PM_HFIOPD                            ((uint32_t)(0x1UL << MXC_F_GCR_PM_HFIOPD_POS)) /**< PM_HFIOPD Mask */
266 
267 /**@} end of group GCR_PM_Register */
268 
269 /**
270  * @ingroup  gcr_registers
271  * @defgroup GCR_PCLK_DIS0 GCR_PCLK_DIS0
272  * @brief    Peripheral Clock Disable.
273  * @{
274  */
275 #define MXC_F_GCR_PCLK_DIS0_GPIO0D_POS                 0 /**< PCLK_DIS0_GPIO0D Position */
276 #define MXC_F_GCR_PCLK_DIS0_GPIO0D                     ((uint32_t)(0x1UL << MXC_F_GCR_PCLK_DIS0_GPIO0D_POS)) /**< PCLK_DIS0_GPIO0D Mask */
277 
278 #define MXC_F_GCR_PCLK_DIS0_DMAD_POS                   5 /**< PCLK_DIS0_DMAD Position */
279 #define MXC_F_GCR_PCLK_DIS0_DMAD                       ((uint32_t)(0x1UL << MXC_F_GCR_PCLK_DIS0_DMAD_POS)) /**< PCLK_DIS0_DMAD Mask */
280 
281 #define MXC_F_GCR_PCLK_DIS0_SPI0D_POS                  6 /**< PCLK_DIS0_SPI0D Position */
282 #define MXC_F_GCR_PCLK_DIS0_SPI0D                      ((uint32_t)(0x1UL << MXC_F_GCR_PCLK_DIS0_SPI0D_POS)) /**< PCLK_DIS0_SPI0D Mask */
283 
284 #define MXC_F_GCR_PCLK_DIS0_SPI1D_POS                  7 /**< PCLK_DIS0_SPI1D Position */
285 #define MXC_F_GCR_PCLK_DIS0_SPI1D                      ((uint32_t)(0x1UL << MXC_F_GCR_PCLK_DIS0_SPI1D_POS)) /**< PCLK_DIS0_SPI1D Mask */
286 
287 #define MXC_F_GCR_PCLK_DIS0_UART0D_POS                 9 /**< PCLK_DIS0_UART0D Position */
288 #define MXC_F_GCR_PCLK_DIS0_UART0D                     ((uint32_t)(0x1UL << MXC_F_GCR_PCLK_DIS0_UART0D_POS)) /**< PCLK_DIS0_UART0D Mask */
289 
290 #define MXC_F_GCR_PCLK_DIS0_UART1D_POS                 10 /**< PCLK_DIS0_UART1D Position */
291 #define MXC_F_GCR_PCLK_DIS0_UART1D                     ((uint32_t)(0x1UL << MXC_F_GCR_PCLK_DIS0_UART1D_POS)) /**< PCLK_DIS0_UART1D Mask */
292 
293 #define MXC_F_GCR_PCLK_DIS0_I2C0D_POS                  13 /**< PCLK_DIS0_I2C0D Position */
294 #define MXC_F_GCR_PCLK_DIS0_I2C0D                      ((uint32_t)(0x1UL << MXC_F_GCR_PCLK_DIS0_I2C0D_POS)) /**< PCLK_DIS0_I2C0D Mask */
295 
296 #define MXC_F_GCR_PCLK_DIS0_TIMER0D_POS                15 /**< PCLK_DIS0_TIMER0D Position */
297 #define MXC_F_GCR_PCLK_DIS0_TIMER0D                    ((uint32_t)(0x1UL << MXC_F_GCR_PCLK_DIS0_TIMER0D_POS)) /**< PCLK_DIS0_TIMER0D Mask */
298 
299 #define MXC_F_GCR_PCLK_DIS0_TIMER1D_POS                16 /**< PCLK_DIS0_TIMER1D Position */
300 #define MXC_F_GCR_PCLK_DIS0_TIMER1D                    ((uint32_t)(0x1UL << MXC_F_GCR_PCLK_DIS0_TIMER1D_POS)) /**< PCLK_DIS0_TIMER1D Mask */
301 
302 #define MXC_F_GCR_PCLK_DIS0_TIMER2D_POS                17 /**< PCLK_DIS0_TIMER2D Position */
303 #define MXC_F_GCR_PCLK_DIS0_TIMER2D                    ((uint32_t)(0x1UL << MXC_F_GCR_PCLK_DIS0_TIMER2D_POS)) /**< PCLK_DIS0_TIMER2D Mask */
304 
305 #define MXC_F_GCR_PCLK_DIS0_I2C1D_POS                  28 /**< PCLK_DIS0_I2C1D Position */
306 #define MXC_F_GCR_PCLK_DIS0_I2C1D                      ((uint32_t)(0x1UL << MXC_F_GCR_PCLK_DIS0_I2C1D_POS)) /**< PCLK_DIS0_I2C1D Mask */
307 
308 /**@} end of group GCR_PCLK_DIS0_Register */
309 
310 /**
311  * @ingroup  gcr_registers
312  * @defgroup GCR_MEM_CTRL GCR_MEM_CTRL
313  * @brief    Memory Clock Control Register.
314  * @{
315  */
316 #define MXC_F_GCR_MEM_CTRL_FWS_POS                     0 /**< MEM_CTRL_FWS Position */
317 #define MXC_F_GCR_MEM_CTRL_FWS                         ((uint32_t)(0x7UL << MXC_F_GCR_MEM_CTRL_FWS_POS)) /**< MEM_CTRL_FWS Mask */
318 
319 #define MXC_F_GCR_MEM_CTRL_RAM0_LS_POS                 8 /**< MEM_CTRL_RAM0_LS Position */
320 #define MXC_F_GCR_MEM_CTRL_RAM0_LS                     ((uint32_t)(0x1UL << MXC_F_GCR_MEM_CTRL_RAM0_LS_POS)) /**< MEM_CTRL_RAM0_LS Mask */
321 
322 #define MXC_F_GCR_MEM_CTRL_RAM1_LS_POS                 9 /**< MEM_CTRL_RAM1_LS Position */
323 #define MXC_F_GCR_MEM_CTRL_RAM1_LS                     ((uint32_t)(0x1UL << MXC_F_GCR_MEM_CTRL_RAM1_LS_POS)) /**< MEM_CTRL_RAM1_LS Mask */
324 
325 #define MXC_F_GCR_MEM_CTRL_RAM2_LS_POS                 10 /**< MEM_CTRL_RAM2_LS Position */
326 #define MXC_F_GCR_MEM_CTRL_RAM2_LS                     ((uint32_t)(0x1UL << MXC_F_GCR_MEM_CTRL_RAM2_LS_POS)) /**< MEM_CTRL_RAM2_LS Mask */
327 
328 #define MXC_F_GCR_MEM_CTRL_RAM3_LS_POS                 11 /**< MEM_CTRL_RAM3_LS Position */
329 #define MXC_F_GCR_MEM_CTRL_RAM3_LS                     ((uint32_t)(0x1UL << MXC_F_GCR_MEM_CTRL_RAM3_LS_POS)) /**< MEM_CTRL_RAM3_LS Mask */
330 
331 #define MXC_F_GCR_MEM_CTRL_ICACHE_RET_POS              12 /**< MEM_CTRL_ICACHE_RET Position */
332 #define MXC_F_GCR_MEM_CTRL_ICACHE_RET                  ((uint32_t)(0x1UL << MXC_F_GCR_MEM_CTRL_ICACHE_RET_POS)) /**< MEM_CTRL_ICACHE_RET Mask */
333 
334 /**@} end of group GCR_MEM_CTRL_Register */
335 
336 /**
337  * @ingroup  gcr_registers
338  * @defgroup GCR_MEM_ZCTRL GCR_MEM_ZCTRL
339  * @brief    Memory Zeroize Control.
340  * @{
341  */
342 #define MXC_F_GCR_MEM_ZCTRL_SRAM_ZERO_POS              0 /**< MEM_ZCTRL_SRAM_ZERO Position */
343 #define MXC_F_GCR_MEM_ZCTRL_SRAM_ZERO                  ((uint32_t)(0x1UL << MXC_F_GCR_MEM_ZCTRL_SRAM_ZERO_POS)) /**< MEM_ZCTRL_SRAM_ZERO Mask */
344 
345 #define MXC_F_GCR_MEM_ZCTRL_ICACHE_ZERO_POS            1 /**< MEM_ZCTRL_ICACHE_ZERO Position */
346 #define MXC_F_GCR_MEM_ZCTRL_ICACHE_ZERO                ((uint32_t)(0x1UL << MXC_F_GCR_MEM_ZCTRL_ICACHE_ZERO_POS)) /**< MEM_ZCTRL_ICACHE_ZERO Mask */
347 
348 /**@} end of group GCR_MEM_ZCTRL_Register */
349 
350 /**
351  * @ingroup  gcr_registers
352  * @defgroup GCR_SYS_STAT GCR_SYS_STAT
353  * @brief    System Status Register.
354  * @{
355  */
356 #define MXC_F_GCR_SYS_STAT_ICECLOCK_POS                0 /**< SYS_STAT_ICECLOCK Position */
357 #define MXC_F_GCR_SYS_STAT_ICECLOCK                    ((uint32_t)(0x1UL << MXC_F_GCR_SYS_STAT_ICECLOCK_POS)) /**< SYS_STAT_ICECLOCK Mask */
358 
359 /**@} end of group GCR_SYS_STAT_Register */
360 
361 /**
362  * @ingroup  gcr_registers
363  * @defgroup GCR_RST1 GCR_RST1
364  * @brief    Reset 1.
365  * @{
366  */
367 #define MXC_F_GCR_RST1_I2C1_POS                        0 /**< RST1_I2C1 Position */
368 #define MXC_F_GCR_RST1_I2C1                            ((uint32_t)(0x1UL << MXC_F_GCR_RST1_I2C1_POS)) /**< RST1_I2C1 Mask */
369 
370 /**@} end of group GCR_RST1_Register */
371 
372 /**
373  * @ingroup  gcr_registers
374  * @defgroup GCR_PCLK_DIS1 GCR_PCLK_DIS1
375  * @brief    Peripheral Clock Disable.
376  * @{
377  */
378 #define MXC_F_GCR_PCLK_DIS1_FLCD_POS                   3 /**< PCLK_DIS1_FLCD Position */
379 #define MXC_F_GCR_PCLK_DIS1_FLCD                       ((uint32_t)(0x1UL << MXC_F_GCR_PCLK_DIS1_FLCD_POS)) /**< PCLK_DIS1_FLCD Mask */
380 
381 #define MXC_F_GCR_PCLK_DIS1_ICCD_POS                   11 /**< PCLK_DIS1_ICCD Position */
382 #define MXC_F_GCR_PCLK_DIS1_ICCD                       ((uint32_t)(0x1UL << MXC_F_GCR_PCLK_DIS1_ICCD_POS)) /**< PCLK_DIS1_ICCD Mask */
383 
384 /**@} end of group GCR_PCLK_DIS1_Register */
385 
386 /**
387  * @ingroup  gcr_registers
388  * @defgroup GCR_EVTEN GCR_EVTEN
389  * @brief    Event Enable Register.
390  * @{
391  */
392 #define MXC_F_GCR_EVTEN_DMAEVENT_POS                   0 /**< EVTEN_DMAEVENT Position */
393 #define MXC_F_GCR_EVTEN_DMAEVENT                       ((uint32_t)(0x1UL << MXC_F_GCR_EVTEN_DMAEVENT_POS)) /**< EVTEN_DMAEVENT Mask */
394 
395 #define MXC_F_GCR_EVTEN_RX_EVT_POS                     1 /**< EVTEN_RX_EVT Position */
396 #define MXC_F_GCR_EVTEN_RX_EVT                         ((uint32_t)(0x1UL << MXC_F_GCR_EVTEN_RX_EVT_POS)) /**< EVTEN_RX_EVT Mask */
397 
398 /**@} end of group GCR_EVTEN_Register */
399 
400 /**
401  * @ingroup  gcr_registers
402  * @defgroup GCR_REV GCR_REV
403  * @brief    Revision Register.
404  * @{
405  */
406 #define MXC_F_GCR_REV_REVISION_POS                     0 /**< REV_REVISION Position */
407 #define MXC_F_GCR_REV_REVISION                         ((uint32_t)(0xFFFFUL << MXC_F_GCR_REV_REVISION_POS)) /**< REV_REVISION Mask */
408 
409 /**@} end of group GCR_REV_Register */
410 
411 /**
412  * @ingroup  gcr_registers
413  * @defgroup GCR_SYS_IE GCR_SYS_IE
414  * @brief    System Status Interrupt Enable
415  * @{
416  */
417 #define MXC_F_GCR_SYS_IE_ICEULIE_POS                   0 /**< SYS_IE_ICEULIE Position */
418 #define MXC_F_GCR_SYS_IE_ICEULIE                       ((uint32_t)(0x1UL << MXC_F_GCR_SYS_IE_ICEULIE_POS)) /**< SYS_IE_ICEULIE Mask */
419 
420 /**@} end of group GCR_SYS_IE_Register */
421 
422 #ifdef __cplusplus
423 }
424 #endif
425 
426 #endif // LIBRARIES_CMSIS_DEVICE_MAXIM_MAX32660_INCLUDE_GCR_REGS_H_
427