MAX32665 Peripheral Driver API
Peripheral Driver API for the MAX32665
spixfm_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_MAX32665_INCLUDE_SPIXFM_REGS_H_
29#define LIBRARIES_CMSIS_DEVICE_MAXIM_MAX32665_INCLUDE_SPIXFM_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 cfg;
78 __IO uint32_t fetch_ctrl;
79 __IO uint32_t mode_ctrl;
80 __IO uint32_t mode_data;
81 __IO uint32_t sclk_fb_ctrl;
82 __R uint32_t rsv_0x14_0x1b[2];
83 __IO uint32_t io_ctrl;
84 __IO uint32_t memseccn;
85 __IO uint32_t bus_idle;
87
88/* Register offsets for module SPIXFM */
95#define MXC_R_SPIXFM_CFG ((uint32_t)0x00000000UL)
96#define MXC_R_SPIXFM_FETCH_CTRL ((uint32_t)0x00000004UL)
97#define MXC_R_SPIXFM_MODE_CTRL ((uint32_t)0x00000008UL)
98#define MXC_R_SPIXFM_MODE_DATA ((uint32_t)0x0000000CUL)
99#define MXC_R_SPIXFM_SCLK_FB_CTRL ((uint32_t)0x00000010UL)
100#define MXC_R_SPIXFM_IO_CTRL ((uint32_t)0x0000001CUL)
101#define MXC_R_SPIXFM_MEMSECCN ((uint32_t)0x00000020UL)
102#define MXC_R_SPIXFM_BUS_IDLE ((uint32_t)0x00000024UL)
111#define MXC_F_SPIXFM_CFG_MODE_POS 0
112#define MXC_F_SPIXFM_CFG_MODE ((uint32_t)(0x3UL << MXC_F_SPIXFM_CFG_MODE_POS))
113#define MXC_V_SPIXFM_CFG_MODE_SCLK_HI_SAMPLE_RISING ((uint32_t)0x0UL)
114#define MXC_S_SPIXFM_CFG_MODE_SCLK_HI_SAMPLE_RISING (MXC_V_SPIXFM_CFG_MODE_SCLK_HI_SAMPLE_RISING << MXC_F_SPIXFM_CFG_MODE_POS)
115#define MXC_V_SPIXFM_CFG_MODE_SCLK_LO_SAMPLE_FAILLING ((uint32_t)0x3UL)
116#define MXC_S_SPIXFM_CFG_MODE_SCLK_LO_SAMPLE_FAILLING (MXC_V_SPIXFM_CFG_MODE_SCLK_LO_SAMPLE_FAILLING << MXC_F_SPIXFM_CFG_MODE_POS)
118#define MXC_F_SPIXFM_CFG_SSPOL_POS 2
119#define MXC_F_SPIXFM_CFG_SSPOL ((uint32_t)(0x1UL << MXC_F_SPIXFM_CFG_SSPOL_POS))
121#define MXC_F_SPIXFM_CFG_SSEL_POS 4
122#define MXC_F_SPIXFM_CFG_SSEL ((uint32_t)(0x7UL << MXC_F_SPIXFM_CFG_SSEL_POS))
124#define MXC_F_SPIXFM_CFG_LO_CLK_POS 8
125#define MXC_F_SPIXFM_CFG_LO_CLK ((uint32_t)(0xFUL << MXC_F_SPIXFM_CFG_LO_CLK_POS))
127#define MXC_F_SPIXFM_CFG_HI_CLK_POS 12
128#define MXC_F_SPIXFM_CFG_HI_CLK ((uint32_t)(0xFUL << MXC_F_SPIXFM_CFG_HI_CLK_POS))
130#define MXC_F_SPIXFM_CFG_SSACT_POS 16
131#define MXC_F_SPIXFM_CFG_SSACT ((uint32_t)(0x3UL << MXC_F_SPIXFM_CFG_SSACT_POS))
132#define MXC_V_SPIXFM_CFG_SSACT_OFF ((uint32_t)0x0UL)
133#define MXC_S_SPIXFM_CFG_SSACT_OFF (MXC_V_SPIXFM_CFG_SSACT_OFF << MXC_F_SPIXFM_CFG_SSACT_POS)
134#define MXC_V_SPIXFM_CFG_SSACT_FOR_2_MOD_CLK ((uint32_t)0x1UL)
135#define MXC_S_SPIXFM_CFG_SSACT_FOR_2_MOD_CLK (MXC_V_SPIXFM_CFG_SSACT_FOR_2_MOD_CLK << MXC_F_SPIXFM_CFG_SSACT_POS)
136#define MXC_V_SPIXFM_CFG_SSACT_FOR_4_MOD_CLK ((uint32_t)0x2UL)
137#define MXC_S_SPIXFM_CFG_SSACT_FOR_4_MOD_CLK (MXC_V_SPIXFM_CFG_SSACT_FOR_4_MOD_CLK << MXC_F_SPIXFM_CFG_SSACT_POS)
138#define MXC_V_SPIXFM_CFG_SSACT_FOR_8_MOD_CLK ((uint32_t)0x3UL)
139#define MXC_S_SPIXFM_CFG_SSACT_FOR_8_MOD_CLK (MXC_V_SPIXFM_CFG_SSACT_FOR_8_MOD_CLK << MXC_F_SPIXFM_CFG_SSACT_POS)
141#define MXC_F_SPIXFM_CFG_SSIACT_POS 18
142#define MXC_F_SPIXFM_CFG_SSIACT ((uint32_t)(0x3UL << MXC_F_SPIXFM_CFG_SSIACT_POS))
143#define MXC_V_SPIXFM_CFG_SSIACT_FOR_1_MOD_CLK ((uint32_t)0x0UL)
144#define MXC_S_SPIXFM_CFG_SSIACT_FOR_1_MOD_CLK (MXC_V_SPIXFM_CFG_SSIACT_FOR_1_MOD_CLK << MXC_F_SPIXFM_CFG_SSIACT_POS)
145#define MXC_V_SPIXFM_CFG_SSIACT_FOR_3_MOD_CLK ((uint32_t)0x1UL)
146#define MXC_S_SPIXFM_CFG_SSIACT_FOR_3_MOD_CLK (MXC_V_SPIXFM_CFG_SSIACT_FOR_3_MOD_CLK << MXC_F_SPIXFM_CFG_SSIACT_POS)
147#define MXC_V_SPIXFM_CFG_SSIACT_FOR_5_MOD_CLK ((uint32_t)0x2UL)
148#define MXC_S_SPIXFM_CFG_SSIACT_FOR_5_MOD_CLK (MXC_V_SPIXFM_CFG_SSIACT_FOR_5_MOD_CLK << MXC_F_SPIXFM_CFG_SSIACT_POS)
149#define MXC_V_SPIXFM_CFG_SSIACT_FOR_9_MOD_CLK ((uint32_t)0x3UL)
150#define MXC_S_SPIXFM_CFG_SSIACT_FOR_9_MOD_CLK (MXC_V_SPIXFM_CFG_SSIACT_FOR_9_MOD_CLK << MXC_F_SPIXFM_CFG_SSIACT_POS)
160#define MXC_F_SPIXFM_FETCH_CTRL_CMDVAL_POS 0
161#define MXC_F_SPIXFM_FETCH_CTRL_CMDVAL ((uint32_t)(0xFFUL << MXC_F_SPIXFM_FETCH_CTRL_CMDVAL_POS))
163#define MXC_F_SPIXFM_FETCH_CTRL_CMD_WIDTH_POS 8
164#define MXC_F_SPIXFM_FETCH_CTRL_CMD_WIDTH ((uint32_t)(0x3UL << MXC_F_SPIXFM_FETCH_CTRL_CMD_WIDTH_POS))
165#define MXC_V_SPIXFM_FETCH_CTRL_CMD_WIDTH_SINGLE ((uint32_t)0x0UL)
166#define MXC_S_SPIXFM_FETCH_CTRL_CMD_WIDTH_SINGLE (MXC_V_SPIXFM_FETCH_CTRL_CMD_WIDTH_SINGLE << MXC_F_SPIXFM_FETCH_CTRL_CMD_WIDTH_POS)
167#define MXC_V_SPIXFM_FETCH_CTRL_CMD_WIDTH_DUAL_IO ((uint32_t)0x1UL)
168#define MXC_S_SPIXFM_FETCH_CTRL_CMD_WIDTH_DUAL_IO (MXC_V_SPIXFM_FETCH_CTRL_CMD_WIDTH_DUAL_IO << MXC_F_SPIXFM_FETCH_CTRL_CMD_WIDTH_POS)
169#define MXC_V_SPIXFM_FETCH_CTRL_CMD_WIDTH_QUAD_IO ((uint32_t)0x2UL)
170#define MXC_S_SPIXFM_FETCH_CTRL_CMD_WIDTH_QUAD_IO (MXC_V_SPIXFM_FETCH_CTRL_CMD_WIDTH_QUAD_IO << MXC_F_SPIXFM_FETCH_CTRL_CMD_WIDTH_POS)
171#define MXC_V_SPIXFM_FETCH_CTRL_CMD_WIDTH_INVALID ((uint32_t)0x3UL)
172#define MXC_S_SPIXFM_FETCH_CTRL_CMD_WIDTH_INVALID (MXC_V_SPIXFM_FETCH_CTRL_CMD_WIDTH_INVALID << MXC_F_SPIXFM_FETCH_CTRL_CMD_WIDTH_POS)
174#define MXC_F_SPIXFM_FETCH_CTRL_ADDR_WIDTH_POS 10
175#define MXC_F_SPIXFM_FETCH_CTRL_ADDR_WIDTH ((uint32_t)(0x3UL << MXC_F_SPIXFM_FETCH_CTRL_ADDR_WIDTH_POS))
176#define MXC_V_SPIXFM_FETCH_CTRL_ADDR_WIDTH_SINGLE ((uint32_t)0x0UL)
177#define MXC_S_SPIXFM_FETCH_CTRL_ADDR_WIDTH_SINGLE (MXC_V_SPIXFM_FETCH_CTRL_ADDR_WIDTH_SINGLE << MXC_F_SPIXFM_FETCH_CTRL_ADDR_WIDTH_POS)
178#define MXC_V_SPIXFM_FETCH_CTRL_ADDR_WIDTH_DUAL_IO ((uint32_t)0x1UL)
179#define MXC_S_SPIXFM_FETCH_CTRL_ADDR_WIDTH_DUAL_IO (MXC_V_SPIXFM_FETCH_CTRL_ADDR_WIDTH_DUAL_IO << MXC_F_SPIXFM_FETCH_CTRL_ADDR_WIDTH_POS)
180#define MXC_V_SPIXFM_FETCH_CTRL_ADDR_WIDTH_QUAD_IO ((uint32_t)0x2UL)
181#define MXC_S_SPIXFM_FETCH_CTRL_ADDR_WIDTH_QUAD_IO (MXC_V_SPIXFM_FETCH_CTRL_ADDR_WIDTH_QUAD_IO << MXC_F_SPIXFM_FETCH_CTRL_ADDR_WIDTH_POS)
182#define MXC_V_SPIXFM_FETCH_CTRL_ADDR_WIDTH_INVALID ((uint32_t)0x3UL)
183#define MXC_S_SPIXFM_FETCH_CTRL_ADDR_WIDTH_INVALID (MXC_V_SPIXFM_FETCH_CTRL_ADDR_WIDTH_INVALID << MXC_F_SPIXFM_FETCH_CTRL_ADDR_WIDTH_POS)
185#define MXC_F_SPIXFM_FETCH_CTRL_DATA_WIDTH_POS 12
186#define MXC_F_SPIXFM_FETCH_CTRL_DATA_WIDTH ((uint32_t)(0x3UL << MXC_F_SPIXFM_FETCH_CTRL_DATA_WIDTH_POS))
187#define MXC_V_SPIXFM_FETCH_CTRL_DATA_WIDTH_SINGLE ((uint32_t)0x0UL)
188#define MXC_S_SPIXFM_FETCH_CTRL_DATA_WIDTH_SINGLE (MXC_V_SPIXFM_FETCH_CTRL_DATA_WIDTH_SINGLE << MXC_F_SPIXFM_FETCH_CTRL_DATA_WIDTH_POS)
189#define MXC_V_SPIXFM_FETCH_CTRL_DATA_WIDTH_DUAL_IO ((uint32_t)0x1UL)
190#define MXC_S_SPIXFM_FETCH_CTRL_DATA_WIDTH_DUAL_IO (MXC_V_SPIXFM_FETCH_CTRL_DATA_WIDTH_DUAL_IO << MXC_F_SPIXFM_FETCH_CTRL_DATA_WIDTH_POS)
191#define MXC_V_SPIXFM_FETCH_CTRL_DATA_WIDTH_QUAD_IO ((uint32_t)0x2UL)
192#define MXC_S_SPIXFM_FETCH_CTRL_DATA_WIDTH_QUAD_IO (MXC_V_SPIXFM_FETCH_CTRL_DATA_WIDTH_QUAD_IO << MXC_F_SPIXFM_FETCH_CTRL_DATA_WIDTH_POS)
193#define MXC_V_SPIXFM_FETCH_CTRL_DATA_WIDTH_INVALID ((uint32_t)0x3UL)
194#define MXC_S_SPIXFM_FETCH_CTRL_DATA_WIDTH_INVALID (MXC_V_SPIXFM_FETCH_CTRL_DATA_WIDTH_INVALID << MXC_F_SPIXFM_FETCH_CTRL_DATA_WIDTH_POS)
196#define MXC_F_SPIXFM_FETCH_CTRL_FOUR_BYTE_ADDR_POS 16
197#define MXC_F_SPIXFM_FETCH_CTRL_FOUR_BYTE_ADDR ((uint32_t)(0x1UL << MXC_F_SPIXFM_FETCH_CTRL_FOUR_BYTE_ADDR_POS))
207#define MXC_F_SPIXFM_MODE_CTRL_MDCLK_POS 0
208#define MXC_F_SPIXFM_MODE_CTRL_MDCLK ((uint32_t)(0xFUL << MXC_F_SPIXFM_MODE_CTRL_MDCLK_POS))
210#define MXC_F_SPIXFM_MODE_CTRL_NO_CMD_MODE_POS 8
211#define MXC_F_SPIXFM_MODE_CTRL_NO_CMD_MODE ((uint32_t)(0x1UL << MXC_F_SPIXFM_MODE_CTRL_NO_CMD_MODE_POS))
213#define MXC_F_SPIXFM_MODE_CTRL_EXIT_NO_CMD_MODE_POS 9
214#define MXC_F_SPIXFM_MODE_CTRL_EXIT_NO_CMD_MODE ((uint32_t)(0x1UL << MXC_F_SPIXFM_MODE_CTRL_EXIT_NO_CMD_MODE_POS))
224#define MXC_F_SPIXFM_MODE_DATA_DATA_POS 0
225#define MXC_F_SPIXFM_MODE_DATA_DATA ((uint32_t)(0xFFFFUL << MXC_F_SPIXFM_MODE_DATA_DATA_POS))
227#define MXC_F_SPIXFM_MODE_DATA_OUT_EN_POS 16
228#define MXC_F_SPIXFM_MODE_DATA_OUT_EN ((uint32_t)(0xFFFFUL << MXC_F_SPIXFM_MODE_DATA_OUT_EN_POS))
238#define MXC_F_SPIXFM_SCLK_FB_CTRL_FB_EN_POS 0
239#define MXC_F_SPIXFM_SCLK_FB_CTRL_FB_EN ((uint32_t)(0x1UL << MXC_F_SPIXFM_SCLK_FB_CTRL_FB_EN_POS))
241#define MXC_F_SPIXFM_SCLK_FB_CTRL_INVERT_EN_POS 1
242#define MXC_F_SPIXFM_SCLK_FB_CTRL_INVERT_EN ((uint32_t)(0x1UL << MXC_F_SPIXFM_SCLK_FB_CTRL_INVERT_EN_POS))
252#define MXC_F_SPIXFM_IO_CTRL_SCLK_DS_POS 0
253#define MXC_F_SPIXFM_IO_CTRL_SCLK_DS ((uint32_t)(0x1UL << MXC_F_SPIXFM_IO_CTRL_SCLK_DS_POS))
255#define MXC_F_SPIXFM_IO_CTRL_SS_DS_POS 1
256#define MXC_F_SPIXFM_IO_CTRL_SS_DS ((uint32_t)(0x1UL << MXC_F_SPIXFM_IO_CTRL_SS_DS_POS))
258#define MXC_F_SPIXFM_IO_CTRL_SDIO_DS_POS 2
259#define MXC_F_SPIXFM_IO_CTRL_SDIO_DS ((uint32_t)(0x1UL << MXC_F_SPIXFM_IO_CTRL_SDIO_DS_POS))
261#define MXC_F_SPIXFM_IO_CTRL_PU_PD_CTRL_POS 3
262#define MXC_F_SPIXFM_IO_CTRL_PU_PD_CTRL ((uint32_t)(0x3UL << MXC_F_SPIXFM_IO_CTRL_PU_PD_CTRL_POS))
263#define MXC_V_SPIXFM_IO_CTRL_PU_PD_CTRL_TRI_STATE ((uint32_t)0x0UL)
264#define MXC_S_SPIXFM_IO_CTRL_PU_PD_CTRL_TRI_STATE (MXC_V_SPIXFM_IO_CTRL_PU_PD_CTRL_TRI_STATE << MXC_F_SPIXFM_IO_CTRL_PU_PD_CTRL_POS)
265#define MXC_V_SPIXFM_IO_CTRL_PU_PD_CTRL_PULL_UP ((uint32_t)0x1UL)
266#define MXC_S_SPIXFM_IO_CTRL_PU_PD_CTRL_PULL_UP (MXC_V_SPIXFM_IO_CTRL_PU_PD_CTRL_PULL_UP << MXC_F_SPIXFM_IO_CTRL_PU_PD_CTRL_POS)
267#define MXC_V_SPIXFM_IO_CTRL_PU_PD_CTRL_PULL_DOWN ((uint32_t)0x2UL)
268#define MXC_S_SPIXFM_IO_CTRL_PU_PD_CTRL_PULL_DOWN (MXC_V_SPIXFM_IO_CTRL_PU_PD_CTRL_PULL_DOWN << MXC_F_SPIXFM_IO_CTRL_PU_PD_CTRL_POS)
278#define MXC_F_SPIXFM_MEMSECCN_DECEN_POS 0
279#define MXC_F_SPIXFM_MEMSECCN_DECEN ((uint32_t)(0x1UL << MXC_F_SPIXFM_MEMSECCN_DECEN_POS))
281#define MXC_F_SPIXFM_MEMSECCN_AUTH_DISABLE_POS 1
282#define MXC_F_SPIXFM_MEMSECCN_AUTH_DISABLE ((uint32_t)(0x1UL << MXC_F_SPIXFM_MEMSECCN_AUTH_DISABLE_POS))
284#define MXC_F_SPIXFM_MEMSECCN_CNTOPTIEN_POS 2
285#define MXC_F_SPIXFM_MEMSECCN_CNTOPTIEN ((uint32_t)(0x1UL << MXC_F_SPIXFM_MEMSECCN_CNTOPTIEN_POS))
287#define MXC_F_SPIXFM_MEMSECCN_INTERLDIS_POS 3
288#define MXC_F_SPIXFM_MEMSECCN_INTERLDIS ((uint32_t)(0x1UL << MXC_F_SPIXFM_MEMSECCN_INTERLDIS_POS))
290#define MXC_F_SPIXFM_MEMSECCN_AUTHERR_POS 4
291#define MXC_F_SPIXFM_MEMSECCN_AUTHERR ((uint32_t)(0x1UL << MXC_F_SPIXFM_MEMSECCN_AUTHERR_POS))
301#define MXC_F_SPIXFM_BUS_IDLE_BUSIDLE_POS 0
302#define MXC_F_SPIXFM_BUS_IDLE_BUSIDLE ((uint32_t)(0xFFFFUL << MXC_F_SPIXFM_BUS_IDLE_BUSIDLE_POS))
306#ifdef __cplusplus
307}
308#endif
309
310#endif // LIBRARIES_CMSIS_DEVICE_MAXIM_MAX32665_INCLUDE_SPIXFM_REGS_H_
__IO uint32_t cfg
Definition: spixfm_regs.h:77
__IO uint32_t sclk_fb_ctrl
Definition: spixfm_regs.h:81
__IO uint32_t mode_ctrl
Definition: spixfm_regs.h:79
__IO uint32_t fetch_ctrl
Definition: spixfm_regs.h:78
__IO uint32_t memseccn
Definition: spixfm_regs.h:84
__IO uint32_t io_ctrl
Definition: spixfm_regs.h:83
__IO uint32_t bus_idle
Definition: spixfm_regs.h:85
__IO uint32_t mode_data
Definition: spixfm_regs.h:80
Definition: spixfm_regs.h:76