source: mainline/uspace/drv/platform/amdm37x/prm/global_reg.h@ d776329b

lfn serial ticket/834-toolchain-update topic/msim-upgrade topic/simplify-dev-export
Last change on this file since d776329b was 2a37b9f, checked in by Jiri Svoboda <jiri@…>, 11 years ago

Reorganize platform drivers.

  • Property mode set to 100644
File size: 14.4 KB
Line 
1/*
2 * Copyright (c) 2012 Jan Vesely
3 * All rights reserved.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions
7 * are met:
8 *
9 * - Redistributions of source code must retain the above copyright
10 * notice, this list of conditions and the following disclaimer.
11 * - Redistributions in binary form must reproduce the above copyright
12 * notice, this list of conditions and the following disclaimer in the
13 * documentation and/or other materials provided with the distribution.
14 * - The name of the author may not be used to endorse or promote products
15 * derived from this software without specific prior written permission.
16 *
17 * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
18 * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
19 * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
20 * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
21 * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
22 * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
23 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
24 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
25 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
26 * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
27 */
28
29/** @addtogroup amdm37xdrvprm
30 * @{
31 */
32/** @file
33 * @brief Clock Control Clock Management IO register structure.
34 */
35#ifndef AMDM37X_PRM_GLOBAL_REG_H
36#define AMDM37X_PRM_GLOBAL_REG_H
37#include <sys/types.h>
38#include <macros.h>
39
40/* AM/DM37x TRM p.536 and p.615 */
41#define GLOBAL_REG_PRM_BASE_ADDRESS 0x48307200
42#define GLOBAL_REG_PRM_SIZE 65536
43
44/** Global Reg PRM register map
45 */
46typedef struct {
47 PADD32[8];
48 struct {
49 ioport32_t smps_sa;
50#define GLOBAL_REG_PRM_VC_SMPS_SA_SA0_MASK (0x7f << 0)
51#define GLOBAL_REG_PRM_VC_SMPS_SA_SA0_CREATE(x) (((x) & 0x7f) << 0)
52#define GLOBAL_REG_PRM_VC_SMPS_SA_SA0_GET(r) (r & 0x7f)
53#define GLOBAL_REG_PRM_VC_SMPS_SA_SA1_MASK (0x7f << 16)
54#define GLOBAL_REG_PRM_VC_SMPS_SA_SA1_CREATE(x) (((x) & 0x7f) << 16)
55#define GLOBAL_REG_PRM_VC_SMPS_SA_SA1_GET(r) (((r) >> 16 ) & 0x7f)
56
57 ioport32_t smps_vol_ra;
58#define GLOBAL_REG_PRM_VC_SMPS_VOL_RA_VOLRA0_MASK (0xff << 0)
59#define GLOBAL_REG_PRM_VC_SMPS_VOL_RA_VOLRA0_CREATE(x) (((x) & 0xff) << 0)
60#define GLOBAL_REG_PRM_VC_SMPS_VOL_RA_VOLRA0_GET(r) (r & 0xff)
61#define GLOBAL_REG_PRM_VC_SMPS_VOL_RA_VOLRA1_MASK (0xff << 16)
62#define GLOBAL_REG_PRM_VC_SMPS_VOL_RA_VOLRA1_CREATE(x) (((x) & 0xff) << 16)
63#define GLOBAL_REG_PRM_VC_SMPS_VOL_RA_VOLRA1_GET(r) (((r) >> 16 ) & 0xff)
64
65 ioport32_t smps_cmd_ra;
66#define GLOBAL_REG_PRM_VC_SMPS_CMD_RA_CMDRA0_MASK (0xff << 0)
67#define GLOBAL_REG_PRM_VC_SMPS_CMD_RA_CMDRA0_CREATE(x) (((x) & 0xff) << 0)
68#define GLOBAL_REG_PRM_VC_SMPS_CMD_RA_CMDRA0_GET(r) (r & 0xff)
69#define GLOBAL_REG_PRM_VC_SMPS_CMD_RA_CMDRA1_MASK (0xff << 16)
70#define GLOBAL_REG_PRM_VC_SMPS_CMD_RA_CMDRA1_CREATE(x) (((x) & 0xff) << 16)
71#define GLOBAL_REG_PRM_VC_SMPS_CMD_RA_CMDRA1_GET(r) (((r) >> 16 ) & 0xff)
72
73 ioport32_t cmd_val_0;
74#define GLOBAL_REG_PRM_VC_CMD_VAL_0_ON_MASK (0xff << 24)
75#define GLOBAL_REG_PRM_VC_CMD_VAL_0_ON_CREATE(x) (((x) & 0xff) << 24)
76#define GLOBAL_REG_PRM_VC_CMD_VAL_0_ON_GET(r) (((x) >> 24) & 0xff)
77#define GLOBAL_REG_PRM_VC_CMD_VAL_0_ONLP_MASK (0xff << 24)
78#define GLOBAL_REG_PRM_VC_CMD_VAL_0_ONLP_CREATE(x) (((x) & 0xff) << 24)
79#define GLOBAL_REG_PRM_VC_CMD_VAL_0_ONLP_GET(r) (((x) >> 24) & 0xff)
80#define GLOBAL_REG_PRM_VC_CMD_VAL_0_RET_MASK (0xff << 24)
81#define GLOBAL_REG_PRM_VC_CMD_VAL_0_RET_CREATE(x) (((x) & 0xff) << 24)
82#define GLOBAL_REG_PRM_VC_CMD_VAL_0_RET_GET(r) (((x) >> 24) & 0xff)
83#define GLOBAL_REG_PRM_VC_CMD_VAL_0_OFF_MASK (0xff << 24)
84#define GLOBAL_REG_PRM_VC_CMD_VAL_0_OFF_CREATE(x) (((x) & 0xff) << 24)
85#define GLOBAL_REG_PRM_VC_CMD_VAL_0_OFF_GET(r) (((x) >> 24) & 0xff)
86
87 ioport32_t cmd_val_1;
88#define GLOBAL_REG_PRM_VC_CMD_VAL_1_ON_MASK (0xff << 24)
89#define GLOBAL_REG_PRM_VC_CMD_VAL_1_ON_CREATE(x) (((x) & 0xff) << 24)
90#define GLOBAL_REG_PRM_VC_CMD_VAL_1_ON_GET(r) (((x) >> 24) & 0xff)
91#define GLOBAL_REG_PRM_VC_CMD_VAL_1_ONLP_MASK (0xff << 24)
92#define GLOBAL_REG_PRM_VC_CMD_VAL_1_ONLP_CREATE(x) (((x) & 0xff) << 24)
93#define GLOBAL_REG_PRM_VC_CMD_VAL_1_ONLP_GET(r) (((x) >> 24) & 0xff)
94#define GLOBAL_REG_PRM_VC_CMD_VAL_1_RET_MASK (0xff << 24)
95#define GLOBAL_REG_PRM_VC_CMD_VAL_1_RET_CREATE(x) (((x) & 0xff) << 24)
96#define GLOBAL_REG_PRM_VC_CMD_VAL_1_RET_GET(r) (((x) >> 24) & 0xff)
97#define GLOBAL_REG_PRM_VC_CMD_VAL_1_OFF_MASK (0xff << 24)
98#define GLOBAL_REG_PRM_VC_CMD_VAL_1_OFF_CREATE(x) (((x) & 0xff) << 24)
99#define GLOBAL_REG_PRM_VC_CMD_VAL_1_OFF_GET(r) (((x) >> 24) & 0xff)
100
101 ioport32_t ch_conf;
102#define GLOBAL_REG_PRM_VC_CH_CONF_CMD1_FLAG (1 << 20)
103#define GLOBAL_REG_PRM_VC_CH_CONF_RACEN1_FLAG (1 << 19)
104#define GLOBAL_REG_PRM_VC_CH_CONF_RAC1_FLAG (1 << 18)
105#define GLOBAL_REG_PRM_VC_CH_CONF_RAV1_FLAG (1 << 17)
106#define GLOBAL_REG_PRM_VC_CH_CONF_SA1_FLAG (1 << 16)
107#define GLOBAL_REG_PRM_VC_CH_CONF_CMD0_FLAG (1 << 4)
108#define GLOBAL_REG_PRM_VC_CH_CONF_RACEN0_FLAG (1 << 3)
109#define GLOBAL_REG_PRM_VC_CH_CONF_RAC0_FLAG (1 << 2)
110#define GLOBAL_REG_PRM_VC_CH_CONF_RAV0_FLAG (1 << 1)
111#define GLOBAL_REG_PRM_VC_CH_CONF_SA0_FLAG (1 << 0)
112
113 ioport32_t i2c_cfg;
114#define GLOBAL_REG_PRM_VC_I2C_CFG_HSMASTER_FLAG (1 << 5)
115#define GLOBAL_REG_PRM_VC_I2C_CFG_SREN_FLAG (1 << 4)
116#define GLOBAL_REG_PRM_VC_I2C_CFG_HSEN_FLAG (1 << 3)
117#define GLOBAL_REG_PRM_VC_I2C_CFG_MCODE_MASK (0x3 << 0)
118#define GLOBAL_REG_PRM_VC_I2C_CFG_MCODE_CREATE(x) ((x) & 0x3)
119#define GLOBAL_REG_PRM_VC_I2C_CFG_MCODE_GET(r) ((r) & 0x3)
120
121 ioport32_t bypass_val;
122#define GLOBAL_REG_PRM_VC_BYPASS_VAL_VALID_FLAG (1 << 24)
123#define GLOBAL_REG_PRM_VC_BYPASS_VAL_DATA_MASK (0xff << 16)
124#define GLOBAL_REG_PRM_VC_BYPASS_VAL_DATA_CREATE(x) (((x) & 0xff) << 16)
125#define GLOBAL_REG_PRM_VC_BYPASS_VAL_DATA_GET(r) (((r) >> 16) & 0xff)
126#define GLOBAL_REG_PRM_VC_BYPASS_VAL_REGADDR_MASK (0xff << 8)
127#define GLOBAL_REG_PRM_VC_BYPASS_VAL_REGADDR_CREATE(x) (((x) & 0xff) << 8)
128#define GLOBAL_REG_PRM_VC_BYPASS_VAL_REGADDR_GET(r) (((r) >> 8) & 0xff)
129#define GLOBAL_REG_PRM_VC_BYPASS_VAL_SLAVEADDR_MASK (0x7f << 0)
130#define GLOBAL_REG_PRM_VC_BYPASS_VAL_SLAVEADDR_CREATE(x) (((x) & 0x7f) << 0)
131#define GLOBAL_REG_PRM_VC_BYPASS_VAL_SLAVEADDR_GET(r) (((r) >> 0) & 0x7f)
132 } vc;
133
134 PADD32[4];
135 ioport32_t rstctrl;
136#define GLOBAL_REG_PRM_RSTCTRL_RST_DPLL3_FLAG (1 << 2)
137#define GLOBAL_REG_PRM_RSTCTRL_RST_GS_FLAG (1 << 1)
138
139 ioport32_t rsttime;
140#define GLOBAL_REG_PRM_RSTTIME_RSTTIME2_MASK (0x1f << 8)
141#define GLOBAL_REG_PRM_RSTTIME_RSTTIME2_CREATE(x) (((x) & 0x1f) << 8)
142#define GLOBAL_REG_PRM_RSTTIME_RSTTIME2_GET(r) (((r) >> 8) & 0x1f)
143#define GLOBAL_REG_PRM_RSTTIME_RSTTIME1_MASK (0xff << 0)
144#define GLOBAL_REG_PRM_RSTTIME_RSTTIME1_CREATE(x) (((x) & 0xff) << 0)
145#define GLOBAL_REG_PRM_RSTTIME_RSTTIME1_GET(r) (((r) >> 0) & 0xff)
146
147 ioport32_t rstst;
148#define GLOBAL_REG_PRM_RSTST_ICECRUSHER_RST_FLAG (1 << 10)
149#define GLOBAL_REG_PRM_RSTST_ICEPICK_RST_FLAG (1 << 9)
150#define GLOBAL_REG_PRM_RSTST_VDD2_VOLTAGE_MGR_RST_FLAG (1 << 8)
151#define GLOBAL_REG_PRM_RSTST_VDD1_VOLTAGE_MGR_RST_FLAG (1 << 7)
152#define GLOBAL_REG_PRM_RSTST_EXTERNAL_WARM_REST_FLAG (1 << 6)
153#define GLOBAL_REG_PRM_RSTST_MPU_WD_RST_FLAG (1 << 4)
154#define GLOBAL_REG_PRM_RSTST_GLOBAL_SW_RST_FLAG (1 << 1)
155#define GLOBAL_REG_PRM_RSTST_GLOABL_COLD_RST_FLAG (1 << 0)
156
157 PADD32;
158 ioport32_t volctrl;
159#define GLOBAL_REG_PRM_VOLCTRL_SEL_VMODE_FLAG (1 << 4)
160#define GLOBAL_REG_PRM_VOLCTRL_SEL_OFF_FLAG (1 << 3)
161#define GLOBAL_REG_PRM_VOLCTRL_AUTO_OFF_FLAG (1 << 2)
162#define GLOBAL_REG_PRM_VOLCTRL_AUTO_RET_FLAG (1 << 1)
163#define GLOBAL_REG_PRM_VOLCTRL_AUTO_SLEEP_FLAG (1 << 0)
164
165 ioport32_t sram_pcharge;
166#define GLOBAL_REG_PRM_SRAM_PCHARGE_PCHARGE_TIME_MASK (0xff)
167#define GLOBAL_REG_PRM_SRAM_PCHARGE_PCHARGE_TIME_CREATE(x) ((x) & 0xff)
168#define GLOBAL_REG_PRM_SRAM_PCHARGE_PCHARGE_TIME_GET(r) ((r) & 0xff)
169
170 PADD32[2];
171 ioport32_t clksrc_ctrl;
172#define GLOBAL_REG_PRM_CLKSRC_CTRL_DPLL4_CLKINP_DIV_65_FLAG (1 << 8)
173#define GLOBAL_REG_PRM_CLKSRC_CTRL_SYSCLKDIV_MASK (0x3 << 6)
174#define GLOBAL_REG_PRM_CLKSRC_CTRL_SYSCLKDIV_1 (0x1 << 6)
175#define GLOBAL_REG_PRM_CLKSRC_CTRL_SYSCLKDIV_2 (0x2 << 6)
176#define GLOBAL_REG_PRM_CLKSRC_CTRL_SYSCLKDIV_GET(r) (((r) >> 6) & 0x3)
177#define GLOBAL_REG_PRM_CLKSRC_CTRL_AUTOEXTCLKMODE_MASK (0x3 << 3)
178#define GLOBAL_REG_PRM_CLKSRC_CTRL_AUTOEXTCLKMODE_ON (0x0 << 3)
179#define GLOBAL_REG_PRM_CLKSRC_CTRL_AUTOEXTCLKMODE_SLEEP (0x1 << 3)
180#define GLOBAL_REG_PRM_CLKSRC_CTRL_AUTOEXTCLKMODE_RET (0x2 << 3)
181#define GLOBAL_REG_PRM_CLKSRC_CTRL_AUTOEXTCLKMODE_OFF (0x3 << 3)
182#define GLOBAL_REG_PRM_CLKSRC_CTRL_AUTOEXTCLKMODE_GET(r) (((r) >> 3) & 0x3)
183#define GLOBAL_REG_PRM_CLKSRC_CTRL_SYSCLKSEL_MASK (0x3 << 0)
184#define GLOBAL_REG_PRM_CLKSRC_CTRL_SYSCLKSEL_BYPASS (0x0 << 0)
185#define GLOBAL_REG_PRM_CLKSRC_CTRL_SYSCLKSEL_OSCILLATOR (0x1 << 0)
186#define GLOBAL_REG_PRM_CLKSRC_CTRL_SYSCLKSEL_UNKNOWN (0x3 << 0)
187#define GLOBAL_REG_PRM_CLKSRC_CTRL_SYSCLKSEL_GET(r) (((r) >> 0) & 0x3)
188
189 PADD32[3];
190 const ioport32_t obs;
191#define GLOBAL_REG_PRM_OBS_OBS_BUS_MASK (0x3ff)
192
193 PADD32[3];
194 ioport32_t voltsetup1;
195#define GLOBAL_REG_PRM_VOLTSETUP1_SETUPTIME2_MASK (0xff << 16)
196#define GLOBAL_REG_PRM_VOLTSETUP1_SETUPTIME2_CREATE(x) (((x) & 0xff) << 16)
197#define GLOBAL_REG_PRM_VOLTSETUP1_SETUPTIME2_GET(r) (((r) >> 16) & 0xff)
198#define GLOBAL_REG_PRM_VOLTSETUP1_SETUPTIME1_MASK (0xff << 0)
199#define GLOBAL_REG_PRM_VOLTSETUP1_SETUPTIME1_CREATE(x) (((x) & 0xff) << 0)
200#define GLOBAL_REG_PRM_VOLTSETUP1_SETUPTIME1_GET(r) (((r) >> 0) & 0xff)
201
202 ioport32_t voltoffset;
203#define GLOBAL_REG_PRM_VOLTOFFSET_OFFSET_TIME_MASK (0xffff << 0)
204#define GLOBAL_REG_PRM_VOLTOFFSET_OFFSET_TIME_CREATE(x) (((x) & 0xffff) << 0)
205#define GLOBAL_REG_PRM_VOLTOFFSET_OFFSET_TIME_GET(r) (((r) >> 0) & 0xffff)
206
207 ioport32_t clksetup;
208#define GLOBAL_REG_PRM_CLKSETUP_SETUP_TIME_MASK (0xffff << 0)
209#define GLOBAL_REG_PRM_CLKSETUP_SETUP_TIME_CREATE(x) (((x) & 0xffff) << 0)
210#define GLOBAL_REG_PRM_CLKSETUP_SETUP_TIME_GET(r) (((r) >> 0) & 0xffff)
211
212 ioport32_t polctrl;
213#define GLOBAL_REG_PRM_POLCTRL_OFFMODE_POL_FLAG (1 << 3)
214#define GLOBAL_REG_PRM_POLCTRL_CLKOUT_POL_FLAG (1 << 2)
215#define GLOBAL_REG_PRM_POLCTRL_CLKREG_POL_FLAG (1 << 1)
216#define GLOBAL_REG_PRM_POLCTRL_EXTVOL_POL_FLAG (1 << 0)
217
218 ioport32_t voltsetup2;
219#define GLOBAL_REG_PRM_VOLTSETUP2_OFFMODESETUPTIME_MASK (0xffff << 0)
220#define GLOBAL_REG_PRM_VOLTSETUP2_OFFMODESETUPTIME_CREATE(x) (((x) & 0xffff) << 0)
221#define GLOBAL_REG_PRM_VOLTSETUP2_OFFMODESETUPTIME_GET(r) (((r) >> 0) & 0xffff)
222
223 PADD32[3];
224 struct {
225 ioport32_t config;
226#define GLOBAL_REG_PRM_VP_CONFIG_ERROROFFSET_MASK (0xff << 24)
227#define GLOBAL_REG_PRM_VP_CONFIG_ERROROFFSET_CREATE(x) (((x) & 0xff) << 24)
228#define GLOBAL_REG_PRM_VP_CONFIG_ERROROFFSET_GET(r) (((r) >> 0xff << 24)
229#define GLOBAL_REG_PRM_VP_CONFIG_ERRORGAIN_MASK (0xff << 16)
230#define GLOBAL_REG_PRM_VP_CONFIG_ERRORGAIN_CREATE(x) (((x) & 0xff) << 16)
231#define GLOBAL_REG_PRM_VP_CONFIG_ERRORGAIN_GET(r) (((r) >> 0xff << 16)
232#define GLOBAL_REG_PRM_VP_CONFIG_INITVOLTAGE_MASK (0xff << 8)
233#define GLOBAL_REG_PRM_VP_CONFIG_INITVOLTAGE_CREATE(x) (((x) & 0xff) << 8)
234#define GLOBAL_REG_PRM_VP_CONFIG_INITVOLTAGE_GET(r) (((r) >> 0xff << 8)
235#define GLOBAL_REG_PRM_VP_CONFIG_TIMEOUTEN_FLAG (1 << 3)
236#define GLOBAL_REG_PRM_VP_CONFIG_INITVDD_FLAG (1 << 2)
237#define GLOBAL_REG_PRM_VP_CONFIG_FORCEUPDATE_FLAG (1 << 1)
238#define GLOBAL_REG_PRM_VP_CONFIG_VPENABLE_FLAG (1 << 0)
239
240 ioport32_t vstepmin;
241#define GLOBAL_REG_PRM_VP_VSTEPMIN_SMPSWAITTIMEMIN_MASK (0xffff << 8)
242#define GLOBAL_REG_PRM_VP_VSTEPMIN_SMPSWAITTIMEMIN_CREATE(x) (((x)0xffff << 8)
243#define GLOBAL_REG_PRM_VP_VSTEPMIN_SMPSWAITTIMEMIN_GET(r) (((r) >> 8) & 0xffff)
244#define GLOBAL_REG_PRM_VP_VSTEPMIN_VSTEPMIN_MASK (0xff << 0)
245#define GLOBAL_REG_PRM_VP_VSTEPMIN_VSTEPMIN_CREATE(x) (((x)0xff << 0)
246#define GLOBAL_REG_PRM_VP_VSTEPMIN_VSTEPMIN_GET(r) (((r) >> 0) & 0xff)
247
248 ioport32_t vstepmax;
249#define GLOBAL_REG_PRM_VP_VSTEPMAX_SMPSWAITTIMEMIN_MASK (0xffff << 8)
250#define GLOBAL_REG_PRM_VP_VSTEPMAX_SMPSWAITTIMEMIN_CREATE(x) (((x)0xffff << 8)
251#define GLOBAL_REG_PRM_VP_VSTEPMAX_SMPSWAITTIMEMIN_GET(r) (((r) >> 8) & 0xffff)
252#define GLOBAL_REG_PRM_VP_VSTEPMAX_VSTEPMIN_MASK (0xff << 0)
253#define GLOBAL_REG_PRM_VP_VSTEPMAX_VSTEPMIN_CREATE(x) (((x)0xff << 0)
254#define GLOBAL_REG_PRM_VP_VSTEPMAX_VSTEPMIN_GET(r) (((r) >> 0) & 0xff)
255
256 ioport32_t vlimitto;
257#define GLOBAL_REG_PRM_VP_VLIMITTO_VDDMAX_MASK (0xff << 24)
258#define GLOBAL_REG_PRM_VP_VLIMITTO_VDDMAX_CREATE(x) (((x)0xff << 24)
259#define GLOBAL_REG_PRM_VP_VLIMITTO_VDDMAX_GET(r) (((r) >> 24) & 0xff)
260#define GLOBAL_REG_PRM_VP_VLIMITTO_VDDMIN_MASK (0xff << 16)
261#define GLOBAL_REG_PRM_VP_VLIMITTO_VDDMIN_CREATE(x) (((x)0xff << 16)
262#define GLOBAL_REG_PRM_VP_VLIMITTO_VDDMIN_GET(r) (((r) >> 16) & 0xff)
263#define GLOBAL_REG_PRM_VP_VLIMITTO_TIMEOUT_MASK (0xffff << 0)
264#define GLOBAL_REG_PRM_VP_VLIMITTO_TIMEOUT_CREATE(x) (((x)0xffff << 0)
265#define GLOBAL_REG_PRM_VP_VLIMITTO_TIMEOUT_GET(r) (((r) >> 0) & 0xffff)
266
267 const ioport32_t voltage;
268#define GLOBAL_REG_PRM_VP_VOLTAGE_VPVOLTAGE_MASK (0xff)
269#define GLOBAL_REG_PRM_VP_VOLTAGE_VPVOLTAGE_GET(r) ((r) & 0xff)
270
271 const ioport32_t status;
272#define GLOBAL_REG_PRM_VP_STATUS_VPINIDLE_FLAG (1 << 0)
273
274 PADD32[2];
275 } vp[2];
276
277 ioport32_t ldo_abb_setup;
278#define GLOBAL_REG_PRM_LDO_ABB_SETUP_SR2_IN_TRANSITION (1 << 6)
279#define GLOBAL_REG_PRM_LDO_ABB_SETUP_SR2_STATUS_MASK (0x3 << 3)
280#define GLOBAL_REG_PRM_LDO_ABB_SETUP_SR2_STATUS_BYPASS (0x0 << 3)
281#define GLOBAL_REG_PRM_LDO_ABB_SETUP_SR2_STATUS_FBB (0x2 << 3)
282#define GLOBAL_REG_PRM_LDO_ABB_SETUP_SR2_OPP_CHANGE_FLAG (1 << 2)
283#define GLOBAL_REG_PRM_LDO_ABB_SETUP_OPP_SEL_MASK (0x3 << 0)
284#define GLOBAL_REG_PRM_LDO_ABB_SETUP_OPP_SEL_DEFAULT (0x0 << 0)
285#define GLOBAL_REG_PRM_LDO_ABB_SETUP_OPP_SEL_FAST (0x1 << 0)
286#define GLOBAL_REG_PRM_LDO_ABB_SETUP_OPP_SEL_NOMINAL (0x2 << 0)
287#define GLOBAL_REG_PRM_LDO_ABB_SETUP_OPP_SEL_SLOW (0x3 << 0)
288
289 ioport32_t ldo_abb_ctrl;
290#define GLOBAL_REG_PRM_LDO_ABB_CTRL_SR2_WTCNT_VALUE_MASK (0xff << 8)
291#define GLOBAL_REG_PRM_LDO_ABB_CTRL_SR2_WTCNT_VALUE_CREATE(x) (((x) & 0xff) << 8)
292#define GLOBAL_REG_PRM_LDO_ABB_CTRL_SR2_WTCNT_VALUE_GET(r) (((r) >> 8) & 0xff)
293#define GLOBAL_REG_PRM_LDO_ABB_CTRL_ACTIVE_FBB_SEL_FLAG (1 << 2)
294#define GLOBAL_REG_PRM_LDO_ABB_CTRL_SR2EN (1 << 0)
295} global_reg_prm_regs_t;
296
297#endif
298/**
299 * @}
300 */
Note: See TracBrowser for help on using the repository browser.