MAX32655 Peripheral Driver API
Peripheral Driver API for the MAX32655
dvs_regs.h
Go to the documentation of this file.
1
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_MAX32655_INCLUDE_DVS_REGS_H_
29#define LIBRARIES_CMSIS_DEVICE_MAXIM_MAX32655_INCLUDE_DVS_REGS_H_
30
31/* **** Includes **** */
32#include <stdint.h>
33
34#ifdef __cplusplus
35extern "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
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
62
63/* **** Definitions **** */
64
76typedef struct {
77 __IO uint32_t ctl;
78 __IO uint32_t stat;
79 __IO uint32_t direct;
80 __IO uint32_t mon;
81 __IO uint32_t adj_up;
82 __IO uint32_t adj_dwn;
83 __IO uint32_t thres_cmp;
84 __IO uint32_t tap_sel[5];
86
87/* Register offsets for module DVS */
94#define MXC_R_DVS_CTL ((uint32_t)0x00000000UL)
95#define MXC_R_DVS_STAT ((uint32_t)0x00000004UL)
96#define MXC_R_DVS_DIRECT ((uint32_t)0x00000008UL)
97#define MXC_R_DVS_MON ((uint32_t)0x0000000CUL)
98#define MXC_R_DVS_ADJ_UP ((uint32_t)0x00000010UL)
99#define MXC_R_DVS_ADJ_DWN ((uint32_t)0x00000014UL)
100#define MXC_R_DVS_THRES_CMP ((uint32_t)0x00000018UL)
101#define MXC_R_DVS_TAP_SEL ((uint32_t)0x0000001CUL)
110#define MXC_F_DVS_CTL_MON_ENA_POS 0
111#define MXC_F_DVS_CTL_MON_ENA ((uint32_t)(0x1UL << MXC_F_DVS_CTL_MON_ENA_POS))
113#define MXC_F_DVS_CTL_ADJ_ENA_POS 1
114#define MXC_F_DVS_CTL_ADJ_ENA ((uint32_t)(0x1UL << MXC_F_DVS_CTL_ADJ_ENA_POS))
116#define MXC_F_DVS_CTL_PS_FB_DIS_POS 2
117#define MXC_F_DVS_CTL_PS_FB_DIS ((uint32_t)(0x1UL << MXC_F_DVS_CTL_PS_FB_DIS_POS))
119#define MXC_F_DVS_CTL_CTRL_TAP_ENA_POS 3
120#define MXC_F_DVS_CTL_CTRL_TAP_ENA ((uint32_t)(0x1UL << MXC_F_DVS_CTL_CTRL_TAP_ENA_POS))
122#define MXC_F_DVS_CTL_PROP_DLY_POS 4
123#define MXC_F_DVS_CTL_PROP_DLY ((uint32_t)(0x3UL << MXC_F_DVS_CTL_PROP_DLY_POS))
125#define MXC_F_DVS_CTL_MON_ONESHOT_POS 6
126#define MXC_F_DVS_CTL_MON_ONESHOT ((uint32_t)(0x1UL << MXC_F_DVS_CTL_MON_ONESHOT_POS))
128#define MXC_F_DVS_CTL_GO_DIRECT_POS 7
129#define MXC_F_DVS_CTL_GO_DIRECT ((uint32_t)(0x1UL << MXC_F_DVS_CTL_GO_DIRECT_POS))
131#define MXC_F_DVS_CTL_DIRECT_REG_POS 8
132#define MXC_F_DVS_CTL_DIRECT_REG ((uint32_t)(0x1UL << MXC_F_DVS_CTL_DIRECT_REG_POS))
134#define MXC_F_DVS_CTL_PRIME_ENA_POS 9
135#define MXC_F_DVS_CTL_PRIME_ENA ((uint32_t)(0x1UL << MXC_F_DVS_CTL_PRIME_ENA_POS))
137#define MXC_F_DVS_CTL_LIMIT_IE_POS 10
138#define MXC_F_DVS_CTL_LIMIT_IE ((uint32_t)(0x1UL << MXC_F_DVS_CTL_LIMIT_IE_POS))
140#define MXC_F_DVS_CTL_RANGE_IE_POS 11
141#define MXC_F_DVS_CTL_RANGE_IE ((uint32_t)(0x1UL << MXC_F_DVS_CTL_RANGE_IE_POS))
143#define MXC_F_DVS_CTL_ADJ_IE_POS 12
144#define MXC_F_DVS_CTL_ADJ_IE ((uint32_t)(0x1UL << MXC_F_DVS_CTL_ADJ_IE_POS))
146#define MXC_F_DVS_CTL_REF_SEL_POS 13
147#define MXC_F_DVS_CTL_REF_SEL ((uint32_t)(0xFUL << MXC_F_DVS_CTL_REF_SEL_POS))
149#define MXC_F_DVS_CTL_INC_VAL_POS 17
150#define MXC_F_DVS_CTL_INC_VAL ((uint32_t)(0x7UL << MXC_F_DVS_CTL_INC_VAL_POS))
152#define MXC_F_DVS_CTL_DVS_PS_APB_DIS_POS 20
153#define MXC_F_DVS_CTL_DVS_PS_APB_DIS ((uint32_t)(0x1UL << MXC_F_DVS_CTL_DVS_PS_APB_DIS_POS))
155#define MXC_F_DVS_CTL_DVS_HI_RANGE_ANY_POS 21
156#define MXC_F_DVS_CTL_DVS_HI_RANGE_ANY ((uint32_t)(0x1UL << MXC_F_DVS_CTL_DVS_HI_RANGE_ANY_POS))
158#define MXC_F_DVS_CTL_FB_TO_IE_POS 22
159#define MXC_F_DVS_CTL_FB_TO_IE ((uint32_t)(0x1UL << MXC_F_DVS_CTL_FB_TO_IE_POS))
161#define MXC_F_DVS_CTL_FC_LV_IE_POS 23
162#define MXC_F_DVS_CTL_FC_LV_IE ((uint32_t)(0x1UL << MXC_F_DVS_CTL_FC_LV_IE_POS))
164#define MXC_F_DVS_CTL_PD_ACK_ENA_POS 24
165#define MXC_F_DVS_CTL_PD_ACK_ENA ((uint32_t)(0x1UL << MXC_F_DVS_CTL_PD_ACK_ENA_POS))
167#define MXC_F_DVS_CTL_ADJ_ABORT_POS 25
168#define MXC_F_DVS_CTL_ADJ_ABORT ((uint32_t)(0x1UL << MXC_F_DVS_CTL_ADJ_ABORT_POS))
178#define MXC_F_DVS_STAT_DVS_STATE_POS 0
179#define MXC_F_DVS_STAT_DVS_STATE ((uint32_t)(0xFUL << MXC_F_DVS_STAT_DVS_STATE_POS))
181#define MXC_F_DVS_STAT_ADJ_UP_ENA_POS 4
182#define MXC_F_DVS_STAT_ADJ_UP_ENA ((uint32_t)(0x1UL << MXC_F_DVS_STAT_ADJ_UP_ENA_POS))
184#define MXC_F_DVS_STAT_ADJ_DWN_ENA_POS 5
185#define MXC_F_DVS_STAT_ADJ_DWN_ENA ((uint32_t)(0x1UL << MXC_F_DVS_STAT_ADJ_DWN_ENA_POS))
187#define MXC_F_DVS_STAT_ADJ_ACTIVE_POS 6
188#define MXC_F_DVS_STAT_ADJ_ACTIVE ((uint32_t)(0x1UL << MXC_F_DVS_STAT_ADJ_ACTIVE_POS))
190#define MXC_F_DVS_STAT_CTR_TAP_OK_POS 7
191#define MXC_F_DVS_STAT_CTR_TAP_OK ((uint32_t)(0x1UL << MXC_F_DVS_STAT_CTR_TAP_OK_POS))
193#define MXC_F_DVS_STAT_CTR_TAP_SEL_POS 8
194#define MXC_F_DVS_STAT_CTR_TAP_SEL ((uint32_t)(0x1UL << MXC_F_DVS_STAT_CTR_TAP_SEL_POS))
196#define MXC_F_DVS_STAT_SLOW_TRIP_DET_POS 9
197#define MXC_F_DVS_STAT_SLOW_TRIP_DET ((uint32_t)(0x1UL << MXC_F_DVS_STAT_SLOW_TRIP_DET_POS))
199#define MXC_F_DVS_STAT_FAST_TRIP_DET_POS 10
200#define MXC_F_DVS_STAT_FAST_TRIP_DET ((uint32_t)(0x1UL << MXC_F_DVS_STAT_FAST_TRIP_DET_POS))
202#define MXC_F_DVS_STAT_PS_IN_RANGE_POS 11
203#define MXC_F_DVS_STAT_PS_IN_RANGE ((uint32_t)(0x1UL << MXC_F_DVS_STAT_PS_IN_RANGE_POS))
205#define MXC_F_DVS_STAT_PS_VCNTR_POS 12
206#define MXC_F_DVS_STAT_PS_VCNTR ((uint32_t)(0x7FUL << MXC_F_DVS_STAT_PS_VCNTR_POS))
208#define MXC_F_DVS_STAT_MON_DLY_OK_POS 19
209#define MXC_F_DVS_STAT_MON_DLY_OK ((uint32_t)(0x1UL << MXC_F_DVS_STAT_MON_DLY_OK_POS))
211#define MXC_F_DVS_STAT_ADJ_DLY_OK_POS 20
212#define MXC_F_DVS_STAT_ADJ_DLY_OK ((uint32_t)(0x1UL << MXC_F_DVS_STAT_ADJ_DLY_OK_POS))
214#define MXC_F_DVS_STAT_LO_LIMIT_DET_POS 21
215#define MXC_F_DVS_STAT_LO_LIMIT_DET ((uint32_t)(0x1UL << MXC_F_DVS_STAT_LO_LIMIT_DET_POS))
217#define MXC_F_DVS_STAT_HI_LIMIT_DET_POS 22
218#define MXC_F_DVS_STAT_HI_LIMIT_DET ((uint32_t)(0x1UL << MXC_F_DVS_STAT_HI_LIMIT_DET_POS))
220#define MXC_F_DVS_STAT_VALID_TAP_POS 23
221#define MXC_F_DVS_STAT_VALID_TAP ((uint32_t)(0x1UL << MXC_F_DVS_STAT_VALID_TAP_POS))
223#define MXC_F_DVS_STAT_LIMIT_ERR_POS 24
224#define MXC_F_DVS_STAT_LIMIT_ERR ((uint32_t)(0x1UL << MXC_F_DVS_STAT_LIMIT_ERR_POS))
226#define MXC_F_DVS_STAT_RANGE_ERR_POS 25
227#define MXC_F_DVS_STAT_RANGE_ERR ((uint32_t)(0x1UL << MXC_F_DVS_STAT_RANGE_ERR_POS))
229#define MXC_F_DVS_STAT_ADJ_ERR_POS 26
230#define MXC_F_DVS_STAT_ADJ_ERR ((uint32_t)(0x1UL << MXC_F_DVS_STAT_ADJ_ERR_POS))
232#define MXC_F_DVS_STAT_REF_SEL_ERR_POS 27
233#define MXC_F_DVS_STAT_REF_SEL_ERR ((uint32_t)(0x1UL << MXC_F_DVS_STAT_REF_SEL_ERR_POS))
235#define MXC_F_DVS_STAT_FB_TO_ERR_POS 28
236#define MXC_F_DVS_STAT_FB_TO_ERR ((uint32_t)(0x1UL << MXC_F_DVS_STAT_FB_TO_ERR_POS))
238#define MXC_F_DVS_STAT_FB_TO_ERR_S_POS 29
239#define MXC_F_DVS_STAT_FB_TO_ERR_S ((uint32_t)(0x1UL << MXC_F_DVS_STAT_FB_TO_ERR_S_POS))
241#define MXC_F_DVS_STAT_FC_LV_DET_INT_POS 30
242#define MXC_F_DVS_STAT_FC_LV_DET_INT ((uint32_t)(0x1UL << MXC_F_DVS_STAT_FC_LV_DET_INT_POS))
244#define MXC_F_DVS_STAT_FC_LV_DET_S_POS 31
245#define MXC_F_DVS_STAT_FC_LV_DET_S ((uint32_t)(0x1UL << MXC_F_DVS_STAT_FC_LV_DET_S_POS))
255#define MXC_F_DVS_DIRECT_VOLTAGE_POS 0
256#define MXC_F_DVS_DIRECT_VOLTAGE ((uint32_t)(0x7FUL << MXC_F_DVS_DIRECT_VOLTAGE_POS))
266#define MXC_F_DVS_MON_DLY_POS 0
267#define MXC_F_DVS_MON_DLY ((uint32_t)(0xFFFFFFUL << MXC_F_DVS_MON_DLY_POS))
269#define MXC_F_DVS_MON_PRE_POS 24
270#define MXC_F_DVS_MON_PRE ((uint32_t)(0xFFUL << MXC_F_DVS_MON_PRE_POS))
280#define MXC_F_DVS_ADJ_UP_DLY_POS 0
281#define MXC_F_DVS_ADJ_UP_DLY ((uint32_t)(0xFFFFUL << MXC_F_DVS_ADJ_UP_DLY_POS))
283#define MXC_F_DVS_ADJ_UP_PRE_POS 16
284#define MXC_F_DVS_ADJ_UP_PRE ((uint32_t)(0xFFUL << MXC_F_DVS_ADJ_UP_PRE_POS))
294#define MXC_F_DVS_ADJ_DWN_DLY_POS 0
295#define MXC_F_DVS_ADJ_DWN_DLY ((uint32_t)(0xFFFFUL << MXC_F_DVS_ADJ_DWN_DLY_POS))
297#define MXC_F_DVS_ADJ_DWN_PRE_POS 16
298#define MXC_F_DVS_ADJ_DWN_PRE ((uint32_t)(0xFFUL << MXC_F_DVS_ADJ_DWN_PRE_POS))
308#define MXC_F_DVS_THRES_CMP_VCNTR_THRES_CNT_POS 0
309#define MXC_F_DVS_THRES_CMP_VCNTR_THRES_CNT ((uint32_t)(0x7FUL << MXC_F_DVS_THRES_CMP_VCNTR_THRES_CNT_POS))
311#define MXC_F_DVS_THRES_CMP_VCNTR_THRES_MASK_POS 8
312#define MXC_F_DVS_THRES_CMP_VCNTR_THRES_MASK ((uint32_t)(0x7FUL << MXC_F_DVS_THRES_CMP_VCNTR_THRES_MASK_POS))
322#define MXC_F_DVS_TAP_SEL_LO_POS 0
323#define MXC_F_DVS_TAP_SEL_LO ((uint32_t)(0x1FUL << MXC_F_DVS_TAP_SEL_LO_POS))
325#define MXC_F_DVS_TAP_SEL_LO_TAP_STAT_POS 5
326#define MXC_F_DVS_TAP_SEL_LO_TAP_STAT ((uint32_t)(0x1UL << MXC_F_DVS_TAP_SEL_LO_TAP_STAT_POS))
328#define MXC_F_DVS_TAP_SEL_CTR_TAP_STAT_POS 6
329#define MXC_F_DVS_TAP_SEL_CTR_TAP_STAT ((uint32_t)(0x1UL << MXC_F_DVS_TAP_SEL_CTR_TAP_STAT_POS))
331#define MXC_F_DVS_TAP_SEL_HI_TAP_STAT_POS 7
332#define MXC_F_DVS_TAP_SEL_HI_TAP_STAT ((uint32_t)(0x1UL << MXC_F_DVS_TAP_SEL_HI_TAP_STAT_POS))
334#define MXC_F_DVS_TAP_SEL_HI_POS 8
335#define MXC_F_DVS_TAP_SEL_HI ((uint32_t)(0x1FUL << MXC_F_DVS_TAP_SEL_HI_POS))
337#define MXC_F_DVS_TAP_SEL_CTR_POS 16
338#define MXC_F_DVS_TAP_SEL_CTR ((uint32_t)(0x1FUL << MXC_F_DVS_TAP_SEL_CTR_POS))
340#define MXC_F_DVS_TAP_SEL_COARSE_POS 24
341#define MXC_F_DVS_TAP_SEL_COARSE ((uint32_t)(0x7UL << MXC_F_DVS_TAP_SEL_COARSE_POS))
343#define MXC_F_DVS_TAP_SEL_DET_DLY_POS 29
344#define MXC_F_DVS_TAP_SEL_DET_DLY ((uint32_t)(0x3UL << MXC_F_DVS_TAP_SEL_DET_DLY_POS))
346#define MXC_F_DVS_TAP_SEL_DELAY_ACT_POS 31
347#define MXC_F_DVS_TAP_SEL_DELAY_ACT ((uint32_t)(0x1UL << MXC_F_DVS_TAP_SEL_DELAY_ACT_POS))
351#ifdef __cplusplus
352}
353#endif
354
355#endif // LIBRARIES_CMSIS_DEVICE_MAXIM_MAX32655_INCLUDE_DVS_REGS_H_
__IO uint32_t thres_cmp
Definition: dvs_regs.h:83
__IO uint32_t adj_dwn
Definition: dvs_regs.h:82
__IO uint32_t adj_up
Definition: dvs_regs.h:81
__IO uint32_t mon
Definition: dvs_regs.h:80
__IO uint32_t stat
Definition: dvs_regs.h:78
__IO uint32_t direct
Definition: dvs_regs.h:79
__IO uint32_t ctl
Definition: dvs_regs.h:77
Definition: dvs_regs.h:76