99 #ifndef SYSTEM_MKL25Z4_H_
100 #define SYSTEM_MKL25Z4_H_
102 #include "contiki-conf.h"
115 #define DISABLE_WDOG 1
123 #define MCG_MODE_FEI 0U
124 #define MCG_MODE_FBI 1U
125 #define MCG_MODE_BLPI 2U
126 #define MCG_MODE_FEE 3U
127 #define MCG_MODE_FBE 4U
128 #define MCG_MODE_BLPE 5U
129 #define MCG_MODE_PBE 6U
130 #define MCG_MODE_PEE 7U
162 #define CPU_XTAL_CLK_HZ 8000000u
163 #define CPU_INT_SLOW_CLK_HZ 32768u
164 #define CPU_INT_FAST_CLK_HZ 4000000u
169 #ifndef SYSTEM_SMC_PMPROT_VALUE
171 #define SYSTEM_SMC_PMPROT_VALUE 0x2AU
181 #if (CLOCK_SETUP == 0)
182 #define DEFAULT_SYSTEM_CLOCK 20971520u
183 #define MCG_MODE MCG_MODE_FEI
185 #define SYSTEM_MCG_C1_VALUE 0x07U
187 #define SYSTEM_MCG_C2_VALUE 0x24U
189 #define SYSTEM_MCG_C4_VALUE 0x00U
191 #define SYSTEM_MCG_SC_VALUE 0x00U
193 #define SYSTEM_MCG_C5_VALUE 0x00U
195 #define SYSTEM_MCG_C6_VALUE 0x00U
197 #define SYSTEM_OSC0_CR_VALUE 0x80U
199 #define SYSTEM_SMC_PMCTRL_VALUE 0x00U
201 #define SYSTEM_SIM_CLKDIV1_VALUE 0x00U
203 #define SYSTEM_SIM_SOPT1_VALUE 0x000C0000U
205 #define SYSTEM_SIM_SOPT2_VALUE 0x01000000U
206 #elif (CLOCK_SETUP == 1)
207 #define DEFAULT_SYSTEM_CLOCK 48000000u
208 #define MCG_MODE MCG_MODE_PEE
210 #define SYSTEM_MCG_C1_VALUE 0x1BU
212 #define SYSTEM_MCG_C2_VALUE 0x24U
214 #define SYSTEM_MCG_C4_VALUE 0x00U
216 #define SYSTEM_MCG_SC_VALUE 0x00U
218 #define SYSTEM_MCG_C5_VALUE 0x01U
220 #define SYSTEM_MCG_C6_VALUE 0x40U
222 #define SYSTEM_OSC0_CR_VALUE 0x80U
224 #define SYSTEM_SMC_PMCTRL_VALUE 0x00U
226 #define SYSTEM_SIM_CLKDIV1_VALUE 0x10010000U
228 #define SYSTEM_SIM_SOPT1_VALUE 0x000C0000U
230 #define SYSTEM_SIM_SOPT2_VALUE 0x01010000U
231 #elif (CLOCK_SETUP == 2)
232 #define DEFAULT_SYSTEM_CLOCK 4000000u
233 #define MCG_MODE MCG_MODE_BLPI
235 #define SYSTEM_MCG_C1_VALUE 0x46U
237 #define SYSTEM_MCG_C2_VALUE 0x27U
239 #define SYSTEM_MCG_C4_VALUE 0x00U
241 #define SYSTEM_MCG_SC_VALUE 0x00U
243 #define SYSTEM_MCG_C5_VALUE 0x00U
245 #define SYSTEM_MCG_C6_VALUE 0x00U
247 #define SYSTEM_OSC0_CR_VALUE 0x80U
249 #define SYSTEM_SMC_PMCTRL_VALUE 0x00U
251 #define SYSTEM_SIM_CLKDIV1_VALUE 0x00040000U
253 #define SYSTEM_SIM_SOPT1_VALUE 0x000C0000U
255 #define SYSTEM_SIM_SOPT2_VALUE 0x02000000U
256 #elif (CLOCK_SETUP == 3)
257 #define DEFAULT_SYSTEM_CLOCK 4000000u
258 #define MCG_MODE MCG_MODE_BLPE
260 #define SYSTEM_MCG_C1_VALUE 0x9AU
262 #define SYSTEM_MCG_C2_VALUE 0x27U
264 #define SYSTEM_MCG_C4_VALUE 0x00U
266 #define SYSTEM_MCG_SC_VALUE 0x02U
268 #define SYSTEM_MCG_C5_VALUE 0x00U
270 #define SYSTEM_MCG_C6_VALUE 0x00U
272 #define SYSTEM_OSC0_CR_VALUE 0x80U
274 #define SYSTEM_SMC_PMCTRL_VALUE 0x00U
276 #define SYSTEM_SIM_CLKDIV1_VALUE 0x10030000U
278 #define SYSTEM_SIM_SOPT1_VALUE 0x000C0000U
280 #define SYSTEM_SIM_SOPT2_VALUE 0x02000000U
281 #elif (CLOCK_SETUP == 4)
282 #define DEFAULT_SYSTEM_CLOCK 48000000u
283 #define MCG_MODE MCG_MODE_PEE
285 #define SYSTEM_MCG_C1_VALUE 0x1BU
287 #define SYSTEM_MCG_C2_VALUE 0x24U
289 #define SYSTEM_MCG_C4_VALUE 0x00U
291 #define SYSTEM_MCG_SC_VALUE 0x00U
293 #define SYSTEM_MCG_C5_VALUE 0x01U
295 #define SYSTEM_MCG_C6_VALUE 0x40U
297 #define SYSTEM_OSC0_CR_VALUE 0x80U
299 #define SYSTEM_SMC_PMCTRL_VALUE 0x00U
301 #define SYSTEM_SIM_CLKDIV1_VALUE 0x10010000U
303 #define SYSTEM_SIM_SOPT1_VALUE 0x000C0000U
305 #define SYSTEM_SIM_SOPT2_VALUE 0x01010000U
309 #define DEFAULT_SYSTEM_CLOCK 20971520u
321 extern uint32_t SystemCoreClock;
void SystemCoreClockUpdate(void)
Update internal SystemCoreClock variable.
void SystemInit(void)
Initialize the system.