1 /**
2  * @file    gpio_regs.h
3  * @brief   Registers, Bit Masks and Bit Positions for the GPIO Peripheral Module.
4  * @note    This file is @generated.
5  * @ingroup gpio_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_MAX32650_INCLUDE_GPIO_REGS_H_
29 #define LIBRARIES_CMSIS_DEVICE_MAXIM_MAX32650_INCLUDE_GPIO_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     gpio
67  * @defgroup    gpio_registers GPIO_Registers
68  * @brief       Registers, Bit Masks and Bit Positions for the GPIO Peripheral Module.
69  * @details     Individual I/O for each GPIO
70  */
71 
72 /**
73  * @ingroup gpio_registers
74  * Structure type to access the GPIO Registers.
75  */
76 typedef struct {
77     __IO uint32_t en;                   /**< <tt>\b 0x00:</tt> GPIO EN Register */
78     __IO uint32_t en_set;               /**< <tt>\b 0x04:</tt> GPIO EN_SET Register */
79     __IO uint32_t en_clr;               /**< <tt>\b 0x08:</tt> GPIO EN_CLR Register */
80     __IO uint32_t out_en;               /**< <tt>\b 0x0C:</tt> GPIO OUT_EN Register */
81     __IO uint32_t out_en_set;           /**< <tt>\b 0x10:</tt> GPIO OUT_EN_SET Register */
82     __IO uint32_t out_en_clr;           /**< <tt>\b 0x14:</tt> GPIO OUT_EN_CLR Register */
83     __IO uint32_t out;                  /**< <tt>\b 0x18:</tt> GPIO OUT Register */
84     __O  uint32_t out_set;              /**< <tt>\b 0x1C:</tt> GPIO OUT_SET Register */
85     __O  uint32_t out_clr;              /**< <tt>\b 0x20:</tt> GPIO OUT_CLR Register */
86     __I  uint32_t in;                   /**< <tt>\b 0x24:</tt> GPIO IN Register */
87     __IO uint32_t int_mode;             /**< <tt>\b 0x28:</tt> GPIO INT_MODE Register */
88     __IO uint32_t int_pol;              /**< <tt>\b 0x2C:</tt> GPIO INT_POL Register */
89     __IO uint32_t in_en;                /**< <tt>\b 0x30:</tt> GPIO IN_EN Register */
90     __IO uint32_t int_en;               /**< <tt>\b 0x34:</tt> GPIO INT_EN Register */
91     __IO uint32_t int_en_set;           /**< <tt>\b 0x38:</tt> GPIO INT_EN_SET Register */
92     __IO uint32_t int_en_clr;           /**< <tt>\b 0x3C:</tt> GPIO INT_EN_CLR Register */
93     __I  uint32_t int_stat;             /**< <tt>\b 0x40:</tt> GPIO INT_STAT Register */
94     __R  uint32_t rsv_0x44;
95     __IO uint32_t int_clr;              /**< <tt>\b 0x48:</tt> GPIO INT_CLR Register */
96     __IO uint32_t wake_en;              /**< <tt>\b 0x4C:</tt> GPIO WAKE_EN Register */
97     __IO uint32_t wake_en_set;          /**< <tt>\b 0x50:</tt> GPIO WAKE_EN_SET Register */
98     __IO uint32_t wake_en_clr;          /**< <tt>\b 0x54:</tt> GPIO WAKE_EN_CLR Register */
99     __R  uint32_t rsv_0x58;
100     __IO uint32_t int_dual_edge;        /**< <tt>\b 0x5C:</tt> GPIO INT_DUAL_EDGE Register */
101     __IO uint32_t pdpu_sel0;            /**< <tt>\b 0x60:</tt> GPIO PDPU_SEL0 Register */
102     __IO uint32_t pdpu_sel1;            /**< <tt>\b 0x64:</tt> GPIO PDPU_SEL1 Register */
103     __IO uint32_t af_sel;               /**< <tt>\b 0x68:</tt> GPIO AF_SEL Register */
104     __IO uint32_t af_sel_set;           /**< <tt>\b 0x6C:</tt> GPIO AF_SEL_SET Register */
105     __IO uint32_t af_sel_clr;           /**< <tt>\b 0x70:</tt> GPIO AF_SEL_CLR Register */
106     __R  uint32_t rsv_0x74_0xaf[15];
107     __IO uint32_t ds_sel0;              /**< <tt>\b 0xB0:</tt> GPIO DS_SEL0 Register */
108     __IO uint32_t ds_sel1;              /**< <tt>\b 0xB4:</tt> GPIO DS_SEL1 Register */
109     __IO uint32_t pssel;                /**< <tt>\b 0xB8:</tt> GPIO PSSEL Register */
110     __R  uint32_t rsv_0xbc;
111     __IO uint32_t vssel;                /**< <tt>\b 0xC0:</tt> GPIO VSSEL Register */
112 } mxc_gpio_regs_t;
113 
114 /* Register offsets for module GPIO */
115 /**
116  * @ingroup    gpio_registers
117  * @defgroup   GPIO_Register_Offsets Register Offsets
118  * @brief      GPIO Peripheral Register Offsets from the GPIO Base Peripheral Address.
119  * @{
120  */
121 #define MXC_R_GPIO_EN                      ((uint32_t)0x00000000UL) /**< Offset from GPIO Base Address: <tt> 0x0000</tt> */
122 #define MXC_R_GPIO_EN_SET                  ((uint32_t)0x00000004UL) /**< Offset from GPIO Base Address: <tt> 0x0004</tt> */
123 #define MXC_R_GPIO_EN_CLR                  ((uint32_t)0x00000008UL) /**< Offset from GPIO Base Address: <tt> 0x0008</tt> */
124 #define MXC_R_GPIO_OUT_EN                  ((uint32_t)0x0000000CUL) /**< Offset from GPIO Base Address: <tt> 0x000C</tt> */
125 #define MXC_R_GPIO_OUT_EN_SET              ((uint32_t)0x00000010UL) /**< Offset from GPIO Base Address: <tt> 0x0010</tt> */
126 #define MXC_R_GPIO_OUT_EN_CLR              ((uint32_t)0x00000014UL) /**< Offset from GPIO Base Address: <tt> 0x0014</tt> */
127 #define MXC_R_GPIO_OUT                     ((uint32_t)0x00000018UL) /**< Offset from GPIO Base Address: <tt> 0x0018</tt> */
128 #define MXC_R_GPIO_OUT_SET                 ((uint32_t)0x0000001CUL) /**< Offset from GPIO Base Address: <tt> 0x001C</tt> */
129 #define MXC_R_GPIO_OUT_CLR                 ((uint32_t)0x00000020UL) /**< Offset from GPIO Base Address: <tt> 0x0020</tt> */
130 #define MXC_R_GPIO_IN                      ((uint32_t)0x00000024UL) /**< Offset from GPIO Base Address: <tt> 0x0024</tt> */
131 #define MXC_R_GPIO_INT_MODE                ((uint32_t)0x00000028UL) /**< Offset from GPIO Base Address: <tt> 0x0028</tt> */
132 #define MXC_R_GPIO_INT_POL                 ((uint32_t)0x0000002CUL) /**< Offset from GPIO Base Address: <tt> 0x002C</tt> */
133 #define MXC_R_GPIO_IN_EN                   ((uint32_t)0x00000030UL) /**< Offset from GPIO Base Address: <tt> 0x0030</tt> */
134 #define MXC_R_GPIO_INT_EN                  ((uint32_t)0x00000034UL) /**< Offset from GPIO Base Address: <tt> 0x0034</tt> */
135 #define MXC_R_GPIO_INT_EN_SET              ((uint32_t)0x00000038UL) /**< Offset from GPIO Base Address: <tt> 0x0038</tt> */
136 #define MXC_R_GPIO_INT_EN_CLR              ((uint32_t)0x0000003CUL) /**< Offset from GPIO Base Address: <tt> 0x003C</tt> */
137 #define MXC_R_GPIO_INT_STAT                ((uint32_t)0x00000040UL) /**< Offset from GPIO Base Address: <tt> 0x0040</tt> */
138 #define MXC_R_GPIO_INT_CLR                 ((uint32_t)0x00000048UL) /**< Offset from GPIO Base Address: <tt> 0x0048</tt> */
139 #define MXC_R_GPIO_WAKE_EN                 ((uint32_t)0x0000004CUL) /**< Offset from GPIO Base Address: <tt> 0x004C</tt> */
140 #define MXC_R_GPIO_WAKE_EN_SET             ((uint32_t)0x00000050UL) /**< Offset from GPIO Base Address: <tt> 0x0050</tt> */
141 #define MXC_R_GPIO_WAKE_EN_CLR             ((uint32_t)0x00000054UL) /**< Offset from GPIO Base Address: <tt> 0x0054</tt> */
142 #define MXC_R_GPIO_INT_DUAL_EDGE           ((uint32_t)0x0000005CUL) /**< Offset from GPIO Base Address: <tt> 0x005C</tt> */
143 #define MXC_R_GPIO_PDPU_SEL0               ((uint32_t)0x00000060UL) /**< Offset from GPIO Base Address: <tt> 0x0060</tt> */
144 #define MXC_R_GPIO_PDPU_SEL1               ((uint32_t)0x00000064UL) /**< Offset from GPIO Base Address: <tt> 0x0064</tt> */
145 #define MXC_R_GPIO_AF_SEL                  ((uint32_t)0x00000068UL) /**< Offset from GPIO Base Address: <tt> 0x0068</tt> */
146 #define MXC_R_GPIO_AF_SEL_SET              ((uint32_t)0x0000006CUL) /**< Offset from GPIO Base Address: <tt> 0x006C</tt> */
147 #define MXC_R_GPIO_AF_SEL_CLR              ((uint32_t)0x00000070UL) /**< Offset from GPIO Base Address: <tt> 0x0070</tt> */
148 #define MXC_R_GPIO_DS_SEL0                 ((uint32_t)0x000000B0UL) /**< Offset from GPIO Base Address: <tt> 0x00B0</tt> */
149 #define MXC_R_GPIO_DS_SEL1                 ((uint32_t)0x000000B4UL) /**< Offset from GPIO Base Address: <tt> 0x00B4</tt> */
150 #define MXC_R_GPIO_PSSEL                   ((uint32_t)0x000000B8UL) /**< Offset from GPIO Base Address: <tt> 0x00B8</tt> */
151 #define MXC_R_GPIO_VSSEL                   ((uint32_t)0x000000C0UL) /**< Offset from GPIO Base Address: <tt> 0x00C0</tt> */
152 /**@} end of group gpio_registers */
153 
154 /**
155  * @ingroup  gpio_registers
156  * @defgroup GPIO_EN GPIO_EN
157  * @brief    GPIO Function Enable Register. Each bit controls the GPIO_EN setting for one
158  *           GPIO pin on the associated port.
159  * @{
160  */
161 #define MXC_F_GPIO_EN_GPIO_EN_POS                      0 /**< EN_GPIO_EN Position */
162 #define MXC_F_GPIO_EN_GPIO_EN                          ((uint32_t)(0xFFFFFFFFUL << MXC_F_GPIO_EN_GPIO_EN_POS)) /**< EN_GPIO_EN Mask */
163 #define MXC_V_GPIO_EN_GPIO_EN_ALTERNATE                ((uint32_t)0x0UL) /**< EN_GPIO_EN_ALTERNATE Value */
164 #define MXC_S_GPIO_EN_GPIO_EN_ALTERNATE                (MXC_V_GPIO_EN_GPIO_EN_ALTERNATE << MXC_F_GPIO_EN_GPIO_EN_POS) /**< EN_GPIO_EN_ALTERNATE Setting */
165 #define MXC_V_GPIO_EN_GPIO_EN_GPIO                     ((uint32_t)0x1UL) /**< EN_GPIO_EN_GPIO Value */
166 #define MXC_S_GPIO_EN_GPIO_EN_GPIO                     (MXC_V_GPIO_EN_GPIO_EN_GPIO << MXC_F_GPIO_EN_GPIO_EN_POS) /**< EN_GPIO_EN_GPIO Setting */
167 
168 /**@} end of group GPIO_EN_Register */
169 
170 /**
171  * @ingroup  gpio_registers
172  * @defgroup GPIO_EN_SET GPIO_EN_SET
173  * @brief    GPIO Set Function Enable Register. Writing a 1 to one or more bits in this
174  *           register sets the bits in the same positions in GPIO_EN to 1, without affecting
175  *           other bits in that register.
176  * @{
177  */
178 #define MXC_F_GPIO_EN_SET_GPIO_EN_SET_POS              0 /**< EN_SET_GPIO_EN_SET Position */
179 #define MXC_F_GPIO_EN_SET_GPIO_EN_SET                  ((uint32_t)(0xFFFFFFFFUL << MXC_F_GPIO_EN_SET_GPIO_EN_SET_POS)) /**< EN_SET_GPIO_EN_SET Mask */
180 #define MXC_V_GPIO_EN_SET_GPIO_EN_SET_NO               ((uint32_t)0x0UL) /**< EN_SET_GPIO_EN_SET_NO Value */
181 #define MXC_S_GPIO_EN_SET_GPIO_EN_SET_NO               (MXC_V_GPIO_EN_SET_GPIO_EN_SET_NO << MXC_F_GPIO_EN_SET_GPIO_EN_SET_POS) /**< EN_SET_GPIO_EN_SET_NO Setting */
182 #define MXC_V_GPIO_EN_SET_GPIO_EN_SET_SET              ((uint32_t)0x1UL) /**< EN_SET_GPIO_EN_SET_SET Value */
183 #define MXC_S_GPIO_EN_SET_GPIO_EN_SET_SET              (MXC_V_GPIO_EN_SET_GPIO_EN_SET_SET << MXC_F_GPIO_EN_SET_GPIO_EN_SET_POS) /**< EN_SET_GPIO_EN_SET_SET Setting */
184 
185 /**@} end of group GPIO_EN_SET_Register */
186 
187 /**
188  * @ingroup  gpio_registers
189  * @defgroup GPIO_EN_CLR GPIO_EN_CLR
190  * @brief    GPIO Clear Function Enable Register. Writing a 1 to one or more bits in this
191  *           register clears the bits in the same positions in GPIO_EN to 0, without
192  *           affecting other bits in that register.
193  * @{
194  */
195 #define MXC_F_GPIO_EN_CLR_GPIO_EN_CLR_POS              0 /**< EN_CLR_GPIO_EN_CLR Position */
196 #define MXC_F_GPIO_EN_CLR_GPIO_EN_CLR                  ((uint32_t)(0xFFFFFFFFUL << MXC_F_GPIO_EN_CLR_GPIO_EN_CLR_POS)) /**< EN_CLR_GPIO_EN_CLR Mask */
197 #define MXC_V_GPIO_EN_CLR_GPIO_EN_CLR_NO               ((uint32_t)0x0UL) /**< EN_CLR_GPIO_EN_CLR_NO Value */
198 #define MXC_S_GPIO_EN_CLR_GPIO_EN_CLR_NO               (MXC_V_GPIO_EN_CLR_GPIO_EN_CLR_NO << MXC_F_GPIO_EN_CLR_GPIO_EN_CLR_POS) /**< EN_CLR_GPIO_EN_CLR_NO Setting */
199 #define MXC_V_GPIO_EN_CLR_GPIO_EN_CLR_CLEAR            ((uint32_t)0x1UL) /**< EN_CLR_GPIO_EN_CLR_CLEAR Value */
200 #define MXC_S_GPIO_EN_CLR_GPIO_EN_CLR_CLEAR            (MXC_V_GPIO_EN_CLR_GPIO_EN_CLR_CLEAR << MXC_F_GPIO_EN_CLR_GPIO_EN_CLR_POS) /**< EN_CLR_GPIO_EN_CLR_CLEAR Setting */
201 
202 /**@} end of group GPIO_EN_CLR_Register */
203 
204 /**
205  * @ingroup  gpio_registers
206  * @defgroup GPIO_OUT_EN GPIO_OUT_EN
207  * @brief    GPIO Output Enable Register. Each bit controls the GPIO_OUT_EN setting for one
208  *           GPIO pin in the associated port.
209  * @{
210  */
211 #define MXC_F_GPIO_OUT_EN_GPIO_OUT_EN_POS              0 /**< OUT_EN_GPIO_OUT_EN Position */
212 #define MXC_F_GPIO_OUT_EN_GPIO_OUT_EN                  ((uint32_t)(0xFFFFFFFFUL << MXC_F_GPIO_OUT_EN_GPIO_OUT_EN_POS)) /**< OUT_EN_GPIO_OUT_EN Mask */
213 #define MXC_V_GPIO_OUT_EN_GPIO_OUT_EN_DIS              ((uint32_t)0x0UL) /**< OUT_EN_GPIO_OUT_EN_DIS Value */
214 #define MXC_S_GPIO_OUT_EN_GPIO_OUT_EN_DIS              (MXC_V_GPIO_OUT_EN_GPIO_OUT_EN_DIS << MXC_F_GPIO_OUT_EN_GPIO_OUT_EN_POS) /**< OUT_EN_GPIO_OUT_EN_DIS Setting */
215 #define MXC_V_GPIO_OUT_EN_GPIO_OUT_EN_EN               ((uint32_t)0x1UL) /**< OUT_EN_GPIO_OUT_EN_EN Value */
216 #define MXC_S_GPIO_OUT_EN_GPIO_OUT_EN_EN               (MXC_V_GPIO_OUT_EN_GPIO_OUT_EN_EN << MXC_F_GPIO_OUT_EN_GPIO_OUT_EN_POS) /**< OUT_EN_GPIO_OUT_EN_EN Setting */
217 
218 /**@} end of group GPIO_OUT_EN_Register */
219 
220 /**
221  * @ingroup  gpio_registers
222  * @defgroup GPIO_OUT_EN_SET GPIO_OUT_EN_SET
223  * @brief    GPIO Output Enable Set Function Enable Register. Writing a 1 to one or more bits
224  *           in this register sets the bits in the same positions in GPIO_OUT_EN to 1,
225  *           without affecting other bits in that register.
226  * @{
227  */
228 #define MXC_F_GPIO_OUT_EN_SET_GPIO_OUT_EN_SET_POS      0 /**< OUT_EN_SET_GPIO_OUT_EN_SET Position */
229 #define MXC_F_GPIO_OUT_EN_SET_GPIO_OUT_EN_SET          ((uint32_t)(0xFFFFFFFFUL << MXC_F_GPIO_OUT_EN_SET_GPIO_OUT_EN_SET_POS)) /**< OUT_EN_SET_GPIO_OUT_EN_SET Mask */
230 #define MXC_V_GPIO_OUT_EN_SET_GPIO_OUT_EN_SET_NO       ((uint32_t)0x0UL) /**< OUT_EN_SET_GPIO_OUT_EN_SET_NO Value */
231 #define MXC_S_GPIO_OUT_EN_SET_GPIO_OUT_EN_SET_NO       (MXC_V_GPIO_OUT_EN_SET_GPIO_OUT_EN_SET_NO << MXC_F_GPIO_OUT_EN_SET_GPIO_OUT_EN_SET_POS) /**< OUT_EN_SET_GPIO_OUT_EN_SET_NO Setting */
232 #define MXC_V_GPIO_OUT_EN_SET_GPIO_OUT_EN_SET_SET      ((uint32_t)0x1UL) /**< OUT_EN_SET_GPIO_OUT_EN_SET_SET Value */
233 #define MXC_S_GPIO_OUT_EN_SET_GPIO_OUT_EN_SET_SET      (MXC_V_GPIO_OUT_EN_SET_GPIO_OUT_EN_SET_SET << MXC_F_GPIO_OUT_EN_SET_GPIO_OUT_EN_SET_POS) /**< OUT_EN_SET_GPIO_OUT_EN_SET_SET Setting */
234 
235 /**@} end of group GPIO_OUT_EN_SET_Register */
236 
237 /**
238  * @ingroup  gpio_registers
239  * @defgroup GPIO_OUT_EN_CLR GPIO_OUT_EN_CLR
240  * @brief    GPIO Output Enable Clear Function Enable Register. Writing a 1 to one or more
241  *           bits in this register clears the bits in the same positions in GPIO_OUT_EN to 0,
242  *           without affecting other bits in that register.
243  * @{
244  */
245 #define MXC_F_GPIO_OUT_EN_CLR_GPIO_OUT_EN_CLR_POS      0 /**< OUT_EN_CLR_GPIO_OUT_EN_CLR Position */
246 #define MXC_F_GPIO_OUT_EN_CLR_GPIO_OUT_EN_CLR          ((uint32_t)(0xFFFFFFFFUL << MXC_F_GPIO_OUT_EN_CLR_GPIO_OUT_EN_CLR_POS)) /**< OUT_EN_CLR_GPIO_OUT_EN_CLR Mask */
247 #define MXC_V_GPIO_OUT_EN_CLR_GPIO_OUT_EN_CLR_NO       ((uint32_t)0x0UL) /**< OUT_EN_CLR_GPIO_OUT_EN_CLR_NO Value */
248 #define MXC_S_GPIO_OUT_EN_CLR_GPIO_OUT_EN_CLR_NO       (MXC_V_GPIO_OUT_EN_CLR_GPIO_OUT_EN_CLR_NO << MXC_F_GPIO_OUT_EN_CLR_GPIO_OUT_EN_CLR_POS) /**< OUT_EN_CLR_GPIO_OUT_EN_CLR_NO Setting */
249 #define MXC_V_GPIO_OUT_EN_CLR_GPIO_OUT_EN_CLR_CLEAR    ((uint32_t)0x1UL) /**< OUT_EN_CLR_GPIO_OUT_EN_CLR_CLEAR Value */
250 #define MXC_S_GPIO_OUT_EN_CLR_GPIO_OUT_EN_CLR_CLEAR    (MXC_V_GPIO_OUT_EN_CLR_GPIO_OUT_EN_CLR_CLEAR << MXC_F_GPIO_OUT_EN_CLR_GPIO_OUT_EN_CLR_POS) /**< OUT_EN_CLR_GPIO_OUT_EN_CLR_CLEAR Setting */
251 
252 /**@} end of group GPIO_OUT_EN_CLR_Register */
253 
254 /**
255  * @ingroup  gpio_registers
256  * @defgroup GPIO_OUT GPIO_OUT
257  * @brief    GPIO Output Register. Each bit controls the GPIO_OUT setting for one pin in the
258  *           associated port.  This register can be written either directly, or by using the
259  *           GPIO_OUT_SET and GPIO_OUT_CLR registers.
260  * @{
261  */
262 #define MXC_F_GPIO_OUT_GPIO_OUT_POS                    0 /**< OUT_GPIO_OUT Position */
263 #define MXC_F_GPIO_OUT_GPIO_OUT                        ((uint32_t)(0xFFFFFFFFUL << MXC_F_GPIO_OUT_GPIO_OUT_POS)) /**< OUT_GPIO_OUT Mask */
264 #define MXC_V_GPIO_OUT_GPIO_OUT_LOW                    ((uint32_t)0x0UL) /**< OUT_GPIO_OUT_LOW Value */
265 #define MXC_S_GPIO_OUT_GPIO_OUT_LOW                    (MXC_V_GPIO_OUT_GPIO_OUT_LOW << MXC_F_GPIO_OUT_GPIO_OUT_POS) /**< OUT_GPIO_OUT_LOW Setting */
266 #define MXC_V_GPIO_OUT_GPIO_OUT_HIGH                   ((uint32_t)0x1UL) /**< OUT_GPIO_OUT_HIGH Value */
267 #define MXC_S_GPIO_OUT_GPIO_OUT_HIGH                   (MXC_V_GPIO_OUT_GPIO_OUT_HIGH << MXC_F_GPIO_OUT_GPIO_OUT_POS) /**< OUT_GPIO_OUT_HIGH Setting */
268 
269 /**@} end of group GPIO_OUT_Register */
270 
271 /**
272  * @ingroup  gpio_registers
273  * @defgroup GPIO_OUT_SET GPIO_OUT_SET
274  * @brief    GPIO Output Set. Writing a 1 to one or more bits in this register sets the bits
275  *           in the same positions in GPIO_OUT to 1, without affecting other bits in that
276  *           register.
277  * @{
278  */
279 #define MXC_F_GPIO_OUT_SET_GPIO_OUT_SET_POS            0 /**< OUT_SET_GPIO_OUT_SET Position */
280 #define MXC_F_GPIO_OUT_SET_GPIO_OUT_SET                ((uint32_t)(0xFFFFFFFFUL << MXC_F_GPIO_OUT_SET_GPIO_OUT_SET_POS)) /**< OUT_SET_GPIO_OUT_SET Mask */
281 #define MXC_V_GPIO_OUT_SET_GPIO_OUT_SET_NO             ((uint32_t)0x0UL) /**< OUT_SET_GPIO_OUT_SET_NO Value */
282 #define MXC_S_GPIO_OUT_SET_GPIO_OUT_SET_NO             (MXC_V_GPIO_OUT_SET_GPIO_OUT_SET_NO << MXC_F_GPIO_OUT_SET_GPIO_OUT_SET_POS) /**< OUT_SET_GPIO_OUT_SET_NO Setting */
283 #define MXC_V_GPIO_OUT_SET_GPIO_OUT_SET_SET            ((uint32_t)0x1UL) /**< OUT_SET_GPIO_OUT_SET_SET Value */
284 #define MXC_S_GPIO_OUT_SET_GPIO_OUT_SET_SET            (MXC_V_GPIO_OUT_SET_GPIO_OUT_SET_SET << MXC_F_GPIO_OUT_SET_GPIO_OUT_SET_POS) /**< OUT_SET_GPIO_OUT_SET_SET Setting */
285 
286 /**@} end of group GPIO_OUT_SET_Register */
287 
288 /**
289  * @ingroup  gpio_registers
290  * @defgroup GPIO_OUT_CLR GPIO_OUT_CLR
291  * @brief    GPIO Output Clear. Writing a 1 to one or more bits in this register clears the
292  *           bits in the same positions in GPIO_OUT to 0, without affecting other bits in
293  *           that register.
294  * @{
295  */
296 #define MXC_F_GPIO_OUT_CLR_GPIO_OUT_CLR_POS            0 /**< OUT_CLR_GPIO_OUT_CLR Position */
297 #define MXC_F_GPIO_OUT_CLR_GPIO_OUT_CLR                ((uint32_t)(0xFFFFFFFFUL << MXC_F_GPIO_OUT_CLR_GPIO_OUT_CLR_POS)) /**< OUT_CLR_GPIO_OUT_CLR Mask */
298 #define MXC_V_GPIO_OUT_CLR_GPIO_OUT_CLR_NO             ((uint32_t)0x0UL) /**< OUT_CLR_GPIO_OUT_CLR_NO Value */
299 #define MXC_S_GPIO_OUT_CLR_GPIO_OUT_CLR_NO             (MXC_V_GPIO_OUT_CLR_GPIO_OUT_CLR_NO << MXC_F_GPIO_OUT_CLR_GPIO_OUT_CLR_POS) /**< OUT_CLR_GPIO_OUT_CLR_NO Setting */
300 #define MXC_V_GPIO_OUT_CLR_GPIO_OUT_CLR_CLEAR          ((uint32_t)0x1UL) /**< OUT_CLR_GPIO_OUT_CLR_CLEAR Value */
301 #define MXC_S_GPIO_OUT_CLR_GPIO_OUT_CLR_CLEAR          (MXC_V_GPIO_OUT_CLR_GPIO_OUT_CLR_CLEAR << MXC_F_GPIO_OUT_CLR_GPIO_OUT_CLR_POS) /**< OUT_CLR_GPIO_OUT_CLR_CLEAR Setting */
302 
303 /**@} end of group GPIO_OUT_CLR_Register */
304 
305 /**
306  * @ingroup  gpio_registers
307  * @defgroup GPIO_IN GPIO_IN
308  * @brief    GPIO Input Register. Read-only register to read from the logic states of the
309  *           GPIO pins on this port.
310  * @{
311  */
312 #define MXC_F_GPIO_IN_GPIO_IN_POS                      0 /**< IN_GPIO_IN Position */
313 #define MXC_F_GPIO_IN_GPIO_IN                          ((uint32_t)(0xFFFFFFFFUL << MXC_F_GPIO_IN_GPIO_IN_POS)) /**< IN_GPIO_IN Mask */
314 #define MXC_V_GPIO_IN_GPIO_IN_LOW                      ((uint32_t)0x0UL) /**< IN_GPIO_IN_LOW Value */
315 #define MXC_S_GPIO_IN_GPIO_IN_LOW                      (MXC_V_GPIO_IN_GPIO_IN_LOW << MXC_F_GPIO_IN_GPIO_IN_POS) /**< IN_GPIO_IN_LOW Setting */
316 #define MXC_V_GPIO_IN_GPIO_IN_HIGH                     ((uint32_t)0x1UL) /**< IN_GPIO_IN_HIGH Value */
317 #define MXC_S_GPIO_IN_GPIO_IN_HIGH                     (MXC_V_GPIO_IN_GPIO_IN_HIGH << MXC_F_GPIO_IN_GPIO_IN_POS) /**< IN_GPIO_IN_HIGH Setting */
318 
319 /**@} end of group GPIO_IN_Register */
320 
321 /**
322  * @ingroup  gpio_registers
323  * @defgroup GPIO_INT_MODE GPIO_INT_MODE
324  * @brief    GPIO Interrupt Mode Register. Each bit in this register controls the interrupt
325  *           mode setting for the associated GPIO pin on this port.
326  * @{
327  */
328 #define MXC_F_GPIO_INT_MODE_GPIO_INT_MODE_POS          0 /**< INT_MODE_GPIO_INT_MODE Position */
329 #define MXC_F_GPIO_INT_MODE_GPIO_INT_MODE              ((uint32_t)(0xFFFFFFFFUL << MXC_F_GPIO_INT_MODE_GPIO_INT_MODE_POS)) /**< INT_MODE_GPIO_INT_MODE Mask */
330 #define MXC_V_GPIO_INT_MODE_GPIO_INT_MODE_LEVEL        ((uint32_t)0x0UL) /**< INT_MODE_GPIO_INT_MODE_LEVEL Value */
331 #define MXC_S_GPIO_INT_MODE_GPIO_INT_MODE_LEVEL        (MXC_V_GPIO_INT_MODE_GPIO_INT_MODE_LEVEL << MXC_F_GPIO_INT_MODE_GPIO_INT_MODE_POS) /**< INT_MODE_GPIO_INT_MODE_LEVEL Setting */
332 #define MXC_V_GPIO_INT_MODE_GPIO_INT_MODE_EDGE         ((uint32_t)0x1UL) /**< INT_MODE_GPIO_INT_MODE_EDGE Value */
333 #define MXC_S_GPIO_INT_MODE_GPIO_INT_MODE_EDGE         (MXC_V_GPIO_INT_MODE_GPIO_INT_MODE_EDGE << MXC_F_GPIO_INT_MODE_GPIO_INT_MODE_POS) /**< INT_MODE_GPIO_INT_MODE_EDGE Setting */
334 
335 /**@} end of group GPIO_INT_MODE_Register */
336 
337 /**
338  * @ingroup  gpio_registers
339  * @defgroup GPIO_INT_POL GPIO_INT_POL
340  * @brief    GPIO Interrupt Polarity Register. Each bit in this register controls the
341  *           interrupt polarity setting for one GPIO pin in the associated port.
342  * @{
343  */
344 #define MXC_F_GPIO_INT_POL_GPIO_INT_POL_POS            0 /**< INT_POL_GPIO_INT_POL Position */
345 #define MXC_F_GPIO_INT_POL_GPIO_INT_POL                ((uint32_t)(0xFFFFFFFFUL << MXC_F_GPIO_INT_POL_GPIO_INT_POL_POS)) /**< INT_POL_GPIO_INT_POL Mask */
346 #define MXC_V_GPIO_INT_POL_GPIO_INT_POL_FALLING        ((uint32_t)0x0UL) /**< INT_POL_GPIO_INT_POL_FALLING Value */
347 #define MXC_S_GPIO_INT_POL_GPIO_INT_POL_FALLING        (MXC_V_GPIO_INT_POL_GPIO_INT_POL_FALLING << MXC_F_GPIO_INT_POL_GPIO_INT_POL_POS) /**< INT_POL_GPIO_INT_POL_FALLING Setting */
348 #define MXC_V_GPIO_INT_POL_GPIO_INT_POL_RISING         ((uint32_t)0x1UL) /**< INT_POL_GPIO_INT_POL_RISING Value */
349 #define MXC_S_GPIO_INT_POL_GPIO_INT_POL_RISING         (MXC_V_GPIO_INT_POL_GPIO_INT_POL_RISING << MXC_F_GPIO_INT_POL_GPIO_INT_POL_POS) /**< INT_POL_GPIO_INT_POL_RISING Setting */
350 
351 /**@} end of group GPIO_INT_POL_Register */
352 
353 /**
354  * @ingroup  gpio_registers
355  * @defgroup GPIO_IN_EN GPIO_IN_EN
356  * @brief    GPIO Port Input Enable.
357  * @{
358  */
359 #define MXC_F_GPIO_IN_EN_GPIO_IN_EN_POS                0 /**< IN_EN_GPIO_IN_EN Position */
360 #define MXC_F_GPIO_IN_EN_GPIO_IN_EN                    ((uint32_t)(0xFFFFFFFFUL << MXC_F_GPIO_IN_EN_GPIO_IN_EN_POS)) /**< IN_EN_GPIO_IN_EN Mask */
361 #define MXC_V_GPIO_IN_EN_GPIO_IN_EN_DIS                ((uint32_t)0x0UL) /**< IN_EN_GPIO_IN_EN_DIS Value */
362 #define MXC_S_GPIO_IN_EN_GPIO_IN_EN_DIS                (MXC_V_GPIO_IN_EN_GPIO_IN_EN_DIS << MXC_F_GPIO_IN_EN_GPIO_IN_EN_POS) /**< IN_EN_GPIO_IN_EN_DIS Setting */
363 #define MXC_V_GPIO_IN_EN_GPIO_IN_EN_EN                 ((uint32_t)0x1UL) /**< IN_EN_GPIO_IN_EN_EN Value */
364 #define MXC_S_GPIO_IN_EN_GPIO_IN_EN_EN                 (MXC_V_GPIO_IN_EN_GPIO_IN_EN_EN << MXC_F_GPIO_IN_EN_GPIO_IN_EN_POS) /**< IN_EN_GPIO_IN_EN_EN Setting */
365 
366 /**@} end of group GPIO_IN_EN_Register */
367 
368 /**
369  * @ingroup  gpio_registers
370  * @defgroup GPIO_INT_EN GPIO_INT_EN
371  * @brief    GPIO Interrupt Enable Register. Each bit in this register controls the GPIO
372  *           interrupt enable for the associated pin on the GPIO port.
373  * @{
374  */
375 #define MXC_F_GPIO_INT_EN_GPIO_INT_EN_POS              0 /**< INT_EN_GPIO_INT_EN Position */
376 #define MXC_F_GPIO_INT_EN_GPIO_INT_EN                  ((uint32_t)(0xFFFFFFFFUL << MXC_F_GPIO_INT_EN_GPIO_INT_EN_POS)) /**< INT_EN_GPIO_INT_EN Mask */
377 #define MXC_V_GPIO_INT_EN_GPIO_INT_EN_DIS              ((uint32_t)0x0UL) /**< INT_EN_GPIO_INT_EN_DIS Value */
378 #define MXC_S_GPIO_INT_EN_GPIO_INT_EN_DIS              (MXC_V_GPIO_INT_EN_GPIO_INT_EN_DIS << MXC_F_GPIO_INT_EN_GPIO_INT_EN_POS) /**< INT_EN_GPIO_INT_EN_DIS Setting */
379 #define MXC_V_GPIO_INT_EN_GPIO_INT_EN_EN               ((uint32_t)0x1UL) /**< INT_EN_GPIO_INT_EN_EN Value */
380 #define MXC_S_GPIO_INT_EN_GPIO_INT_EN_EN               (MXC_V_GPIO_INT_EN_GPIO_INT_EN_EN << MXC_F_GPIO_INT_EN_GPIO_INT_EN_POS) /**< INT_EN_GPIO_INT_EN_EN Setting */
381 
382 /**@} end of group GPIO_INT_EN_Register */
383 
384 /**
385  * @ingroup  gpio_registers
386  * @defgroup GPIO_INT_EN_SET GPIO_INT_EN_SET
387  * @brief    GPIO Interrupt Enable Set. Writing a 1 to one or more bits in this register sets
388  *           the bits in the same positions in GPIO_INT_EN to 1, without affecting other bits
389  *           in that register.
390  * @{
391  */
392 #define MXC_F_GPIO_INT_EN_SET_GPIO_INT_EN_SET_POS      0 /**< INT_EN_SET_GPIO_INT_EN_SET Position */
393 #define MXC_F_GPIO_INT_EN_SET_GPIO_INT_EN_SET          ((uint32_t)(0xFFFFFFFFUL << MXC_F_GPIO_INT_EN_SET_GPIO_INT_EN_SET_POS)) /**< INT_EN_SET_GPIO_INT_EN_SET Mask */
394 #define MXC_V_GPIO_INT_EN_SET_GPIO_INT_EN_SET_NO       ((uint32_t)0x0UL) /**< INT_EN_SET_GPIO_INT_EN_SET_NO Value */
395 #define MXC_S_GPIO_INT_EN_SET_GPIO_INT_EN_SET_NO       (MXC_V_GPIO_INT_EN_SET_GPIO_INT_EN_SET_NO << MXC_F_GPIO_INT_EN_SET_GPIO_INT_EN_SET_POS) /**< INT_EN_SET_GPIO_INT_EN_SET_NO Setting */
396 #define MXC_V_GPIO_INT_EN_SET_GPIO_INT_EN_SET_SET      ((uint32_t)0x1UL) /**< INT_EN_SET_GPIO_INT_EN_SET_SET Value */
397 #define MXC_S_GPIO_INT_EN_SET_GPIO_INT_EN_SET_SET      (MXC_V_GPIO_INT_EN_SET_GPIO_INT_EN_SET_SET << MXC_F_GPIO_INT_EN_SET_GPIO_INT_EN_SET_POS) /**< INT_EN_SET_GPIO_INT_EN_SET_SET Setting */
398 
399 /**@} end of group GPIO_INT_EN_SET_Register */
400 
401 /**
402  * @ingroup  gpio_registers
403  * @defgroup GPIO_INT_EN_CLR GPIO_INT_EN_CLR
404  * @brief    GPIO Interrupt Enable Clear. Writing a 1 to one or more bits in this register
405  *           clears the bits in the same positions in GPIO_INT_EN to 0, without affecting
406  *           other bits in that register.
407  * @{
408  */
409 #define MXC_F_GPIO_INT_EN_CLR_GPIO_INT_EN_CLR_POS      0 /**< INT_EN_CLR_GPIO_INT_EN_CLR Position */
410 #define MXC_F_GPIO_INT_EN_CLR_GPIO_INT_EN_CLR          ((uint32_t)(0xFFFFFFFFUL << MXC_F_GPIO_INT_EN_CLR_GPIO_INT_EN_CLR_POS)) /**< INT_EN_CLR_GPIO_INT_EN_CLR Mask */
411 #define MXC_V_GPIO_INT_EN_CLR_GPIO_INT_EN_CLR_NO       ((uint32_t)0x0UL) /**< INT_EN_CLR_GPIO_INT_EN_CLR_NO Value */
412 #define MXC_S_GPIO_INT_EN_CLR_GPIO_INT_EN_CLR_NO       (MXC_V_GPIO_INT_EN_CLR_GPIO_INT_EN_CLR_NO << MXC_F_GPIO_INT_EN_CLR_GPIO_INT_EN_CLR_POS) /**< INT_EN_CLR_GPIO_INT_EN_CLR_NO Setting */
413 #define MXC_V_GPIO_INT_EN_CLR_GPIO_INT_EN_CLR_CLEAR    ((uint32_t)0x1UL) /**< INT_EN_CLR_GPIO_INT_EN_CLR_CLEAR Value */
414 #define MXC_S_GPIO_INT_EN_CLR_GPIO_INT_EN_CLR_CLEAR    (MXC_V_GPIO_INT_EN_CLR_GPIO_INT_EN_CLR_CLEAR << MXC_F_GPIO_INT_EN_CLR_GPIO_INT_EN_CLR_POS) /**< INT_EN_CLR_GPIO_INT_EN_CLR_CLEAR Setting */
415 
416 /**@} end of group GPIO_INT_EN_CLR_Register */
417 
418 /**
419  * @ingroup  gpio_registers
420  * @defgroup GPIO_INT_STAT GPIO_INT_STAT
421  * @brief    GPIO Interrupt Status Register. Each bit in this register contains the pending
422  *           interrupt status for the associated GPIO pin in this port.
423  * @{
424  */
425 #define MXC_F_GPIO_INT_STAT_GPIO_INT_STAT_POS          0 /**< INT_STAT_GPIO_INT_STAT Position */
426 #define MXC_F_GPIO_INT_STAT_GPIO_INT_STAT              ((uint32_t)(0xFFFFFFFFUL << MXC_F_GPIO_INT_STAT_GPIO_INT_STAT_POS)) /**< INT_STAT_GPIO_INT_STAT Mask */
427 #define MXC_V_GPIO_INT_STAT_GPIO_INT_STAT_NO           ((uint32_t)0x0UL) /**< INT_STAT_GPIO_INT_STAT_NO Value */
428 #define MXC_S_GPIO_INT_STAT_GPIO_INT_STAT_NO           (MXC_V_GPIO_INT_STAT_GPIO_INT_STAT_NO << MXC_F_GPIO_INT_STAT_GPIO_INT_STAT_POS) /**< INT_STAT_GPIO_INT_STAT_NO Setting */
429 #define MXC_V_GPIO_INT_STAT_GPIO_INT_STAT_PENDING      ((uint32_t)0x1UL) /**< INT_STAT_GPIO_INT_STAT_PENDING Value */
430 #define MXC_S_GPIO_INT_STAT_GPIO_INT_STAT_PENDING      (MXC_V_GPIO_INT_STAT_GPIO_INT_STAT_PENDING << MXC_F_GPIO_INT_STAT_GPIO_INT_STAT_POS) /**< INT_STAT_GPIO_INT_STAT_PENDING Setting */
431 
432 /**@} end of group GPIO_INT_STAT_Register */
433 
434 /**
435  * @ingroup  gpio_registers
436  * @defgroup GPIO_INT_CLR GPIO_INT_CLR
437  * @brief    GPIO Status Clear. Writing a 1 to one or more bits in this register clears the
438  *           bits in the same positions in GPIO_INT_STAT to 0, without affecting other bits
439  *           in that register.
440  * @{
441  */
442 #define MXC_F_GPIO_INT_CLR_GPIO_INT_CLR_POS            0 /**< INT_CLR_GPIO_INT_CLR Position */
443 #define MXC_F_GPIO_INT_CLR_GPIO_INT_CLR                ((uint32_t)(0xFFFFFFFFUL << MXC_F_GPIO_INT_CLR_GPIO_INT_CLR_POS)) /**< INT_CLR_GPIO_INT_CLR Mask */
444 #define MXC_V_GPIO_INT_CLR_GPIO_INT_CLR_NO             ((uint32_t)0x0UL) /**< INT_CLR_GPIO_INT_CLR_NO Value */
445 #define MXC_S_GPIO_INT_CLR_GPIO_INT_CLR_NO             (MXC_V_GPIO_INT_CLR_GPIO_INT_CLR_NO << MXC_F_GPIO_INT_CLR_GPIO_INT_CLR_POS) /**< INT_CLR_GPIO_INT_CLR_NO Setting */
446 #define MXC_V_GPIO_INT_CLR_GPIO_INT_CLR_CLEAR          ((uint32_t)0x1UL) /**< INT_CLR_GPIO_INT_CLR_CLEAR Value */
447 #define MXC_S_GPIO_INT_CLR_GPIO_INT_CLR_CLEAR          (MXC_V_GPIO_INT_CLR_GPIO_INT_CLR_CLEAR << MXC_F_GPIO_INT_CLR_GPIO_INT_CLR_POS) /**< INT_CLR_GPIO_INT_CLR_CLEAR Setting */
448 
449 /**@} end of group GPIO_INT_CLR_Register */
450 
451 /**
452  * @ingroup  gpio_registers
453  * @defgroup GPIO_WAKE_EN GPIO_WAKE_EN
454  * @brief    GPIO Wake Enable Register. Each bit in this register controls the PMU wakeup
455  *           enable for the associated GPIO pin in this port.
456  * @{
457  */
458 #define MXC_F_GPIO_WAKE_EN_GPIO_WAKE_EN_POS            0 /**< WAKE_EN_GPIO_WAKE_EN Position */
459 #define MXC_F_GPIO_WAKE_EN_GPIO_WAKE_EN                ((uint32_t)(0xFFFFFFFFUL << MXC_F_GPIO_WAKE_EN_GPIO_WAKE_EN_POS)) /**< WAKE_EN_GPIO_WAKE_EN Mask */
460 #define MXC_V_GPIO_WAKE_EN_GPIO_WAKE_EN_DIS            ((uint32_t)0x0UL) /**< WAKE_EN_GPIO_WAKE_EN_DIS Value */
461 #define MXC_S_GPIO_WAKE_EN_GPIO_WAKE_EN_DIS            (MXC_V_GPIO_WAKE_EN_GPIO_WAKE_EN_DIS << MXC_F_GPIO_WAKE_EN_GPIO_WAKE_EN_POS) /**< WAKE_EN_GPIO_WAKE_EN_DIS Setting */
462 #define MXC_V_GPIO_WAKE_EN_GPIO_WAKE_EN_EN             ((uint32_t)0x1UL) /**< WAKE_EN_GPIO_WAKE_EN_EN Value */
463 #define MXC_S_GPIO_WAKE_EN_GPIO_WAKE_EN_EN             (MXC_V_GPIO_WAKE_EN_GPIO_WAKE_EN_EN << MXC_F_GPIO_WAKE_EN_GPIO_WAKE_EN_POS) /**< WAKE_EN_GPIO_WAKE_EN_EN Setting */
464 
465 /**@} end of group GPIO_WAKE_EN_Register */
466 
467 /**
468  * @ingroup  gpio_registers
469  * @defgroup GPIO_WAKE_EN_SET GPIO_WAKE_EN_SET
470  * @brief    GPIO Wake Enable Set. Writing a 1 to one or more bits in this register sets the
471  *           bits in the same positions in GPIO_WAKE_EN to 1, without affecting other bits in
472  *           that register.
473  * @{
474  */
475 #define MXC_F_GPIO_WAKE_EN_SET_GPIO_WAKE_EN_SET_POS    0 /**< WAKE_EN_SET_GPIO_WAKE_EN_SET Position */
476 #define MXC_F_GPIO_WAKE_EN_SET_GPIO_WAKE_EN_SET        ((uint32_t)(0xFFFFFFFFUL << MXC_F_GPIO_WAKE_EN_SET_GPIO_WAKE_EN_SET_POS)) /**< WAKE_EN_SET_GPIO_WAKE_EN_SET Mask */
477 #define MXC_V_GPIO_WAKE_EN_SET_GPIO_WAKE_EN_SET_NO     ((uint32_t)0x0UL) /**< WAKE_EN_SET_GPIO_WAKE_EN_SET_NO Value */
478 #define MXC_S_GPIO_WAKE_EN_SET_GPIO_WAKE_EN_SET_NO     (MXC_V_GPIO_WAKE_EN_SET_GPIO_WAKE_EN_SET_NO << MXC_F_GPIO_WAKE_EN_SET_GPIO_WAKE_EN_SET_POS) /**< WAKE_EN_SET_GPIO_WAKE_EN_SET_NO Setting */
479 #define MXC_V_GPIO_WAKE_EN_SET_GPIO_WAKE_EN_SET_SET    ((uint32_t)0x1UL) /**< WAKE_EN_SET_GPIO_WAKE_EN_SET_SET Value */
480 #define MXC_S_GPIO_WAKE_EN_SET_GPIO_WAKE_EN_SET_SET    (MXC_V_GPIO_WAKE_EN_SET_GPIO_WAKE_EN_SET_SET << MXC_F_GPIO_WAKE_EN_SET_GPIO_WAKE_EN_SET_POS) /**< WAKE_EN_SET_GPIO_WAKE_EN_SET_SET Setting */
481 
482 /**@} end of group GPIO_WAKE_EN_SET_Register */
483 
484 /**
485  * @ingroup  gpio_registers
486  * @defgroup GPIO_WAKE_EN_CLR GPIO_WAKE_EN_CLR
487  * @brief    GPIO Wake Enable Clear. Writing a 1 to one or more bits in this register clears
488  *           the bits in the same positions in GPIO_WAKE_EN to 0, without affecting other
489  *           bits in that register.
490  * @{
491  */
492 #define MXC_F_GPIO_WAKE_EN_CLR_GPIO_WAKE_EN_CLR_POS    0 /**< WAKE_EN_CLR_GPIO_WAKE_EN_CLR Position */
493 #define MXC_F_GPIO_WAKE_EN_CLR_GPIO_WAKE_EN_CLR        ((uint32_t)(0xFFFFFFFFUL << MXC_F_GPIO_WAKE_EN_CLR_GPIO_WAKE_EN_CLR_POS)) /**< WAKE_EN_CLR_GPIO_WAKE_EN_CLR Mask */
494 #define MXC_V_GPIO_WAKE_EN_CLR_GPIO_WAKE_EN_CLR_NO     ((uint32_t)0x0UL) /**< WAKE_EN_CLR_GPIO_WAKE_EN_CLR_NO Value */
495 #define MXC_S_GPIO_WAKE_EN_CLR_GPIO_WAKE_EN_CLR_NO     (MXC_V_GPIO_WAKE_EN_CLR_GPIO_WAKE_EN_CLR_NO << MXC_F_GPIO_WAKE_EN_CLR_GPIO_WAKE_EN_CLR_POS) /**< WAKE_EN_CLR_GPIO_WAKE_EN_CLR_NO Setting */
496 #define MXC_V_GPIO_WAKE_EN_CLR_GPIO_WAKE_EN_CLR_CLEAR  ((uint32_t)0x1UL) /**< WAKE_EN_CLR_GPIO_WAKE_EN_CLR_CLEAR Value */
497 #define MXC_S_GPIO_WAKE_EN_CLR_GPIO_WAKE_EN_CLR_CLEAR  (MXC_V_GPIO_WAKE_EN_CLR_GPIO_WAKE_EN_CLR_CLEAR << MXC_F_GPIO_WAKE_EN_CLR_GPIO_WAKE_EN_CLR_POS) /**< WAKE_EN_CLR_GPIO_WAKE_EN_CLR_CLEAR Setting */
498 
499 /**@} end of group GPIO_WAKE_EN_CLR_Register */
500 
501 /**
502  * @ingroup  gpio_registers
503  * @defgroup GPIO_INT_DUAL_EDGE GPIO_INT_DUAL_EDGE
504  * @brief    GPIO Interrupt Dual Edge Mode Register. Each bit in this register selects dual
505  *           edge mode for the associated GPIO pin in this port.
506  * @{
507  */
508 #define MXC_F_GPIO_INT_DUAL_EDGE_GPIO_INT_DUAL_EDGE_POS 0 /**< INT_DUAL_EDGE_GPIO_INT_DUAL_EDGE Position */
509 #define MXC_F_GPIO_INT_DUAL_EDGE_GPIO_INT_DUAL_EDGE    ((uint32_t)(0xFFFFFFFFUL << MXC_F_GPIO_INT_DUAL_EDGE_GPIO_INT_DUAL_EDGE_POS)) /**< INT_DUAL_EDGE_GPIO_INT_DUAL_EDGE Mask */
510 #define MXC_V_GPIO_INT_DUAL_EDGE_GPIO_INT_DUAL_EDGE_NO ((uint32_t)0x0UL) /**< INT_DUAL_EDGE_GPIO_INT_DUAL_EDGE_NO Value */
511 #define MXC_S_GPIO_INT_DUAL_EDGE_GPIO_INT_DUAL_EDGE_NO (MXC_V_GPIO_INT_DUAL_EDGE_GPIO_INT_DUAL_EDGE_NO << MXC_F_GPIO_INT_DUAL_EDGE_GPIO_INT_DUAL_EDGE_POS) /**< INT_DUAL_EDGE_GPIO_INT_DUAL_EDGE_NO Setting */
512 #define MXC_V_GPIO_INT_DUAL_EDGE_GPIO_INT_DUAL_EDGE_DUAL ((uint32_t)0x1UL) /**< INT_DUAL_EDGE_GPIO_INT_DUAL_EDGE_DUAL Value */
513 #define MXC_S_GPIO_INT_DUAL_EDGE_GPIO_INT_DUAL_EDGE_DUAL (MXC_V_GPIO_INT_DUAL_EDGE_GPIO_INT_DUAL_EDGE_DUAL << MXC_F_GPIO_INT_DUAL_EDGE_GPIO_INT_DUAL_EDGE_POS) /**< INT_DUAL_EDGE_GPIO_INT_DUAL_EDGE_DUAL Setting */
514 
515 /**@} end of group GPIO_INT_DUAL_EDGE_Register */
516 
517 /**
518  * @ingroup  gpio_registers
519  * @defgroup GPIO_PDPU_SEL0 GPIO_PDPU_SEL0
520  * @brief    GPIO Input Mode Config 1. Each bit in this register enables the weak pull-up for
521  *           the associated GPIO pin in this port.
522  * @{
523  */
524 #define MXC_F_GPIO_PDPU_SEL0_GPIO_PDPU_SEL0_POS        0 /**< PDPU_SEL0_GPIO_PDPU_SEL0 Position */
525 #define MXC_F_GPIO_PDPU_SEL0_GPIO_PDPU_SEL0            ((uint32_t)(0xFFFFFFFFUL << MXC_F_GPIO_PDPU_SEL0_GPIO_PDPU_SEL0_POS)) /**< PDPU_SEL0_GPIO_PDPU_SEL0 Mask */
526 #define MXC_V_GPIO_PDPU_SEL0_GPIO_PDPU_SEL0_IMPEDANCE  ((uint32_t)0x0UL) /**< PDPU_SEL0_GPIO_PDPU_SEL0_IMPEDANCE Value */
527 #define MXC_S_GPIO_PDPU_SEL0_GPIO_PDPU_SEL0_IMPEDANCE  (MXC_V_GPIO_PDPU_SEL0_GPIO_PDPU_SEL0_IMPEDANCE << MXC_F_GPIO_PDPU_SEL0_GPIO_PDPU_SEL0_POS) /**< PDPU_SEL0_GPIO_PDPU_SEL0_IMPEDANCE Setting */
528 #define MXC_V_GPIO_PDPU_SEL0_GPIO_PDPU_SEL0_PU         ((uint32_t)0x1UL) /**< PDPU_SEL0_GPIO_PDPU_SEL0_PU Value */
529 #define MXC_S_GPIO_PDPU_SEL0_GPIO_PDPU_SEL0_PU         (MXC_V_GPIO_PDPU_SEL0_GPIO_PDPU_SEL0_PU << MXC_F_GPIO_PDPU_SEL0_GPIO_PDPU_SEL0_POS) /**< PDPU_SEL0_GPIO_PDPU_SEL0_PU Setting */
530 
531 /**@} end of group GPIO_PDPU_SEL0_Register */
532 
533 /**
534  * @ingroup  gpio_registers
535  * @defgroup GPIO_PDPU_SEL1 GPIO_PDPU_SEL1
536  * @brief    GPIO Input Mode Config 2. Each bit in this register enables the pull-down for
537  *           the associated GPIO pin in this port.
538  * @{
539  */
540 #define MXC_F_GPIO_PDPU_SEL1_GPIO_PDPU_SEL1_POS        0 /**< PDPU_SEL1_GPIO_PDPU_SEL1 Position */
541 #define MXC_F_GPIO_PDPU_SEL1_GPIO_PDPU_SEL1            ((uint32_t)(0xFFFFFFFFUL << MXC_F_GPIO_PDPU_SEL1_GPIO_PDPU_SEL1_POS)) /**< PDPU_SEL1_GPIO_PDPU_SEL1 Mask */
542 #define MXC_V_GPIO_PDPU_SEL1_GPIO_PDPU_SEL1_IMPEDANCE  ((uint32_t)0x0UL) /**< PDPU_SEL1_GPIO_PDPU_SEL1_IMPEDANCE Value */
543 #define MXC_S_GPIO_PDPU_SEL1_GPIO_PDPU_SEL1_IMPEDANCE  (MXC_V_GPIO_PDPU_SEL1_GPIO_PDPU_SEL1_IMPEDANCE << MXC_F_GPIO_PDPU_SEL1_GPIO_PDPU_SEL1_POS) /**< PDPU_SEL1_GPIO_PDPU_SEL1_IMPEDANCE Setting */
544 #define MXC_V_GPIO_PDPU_SEL1_GPIO_PDPU_SEL1_PD         ((uint32_t)0x1UL) /**< PDPU_SEL1_GPIO_PDPU_SEL1_PD Value */
545 #define MXC_S_GPIO_PDPU_SEL1_GPIO_PDPU_SEL1_PD         (MXC_V_GPIO_PDPU_SEL1_GPIO_PDPU_SEL1_PD << MXC_F_GPIO_PDPU_SEL1_GPIO_PDPU_SEL1_POS) /**< PDPU_SEL1_GPIO_PDPU_SEL1_PD Setting */
546 
547 /**@} end of group GPIO_PDPU_SEL1_Register */
548 
549 /**
550  * @ingroup  gpio_registers
551  * @defgroup GPIO_AF_SEL GPIO_AF_SEL
552  * @brief    GPIO Alternate Function Enable Register. Each bit in this register selects
553  *           between primary/secondary functions for the associated GPIO pin in this port.
554  * @{
555  */
556 #define MXC_F_GPIO_AF_SEL_GPIO_AF_SEL_POS              0 /**< AF_SEL_GPIO_AF_SEL Position */
557 #define MXC_F_GPIO_AF_SEL_GPIO_AF_SEL                  ((uint32_t)(0xFFFFFFFFUL << MXC_F_GPIO_AF_SEL_GPIO_AF_SEL_POS)) /**< AF_SEL_GPIO_AF_SEL Mask */
558 #define MXC_V_GPIO_AF_SEL_GPIO_AF_SEL_PRIMARY          ((uint32_t)0x0UL) /**< AF_SEL_GPIO_AF_SEL_PRIMARY Value */
559 #define MXC_S_GPIO_AF_SEL_GPIO_AF_SEL_PRIMARY          (MXC_V_GPIO_AF_SEL_GPIO_AF_SEL_PRIMARY << MXC_F_GPIO_AF_SEL_GPIO_AF_SEL_POS) /**< AF_SEL_GPIO_AF_SEL_PRIMARY Setting */
560 #define MXC_V_GPIO_AF_SEL_GPIO_AF_SEL_SECONDARY        ((uint32_t)0x1UL) /**< AF_SEL_GPIO_AF_SEL_SECONDARY Value */
561 #define MXC_S_GPIO_AF_SEL_GPIO_AF_SEL_SECONDARY        (MXC_V_GPIO_AF_SEL_GPIO_AF_SEL_SECONDARY << MXC_F_GPIO_AF_SEL_GPIO_AF_SEL_POS) /**< AF_SEL_GPIO_AF_SEL_SECONDARY Setting */
562 
563 /**@} end of group GPIO_AF_SEL_Register */
564 
565 /**
566  * @ingroup  gpio_registers
567  * @defgroup GPIO_AF_SEL_SET GPIO_AF_SEL_SET
568  * @brief    GPIO Alternate Function Selectset. Writing a 1 to one or more bits in this
569  *           register sets the bits in the same positions in GPIO_EN1 to 1, without affecting
570  *           other bits in that register.
571  * @{
572  */
573 #define MXC_F_GPIO_AF_SEL_SET_AF_SEL_SET_POS           0 /**< AF_SEL_SET_AF_SEL_SET Position */
574 #define MXC_F_GPIO_AF_SEL_SET_AF_SEL_SET               ((uint32_t)(0xFFFFFFFFUL << MXC_F_GPIO_AF_SEL_SET_AF_SEL_SET_POS)) /**< AF_SEL_SET_AF_SEL_SET Mask */
575 #define MXC_V_GPIO_AF_SEL_SET_AF_SEL_SET_NO            ((uint32_t)0x0UL) /**< AF_SEL_SET_AF_SEL_SET_NO Value */
576 #define MXC_S_GPIO_AF_SEL_SET_AF_SEL_SET_NO            (MXC_V_GPIO_AF_SEL_SET_AF_SEL_SET_NO << MXC_F_GPIO_AF_SEL_SET_AF_SEL_SET_POS) /**< AF_SEL_SET_AF_SEL_SET_NO Setting */
577 #define MXC_V_GPIO_AF_SEL_SET_AF_SEL_SET_SET           ((uint32_t)0x1UL) /**< AF_SEL_SET_AF_SEL_SET_SET Value */
578 #define MXC_S_GPIO_AF_SEL_SET_AF_SEL_SET_SET           (MXC_V_GPIO_AF_SEL_SET_AF_SEL_SET_SET << MXC_F_GPIO_AF_SEL_SET_AF_SEL_SET_POS) /**< AF_SEL_SET_AF_SEL_SET_SET Setting */
579 
580 /**@} end of group GPIO_AF_SEL_SET_Register */
581 
582 /**
583  * @ingroup  gpio_registers
584  * @defgroup GPIO_AF_SEL_CLR GPIO_AF_SEL_CLR
585  * @brief    GPIO Alternate Function Clear. Writing a 1 to one or more bits in this register
586  *           clears the bits in the same positions in GPIO_EN1 to 0, without affecting other
587  *           bits in that register.
588  * @{
589  */
590 #define MXC_F_GPIO_AF_SEL_CLR_GPIO_AF_SEL_CLR_POS      0 /**< AF_SEL_CLR_GPIO_AF_SEL_CLR Position */
591 #define MXC_F_GPIO_AF_SEL_CLR_GPIO_AF_SEL_CLR          ((uint32_t)(0xFFFFFFFFUL << MXC_F_GPIO_AF_SEL_CLR_GPIO_AF_SEL_CLR_POS)) /**< AF_SEL_CLR_GPIO_AF_SEL_CLR Mask */
592 #define MXC_V_GPIO_AF_SEL_CLR_GPIO_AF_SEL_CLR_NO       ((uint32_t)0x0UL) /**< AF_SEL_CLR_GPIO_AF_SEL_CLR_NO Value */
593 #define MXC_S_GPIO_AF_SEL_CLR_GPIO_AF_SEL_CLR_NO       (MXC_V_GPIO_AF_SEL_CLR_GPIO_AF_SEL_CLR_NO << MXC_F_GPIO_AF_SEL_CLR_GPIO_AF_SEL_CLR_POS) /**< AF_SEL_CLR_GPIO_AF_SEL_CLR_NO Setting */
594 #define MXC_V_GPIO_AF_SEL_CLR_GPIO_AF_SEL_CLR_CLEAR    ((uint32_t)0x1UL) /**< AF_SEL_CLR_GPIO_AF_SEL_CLR_CLEAR Value */
595 #define MXC_S_GPIO_AF_SEL_CLR_GPIO_AF_SEL_CLR_CLEAR    (MXC_V_GPIO_AF_SEL_CLR_GPIO_AF_SEL_CLR_CLEAR << MXC_F_GPIO_AF_SEL_CLR_GPIO_AF_SEL_CLR_POS) /**< AF_SEL_CLR_GPIO_AF_SEL_CLR_CLEAR Setting */
596 
597 /**@} end of group GPIO_AF_SEL_CLR_Register */
598 
599 /**
600  * @ingroup  gpio_registers
601  * @defgroup GPIO_DS_SEL0 GPIO_DS_SEL0
602  * @brief    GPIO Drive Strength  Register. Each bit in this register selects the drive
603  *           strength for the associated GPIO pin in this port. Refer to the Datasheet for
604  *           sink/source current of GPIO pins in each mode. The total drive strength
605  *           multiplier is the multiplication between the two drive strength select
606  *           registers.
607  * @{
608  */
609 #define MXC_F_GPIO_DS_SEL0_GPIO_DS_SEL0_POS            0 /**< DS_SEL0_GPIO_DS_SEL0 Position */
610 #define MXC_F_GPIO_DS_SEL0_GPIO_DS_SEL0                ((uint32_t)(0xFFFFFFFFUL << MXC_F_GPIO_DS_SEL0_GPIO_DS_SEL0_POS)) /**< DS_SEL0_GPIO_DS_SEL0 Mask */
611 #define MXC_V_GPIO_DS_SEL0_GPIO_DS_SEL0_1X             ((uint32_t)0x0UL) /**< DS_SEL0_GPIO_DS_SEL0_1X Value */
612 #define MXC_S_GPIO_DS_SEL0_GPIO_DS_SEL0_1X             (MXC_V_GPIO_DS_SEL0_GPIO_DS_SEL0_1X << MXC_F_GPIO_DS_SEL0_GPIO_DS_SEL0_POS) /**< DS_SEL0_GPIO_DS_SEL0_1X Setting */
613 #define MXC_V_GPIO_DS_SEL0_GPIO_DS_SEL0_2X             ((uint32_t)0x1UL) /**< DS_SEL0_GPIO_DS_SEL0_2X Value */
614 #define MXC_S_GPIO_DS_SEL0_GPIO_DS_SEL0_2X             (MXC_V_GPIO_DS_SEL0_GPIO_DS_SEL0_2X << MXC_F_GPIO_DS_SEL0_GPIO_DS_SEL0_POS) /**< DS_SEL0_GPIO_DS_SEL0_2X Setting */
615 
616 /**@} end of group GPIO_DS_SEL0_Register */
617 
618 /**
619  * @ingroup  gpio_registers
620  * @defgroup GPIO_DS_SEL1 GPIO_DS_SEL1
621  * @brief    GPIO Drive Strength 1 Register. Each bit in this register selects the drive
622  *           strength for the associated GPIO pin in this port. Refer to the Datasheet for
623  *           sink/source current of GPIO pins in each mode. The total drive strength
624  *           multiplier is the multiplication between the two drive strength select
625  *           registers.
626  * @{
627  */
628 #define MXC_F_GPIO_DS_SEL1_GPIO_DS_SEL1_POS            0 /**< DS_SEL1_GPIO_DS_SEL1 Position */
629 #define MXC_F_GPIO_DS_SEL1_GPIO_DS_SEL1                ((uint32_t)(0xFFFFFFFFUL << MXC_F_GPIO_DS_SEL1_GPIO_DS_SEL1_POS)) /**< DS_SEL1_GPIO_DS_SEL1 Mask */
630 #define MXC_V_GPIO_DS_SEL1_GPIO_DS_SEL1_1X             ((uint32_t)0x0UL) /**< DS_SEL1_GPIO_DS_SEL1_1X Value */
631 #define MXC_S_GPIO_DS_SEL1_GPIO_DS_SEL1_1X             (MXC_V_GPIO_DS_SEL1_GPIO_DS_SEL1_1X << MXC_F_GPIO_DS_SEL1_GPIO_DS_SEL1_POS) /**< DS_SEL1_GPIO_DS_SEL1_1X Setting */
632 #define MXC_V_GPIO_DS_SEL1_GPIO_DS_SEL1_4X             ((uint32_t)0x1UL) /**< DS_SEL1_GPIO_DS_SEL1_4X Value */
633 #define MXC_S_GPIO_DS_SEL1_GPIO_DS_SEL1_4X             (MXC_V_GPIO_DS_SEL1_GPIO_DS_SEL1_4X << MXC_F_GPIO_DS_SEL1_GPIO_DS_SEL1_POS) /**< DS_SEL1_GPIO_DS_SEL1_4X Setting */
634 
635 /**@} end of group GPIO_DS_SEL1_Register */
636 
637 /**
638  * @ingroup  gpio_registers
639  * @defgroup GPIO_PSSEL GPIO_PSSEL
640  * @brief    GPIO Pull Select Mode.
641  * @{
642  */
643 #define MXC_F_GPIO_PSSEL_GPIO_PSSEL_POS                0 /**< PSSEL_GPIO_PSSEL Position */
644 #define MXC_F_GPIO_PSSEL_GPIO_PSSEL                    ((uint32_t)(0xFFFFFFFFUL << MXC_F_GPIO_PSSEL_GPIO_PSSEL_POS)) /**< PSSEL_GPIO_PSSEL Mask */
645 #define MXC_V_GPIO_PSSEL_GPIO_PSSEL_WEAK_PDPU          ((uint32_t)0x0UL) /**< PSSEL_GPIO_PSSEL_WEAK_PDPU Value */
646 #define MXC_S_GPIO_PSSEL_GPIO_PSSEL_WEAK_PDPU          (MXC_V_GPIO_PSSEL_GPIO_PSSEL_WEAK_PDPU << MXC_F_GPIO_PSSEL_GPIO_PSSEL_POS) /**< PSSEL_GPIO_PSSEL_WEAK_PDPU Setting */
647 #define MXC_V_GPIO_PSSEL_GPIO_PSSEL_STRONG_PDPU        ((uint32_t)0x1UL) /**< PSSEL_GPIO_PSSEL_STRONG_PDPU Value */
648 #define MXC_S_GPIO_PSSEL_GPIO_PSSEL_STRONG_PDPU        (MXC_V_GPIO_PSSEL_GPIO_PSSEL_STRONG_PDPU << MXC_F_GPIO_PSSEL_GPIO_PSSEL_POS) /**< PSSEL_GPIO_PSSEL_STRONG_PDPU Setting */
649 
650 /**@} end of group GPIO_PSSEL_Register */
651 
652 /**
653  * @ingroup  gpio_registers
654  * @defgroup GPIO_VSSEL GPIO_VSSEL
655  * @brief    GPIO Voltage Select.
656  * @{
657  */
658 #define MXC_F_GPIO_VSSEL_GPIO_VSSEL_POS                0 /**< VSSEL_GPIO_VSSEL Position */
659 #define MXC_F_GPIO_VSSEL_GPIO_VSSEL                    ((uint32_t)(0xFFFFFFFFUL << MXC_F_GPIO_VSSEL_GPIO_VSSEL_POS)) /**< VSSEL_GPIO_VSSEL Mask */
660 #define MXC_V_GPIO_VSSEL_GPIO_VSSEL_VDDIO              ((uint32_t)0x0UL) /**< VSSEL_GPIO_VSSEL_VDDIO Value */
661 #define MXC_S_GPIO_VSSEL_GPIO_VSSEL_VDDIO              (MXC_V_GPIO_VSSEL_GPIO_VSSEL_VDDIO << MXC_F_GPIO_VSSEL_GPIO_VSSEL_POS) /**< VSSEL_GPIO_VSSEL_VDDIO Setting */
662 #define MXC_V_GPIO_VSSEL_GPIO_VSSEL_VDDIOH             ((uint32_t)0x1UL) /**< VSSEL_GPIO_VSSEL_VDDIOH Value */
663 #define MXC_S_GPIO_VSSEL_GPIO_VSSEL_VDDIOH             (MXC_V_GPIO_VSSEL_GPIO_VSSEL_VDDIOH << MXC_F_GPIO_VSSEL_GPIO_VSSEL_POS) /**< VSSEL_GPIO_VSSEL_VDDIOH Setting */
664 
665 /**@} end of group GPIO_VSSEL_Register */
666 
667 #ifdef __cplusplus
668 }
669 #endif
670 
671 #endif // LIBRARIES_CMSIS_DEVICE_MAXIM_MAX32650_INCLUDE_GPIO_REGS_H_
672