MAX32650 Peripheral Driver API
Peripheral Driver API for the MAX32650
sdma_regs.h
1
6/******************************************************************************
7 *
8 * Copyright (C) 2022-2023 Maxim Integrated Products, Inc. (now owned by
9 * Analog Devices, Inc.),
10 * Copyright (C) 2023-2024 Analog Devices, Inc.
11 *
12 * Licensed under the Apache License, Version 2.0 (the "License");
13 * you may not use this file except in compliance with the License.
14 * You may obtain a copy of the License at
15 *
16 * http://www.apache.org/licenses/LICENSE-2.0
17 *
18 * Unless required by applicable law or agreed to in writing, software
19 * distributed under the License is distributed on an "AS IS" BASIS,
20 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
21 * See the License for the specific language governing permissions and
22 * limitations under the License.
23 *
24 ******************************************************************************/
25
26#ifndef _SDMA_REGS_H_
27#define _SDMA_REGS_H_
28
29/* **** Includes **** */
30#include <stdint.h>
31
32#ifdef __cplusplus
33extern "C" {
34#endif
35
36#if defined (__ICCARM__)
37 #pragma system_include
38#endif
39
40#if defined (__CC_ARM)
41 #pragma anon_unions
42#endif
44/*
45 If types are not defined elsewhere (CMSIS) define them here
46*/
47#ifndef __IO
48#define __IO volatile
49#endif
50#ifndef __I
51#define __I volatile const
52#endif
53#ifndef __O
54#define __O volatile
55#endif
56#ifndef __R
57#define __R volatile const
58#endif
60
61/* **** Definitions **** */
62
74typedef struct {
75 __I uint32_t ip;
76 __I uint32_t sp;
77 __I uint32_t dp0;
78 __I uint32_t dp1;
79 __I uint32_t bp;
80 __I uint32_t offs;
81 __I uint32_t lc0;
82 __I uint32_t lc1;
83 __I uint32_t a0;
84 __I uint32_t a1;
85 __I uint32_t a2;
86 __I uint32_t a3;
87 __I uint32_t wdcn;
88 __R uint32_t rsv_0x34_0x7f[19];
89 __IO uint32_t int_mux_ctrl0;
90 __IO uint32_t int_mux_ctrl1;
91 __IO uint32_t int_mux_ctrl2;
92 __IO uint32_t int_mux_ctrl3;
93 __IO uint32_t ip_addr;
94 __IO uint32_t ctrl;
95 __R uint32_t rsv_0x98_0x9f[2];
96 __IO uint32_t int_in_ctrl;
97 __IO uint32_t int_in_flag;
98 __IO uint32_t int_in_ie;
99 __R uint32_t rsv_0xac;
100 __IO uint32_t irq_flag;
101 __IO uint32_t irq_ie;
103
104/* Register offsets for module SDMA */
111 #define MXC_R_SDMA_IP ((uint32_t)0x00000000UL)
112 #define MXC_R_SDMA_SP ((uint32_t)0x00000004UL)
113 #define MXC_R_SDMA_DP0 ((uint32_t)0x00000008UL)
114 #define MXC_R_SDMA_DP1 ((uint32_t)0x0000000CUL)
115 #define MXC_R_SDMA_BP ((uint32_t)0x00000010UL)
116 #define MXC_R_SDMA_OFFS ((uint32_t)0x00000014UL)
117 #define MXC_R_SDMA_LC0 ((uint32_t)0x00000018UL)
118 #define MXC_R_SDMA_LC1 ((uint32_t)0x0000001CUL)
119 #define MXC_R_SDMA_A0 ((uint32_t)0x00000020UL)
120 #define MXC_R_SDMA_A1 ((uint32_t)0x00000024UL)
121 #define MXC_R_SDMA_A2 ((uint32_t)0x00000028UL)
122 #define MXC_R_SDMA_A3 ((uint32_t)0x0000002CUL)
123 #define MXC_R_SDMA_WDCN ((uint32_t)0x00000030UL)
124 #define MXC_R_SDMA_INT_MUX_CTRL0 ((uint32_t)0x00000080UL)
125 #define MXC_R_SDMA_INT_MUX_CTRL1 ((uint32_t)0x00000084UL)
126 #define MXC_R_SDMA_INT_MUX_CTRL2 ((uint32_t)0x00000088UL)
127 #define MXC_R_SDMA_INT_MUX_CTRL3 ((uint32_t)0x0000008CUL)
128 #define MXC_R_SDMA_IP_ADDR ((uint32_t)0x00000090UL)
129 #define MXC_R_SDMA_CTRL ((uint32_t)0x00000094UL)
130 #define MXC_R_SDMA_INT_IN_CTRL ((uint32_t)0x000000A0UL)
131 #define MXC_R_SDMA_INT_IN_FLAG ((uint32_t)0x000000A4UL)
132 #define MXC_R_SDMA_INT_IN_IE ((uint32_t)0x000000A8UL)
133 #define MXC_R_SDMA_IRQ_FLAG ((uint32_t)0x000000B0UL)
134 #define MXC_R_SDMA_IRQ_IE ((uint32_t)0x000000B4UL)
143 #define MXC_F_SDMA_INT_MUX_CTRL0_INTSEL16_POS 0
144 #define MXC_F_SDMA_INT_MUX_CTRL0_INTSEL16 ((uint32_t)(0xFFUL << MXC_F_SDMA_INT_MUX_CTRL0_INTSEL16_POS))
146 #define MXC_F_SDMA_INT_MUX_CTRL0_INTSEL17_POS 8
147 #define MXC_F_SDMA_INT_MUX_CTRL0_INTSEL17 ((uint32_t)(0xFFUL << MXC_F_SDMA_INT_MUX_CTRL0_INTSEL17_POS))
149 #define MXC_F_SDMA_INT_MUX_CTRL0_INTSEL18_POS 16
150 #define MXC_F_SDMA_INT_MUX_CTRL0_INTSEL18 ((uint32_t)(0xFFUL << MXC_F_SDMA_INT_MUX_CTRL0_INTSEL18_POS))
152 #define MXC_F_SDMA_INT_MUX_CTRL0_INTSEL19_POS 24
153 #define MXC_F_SDMA_INT_MUX_CTRL0_INTSEL19 ((uint32_t)(0xFFUL << MXC_F_SDMA_INT_MUX_CTRL0_INTSEL19_POS))
163 #define MXC_F_SDMA_INT_MUX_CTRL1_INTSEL20_POS 0
164 #define MXC_F_SDMA_INT_MUX_CTRL1_INTSEL20 ((uint32_t)(0xFFUL << MXC_F_SDMA_INT_MUX_CTRL1_INTSEL20_POS))
166 #define MXC_F_SDMA_INT_MUX_CTRL1_INTSEL21_POS 8
167 #define MXC_F_SDMA_INT_MUX_CTRL1_INTSEL21 ((uint32_t)(0xFFUL << MXC_F_SDMA_INT_MUX_CTRL1_INTSEL21_POS))
169 #define MXC_F_SDMA_INT_MUX_CTRL1_INTSEL22_POS 16
170 #define MXC_F_SDMA_INT_MUX_CTRL1_INTSEL22 ((uint32_t)(0xFFUL << MXC_F_SDMA_INT_MUX_CTRL1_INTSEL22_POS))
172 #define MXC_F_SDMA_INT_MUX_CTRL1_INTSEL23_POS 24
173 #define MXC_F_SDMA_INT_MUX_CTRL1_INTSEL23 ((uint32_t)(0xFFUL << MXC_F_SDMA_INT_MUX_CTRL1_INTSEL23_POS))
183 #define MXC_F_SDMA_INT_MUX_CTRL2_INTSEL24_POS 0
184 #define MXC_F_SDMA_INT_MUX_CTRL2_INTSEL24 ((uint32_t)(0xFFUL << MXC_F_SDMA_INT_MUX_CTRL2_INTSEL24_POS))
186 #define MXC_F_SDMA_INT_MUX_CTRL2_INTSEL25_POS 8
187 #define MXC_F_SDMA_INT_MUX_CTRL2_INTSEL25 ((uint32_t)(0xFFUL << MXC_F_SDMA_INT_MUX_CTRL2_INTSEL25_POS))
189 #define MXC_F_SDMA_INT_MUX_CTRL2_INTSEL26_POS 16
190 #define MXC_F_SDMA_INT_MUX_CTRL2_INTSEL26 ((uint32_t)(0xFFUL << MXC_F_SDMA_INT_MUX_CTRL2_INTSEL26_POS))
192 #define MXC_F_SDMA_INT_MUX_CTRL2_INTSEL27_POS 24
193 #define MXC_F_SDMA_INT_MUX_CTRL2_INTSEL27 ((uint32_t)(0xFFUL << MXC_F_SDMA_INT_MUX_CTRL2_INTSEL27_POS))
203 #define MXC_F_SDMA_INT_MUX_CTRL3_INTSEL28_POS 0
204 #define MXC_F_SDMA_INT_MUX_CTRL3_INTSEL28 ((uint32_t)(0xFFUL << MXC_F_SDMA_INT_MUX_CTRL3_INTSEL28_POS))
206 #define MXC_F_SDMA_INT_MUX_CTRL3_INTSEL29_POS 8
207 #define MXC_F_SDMA_INT_MUX_CTRL3_INTSEL29 ((uint32_t)(0xFFUL << MXC_F_SDMA_INT_MUX_CTRL3_INTSEL29_POS))
209 #define MXC_F_SDMA_INT_MUX_CTRL3_INTSEL30_POS 16
210 #define MXC_F_SDMA_INT_MUX_CTRL3_INTSEL30 ((uint32_t)(0xFFUL << MXC_F_SDMA_INT_MUX_CTRL3_INTSEL30_POS))
212 #define MXC_F_SDMA_INT_MUX_CTRL3_INTSEL31_POS 24
213 #define MXC_F_SDMA_INT_MUX_CTRL3_INTSEL31 ((uint32_t)(0xFFUL << MXC_F_SDMA_INT_MUX_CTRL3_INTSEL31_POS))
223 #define MXC_F_SDMA_IP_ADDR_START_IP_ADDR_POS 0
224 #define MXC_F_SDMA_IP_ADDR_START_IP_ADDR ((uint32_t)(0xFFFFFFFFUL << MXC_F_SDMA_IP_ADDR_START_IP_ADDR_POS))
234 #define MXC_F_SDMA_CTRL_EN_POS 0
235 #define MXC_F_SDMA_CTRL_EN ((uint32_t)(0x1UL << MXC_F_SDMA_CTRL_EN_POS))
236 #define MXC_V_SDMA_CTRL_EN_DIS ((uint32_t)0x0UL)
237 #define MXC_S_SDMA_CTRL_EN_DIS (MXC_V_SDMA_CTRL_EN_DIS << MXC_F_SDMA_CTRL_EN_POS)
238 #define MXC_V_SDMA_CTRL_EN_EN ((uint32_t)0x1UL)
239 #define MXC_S_SDMA_CTRL_EN_EN (MXC_V_SDMA_CTRL_EN_EN << MXC_F_SDMA_CTRL_EN_POS)
249 #define MXC_F_SDMA_INT_IN_CTRL_INTSET_POS 0
250 #define MXC_F_SDMA_INT_IN_CTRL_INTSET ((uint32_t)(0x1UL << MXC_F_SDMA_INT_IN_CTRL_INTSET_POS))
251 #define MXC_V_SDMA_INT_IN_CTRL_INTSET_DIS ((uint32_t)0x0UL)
252 #define MXC_S_SDMA_INT_IN_CTRL_INTSET_DIS (MXC_V_SDMA_INT_IN_CTRL_INTSET_DIS << MXC_F_SDMA_INT_IN_CTRL_INTSET_POS)
253 #define MXC_V_SDMA_INT_IN_CTRL_INTSET_SET ((uint32_t)0x1UL)
254 #define MXC_S_SDMA_INT_IN_CTRL_INTSET_SET (MXC_V_SDMA_INT_IN_CTRL_INTSET_SET << MXC_F_SDMA_INT_IN_CTRL_INTSET_POS)
264 #define MXC_F_SDMA_INT_IN_FLAG_INTFLAG_POS 0
265 #define MXC_F_SDMA_INT_IN_FLAG_INTFLAG ((uint32_t)(0x1UL << MXC_F_SDMA_INT_IN_FLAG_INTFLAG_POS))
266 #define MXC_V_SDMA_INT_IN_FLAG_INTFLAG_NO_EFF ((uint32_t)0x0UL)
267 #define MXC_S_SDMA_INT_IN_FLAG_INTFLAG_NO_EFF (MXC_V_SDMA_INT_IN_FLAG_INTFLAG_NO_EFF << MXC_F_SDMA_INT_IN_FLAG_INTFLAG_POS)
268 #define MXC_V_SDMA_INT_IN_FLAG_INTFLAG_CLEAR ((uint32_t)0x1UL)
269 #define MXC_S_SDMA_INT_IN_FLAG_INTFLAG_CLEAR (MXC_V_SDMA_INT_IN_FLAG_INTFLAG_CLEAR << MXC_F_SDMA_INT_IN_FLAG_INTFLAG_POS)
279 #define MXC_F_SDMA_INT_IN_IE_INT_IN_EN_POS 0
280 #define MXC_F_SDMA_INT_IN_IE_INT_IN_EN ((uint32_t)(0x1UL << MXC_F_SDMA_INT_IN_IE_INT_IN_EN_POS))
290 #define MXC_F_SDMA_IRQ_FLAG_IRQ_FLAG_POS 0
291 #define MXC_F_SDMA_IRQ_FLAG_IRQ_FLAG ((uint32_t)(0x1UL << MXC_F_SDMA_IRQ_FLAG_IRQ_FLAG_POS))
301 #define MXC_F_SDMA_IRQ_IE_IRQ_EN_POS 0
302 #define MXC_F_SDMA_IRQ_IE_IRQ_EN ((uint32_t)(0x1UL << MXC_F_SDMA_IRQ_IE_IRQ_EN_POS))
306#ifdef __cplusplus
307}
308#endif
309
310#endif /* _SDMA_REGS_H_ */
__I uint32_t lc1
Definition: sdma_regs.h:82
__IO uint32_t int_in_flag
Definition: sdma_regs.h:97
__I uint32_t wdcn
Definition: sdma_regs.h:87
__IO uint32_t int_mux_ctrl2
Definition: sdma_regs.h:91
__IO uint32_t int_mux_ctrl1
Definition: sdma_regs.h:90
__I uint32_t sp
Definition: sdma_regs.h:76
__I uint32_t bp
Definition: sdma_regs.h:79
__I uint32_t a1
Definition: sdma_regs.h:84
__IO uint32_t ctrl
Definition: sdma_regs.h:94
__IO uint32_t int_mux_ctrl0
Definition: sdma_regs.h:89
__I uint32_t lc0
Definition: sdma_regs.h:81
__I uint32_t a0
Definition: sdma_regs.h:83
__I uint32_t dp0
Definition: sdma_regs.h:77
__I uint32_t dp1
Definition: sdma_regs.h:78
__I uint32_t offs
Definition: sdma_regs.h:80
__IO uint32_t irq_ie
Definition: sdma_regs.h:101
__IO uint32_t int_in_ctrl
Definition: sdma_regs.h:96
__IO uint32_t int_in_ie
Definition: sdma_regs.h:98
__IO uint32_t int_mux_ctrl3
Definition: sdma_regs.h:92
__I uint32_t ip
Definition: sdma_regs.h:75
__I uint32_t a3
Definition: sdma_regs.h:86
__IO uint32_t irq_flag
Definition: sdma_regs.h:100
__IO uint32_t ip_addr
Definition: sdma_regs.h:93
__I uint32_t a2
Definition: sdma_regs.h:85
Definition: sdma_regs.h:74