1 /**************************************************************************//**
2  * @file
3  * @brief EFR32MG24 KEYSCAN register and bit field definitions
4  ******************************************************************************
5  * # License
6  * <b>Copyright 2022 Silicon Laboratories, Inc. www.silabs.com</b>
7  ******************************************************************************
8  *
9  * SPDX-License-Identifier: Zlib
10  *
11  * The licensor of this software is Silicon Laboratories Inc.
12  *
13  * This software is provided 'as-is', without any express or implied
14  * warranty. In no event will the authors be held liable for any damages
15  * arising from the use of this software.
16  *
17  * Permission is granted to anyone to use this software for any purpose,
18  * including commercial applications, and to alter it and redistribute it
19  * freely, subject to the following restrictions:
20  *
21  * 1. The origin of this software must not be misrepresented; you must not
22  *    claim that you wrote the original software. If you use this software
23  *    in a product, an acknowledgment in the product documentation would be
24  *    appreciated but is not required.
25  * 2. Altered source versions must be plainly marked as such, and must not be
26  *    misrepresented as being the original software.
27  * 3. This notice may not be removed or altered from any source distribution.
28  *
29  *****************************************************************************/
30 #ifndef EFR32MG24_KEYSCAN_H
31 #define EFR32MG24_KEYSCAN_H
32 #define KEYSCAN_HAS_SET_CLEAR
33 
34 /**************************************************************************//**
35 * @addtogroup Parts
36 * @{
37 ******************************************************************************/
38 /**************************************************************************//**
39  * @defgroup EFR32MG24_KEYSCAN KEYSCAN
40  * @{
41  * @brief EFR32MG24 KEYSCAN Register Declaration.
42  *****************************************************************************/
43 
44 /** KEYSCAN Register Declaration. */
45 typedef struct {
46   __IM uint32_t  IPVERSION;                     /**< IPVERSION                                          */
47   __IOM uint32_t EN;                            /**< Enable                                             */
48   __IOM uint32_t SWRST;                         /**< Software Reset                                     */
49   __IOM uint32_t CFG;                           /**< Config                                             */
50   __IOM uint32_t CMD;                           /**< Command                                            */
51   __IOM uint32_t DELAY;                         /**< Delay                                              */
52   __IM uint32_t  STATUS;                        /**< Status                                             */
53   __IOM uint32_t IF;                            /**< Interrupt Flags                                    */
54   __IOM uint32_t IEN;                           /**< Interrupt Enables                                  */
55   uint32_t       RESERVED0[1015U];              /**< Reserved for future use                            */
56   __IM uint32_t  IPVERSION_SET;                 /**< IPVERSION                                          */
57   __IOM uint32_t EN_SET;                        /**< Enable                                             */
58   __IOM uint32_t SWRST_SET;                     /**< Software Reset                                     */
59   __IOM uint32_t CFG_SET;                       /**< Config                                             */
60   __IOM uint32_t CMD_SET;                       /**< Command                                            */
61   __IOM uint32_t DELAY_SET;                     /**< Delay                                              */
62   __IM uint32_t  STATUS_SET;                    /**< Status                                             */
63   __IOM uint32_t IF_SET;                        /**< Interrupt Flags                                    */
64   __IOM uint32_t IEN_SET;                       /**< Interrupt Enables                                  */
65   uint32_t       RESERVED1[1015U];              /**< Reserved for future use                            */
66   __IM uint32_t  IPVERSION_CLR;                 /**< IPVERSION                                          */
67   __IOM uint32_t EN_CLR;                        /**< Enable                                             */
68   __IOM uint32_t SWRST_CLR;                     /**< Software Reset                                     */
69   __IOM uint32_t CFG_CLR;                       /**< Config                                             */
70   __IOM uint32_t CMD_CLR;                       /**< Command                                            */
71   __IOM uint32_t DELAY_CLR;                     /**< Delay                                              */
72   __IM uint32_t  STATUS_CLR;                    /**< Status                                             */
73   __IOM uint32_t IF_CLR;                        /**< Interrupt Flags                                    */
74   __IOM uint32_t IEN_CLR;                       /**< Interrupt Enables                                  */
75   uint32_t       RESERVED2[1015U];              /**< Reserved for future use                            */
76   __IM uint32_t  IPVERSION_TGL;                 /**< IPVERSION                                          */
77   __IOM uint32_t EN_TGL;                        /**< Enable                                             */
78   __IOM uint32_t SWRST_TGL;                     /**< Software Reset                                     */
79   __IOM uint32_t CFG_TGL;                       /**< Config                                             */
80   __IOM uint32_t CMD_TGL;                       /**< Command                                            */
81   __IOM uint32_t DELAY_TGL;                     /**< Delay                                              */
82   __IM uint32_t  STATUS_TGL;                    /**< Status                                             */
83   __IOM uint32_t IF_TGL;                        /**< Interrupt Flags                                    */
84   __IOM uint32_t IEN_TGL;                       /**< Interrupt Enables                                  */
85 } KEYSCAN_TypeDef;
86 /** @} End of group EFR32MG24_KEYSCAN */
87 
88 /**************************************************************************//**
89  * @addtogroup EFR32MG24_KEYSCAN
90  * @{
91  * @defgroup EFR32MG24_KEYSCAN_BitFields KEYSCAN Bit Fields
92  * @{
93  *****************************************************************************/
94 
95 /* Bit fields for KEYSCAN IPVERSION */
96 #define _KEYSCAN_IPVERSION_RESETVALUE           0x00000001UL                                /**< Default value for KEYSCAN_IPVERSION         */
97 #define _KEYSCAN_IPVERSION_MASK                 0xFFFFFFFFUL                                /**< Mask for KEYSCAN_IPVERSION                  */
98 #define _KEYSCAN_IPVERSION_IPVERSION_SHIFT      0                                           /**< Shift value for KEYSCAN_IPVERSION           */
99 #define _KEYSCAN_IPVERSION_IPVERSION_MASK       0xFFFFFFFFUL                                /**< Bit mask for KEYSCAN_IPVERSION              */
100 #define _KEYSCAN_IPVERSION_IPVERSION_DEFAULT    0x00000001UL                                /**< Mode DEFAULT for KEYSCAN_IPVERSION          */
101 #define KEYSCAN_IPVERSION_IPVERSION_DEFAULT     (_KEYSCAN_IPVERSION_IPVERSION_DEFAULT << 0) /**< Shifted mode DEFAULT for KEYSCAN_IPVERSION  */
102 
103 /* Bit fields for KEYSCAN EN */
104 #define _KEYSCAN_EN_RESETVALUE                  0x00000000UL                            /**< Default value for KEYSCAN_EN                */
105 #define _KEYSCAN_EN_MASK                        0x00000003UL                            /**< Mask for KEYSCAN_EN                         */
106 #define KEYSCAN_EN_EN                           (0x1UL << 0)                            /**< Enable                                      */
107 #define _KEYSCAN_EN_EN_SHIFT                    0                                       /**< Shift value for KEYSCAN_EN                  */
108 #define _KEYSCAN_EN_EN_MASK                     0x1UL                                   /**< Bit mask for KEYSCAN_EN                     */
109 #define _KEYSCAN_EN_EN_DEFAULT                  0x00000000UL                            /**< Mode DEFAULT for KEYSCAN_EN                 */
110 #define _KEYSCAN_EN_EN_DISABLE                  0x00000000UL                            /**< Mode DISABLE for KEYSCAN_EN                 */
111 #define _KEYSCAN_EN_EN_ENABLE                   0x00000001UL                            /**< Mode ENABLE for KEYSCAN_EN                  */
112 #define KEYSCAN_EN_EN_DEFAULT                   (_KEYSCAN_EN_EN_DEFAULT << 0)           /**< Shifted mode DEFAULT for KEYSCAN_EN         */
113 #define KEYSCAN_EN_EN_DISABLE                   (_KEYSCAN_EN_EN_DISABLE << 0)           /**< Shifted mode DISABLE for KEYSCAN_EN         */
114 #define KEYSCAN_EN_EN_ENABLE                    (_KEYSCAN_EN_EN_ENABLE << 0)            /**< Shifted mode ENABLE for KEYSCAN_EN          */
115 #define KEYSCAN_EN_DISABLING                    (0x1UL << 1)                            /**< Disablement busy status                     */
116 #define _KEYSCAN_EN_DISABLING_SHIFT             1                                       /**< Shift value for KEYSCAN_DISABLING           */
117 #define _KEYSCAN_EN_DISABLING_MASK              0x2UL                                   /**< Bit mask for KEYSCAN_DISABLING              */
118 #define _KEYSCAN_EN_DISABLING_DEFAULT           0x00000000UL                            /**< Mode DEFAULT for KEYSCAN_EN                 */
119 #define KEYSCAN_EN_DISABLING_DEFAULT            (_KEYSCAN_EN_DISABLING_DEFAULT << 1)    /**< Shifted mode DEFAULT for KEYSCAN_EN         */
120 
121 /* Bit fields for KEYSCAN SWRST */
122 #define _KEYSCAN_SWRST_RESETVALUE               0x00000000UL                            /**< Default value for KEYSCAN_SWRST             */
123 #define _KEYSCAN_SWRST_MASK                     0x00000003UL                            /**< Mask for KEYSCAN_SWRST                      */
124 #define KEYSCAN_SWRST_SWRST                     (0x1UL << 0)                            /**< Software reset command                      */
125 #define _KEYSCAN_SWRST_SWRST_SHIFT              0                                       /**< Shift value for KEYSCAN_SWRST               */
126 #define _KEYSCAN_SWRST_SWRST_MASK               0x1UL                                   /**< Bit mask for KEYSCAN_SWRST                  */
127 #define _KEYSCAN_SWRST_SWRST_DEFAULT            0x00000000UL                            /**< Mode DEFAULT for KEYSCAN_SWRST              */
128 #define KEYSCAN_SWRST_SWRST_DEFAULT             (_KEYSCAN_SWRST_SWRST_DEFAULT << 0)     /**< Shifted mode DEFAULT for KEYSCAN_SWRST      */
129 #define KEYSCAN_SWRST_RESETTING                 (0x1UL << 1)                            /**< Software reset busy status                  */
130 #define _KEYSCAN_SWRST_RESETTING_SHIFT          1                                       /**< Shift value for KEYSCAN_RESETTING           */
131 #define _KEYSCAN_SWRST_RESETTING_MASK           0x2UL                                   /**< Bit mask for KEYSCAN_RESETTING              */
132 #define _KEYSCAN_SWRST_RESETTING_DEFAULT        0x00000000UL                            /**< Mode DEFAULT for KEYSCAN_SWRST              */
133 #define KEYSCAN_SWRST_RESETTING_DEFAULT         (_KEYSCAN_SWRST_RESETTING_DEFAULT << 1) /**< Shifted mode DEFAULT for KEYSCAN_SWRST      */
134 
135 /* Bit fields for KEYSCAN CFG */
136 #define _KEYSCAN_CFG_RESETVALUE                 0x2501387FUL                                 /**< Default value for KEYSCAN_CFG               */
137 #define _KEYSCAN_CFG_MASK                       0x7753FFFFUL                                 /**< Mask for KEYSCAN_CFG                        */
138 #define _KEYSCAN_CFG_CLKDIV_SHIFT               0                                            /**< Shift value for KEYSCAN_CLKDIV              */
139 #define _KEYSCAN_CFG_CLKDIV_MASK                0x3FFFFUL                                    /**< Bit mask for KEYSCAN_CLKDIV                 */
140 #define _KEYSCAN_CFG_CLKDIV_DEFAULT             0x0001387FUL                                 /**< Mode DEFAULT for KEYSCAN_CFG                */
141 #define KEYSCAN_CFG_CLKDIV_DEFAULT              (_KEYSCAN_CFG_CLKDIV_DEFAULT << 0)           /**< Shifted mode DEFAULT for KEYSCAN_CFG        */
142 #define KEYSCAN_CFG_SINGLEPRESS                 (0x1UL << 20)                                /**< Single Press                                */
143 #define _KEYSCAN_CFG_SINGLEPRESS_SHIFT          20                                           /**< Shift value for KEYSCAN_SINGLEPRESS         */
144 #define _KEYSCAN_CFG_SINGLEPRESS_MASK           0x100000UL                                   /**< Bit mask for KEYSCAN_SINGLEPRESS            */
145 #define _KEYSCAN_CFG_SINGLEPRESS_DEFAULT        0x00000000UL                                 /**< Mode DEFAULT for KEYSCAN_CFG                */
146 #define _KEYSCAN_CFG_SINGLEPRESS_MULTIPRESS     0x00000000UL                                 /**< Mode MULTIPRESS for KEYSCAN_CFG             */
147 #define _KEYSCAN_CFG_SINGLEPRESS_SINGLEPRESS    0x00000001UL                                 /**< Mode SINGLEPRESS for KEYSCAN_CFG            */
148 #define KEYSCAN_CFG_SINGLEPRESS_DEFAULT         (_KEYSCAN_CFG_SINGLEPRESS_DEFAULT << 20)     /**< Shifted mode DEFAULT for KEYSCAN_CFG        */
149 #define KEYSCAN_CFG_SINGLEPRESS_MULTIPRESS      (_KEYSCAN_CFG_SINGLEPRESS_MULTIPRESS << 20)  /**< Shifted mode MULTIPRESS for KEYSCAN_CFG     */
150 #define KEYSCAN_CFG_SINGLEPRESS_SINGLEPRESS     (_KEYSCAN_CFG_SINGLEPRESS_SINGLEPRESS << 20) /**< Shifted mode SINGLEPRESS for KEYSCAN_CFG    */
151 #define KEYSCAN_CFG_AUTOSTART                   (0x1UL << 22)                                /**< Automatically Start                         */
152 #define _KEYSCAN_CFG_AUTOSTART_SHIFT            22                                           /**< Shift value for KEYSCAN_AUTOSTART           */
153 #define _KEYSCAN_CFG_AUTOSTART_MASK             0x400000UL                                   /**< Bit mask for KEYSCAN_AUTOSTART              */
154 #define _KEYSCAN_CFG_AUTOSTART_DEFAULT          0x00000000UL                                 /**< Mode DEFAULT for KEYSCAN_CFG                */
155 #define _KEYSCAN_CFG_AUTOSTART_AUTOSTARTDIS     0x00000000UL                                 /**< Mode AUTOSTARTDIS for KEYSCAN_CFG           */
156 #define _KEYSCAN_CFG_AUTOSTART_AUTOSTARTEN      0x00000001UL                                 /**< Mode AUTOSTARTEN for KEYSCAN_CFG            */
157 #define KEYSCAN_CFG_AUTOSTART_DEFAULT           (_KEYSCAN_CFG_AUTOSTART_DEFAULT << 22)       /**< Shifted mode DEFAULT for KEYSCAN_CFG        */
158 #define KEYSCAN_CFG_AUTOSTART_AUTOSTARTDIS      (_KEYSCAN_CFG_AUTOSTART_AUTOSTARTDIS << 22)  /**< Shifted mode AUTOSTARTDIS for KEYSCAN_CFG   */
159 #define KEYSCAN_CFG_AUTOSTART_AUTOSTARTEN       (_KEYSCAN_CFG_AUTOSTART_AUTOSTARTEN << 22)   /**< Shifted mode AUTOSTARTEN for KEYSCAN_CFG    */
160 #define _KEYSCAN_CFG_NUMROWS_SHIFT              24                                           /**< Shift value for KEYSCAN_NUMROWS             */
161 #define _KEYSCAN_CFG_NUMROWS_MASK               0x7000000UL                                  /**< Bit mask for KEYSCAN_NUMROWS                */
162 #define _KEYSCAN_CFG_NUMROWS_DEFAULT            0x00000005UL                                 /**< Mode DEFAULT for KEYSCAN_CFG                */
163 #define _KEYSCAN_CFG_NUMROWS_RSV1               0x00000000UL                                 /**< Mode RSV1 for KEYSCAN_CFG                   */
164 #define _KEYSCAN_CFG_NUMROWS_RSV2               0x00000001UL                                 /**< Mode RSV2 for KEYSCAN_CFG                   */
165 #define _KEYSCAN_CFG_NUMROWS_ROW3               0x00000002UL                                 /**< Mode ROW3 for KEYSCAN_CFG                   */
166 #define _KEYSCAN_CFG_NUMROWS_ROW4               0x00000003UL                                 /**< Mode ROW4 for KEYSCAN_CFG                   */
167 #define _KEYSCAN_CFG_NUMROWS_ROW5               0x00000004UL                                 /**< Mode ROW5 for KEYSCAN_CFG                   */
168 #define _KEYSCAN_CFG_NUMROWS_ROW6               0x00000005UL                                 /**< Mode ROW6 for KEYSCAN_CFG                   */
169 #define KEYSCAN_CFG_NUMROWS_DEFAULT             (_KEYSCAN_CFG_NUMROWS_DEFAULT << 24)         /**< Shifted mode DEFAULT for KEYSCAN_CFG        */
170 #define KEYSCAN_CFG_NUMROWS_RSV1                (_KEYSCAN_CFG_NUMROWS_RSV1 << 24)            /**< Shifted mode RSV1 for KEYSCAN_CFG           */
171 #define KEYSCAN_CFG_NUMROWS_RSV2                (_KEYSCAN_CFG_NUMROWS_RSV2 << 24)            /**< Shifted mode RSV2 for KEYSCAN_CFG           */
172 #define KEYSCAN_CFG_NUMROWS_ROW3                (_KEYSCAN_CFG_NUMROWS_ROW3 << 24)            /**< Shifted mode ROW3 for KEYSCAN_CFG           */
173 #define KEYSCAN_CFG_NUMROWS_ROW4                (_KEYSCAN_CFG_NUMROWS_ROW4 << 24)            /**< Shifted mode ROW4 for KEYSCAN_CFG           */
174 #define KEYSCAN_CFG_NUMROWS_ROW5                (_KEYSCAN_CFG_NUMROWS_ROW5 << 24)            /**< Shifted mode ROW5 for KEYSCAN_CFG           */
175 #define KEYSCAN_CFG_NUMROWS_ROW6                (_KEYSCAN_CFG_NUMROWS_ROW6 << 24)            /**< Shifted mode ROW6 for KEYSCAN_CFG           */
176 #define _KEYSCAN_CFG_NUMCOLS_SHIFT              28                                           /**< Shift value for KEYSCAN_NUMCOLS             */
177 #define _KEYSCAN_CFG_NUMCOLS_MASK               0x70000000UL                                 /**< Bit mask for KEYSCAN_NUMCOLS                */
178 #define _KEYSCAN_CFG_NUMCOLS_DEFAULT            0x00000002UL                                 /**< Mode DEFAULT for KEYSCAN_CFG                */
179 #define KEYSCAN_CFG_NUMCOLS_DEFAULT             (_KEYSCAN_CFG_NUMCOLS_DEFAULT << 28)         /**< Shifted mode DEFAULT for KEYSCAN_CFG        */
180 
181 /* Bit fields for KEYSCAN CMD */
182 #define _KEYSCAN_CMD_RESETVALUE                 0x00000000UL                             /**< Default value for KEYSCAN_CMD               */
183 #define _KEYSCAN_CMD_MASK                       0x00000003UL                             /**< Mask for KEYSCAN_CMD                        */
184 #define KEYSCAN_CMD_KEYSCANSTART                (0x1UL << 0)                             /**< Keyscan Start                               */
185 #define _KEYSCAN_CMD_KEYSCANSTART_SHIFT         0                                        /**< Shift value for KEYSCAN_KEYSCANSTART        */
186 #define _KEYSCAN_CMD_KEYSCANSTART_MASK          0x1UL                                    /**< Bit mask for KEYSCAN_KEYSCANSTART           */
187 #define _KEYSCAN_CMD_KEYSCANSTART_DEFAULT       0x00000000UL                             /**< Mode DEFAULT for KEYSCAN_CMD                */
188 #define KEYSCAN_CMD_KEYSCANSTART_DEFAULT        (_KEYSCAN_CMD_KEYSCANSTART_DEFAULT << 0) /**< Shifted mode DEFAULT for KEYSCAN_CMD        */
189 #define KEYSCAN_CMD_KEYSCANSTOP                 (0x1UL << 1)                             /**< Keyscan Stop                                */
190 #define _KEYSCAN_CMD_KEYSCANSTOP_SHIFT          1                                        /**< Shift value for KEYSCAN_KEYSCANSTOP         */
191 #define _KEYSCAN_CMD_KEYSCANSTOP_MASK           0x2UL                                    /**< Bit mask for KEYSCAN_KEYSCANSTOP            */
192 #define _KEYSCAN_CMD_KEYSCANSTOP_DEFAULT        0x00000000UL                             /**< Mode DEFAULT for KEYSCAN_CMD                */
193 #define KEYSCAN_CMD_KEYSCANSTOP_DEFAULT         (_KEYSCAN_CMD_KEYSCANSTOP_DEFAULT << 1)  /**< Shifted mode DEFAULT for KEYSCAN_CMD        */
194 
195 /* Bit fields for KEYSCAN DELAY */
196 #define _KEYSCAN_DELAY_RESETVALUE               0x00000000UL                             /**< Default value for KEYSCAN_DELAY             */
197 #define _KEYSCAN_DELAY_MASK                     0x0F0F0F00UL                             /**< Mask for KEYSCAN_DELAY                      */
198 #define _KEYSCAN_DELAY_SCANDLY_SHIFT            8                                        /**< Shift value for KEYSCAN_SCANDLY             */
199 #define _KEYSCAN_DELAY_SCANDLY_MASK             0xF00UL                                  /**< Bit mask for KEYSCAN_SCANDLY                */
200 #define _KEYSCAN_DELAY_SCANDLY_DEFAULT          0x00000000UL                             /**< Mode DEFAULT for KEYSCAN_DELAY              */
201 #define _KEYSCAN_DELAY_SCANDLY_SCANDLY2         0x00000000UL                             /**< Mode SCANDLY2 for KEYSCAN_DELAY             */
202 #define _KEYSCAN_DELAY_SCANDLY_SCANDLY4         0x00000001UL                             /**< Mode SCANDLY4 for KEYSCAN_DELAY             */
203 #define _KEYSCAN_DELAY_SCANDLY_SCANDLY6         0x00000002UL                             /**< Mode SCANDLY6 for KEYSCAN_DELAY             */
204 #define _KEYSCAN_DELAY_SCANDLY_SCANDLY8         0x00000003UL                             /**< Mode SCANDLY8 for KEYSCAN_DELAY             */
205 #define _KEYSCAN_DELAY_SCANDLY_SCANDLY10        0x00000004UL                             /**< Mode SCANDLY10 for KEYSCAN_DELAY            */
206 #define _KEYSCAN_DELAY_SCANDLY_SCANDLY12        0x00000005UL                             /**< Mode SCANDLY12 for KEYSCAN_DELAY            */
207 #define _KEYSCAN_DELAY_SCANDLY_SCANDLY14        0x00000006UL                             /**< Mode SCANDLY14 for KEYSCAN_DELAY            */
208 #define _KEYSCAN_DELAY_SCANDLY_SCANDLY16        0x00000007UL                             /**< Mode SCANDLY16 for KEYSCAN_DELAY            */
209 #define _KEYSCAN_DELAY_SCANDLY_SCANDLY18        0x00000008UL                             /**< Mode SCANDLY18 for KEYSCAN_DELAY            */
210 #define _KEYSCAN_DELAY_SCANDLY_SCANDLY20        0x00000009UL                             /**< Mode SCANDLY20 for KEYSCAN_DELAY            */
211 #define _KEYSCAN_DELAY_SCANDLY_SCANDLY22        0x0000000AUL                             /**< Mode SCANDLY22 for KEYSCAN_DELAY            */
212 #define _KEYSCAN_DELAY_SCANDLY_SCANDLY24        0x0000000BUL                             /**< Mode SCANDLY24 for KEYSCAN_DELAY            */
213 #define _KEYSCAN_DELAY_SCANDLY_SCANDLY26        0x0000000CUL                             /**< Mode SCANDLY26 for KEYSCAN_DELAY            */
214 #define _KEYSCAN_DELAY_SCANDLY_SCANDLY28        0x0000000DUL                             /**< Mode SCANDLY28 for KEYSCAN_DELAY            */
215 #define _KEYSCAN_DELAY_SCANDLY_SCANDLY30        0x0000000EUL                             /**< Mode SCANDLY30 for KEYSCAN_DELAY            */
216 #define _KEYSCAN_DELAY_SCANDLY_SCANDLY32        0x0000000FUL                             /**< Mode SCANDLY32 for KEYSCAN_DELAY            */
217 #define KEYSCAN_DELAY_SCANDLY_DEFAULT           (_KEYSCAN_DELAY_SCANDLY_DEFAULT << 8)    /**< Shifted mode DEFAULT for KEYSCAN_DELAY      */
218 #define KEYSCAN_DELAY_SCANDLY_SCANDLY2          (_KEYSCAN_DELAY_SCANDLY_SCANDLY2 << 8)   /**< Shifted mode SCANDLY2 for KEYSCAN_DELAY     */
219 #define KEYSCAN_DELAY_SCANDLY_SCANDLY4          (_KEYSCAN_DELAY_SCANDLY_SCANDLY4 << 8)   /**< Shifted mode SCANDLY4 for KEYSCAN_DELAY     */
220 #define KEYSCAN_DELAY_SCANDLY_SCANDLY6          (_KEYSCAN_DELAY_SCANDLY_SCANDLY6 << 8)   /**< Shifted mode SCANDLY6 for KEYSCAN_DELAY     */
221 #define KEYSCAN_DELAY_SCANDLY_SCANDLY8          (_KEYSCAN_DELAY_SCANDLY_SCANDLY8 << 8)   /**< Shifted mode SCANDLY8 for KEYSCAN_DELAY     */
222 #define KEYSCAN_DELAY_SCANDLY_SCANDLY10         (_KEYSCAN_DELAY_SCANDLY_SCANDLY10 << 8)  /**< Shifted mode SCANDLY10 for KEYSCAN_DELAY    */
223 #define KEYSCAN_DELAY_SCANDLY_SCANDLY12         (_KEYSCAN_DELAY_SCANDLY_SCANDLY12 << 8)  /**< Shifted mode SCANDLY12 for KEYSCAN_DELAY    */
224 #define KEYSCAN_DELAY_SCANDLY_SCANDLY14         (_KEYSCAN_DELAY_SCANDLY_SCANDLY14 << 8)  /**< Shifted mode SCANDLY14 for KEYSCAN_DELAY    */
225 #define KEYSCAN_DELAY_SCANDLY_SCANDLY16         (_KEYSCAN_DELAY_SCANDLY_SCANDLY16 << 8)  /**< Shifted mode SCANDLY16 for KEYSCAN_DELAY    */
226 #define KEYSCAN_DELAY_SCANDLY_SCANDLY18         (_KEYSCAN_DELAY_SCANDLY_SCANDLY18 << 8)  /**< Shifted mode SCANDLY18 for KEYSCAN_DELAY    */
227 #define KEYSCAN_DELAY_SCANDLY_SCANDLY20         (_KEYSCAN_DELAY_SCANDLY_SCANDLY20 << 8)  /**< Shifted mode SCANDLY20 for KEYSCAN_DELAY    */
228 #define KEYSCAN_DELAY_SCANDLY_SCANDLY22         (_KEYSCAN_DELAY_SCANDLY_SCANDLY22 << 8)  /**< Shifted mode SCANDLY22 for KEYSCAN_DELAY    */
229 #define KEYSCAN_DELAY_SCANDLY_SCANDLY24         (_KEYSCAN_DELAY_SCANDLY_SCANDLY24 << 8)  /**< Shifted mode SCANDLY24 for KEYSCAN_DELAY    */
230 #define KEYSCAN_DELAY_SCANDLY_SCANDLY26         (_KEYSCAN_DELAY_SCANDLY_SCANDLY26 << 8)  /**< Shifted mode SCANDLY26 for KEYSCAN_DELAY    */
231 #define KEYSCAN_DELAY_SCANDLY_SCANDLY28         (_KEYSCAN_DELAY_SCANDLY_SCANDLY28 << 8)  /**< Shifted mode SCANDLY28 for KEYSCAN_DELAY    */
232 #define KEYSCAN_DELAY_SCANDLY_SCANDLY30         (_KEYSCAN_DELAY_SCANDLY_SCANDLY30 << 8)  /**< Shifted mode SCANDLY30 for KEYSCAN_DELAY    */
233 #define KEYSCAN_DELAY_SCANDLY_SCANDLY32         (_KEYSCAN_DELAY_SCANDLY_SCANDLY32 << 8)  /**< Shifted mode SCANDLY32 for KEYSCAN_DELAY    */
234 #define _KEYSCAN_DELAY_DEBDLY_SHIFT             16                                       /**< Shift value for KEYSCAN_DEBDLY              */
235 #define _KEYSCAN_DELAY_DEBDLY_MASK              0xF0000UL                                /**< Bit mask for KEYSCAN_DEBDLY                 */
236 #define _KEYSCAN_DELAY_DEBDLY_DEFAULT           0x00000000UL                             /**< Mode DEFAULT for KEYSCAN_DELAY              */
237 #define _KEYSCAN_DELAY_DEBDLY_DEBDLY2           0x00000000UL                             /**< Mode DEBDLY2 for KEYSCAN_DELAY              */
238 #define _KEYSCAN_DELAY_DEBDLY_DEBDLY4           0x00000001UL                             /**< Mode DEBDLY4 for KEYSCAN_DELAY              */
239 #define _KEYSCAN_DELAY_DEBDLY_DEBDLY6           0x00000002UL                             /**< Mode DEBDLY6 for KEYSCAN_DELAY              */
240 #define _KEYSCAN_DELAY_DEBDLY_DEBDLY8           0x00000003UL                             /**< Mode DEBDLY8 for KEYSCAN_DELAY              */
241 #define _KEYSCAN_DELAY_DEBDLY_DEBDLY10          0x00000004UL                             /**< Mode DEBDLY10 for KEYSCAN_DELAY             */
242 #define _KEYSCAN_DELAY_DEBDLY_DEBDLY12          0x00000005UL                             /**< Mode DEBDLY12 for KEYSCAN_DELAY             */
243 #define _KEYSCAN_DELAY_DEBDLY_DEBDLY14          0x00000006UL                             /**< Mode DEBDLY14 for KEYSCAN_DELAY             */
244 #define _KEYSCAN_DELAY_DEBDLY_DEBDLY16          0x00000007UL                             /**< Mode DEBDLY16 for KEYSCAN_DELAY             */
245 #define _KEYSCAN_DELAY_DEBDLY_DEBDLY18          0x00000008UL                             /**< Mode DEBDLY18 for KEYSCAN_DELAY             */
246 #define _KEYSCAN_DELAY_DEBDLY_DEBDLY20          0x00000009UL                             /**< Mode DEBDLY20 for KEYSCAN_DELAY             */
247 #define _KEYSCAN_DELAY_DEBDLY_DEBDLY22          0x0000000AUL                             /**< Mode DEBDLY22 for KEYSCAN_DELAY             */
248 #define _KEYSCAN_DELAY_DEBDLY_DEBDLY24          0x0000000BUL                             /**< Mode DEBDLY24 for KEYSCAN_DELAY             */
249 #define _KEYSCAN_DELAY_DEBDLY_DEBDLY26          0x0000000CUL                             /**< Mode DEBDLY26 for KEYSCAN_DELAY             */
250 #define _KEYSCAN_DELAY_DEBDLY_DEBDLY28          0x0000000DUL                             /**< Mode DEBDLY28 for KEYSCAN_DELAY             */
251 #define _KEYSCAN_DELAY_DEBDLY_DEBDLY30          0x0000000EUL                             /**< Mode DEBDLY30 for KEYSCAN_DELAY             */
252 #define _KEYSCAN_DELAY_DEBDLY_DEBDLY32          0x0000000FUL                             /**< Mode DEBDLY32 for KEYSCAN_DELAY             */
253 #define KEYSCAN_DELAY_DEBDLY_DEFAULT            (_KEYSCAN_DELAY_DEBDLY_DEFAULT << 16)    /**< Shifted mode DEFAULT for KEYSCAN_DELAY      */
254 #define KEYSCAN_DELAY_DEBDLY_DEBDLY2            (_KEYSCAN_DELAY_DEBDLY_DEBDLY2 << 16)    /**< Shifted mode DEBDLY2 for KEYSCAN_DELAY      */
255 #define KEYSCAN_DELAY_DEBDLY_DEBDLY4            (_KEYSCAN_DELAY_DEBDLY_DEBDLY4 << 16)    /**< Shifted mode DEBDLY4 for KEYSCAN_DELAY      */
256 #define KEYSCAN_DELAY_DEBDLY_DEBDLY6            (_KEYSCAN_DELAY_DEBDLY_DEBDLY6 << 16)    /**< Shifted mode DEBDLY6 for KEYSCAN_DELAY      */
257 #define KEYSCAN_DELAY_DEBDLY_DEBDLY8            (_KEYSCAN_DELAY_DEBDLY_DEBDLY8 << 16)    /**< Shifted mode DEBDLY8 for KEYSCAN_DELAY      */
258 #define KEYSCAN_DELAY_DEBDLY_DEBDLY10           (_KEYSCAN_DELAY_DEBDLY_DEBDLY10 << 16)   /**< Shifted mode DEBDLY10 for KEYSCAN_DELAY     */
259 #define KEYSCAN_DELAY_DEBDLY_DEBDLY12           (_KEYSCAN_DELAY_DEBDLY_DEBDLY12 << 16)   /**< Shifted mode DEBDLY12 for KEYSCAN_DELAY     */
260 #define KEYSCAN_DELAY_DEBDLY_DEBDLY14           (_KEYSCAN_DELAY_DEBDLY_DEBDLY14 << 16)   /**< Shifted mode DEBDLY14 for KEYSCAN_DELAY     */
261 #define KEYSCAN_DELAY_DEBDLY_DEBDLY16           (_KEYSCAN_DELAY_DEBDLY_DEBDLY16 << 16)   /**< Shifted mode DEBDLY16 for KEYSCAN_DELAY     */
262 #define KEYSCAN_DELAY_DEBDLY_DEBDLY18           (_KEYSCAN_DELAY_DEBDLY_DEBDLY18 << 16)   /**< Shifted mode DEBDLY18 for KEYSCAN_DELAY     */
263 #define KEYSCAN_DELAY_DEBDLY_DEBDLY20           (_KEYSCAN_DELAY_DEBDLY_DEBDLY20 << 16)   /**< Shifted mode DEBDLY20 for KEYSCAN_DELAY     */
264 #define KEYSCAN_DELAY_DEBDLY_DEBDLY22           (_KEYSCAN_DELAY_DEBDLY_DEBDLY22 << 16)   /**< Shifted mode DEBDLY22 for KEYSCAN_DELAY     */
265 #define KEYSCAN_DELAY_DEBDLY_DEBDLY24           (_KEYSCAN_DELAY_DEBDLY_DEBDLY24 << 16)   /**< Shifted mode DEBDLY24 for KEYSCAN_DELAY     */
266 #define KEYSCAN_DELAY_DEBDLY_DEBDLY26           (_KEYSCAN_DELAY_DEBDLY_DEBDLY26 << 16)   /**< Shifted mode DEBDLY26 for KEYSCAN_DELAY     */
267 #define KEYSCAN_DELAY_DEBDLY_DEBDLY28           (_KEYSCAN_DELAY_DEBDLY_DEBDLY28 << 16)   /**< Shifted mode DEBDLY28 for KEYSCAN_DELAY     */
268 #define KEYSCAN_DELAY_DEBDLY_DEBDLY30           (_KEYSCAN_DELAY_DEBDLY_DEBDLY30 << 16)   /**< Shifted mode DEBDLY30 for KEYSCAN_DELAY     */
269 #define KEYSCAN_DELAY_DEBDLY_DEBDLY32           (_KEYSCAN_DELAY_DEBDLY_DEBDLY32 << 16)   /**< Shifted mode DEBDLY32 for KEYSCAN_DELAY     */
270 #define _KEYSCAN_DELAY_STABDLY_SHIFT            24                                       /**< Shift value for KEYSCAN_STABDLY             */
271 #define _KEYSCAN_DELAY_STABDLY_MASK             0xF000000UL                              /**< Bit mask for KEYSCAN_STABDLY                */
272 #define _KEYSCAN_DELAY_STABDLY_DEFAULT          0x00000000UL                             /**< Mode DEFAULT for KEYSCAN_DELAY              */
273 #define _KEYSCAN_DELAY_STABDLY_STABDLY2         0x00000000UL                             /**< Mode STABDLY2 for KEYSCAN_DELAY             */
274 #define _KEYSCAN_DELAY_STABDLY_STABDLY4         0x00000001UL                             /**< Mode STABDLY4 for KEYSCAN_DELAY             */
275 #define _KEYSCAN_DELAY_STABDLY_STABDLY6         0x00000002UL                             /**< Mode STABDLY6 for KEYSCAN_DELAY             */
276 #define _KEYSCAN_DELAY_STABDLY_STABDLY8         0x00000003UL                             /**< Mode STABDLY8 for KEYSCAN_DELAY             */
277 #define _KEYSCAN_DELAY_STABDLY_STABDLY10        0x00000004UL                             /**< Mode STABDLY10 for KEYSCAN_DELAY            */
278 #define _KEYSCAN_DELAY_STABDLY_STABDLY12        0x00000005UL                             /**< Mode STABDLY12 for KEYSCAN_DELAY            */
279 #define _KEYSCAN_DELAY_STABDLY_STABDLY14        0x00000006UL                             /**< Mode STABDLY14 for KEYSCAN_DELAY            */
280 #define _KEYSCAN_DELAY_STABDLY_STABDLY16        0x00000007UL                             /**< Mode STABDLY16 for KEYSCAN_DELAY            */
281 #define _KEYSCAN_DELAY_STABDLY_STABDLY18        0x00000008UL                             /**< Mode STABDLY18 for KEYSCAN_DELAY            */
282 #define _KEYSCAN_DELAY_STABDLY_STABDLY20        0x00000009UL                             /**< Mode STABDLY20 for KEYSCAN_DELAY            */
283 #define _KEYSCAN_DELAY_STABDLY_STABDLY22        0x0000000AUL                             /**< Mode STABDLY22 for KEYSCAN_DELAY            */
284 #define _KEYSCAN_DELAY_STABDLY_STABDLY24        0x0000000BUL                             /**< Mode STABDLY24 for KEYSCAN_DELAY            */
285 #define _KEYSCAN_DELAY_STABDLY_STABDLY26        0x0000000CUL                             /**< Mode STABDLY26 for KEYSCAN_DELAY            */
286 #define _KEYSCAN_DELAY_STABDLY_STABDLY28        0x0000000DUL                             /**< Mode STABDLY28 for KEYSCAN_DELAY            */
287 #define _KEYSCAN_DELAY_STABDLY_STABDLY30        0x0000000EUL                             /**< Mode STABDLY30 for KEYSCAN_DELAY            */
288 #define _KEYSCAN_DELAY_STABDLY_STABDLY32        0x0000000FUL                             /**< Mode STABDLY32 for KEYSCAN_DELAY            */
289 #define KEYSCAN_DELAY_STABDLY_DEFAULT           (_KEYSCAN_DELAY_STABDLY_DEFAULT << 24)   /**< Shifted mode DEFAULT for KEYSCAN_DELAY      */
290 #define KEYSCAN_DELAY_STABDLY_STABDLY2          (_KEYSCAN_DELAY_STABDLY_STABDLY2 << 24)  /**< Shifted mode STABDLY2 for KEYSCAN_DELAY     */
291 #define KEYSCAN_DELAY_STABDLY_STABDLY4          (_KEYSCAN_DELAY_STABDLY_STABDLY4 << 24)  /**< Shifted mode STABDLY4 for KEYSCAN_DELAY     */
292 #define KEYSCAN_DELAY_STABDLY_STABDLY6          (_KEYSCAN_DELAY_STABDLY_STABDLY6 << 24)  /**< Shifted mode STABDLY6 for KEYSCAN_DELAY     */
293 #define KEYSCAN_DELAY_STABDLY_STABDLY8          (_KEYSCAN_DELAY_STABDLY_STABDLY8 << 24)  /**< Shifted mode STABDLY8 for KEYSCAN_DELAY     */
294 #define KEYSCAN_DELAY_STABDLY_STABDLY10         (_KEYSCAN_DELAY_STABDLY_STABDLY10 << 24) /**< Shifted mode STABDLY10 for KEYSCAN_DELAY    */
295 #define KEYSCAN_DELAY_STABDLY_STABDLY12         (_KEYSCAN_DELAY_STABDLY_STABDLY12 << 24) /**< Shifted mode STABDLY12 for KEYSCAN_DELAY    */
296 #define KEYSCAN_DELAY_STABDLY_STABDLY14         (_KEYSCAN_DELAY_STABDLY_STABDLY14 << 24) /**< Shifted mode STABDLY14 for KEYSCAN_DELAY    */
297 #define KEYSCAN_DELAY_STABDLY_STABDLY16         (_KEYSCAN_DELAY_STABDLY_STABDLY16 << 24) /**< Shifted mode STABDLY16 for KEYSCAN_DELAY    */
298 #define KEYSCAN_DELAY_STABDLY_STABDLY18         (_KEYSCAN_DELAY_STABDLY_STABDLY18 << 24) /**< Shifted mode STABDLY18 for KEYSCAN_DELAY    */
299 #define KEYSCAN_DELAY_STABDLY_STABDLY20         (_KEYSCAN_DELAY_STABDLY_STABDLY20 << 24) /**< Shifted mode STABDLY20 for KEYSCAN_DELAY    */
300 #define KEYSCAN_DELAY_STABDLY_STABDLY22         (_KEYSCAN_DELAY_STABDLY_STABDLY22 << 24) /**< Shifted mode STABDLY22 for KEYSCAN_DELAY    */
301 #define KEYSCAN_DELAY_STABDLY_STABDLY24         (_KEYSCAN_DELAY_STABDLY_STABDLY24 << 24) /**< Shifted mode STABDLY24 for KEYSCAN_DELAY    */
302 #define KEYSCAN_DELAY_STABDLY_STABDLY26         (_KEYSCAN_DELAY_STABDLY_STABDLY26 << 24) /**< Shifted mode STABDLY26 for KEYSCAN_DELAY    */
303 #define KEYSCAN_DELAY_STABDLY_STABDLY28         (_KEYSCAN_DELAY_STABDLY_STABDLY28 << 24) /**< Shifted mode STABDLY28 for KEYSCAN_DELAY    */
304 #define KEYSCAN_DELAY_STABDLY_STABDLY30         (_KEYSCAN_DELAY_STABDLY_STABDLY30 << 24) /**< Shifted mode STABDLY30 for KEYSCAN_DELAY    */
305 #define KEYSCAN_DELAY_STABDLY_STABDLY32         (_KEYSCAN_DELAY_STABDLY_STABDLY32 << 24) /**< Shifted mode STABDLY32 for KEYSCAN_DELAY    */
306 
307 /* Bit fields for KEYSCAN STATUS */
308 #define _KEYSCAN_STATUS_RESETVALUE              0x40000000UL                             /**< Default value for KEYSCAN_STATUS            */
309 #define _KEYSCAN_STATUS_MASK                    0xC701003FUL                             /**< Mask for KEYSCAN_STATUS                     */
310 #define _KEYSCAN_STATUS_ROW_SHIFT               0                                        /**< Shift value for KEYSCAN_ROW                 */
311 #define _KEYSCAN_STATUS_ROW_MASK                0x3FUL                                   /**< Bit mask for KEYSCAN_ROW                    */
312 #define _KEYSCAN_STATUS_ROW_DEFAULT             0x00000000UL                             /**< Mode DEFAULT for KEYSCAN_STATUS             */
313 #define KEYSCAN_STATUS_ROW_DEFAULT              (_KEYSCAN_STATUS_ROW_DEFAULT << 0)       /**< Shifted mode DEFAULT for KEYSCAN_STATUS     */
314 #define KEYSCAN_STATUS_RUNNING                  (0x1UL << 16)                            /**< Running                                     */
315 #define _KEYSCAN_STATUS_RUNNING_SHIFT           16                                       /**< Shift value for KEYSCAN_RUNNING             */
316 #define _KEYSCAN_STATUS_RUNNING_MASK            0x10000UL                                /**< Bit mask for KEYSCAN_RUNNING                */
317 #define _KEYSCAN_STATUS_RUNNING_DEFAULT         0x00000000UL                             /**< Mode DEFAULT for KEYSCAN_STATUS             */
318 #define KEYSCAN_STATUS_RUNNING_DEFAULT          (_KEYSCAN_STATUS_RUNNING_DEFAULT << 16)  /**< Shifted mode DEFAULT for KEYSCAN_STATUS     */
319 #define _KEYSCAN_STATUS_COL_SHIFT               24                                       /**< Shift value for KEYSCAN_COL                 */
320 #define _KEYSCAN_STATUS_COL_MASK                0x7000000UL                              /**< Bit mask for KEYSCAN_COL                    */
321 #define _KEYSCAN_STATUS_COL_DEFAULT             0x00000000UL                             /**< Mode DEFAULT for KEYSCAN_STATUS             */
322 #define KEYSCAN_STATUS_COL_DEFAULT              (_KEYSCAN_STATUS_COL_DEFAULT << 24)      /**< Shifted mode DEFAULT for KEYSCAN_STATUS     */
323 #define KEYSCAN_STATUS_NOKEY                    (0x1UL << 30)                            /**< No Key pressed status                       */
324 #define _KEYSCAN_STATUS_NOKEY_SHIFT             30                                       /**< Shift value for KEYSCAN_NOKEY               */
325 #define _KEYSCAN_STATUS_NOKEY_MASK              0x40000000UL                             /**< Bit mask for KEYSCAN_NOKEY                  */
326 #define _KEYSCAN_STATUS_NOKEY_DEFAULT           0x00000001UL                             /**< Mode DEFAULT for KEYSCAN_STATUS             */
327 #define KEYSCAN_STATUS_NOKEY_DEFAULT            (_KEYSCAN_STATUS_NOKEY_DEFAULT << 30)    /**< Shifted mode DEFAULT for KEYSCAN_STATUS     */
328 #define KEYSCAN_STATUS_SYNCBUSY                 (0x1UL << 31)                            /**< Sync Busy                                   */
329 #define _KEYSCAN_STATUS_SYNCBUSY_SHIFT          31                                       /**< Shift value for KEYSCAN_SYNCBUSY            */
330 #define _KEYSCAN_STATUS_SYNCBUSY_MASK           0x80000000UL                             /**< Bit mask for KEYSCAN_SYNCBUSY               */
331 #define _KEYSCAN_STATUS_SYNCBUSY_DEFAULT        0x00000000UL                             /**< Mode DEFAULT for KEYSCAN_STATUS             */
332 #define KEYSCAN_STATUS_SYNCBUSY_DEFAULT         (_KEYSCAN_STATUS_SYNCBUSY_DEFAULT << 31) /**< Shifted mode DEFAULT for KEYSCAN_STATUS     */
333 
334 /* Bit fields for KEYSCAN IF */
335 #define _KEYSCAN_IF_RESETVALUE                  0x00000000UL                            /**< Default value for KEYSCAN_IF                */
336 #define _KEYSCAN_IF_MASK                        0x0000000FUL                            /**< Mask for KEYSCAN_IF                         */
337 #define KEYSCAN_IF_NOKEY                        (0x1UL << 0)                            /**< No key was pressed                          */
338 #define _KEYSCAN_IF_NOKEY_SHIFT                 0                                       /**< Shift value for KEYSCAN_NOKEY               */
339 #define _KEYSCAN_IF_NOKEY_MASK                  0x1UL                                   /**< Bit mask for KEYSCAN_NOKEY                  */
340 #define _KEYSCAN_IF_NOKEY_DEFAULT               0x00000000UL                            /**< Mode DEFAULT for KEYSCAN_IF                 */
341 #define KEYSCAN_IF_NOKEY_DEFAULT                (_KEYSCAN_IF_NOKEY_DEFAULT << 0)        /**< Shifted mode DEFAULT for KEYSCAN_IF         */
342 #define KEYSCAN_IF_KEY                          (0x1UL << 1)                            /**< A key was pressed                           */
343 #define _KEYSCAN_IF_KEY_SHIFT                   1                                       /**< Shift value for KEYSCAN_KEY                 */
344 #define _KEYSCAN_IF_KEY_MASK                    0x2UL                                   /**< Bit mask for KEYSCAN_KEY                    */
345 #define _KEYSCAN_IF_KEY_DEFAULT                 0x00000000UL                            /**< Mode DEFAULT for KEYSCAN_IF                 */
346 #define KEYSCAN_IF_KEY_DEFAULT                  (_KEYSCAN_IF_KEY_DEFAULT << 1)          /**< Shifted mode DEFAULT for KEYSCAN_IF         */
347 #define KEYSCAN_IF_SCANNED                      (0x1UL << 2)                            /**< Completed scan                              */
348 #define _KEYSCAN_IF_SCANNED_SHIFT               2                                       /**< Shift value for KEYSCAN_SCANNED             */
349 #define _KEYSCAN_IF_SCANNED_MASK                0x4UL                                   /**< Bit mask for KEYSCAN_SCANNED                */
350 #define _KEYSCAN_IF_SCANNED_DEFAULT             0x00000000UL                            /**< Mode DEFAULT for KEYSCAN_IF                 */
351 #define KEYSCAN_IF_SCANNED_DEFAULT              (_KEYSCAN_IF_SCANNED_DEFAULT << 2)      /**< Shifted mode DEFAULT for KEYSCAN_IF         */
352 #define KEYSCAN_IF_WAKEUP                       (0x1UL << 3)                            /**< Wake up                                     */
353 #define _KEYSCAN_IF_WAKEUP_SHIFT                3                                       /**< Shift value for KEYSCAN_WAKEUP              */
354 #define _KEYSCAN_IF_WAKEUP_MASK                 0x8UL                                   /**< Bit mask for KEYSCAN_WAKEUP                 */
355 #define _KEYSCAN_IF_WAKEUP_DEFAULT              0x00000000UL                            /**< Mode DEFAULT for KEYSCAN_IF                 */
356 #define KEYSCAN_IF_WAKEUP_DEFAULT               (_KEYSCAN_IF_WAKEUP_DEFAULT << 3)       /**< Shifted mode DEFAULT for KEYSCAN_IF         */
357 
358 /* Bit fields for KEYSCAN IEN */
359 #define _KEYSCAN_IEN_RESETVALUE                 0x00000000UL                            /**< Default value for KEYSCAN_IEN               */
360 #define _KEYSCAN_IEN_MASK                       0x0000000FUL                            /**< Mask for KEYSCAN_IEN                        */
361 #define KEYSCAN_IEN_NOKEY                       (0x1UL << 0)                            /**< No Key was pressed                          */
362 #define _KEYSCAN_IEN_NOKEY_SHIFT                0                                       /**< Shift value for KEYSCAN_NOKEY               */
363 #define _KEYSCAN_IEN_NOKEY_MASK                 0x1UL                                   /**< Bit mask for KEYSCAN_NOKEY                  */
364 #define _KEYSCAN_IEN_NOKEY_DEFAULT              0x00000000UL                            /**< Mode DEFAULT for KEYSCAN_IEN                */
365 #define KEYSCAN_IEN_NOKEY_DEFAULT               (_KEYSCAN_IEN_NOKEY_DEFAULT << 0)       /**< Shifted mode DEFAULT for KEYSCAN_IEN        */
366 #define KEYSCAN_IEN_KEY                         (0x1UL << 1)                            /**< A Key was pressed                           */
367 #define _KEYSCAN_IEN_KEY_SHIFT                  1                                       /**< Shift value for KEYSCAN_KEY                 */
368 #define _KEYSCAN_IEN_KEY_MASK                   0x2UL                                   /**< Bit mask for KEYSCAN_KEY                    */
369 #define _KEYSCAN_IEN_KEY_DEFAULT                0x00000000UL                            /**< Mode DEFAULT for KEYSCAN_IEN                */
370 #define KEYSCAN_IEN_KEY_DEFAULT                 (_KEYSCAN_IEN_KEY_DEFAULT << 1)         /**< Shifted mode DEFAULT for KEYSCAN_IEN        */
371 #define KEYSCAN_IEN_SCANNED                     (0x1UL << 2)                            /**< Completed Scanning                          */
372 #define _KEYSCAN_IEN_SCANNED_SHIFT              2                                       /**< Shift value for KEYSCAN_SCANNED             */
373 #define _KEYSCAN_IEN_SCANNED_MASK               0x4UL                                   /**< Bit mask for KEYSCAN_SCANNED                */
374 #define _KEYSCAN_IEN_SCANNED_DEFAULT            0x00000000UL                            /**< Mode DEFAULT for KEYSCAN_IEN                */
375 #define KEYSCAN_IEN_SCANNED_DEFAULT             (_KEYSCAN_IEN_SCANNED_DEFAULT << 2)     /**< Shifted mode DEFAULT for KEYSCAN_IEN        */
376 #define KEYSCAN_IEN_WAKEUP                      (0x1UL << 3)                            /**< Wake up                                     */
377 #define _KEYSCAN_IEN_WAKEUP_SHIFT               3                                       /**< Shift value for KEYSCAN_WAKEUP              */
378 #define _KEYSCAN_IEN_WAKEUP_MASK                0x8UL                                   /**< Bit mask for KEYSCAN_WAKEUP                 */
379 #define _KEYSCAN_IEN_WAKEUP_DEFAULT             0x00000000UL                            /**< Mode DEFAULT for KEYSCAN_IEN                */
380 #define KEYSCAN_IEN_WAKEUP_DEFAULT              (_KEYSCAN_IEN_WAKEUP_DEFAULT << 3)      /**< Shifted mode DEFAULT for KEYSCAN_IEN        */
381 
382 /** @} End of group EFR32MG24_KEYSCAN_BitFields */
383 /** @} End of group EFR32MG24_KEYSCAN */
384 /** @} End of group Parts */
385 
386 #endif /* EFR32MG24_KEYSCAN_H */
387