1 //-----------------------------------------------------------------------------
2 // Copyright 2012 (c) Silicon Laboratories Inc.
3 //
4 // SPDX-License-Identifier: Zlib
5 //
6 // This siHAL software is provided 'as-is', without any express or implied
7 // warranty. In no event will the authors be held liable for any damages
8 // arising from the use of this software.
9 //
10 // Permission is granted to anyone to use this software for any purpose,
11 // including commercial applications, and to alter it and redistribute it
12 // freely, subject to the following restrictions:
13 //
14 // 1. The origin of this software must not be misrepresented; you must not
15 //    claim that you wrote the original software. If you use this software
16 //    in a product, an acknowledgment in the product documentation would be
17 //    appreciated but is not required.
18 // 2. Altered source versions must be plainly marked as such, and must not be
19 //    misrepresented as being the original software.
20 // 3. This notice may not be removed or altered from any source distribution.
21 //-----------------------------------------------------------------------------
22 //
23 // This file applies to the SIM3L1XX_SCONFIG_A module
24 //
25 // Script: 0.61
26 // Version: 1
27 
28 #ifndef __SI32_SCONFIG_A_REGISTERS_H__
29 #define __SI32_SCONFIG_A_REGISTERS_H__
30 
31 #include <stdint.h>
32 
33 #ifdef __cplusplus
34 extern "C" {
35 #endif
36 
37 struct SI32_SCONFIG_A_CONFIG_Struct
38 {
39    union
40    {
41       struct
42       {
43          // Faster DMA Mode Enable
44          volatile uint32_t FDMAEN: 1;
45          // Power Mode 8 Debug Enable
46          volatile uint32_t PM8DBGEN: 1;
47                   uint32_t reserved0: 30;
48       };
49       volatile uint32_t U32;
50    };
51 };
52 
53 #define SI32_SCONFIG_A_CONFIG_FDMAEN_MASK  0x00000001
54 #define SI32_SCONFIG_A_CONFIG_FDMAEN_SHIFT  0
55 // Disable the faster DMA mode.  The DMA module and channels will behave like a
56 // standard uDMA.
57 #define SI32_SCONFIG_A_CONFIG_FDMAEN_DISABLED_VALUE  0
58 #define SI32_SCONFIG_A_CONFIG_FDMAEN_DISABLED_U32 \
59    (SI32_SCONFIG_A_CONFIG_FDMAEN_DISABLED_VALUE << SI32_SCONFIG_A_CONFIG_FDMAEN_SHIFT)
60 // Enable the faster DMA mode.
61 #define SI32_SCONFIG_A_CONFIG_FDMAEN_ENABLED_VALUE  1
62 #define SI32_SCONFIG_A_CONFIG_FDMAEN_ENABLED_U32 \
63    (SI32_SCONFIG_A_CONFIG_FDMAEN_ENABLED_VALUE << SI32_SCONFIG_A_CONFIG_FDMAEN_SHIFT)
64 
65 #define SI32_SCONFIG_A_CONFIG_PM8DBGEN_MASK  0x00000002
66 #define SI32_SCONFIG_A_CONFIG_PM8DBGEN_SHIFT  1
67 // Disable debugging through Power Mode 8.
68 #define SI32_SCONFIG_A_CONFIG_PM8DBGEN_DISABLED_VALUE  0
69 #define SI32_SCONFIG_A_CONFIG_PM8DBGEN_DISABLED_U32 \
70    (SI32_SCONFIG_A_CONFIG_PM8DBGEN_DISABLED_VALUE << SI32_SCONFIG_A_CONFIG_PM8DBGEN_SHIFT)
71 // Enable debugging through Power Mode 8. Power measurements cannot be made with
72 // debugging enabled.
73 #define SI32_SCONFIG_A_CONFIG_PM8DBGEN_ENABLED_VALUE  1
74 #define SI32_SCONFIG_A_CONFIG_PM8DBGEN_ENABLED_U32 \
75    (SI32_SCONFIG_A_CONFIG_PM8DBGEN_ENABLED_VALUE << SI32_SCONFIG_A_CONFIG_PM8DBGEN_SHIFT)
76 
77 
78 
79 typedef struct SI32_SCONFIG_A_Struct
80 {
81    struct SI32_SCONFIG_A_CONFIG_Struct             CONFIG         ; // Base Address + 0x0
82    volatile uint32_t                               CONFIG_SET;
83    volatile uint32_t                               CONFIG_CLR;
84    uint32_t                                        reserved0;
85 } SI32_SCONFIG_A_Type;
86 
87 #ifdef __cplusplus
88 }
89 #endif
90 
91 #endif // __SI32_SCONFIG_A_REGISTERS_H__
92 
93 //-eof--------------------------------------------------------------------------
94 
95