 |
Software APIs
|
Go to the documentation of this file.
13#ifndef _CLKMGR_REG_DEFS_
14#define _CLKMGR_REG_DEFS_
20#define CLKMGR_PARAM_NUM_GROUPS 7
23#define CLKMGR_PARAM_NUM_SW_GATEABLE_CLOCKS 2
26#define CLKMGR_PARAM_NUM_HINTABLE_CLOCKS 4
29#define CLKMGR_PARAM_NUM_ALERTS 2
32#define CLKMGR_PARAM_REG_WIDTH 32
35#define CLKMGR_ALERT_TEST_REG_OFFSET 0x0
36#define CLKMGR_ALERT_TEST_REG_RESVAL 0x0u
37#define CLKMGR_ALERT_TEST_RECOV_FAULT_BIT 0
38#define CLKMGR_ALERT_TEST_FATAL_FAULT_BIT 1
41#define CLKMGR_EXTCLK_CTRL_REGWEN_REG_OFFSET 0x4
42#define CLKMGR_EXTCLK_CTRL_REGWEN_REG_RESVAL 0x1u
43#define CLKMGR_EXTCLK_CTRL_REGWEN_EN_BIT 0
46#define CLKMGR_EXTCLK_CTRL_REG_OFFSET 0x8
47#define CLKMGR_EXTCLK_CTRL_REG_RESVAL 0x99u
48#define CLKMGR_EXTCLK_CTRL_SEL_MASK 0xfu
49#define CLKMGR_EXTCLK_CTRL_SEL_OFFSET 0
50#define CLKMGR_EXTCLK_CTRL_SEL_FIELD \
51 ((bitfield_field32_t) { .mask = CLKMGR_EXTCLK_CTRL_SEL_MASK, .index = CLKMGR_EXTCLK_CTRL_SEL_OFFSET })
52#define CLKMGR_EXTCLK_CTRL_HI_SPEED_SEL_MASK 0xfu
53#define CLKMGR_EXTCLK_CTRL_HI_SPEED_SEL_OFFSET 4
54#define CLKMGR_EXTCLK_CTRL_HI_SPEED_SEL_FIELD \
55 ((bitfield_field32_t) { .mask = CLKMGR_EXTCLK_CTRL_HI_SPEED_SEL_MASK, .index = CLKMGR_EXTCLK_CTRL_HI_SPEED_SEL_OFFSET })
58#define CLKMGR_EXTCLK_STATUS_REG_OFFSET 0xc
59#define CLKMGR_EXTCLK_STATUS_REG_RESVAL 0x9u
60#define CLKMGR_EXTCLK_STATUS_ACK_MASK 0xfu
61#define CLKMGR_EXTCLK_STATUS_ACK_OFFSET 0
62#define CLKMGR_EXTCLK_STATUS_ACK_FIELD \
63 ((bitfield_field32_t) { .mask = CLKMGR_EXTCLK_STATUS_ACK_MASK, .index = CLKMGR_EXTCLK_STATUS_ACK_OFFSET })
66#define CLKMGR_JITTER_REGWEN_REG_OFFSET 0x10
67#define CLKMGR_JITTER_REGWEN_REG_RESVAL 0x1u
68#define CLKMGR_JITTER_REGWEN_EN_BIT 0
71#define CLKMGR_JITTER_ENABLE_REG_OFFSET 0x14
72#define CLKMGR_JITTER_ENABLE_REG_RESVAL 0x9u
73#define CLKMGR_JITTER_ENABLE_VAL_MASK 0xfu
74#define CLKMGR_JITTER_ENABLE_VAL_OFFSET 0
75#define CLKMGR_JITTER_ENABLE_VAL_FIELD \
76 ((bitfield_field32_t) { .mask = CLKMGR_JITTER_ENABLE_VAL_MASK, .index = CLKMGR_JITTER_ENABLE_VAL_OFFSET })
79#define CLKMGR_CLK_ENABLES_REG_OFFSET 0x18
80#define CLKMGR_CLK_ENABLES_REG_RESVAL 0x3u
81#define CLKMGR_CLK_ENABLES_CLK_IO_DIV4_PERI_EN_BIT 0
82#define CLKMGR_CLK_ENABLES_CLK_IO_DIV2_PERI_EN_BIT 1
85#define CLKMGR_CLK_HINTS_REG_OFFSET 0x1c
86#define CLKMGR_CLK_HINTS_REG_RESVAL 0xfu
87#define CLKMGR_CLK_HINTS_CLK_MAIN_AES_HINT_BIT 0
88#define CLKMGR_CLK_HINTS_CLK_MAIN_HMAC_HINT_BIT 1
89#define CLKMGR_CLK_HINTS_CLK_MAIN_KMAC_HINT_BIT 2
90#define CLKMGR_CLK_HINTS_CLK_MAIN_OTBN_HINT_BIT 3
93#define CLKMGR_CLK_HINTS_STATUS_REG_OFFSET 0x20
94#define CLKMGR_CLK_HINTS_STATUS_REG_RESVAL 0xfu
95#define CLKMGR_CLK_HINTS_STATUS_CLK_MAIN_AES_VAL_BIT 0
96#define CLKMGR_CLK_HINTS_STATUS_CLK_MAIN_HMAC_VAL_BIT 1
97#define CLKMGR_CLK_HINTS_STATUS_CLK_MAIN_KMAC_VAL_BIT 2
98#define CLKMGR_CLK_HINTS_STATUS_CLK_MAIN_OTBN_VAL_BIT 3
101#define CLKMGR_MEASURE_CTRL_REGWEN_REG_OFFSET 0x24
102#define CLKMGR_MEASURE_CTRL_REGWEN_REG_RESVAL 0x1u
103#define CLKMGR_MEASURE_CTRL_REGWEN_EN_BIT 0
106#define CLKMGR_IO_DIV4_MEAS_CTRL_EN_REG_OFFSET 0x28
107#define CLKMGR_IO_DIV4_MEAS_CTRL_EN_REG_RESVAL 0x9u
108#define CLKMGR_IO_DIV4_MEAS_CTRL_EN_EN_MASK 0xfu
109#define CLKMGR_IO_DIV4_MEAS_CTRL_EN_EN_OFFSET 0
110#define CLKMGR_IO_DIV4_MEAS_CTRL_EN_EN_FIELD \
111 ((bitfield_field32_t) { .mask = CLKMGR_IO_DIV4_MEAS_CTRL_EN_EN_MASK, .index = CLKMGR_IO_DIV4_MEAS_CTRL_EN_EN_OFFSET })
114#define CLKMGR_IO_DIV4_MEAS_CTRL_SHADOWED_REG_OFFSET 0x2c
115#define CLKMGR_IO_DIV4_MEAS_CTRL_SHADOWED_REG_RESVAL 0xec8au
116#define CLKMGR_IO_DIV4_MEAS_CTRL_SHADOWED_HI_MASK 0x1ffu
117#define CLKMGR_IO_DIV4_MEAS_CTRL_SHADOWED_HI_OFFSET 0
118#define CLKMGR_IO_DIV4_MEAS_CTRL_SHADOWED_HI_FIELD \
119 ((bitfield_field32_t) { .mask = CLKMGR_IO_DIV4_MEAS_CTRL_SHADOWED_HI_MASK, .index = CLKMGR_IO_DIV4_MEAS_CTRL_SHADOWED_HI_OFFSET })
120#define CLKMGR_IO_DIV4_MEAS_CTRL_SHADOWED_LO_MASK 0x1ffu
121#define CLKMGR_IO_DIV4_MEAS_CTRL_SHADOWED_LO_OFFSET 9
122#define CLKMGR_IO_DIV4_MEAS_CTRL_SHADOWED_LO_FIELD \
123 ((bitfield_field32_t) { .mask = CLKMGR_IO_DIV4_MEAS_CTRL_SHADOWED_LO_MASK, .index = CLKMGR_IO_DIV4_MEAS_CTRL_SHADOWED_LO_OFFSET })
126#define CLKMGR_MAIN_MEAS_CTRL_EN_REG_OFFSET 0x30
127#define CLKMGR_MAIN_MEAS_CTRL_EN_REG_RESVAL 0x9u
128#define CLKMGR_MAIN_MEAS_CTRL_EN_EN_MASK 0xfu
129#define CLKMGR_MAIN_MEAS_CTRL_EN_EN_OFFSET 0
130#define CLKMGR_MAIN_MEAS_CTRL_EN_EN_FIELD \
131 ((bitfield_field32_t) { .mask = CLKMGR_MAIN_MEAS_CTRL_EN_EN_MASK, .index = CLKMGR_MAIN_MEAS_CTRL_EN_EN_OFFSET })
134#define CLKMGR_MAIN_MEAS_CTRL_SHADOWED_REG_OFFSET 0x34
135#define CLKMGR_MAIN_MEAS_CTRL_SHADOWED_REG_RESVAL 0xec8au
136#define CLKMGR_MAIN_MEAS_CTRL_SHADOWED_HI_MASK 0x1ffu
137#define CLKMGR_MAIN_MEAS_CTRL_SHADOWED_HI_OFFSET 0
138#define CLKMGR_MAIN_MEAS_CTRL_SHADOWED_HI_FIELD \
139 ((bitfield_field32_t) { .mask = CLKMGR_MAIN_MEAS_CTRL_SHADOWED_HI_MASK, .index = CLKMGR_MAIN_MEAS_CTRL_SHADOWED_HI_OFFSET })
140#define CLKMGR_MAIN_MEAS_CTRL_SHADOWED_LO_MASK 0x1ffu
141#define CLKMGR_MAIN_MEAS_CTRL_SHADOWED_LO_OFFSET 9
142#define CLKMGR_MAIN_MEAS_CTRL_SHADOWED_LO_FIELD \
143 ((bitfield_field32_t) { .mask = CLKMGR_MAIN_MEAS_CTRL_SHADOWED_LO_MASK, .index = CLKMGR_MAIN_MEAS_CTRL_SHADOWED_LO_OFFSET })
146#define CLKMGR_RECOV_ERR_CODE_REG_OFFSET 0x38
147#define CLKMGR_RECOV_ERR_CODE_REG_RESVAL 0x0u
148#define CLKMGR_RECOV_ERR_CODE_SHADOW_UPDATE_ERR_BIT 0
149#define CLKMGR_RECOV_ERR_CODE_IO_DIV4_MEASURE_ERR_BIT 1
150#define CLKMGR_RECOV_ERR_CODE_MAIN_MEASURE_ERR_BIT 2
151#define CLKMGR_RECOV_ERR_CODE_IO_DIV4_TIMEOUT_ERR_BIT 3
152#define CLKMGR_RECOV_ERR_CODE_MAIN_TIMEOUT_ERR_BIT 4
155#define CLKMGR_FATAL_ERR_CODE_REG_OFFSET 0x3c
156#define CLKMGR_FATAL_ERR_CODE_REG_RESVAL 0x0u
157#define CLKMGR_FATAL_ERR_CODE_REG_INTG_BIT 0
158#define CLKMGR_FATAL_ERR_CODE_IDLE_CNT_BIT 1
159#define CLKMGR_FATAL_ERR_CODE_SHADOW_STORAGE_ERR_BIT 2