ISSDK  1.8
IoT Sensing Software Development Kit
clock_config.c
Go to the documentation of this file.
1 /*
2  * Copyright 2019 NXP
3  * All rights reserved.
4  *
5  * SPDX-License-Identifier: BSD-3-Clause
6  */
7 
8 /***********************************************************************************************************************
9  * This file was generated by the MCUXpresso Config Tools. Any manual edits made to this file
10  * will be overwritten if the respective MCUXpresso Config Tools is used to update this file.
11  **********************************************************************************************************************/
12 /*
13  * How to setup clock using clock driver functions:
14  *
15  * 1. Call CLOCK_InitXXX() to configure corresponding SCG clock source.
16  * Note: The clock could not be set when it is being used as system clock.
17  * In default out of reset, the CPU is clocked from FIRC(IRC48M),
18  * so before setting FIRC, change to use another avaliable clock source.
19  *
20  * 2. Call CLOCK_SetXtal0Freq() to set XTAL0 frequency based on board settings.
21  *
22  * 3. Call CLOCK_SetXxxModeSysClkConfig() to set SCG mode for Xxx run mode.
23  * Wait until the system clock source is changed to target source.
24  *
25  * 4. If power mode change is needed, call SMC_SetPowerModeProtection() to allow
26  * corresponding power mode and SMC_SetPowerModeXxx() to change to Xxx mode.
27  * Supported run mode and clock restrictions could be found in Reference Manual.
28  */
29 
30 /* clang-format off */
31 /* TEXT BELOW IS USED AS SETTING FOR TOOLS *************************************
32 !!GlobalInfo
33 product: Clocks v5.0
34 processor: K32L3A60xxx
35 package_id: K32L3A60VPJ1A
36 mcu_data: ksdk2_0
37 processor_version: 0.0.0
38 board: FRDM-K32L3A6
39  * BE CAREFUL MODIFYING THIS COMMENT - IT IS YAML SETTINGS FOR TOOLS **********/
40 /* clang-format on */
41 
42 #include "fsl_msmc.h"
43 #include "clock_config.h"
44 
45 /*******************************************************************************
46  * Definitions
47  ******************************************************************************/
48 #define SCG_LPFLL_DISABLE 0U /*!< LPFLL clock disabled */
49 
50 /*******************************************************************************
51  * Variables
52  ******************************************************************************/
53 /* System clock frequency. */
54 extern uint32_t SystemCoreClock;
55 
56 /*******************************************************************************
57  * Code
58  ******************************************************************************/
59 #ifndef SDK_SECONDARY_CORE
60 /*FUNCTION**********************************************************************
61  *
62  * Function Name : CLOCK_CONFIG_FircSafeConfig
63  * Description : This function is used to safely configure FIRC clock.
64  * In default out of reset, the CPU is clocked from FIRC(IRC48M).
65  * Before setting FIRC, change to use SIRC as system clock,
66  * then configure FIRC.
67  * Param fircConfig : FIRC configuration.
68  *
69  *END**************************************************************************/
70 static void CLOCK_CONFIG_FircSafeConfig(const scg_firc_config_t *fircConfig)
71 {
72  scg_sys_clk_config_t curConfig;
73  const scg_sirc_config_t scgSircConfig = {.enableMode = kSCG_SircEnable,
74  .div1 = kSCG_AsyncClkDisable,
75  .div2 = kSCG_AsyncClkDivBy2,
76  .range = kSCG_SircRangeHigh};
77  scg_sys_clk_config_t sysClkSafeConfigSource = {
78  .divSlow = kSCG_SysClkDivBy4, /* Slow clock divider. */
79  .divCore = kSCG_SysClkDivBy1, /* Core clock divider. */
80  .src = kSCG_SysClkSrcSirc /* System clock source. */
81  };
82  /* Init Sirc */
83  CLOCK_InitSirc(&scgSircConfig);
84  /* Change to use SIRC as system clock source to prepare to change FIRCCFG register */
85  CLOCK_SetRunModeSysClkConfig(&sysClkSafeConfigSource);
86  /* Wait for clock source switch finished */
87  do
88  {
89  CLOCK_GetCurSysClkConfig(&curConfig);
90  } while (curConfig.src != sysClkSafeConfigSource.src);
91 
92  /* Init Firc */
93  CLOCK_InitFirc(fircConfig);
94 }
95 #endif
96 
97 /*******************************************************************************
98  ************************ BOARD_InitBootClocks function ************************
99  ******************************************************************************/
101 {
103 }
104 
105 /*******************************************************************************
106  ********************** Configuration BOARD_BootClockRUN ***********************
107  ******************************************************************************/
108 /* clang-format off */
109 /* TEXT BELOW IS USED AS SETTING FOR TOOLS *************************************
110 !!Configuration
111 name: BOARD_BootClockRUN
112 called_from_default_init: true
113 outputs:
114 - {id: Bus_clock.outFreq, value: 48 MHz}
115 - {id: Core_clock.outFreq, value: 48 MHz}
116 - {id: FIRCDIV1_CLK.outFreq, value: 48 MHz}
117 - {id: FIRCDIV2_CLK.outFreq, value: 48 MHz}
118 - {id: FIRCDIV3_CLK.outFreq, value: 48 MHz}
119 - {id: LPO_CLK.outFreq, value: 1 kHz}
120 - {id: Platform_clock.outFreq, value: 48 MHz}
121 - {id: SIRCDIV3_CLK.outFreq, value: 8 MHz}
122 - {id: Slow_clock.outFreq, value: 24 MHz}
123 - {id: System_clock.outFreq, value: 48 MHz}
124 settings:
125 - {id: SCG.FIRCDIV1.scale, value: '1', locked: true}
126 - {id: SCG.FIRCDIV2.scale, value: '1', locked: true}
127 - {id: SCG.FIRCDIV3.scale, value: '1', locked: true}
128 - {id: SCG.LPFLLDIV1.scale, value: '1', locked: true}
129 - {id: SCG.LPFLLDIV3.scale, value: '0', locked: true}
130 - {id: SCG.SIRCDIV1.scale, value: '0', locked: true}
131 - {id: SCG.SIRCDIV3.scale, value: '1', locked: true}
132  * BE CAREFUL MODIFYING THIS COMMENT - IT IS YAML SETTINGS FOR TOOLS **********/
133 /* clang-format on */
134 
135 /*******************************************************************************
136  * Variables for BOARD_BootClockRUN configuration
137  ******************************************************************************/
138 const scg_sys_clk_config_t g_sysClkConfig_BOARD_BootClockRUN =
139  {
140  .divSlow = kSCG_SysClkDivBy2, /* Slow Clock Divider: divided by 2 */
141  .divBus = kSCG_SysClkDivBy1, /* Bus Clock Divider: divided by 1 */
142  .divExt = kSCG_SysClkDivBy1, /* External Clock Divider: divided by 1 */
143  .divCore = kSCG_SysClkDivBy1, /* Core Clock Divider: divided by 1 */
144  .src = kSCG_SysClkSrcFirc, /* Fast IRC is selected as System Clock Source */
145  };
146 const scg_sirc_config_t g_scgSircConfig_BOARD_BootClockRUN =
147  {
148  .enableMode = kSCG_SircEnable | kSCG_SircEnableInLowPower,/* Enable SIRC clock, Enable SIRC in low power mode */
149  .div1 = kSCG_AsyncClkDisable, /* Slow IRC Clock Divider 1: Clock output is disabled */
150  .div2 = kSCG_AsyncClkDisable, /* Slow IRC Clock Divider 2: Clock output is disabled */
151  .div3 = kSCG_AsyncClkDivBy1, /* Slow IRC Clock Divider 3: divided by 1 */
152  .range = kSCG_SircRangeHigh, /* Slow IRC high range clock (8 MHz) */
153  };
154 const scg_firc_config_t g_scgFircConfig_BOARD_BootClockRUN =
155  {
156  .enableMode = kSCG_FircEnable, /* Enable FIRC clock */
157  .div1 = kSCG_AsyncClkDivBy1, /* Fast IRC Clock Divider 1: divided by 1 */
158  .div2 = kSCG_AsyncClkDivBy1, /* Fast IRC Clock Divider 2: divided by 1 */
159  .div3 = kSCG_AsyncClkDivBy1, /* Fast IRC Clock Divider 3: divided by 1 */
160  .range = kSCG_FircRange48M, /* Fast IRC is trimmed to 48MHz */
161  .trimConfig = NULL,
162  };
163 const scg_lpfll_config_t g_scgLpFllConfig_BOARD_BootClockRUN =
164  {
165  .enableMode = SCG_LPFLL_DISABLE, /* LPFLL clock disabled */
166  .div1 = kSCG_AsyncClkDivBy1, /* Low Power FLL Clock Divider 1: divided by 1 */
167  .div2 = kSCG_AsyncClkDisable, /* Low Power FLL Clock Divider 2: Clock output is disabled */
168  .div3 = kSCG_AsyncClkDisable, /* Low Power FLL Clock Divider 3: Clock output is disabled */
169  .range = kSCG_LpFllRange48M, /* LPFLL is trimmed to 48MHz */
170  .trimConfig = NULL,
171  };
172 /*******************************************************************************
173  * Code for BOARD_BootClockRUN configuration
174  ******************************************************************************/
176 {
177 #ifndef SDK_SECONDARY_CORE
178  scg_sys_clk_config_t curConfig;
179 
180  /* Init FIRC */
181  CLOCK_CONFIG_FircSafeConfig(&g_scgFircConfig_BOARD_BootClockRUN);
182  /* Set SCG to FIRC mode. */
183  CLOCK_SetRunModeSysClkConfig(&g_sysClkConfig_BOARD_BootClockRUN);
184  /* Wait for clock source switch finished */
185  do
186  {
187  CLOCK_GetCurSysClkConfig(&curConfig);
188  } while (curConfig.src != g_sysClkConfig_BOARD_BootClockRUN.src);
189  /* Init SIRC */
190  CLOCK_InitSirc(&g_scgSircConfig_BOARD_BootClockRUN);
191  /* Init LPFLL */
192  CLOCK_InitLpFll(&g_scgLpFllConfig_BOARD_BootClockRUN);
193  /* Set SystemCoreClock variable. */
195 #endif
196 }
197 
198 /*******************************************************************************
199  ********************* Configuration BOARD_BootClockHSRUN **********************
200  ******************************************************************************/
201 /* clang-format off */
202 /* TEXT BELOW IS USED AS SETTING FOR TOOLS *************************************
203 !!Configuration
204 name: BOARD_BootClockHSRUN
205 outputs:
206 - {id: Bus_clock.outFreq, value: 72 MHz}
207 - {id: Core_clock.outFreq, value: 72 MHz}
208 - {id: FIRCDIV1_CLK.outFreq, value: 48 MHz}
209 - {id: FIRCDIV2_CLK.outFreq, value: 48 MHz}
210 - {id: FIRCDIV3_CLK.outFreq, value: 48 MHz}
211 - {id: LPO_CLK.outFreq, value: 1 kHz}
212 - {id: Platform_clock.outFreq, value: 72 MHz}
213 - {id: SIRCDIV3_CLK.outFreq, value: 8 MHz}
214 - {id: Slow_clock.outFreq, value: 8 MHz}
215 - {id: System_clock.outFreq, value: 72 MHz}
216 settings:
217 - {id: SCGMode, value: LPFLL}
218 - {id: powerMode, value: HSRUN}
219 - {id: SCG.DIVCORE.scale, value: '1', locked: true}
220 - {id: SCG.DIVSLOW.scale, value: '9'}
221 - {id: SCG.FIRCDIV1.scale, value: '1', locked: true}
222 - {id: SCG.FIRCDIV2.scale, value: '1', locked: true}
223 - {id: SCG.FIRCDIV3.scale, value: '1', locked: true}
224 - {id: SCG.LPFLLDIV1.scale, value: '0', locked: true}
225 - {id: SCG.LPFLL_mul.scale, value: '36', locked: true}
226 - {id: SCG.SCSSEL.sel, value: SCG.LPFLL}
227 - {id: SCG.SIRCDIV3.scale, value: '1', locked: true}
228 - {id: SCG.TRIMDIV.scale, value: '24'}
229 - {id: SCG.TRIMSRCSEL.sel, value: SCG.FIRC}
230 - {id: SCG_LPFLLCSR_LPFLLEN_CFG, value: Enabled}
231  * BE CAREFUL MODIFYING THIS COMMENT - IT IS YAML SETTINGS FOR TOOLS **********/
232 /* clang-format on */
233 
234 /*******************************************************************************
235  * Variables for BOARD_BootClockHSRUN configuration
236  ******************************************************************************/
237 const scg_sys_clk_config_t g_sysClkConfig_BOARD_BootClockHSRUN =
238  {
239  .divSlow = kSCG_SysClkDivBy9, /* Slow Clock Divider: divided by 9 */
240  .divBus = kSCG_SysClkDivBy1, /* Bus Clock Divider: divided by 1 */
241  .divExt = kSCG_SysClkDivBy1, /* External Clock Divider: divided by 1 */
242  .divCore = kSCG_SysClkDivBy1, /* Core Clock Divider: divided by 1 */
243  .src = kSCG_SysClkSrcLpFll, /* Low power FLL is selected as System Clock Source */
244  };
245 const scg_sirc_config_t g_scgSircConfig_BOARD_BootClockHSRUN =
246  {
247  .enableMode = kSCG_SircEnable | kSCG_SircEnableInLowPower,/* Enable SIRC clock, Enable SIRC in low power mode */
248  .div1 = kSCG_AsyncClkDisable, /* Slow IRC Clock Divider 1: Clock output is disabled */
249  .div2 = kSCG_AsyncClkDisable, /* Slow IRC Clock Divider 2: Clock output is disabled */
250  .div3 = kSCG_AsyncClkDivBy1, /* Slow IRC Clock Divider 3: divided by 1 */
251  .range = kSCG_SircRangeHigh, /* Slow IRC high range clock (8 MHz) */
252  };
253 const scg_firc_config_t g_scgFircConfig_BOARD_BootClockHSRUN =
254  {
255  .enableMode = kSCG_FircEnable, /* Enable FIRC clock */
256  .div1 = kSCG_AsyncClkDivBy1, /* Fast IRC Clock Divider 1: divided by 1 */
257  .div2 = kSCG_AsyncClkDivBy1, /* Fast IRC Clock Divider 2: divided by 1 */
258  .div3 = kSCG_AsyncClkDivBy1, /* Fast IRC Clock Divider 3: divided by 1 */
259  .range = kSCG_FircRange48M, /* Fast IRC is trimmed to 48MHz */
260  .trimConfig = NULL,
261  };
262 const scg_lpfll_config_t g_scgLpFllConfig_BOARD_BootClockHSRUN =
263  {
264  .enableMode = kSCG_LpFllEnable, /* Enable LPFLL clock */
265  .div1 = kSCG_AsyncClkDisable, /* Low Power FLL Clock Divider 1: Clock output is disabled */
266  .div2 = kSCG_AsyncClkDisable, /* Low Power FLL Clock Divider 2: Clock output is disabled */
267  .div3 = kSCG_AsyncClkDisable, /* Low Power FLL Clock Divider 3: Clock output is disabled */
268  .range = kSCG_LpFllRange72M, /* LPFLL is trimmed to 72MHz */
269  .trimConfig = NULL,
270  };
271 /*******************************************************************************
272  * Code for BOARD_BootClockHSRUN configuration
273  ******************************************************************************/
275 {
276 #ifndef SDK_SECONDARY_CORE
277  scg_sys_clk_config_t curConfig;
278 
279  /* Init FIRC */
280  CLOCK_CONFIG_FircSafeConfig(&g_scgFircConfig_BOARD_BootClockHSRUN);
281  /* Init LPFLL */
282  CLOCK_InitLpFll(&g_scgLpFllConfig_BOARD_BootClockHSRUN);
283 #if defined(SDK_CORE_ID_CM4)
284  /* Set HSRUN power mode */
285  SMC_SetPowerModeProtection(SMC0, kSMC_AllowPowerModeAll);
286  SMC_SetPowerModeHsrun(SMC0);
287  while (SMC_GetPowerModeState(SMC0) != kSMC_PowerStateHsrun)
288  {
289  }
290 #elif defined(SDK_CORE_ID_CM0PLUS)
291  SMC_SetPowerModeProtection(SMC1, kSMC_AllowPowerModeAll);
292  SMC_SetPowerModeHsrun(SMC1);
293  while (SMC_GetPowerModeState(SMC1) != kSMC_PowerStateHsrun)
294  {
295  }
296 #endif
297  /* Set SCG to LPFLL mode. */
298  CLOCK_SetHsrunModeSysClkConfig(&g_sysClkConfig_BOARD_BootClockHSRUN);
299  /* Wait for clock source switch finished */
300  do
301  {
302  CLOCK_GetCurSysClkConfig(&curConfig);
303  } while (curConfig.src != g_sysClkConfig_BOARD_BootClockHSRUN.src);
304  /* Init SIRC */
305  CLOCK_InitSirc(&g_scgSircConfig_BOARD_BootClockHSRUN);
306  /* Set SystemCoreClock variable. */
308 #endif
309 }
310 
311 /*******************************************************************************
312  ********************* Configuration BOARD_BootClockVLPR ***********************
313  ******************************************************************************/
314 /* clang-format off */
315 /* TEXT BELOW IS USED AS SETTING FOR TOOLS *************************************
316 !!Configuration
317 name: BOARD_BootClockVLPR
318 outputs:
319 - {id: Bus_clock.outFreq, value: 2 MHz}
320 - {id: Core_clock.outFreq, value: 4 MHz}
321 - {id: LPO_CLK.outFreq, value: 1 kHz}
322 - {id: Platform_clock.outFreq, value: 4 MHz}
323 - {id: SIRCDIV1_CLK.outFreq, value: 8 MHz}
324 - {id: SIRCDIV2_CLK.outFreq, value: 8 MHz}
325 - {id: SIRCDIV3_CLK.outFreq, value: 8 MHz}
326 - {id: Slow_clock.outFreq, value: 4000/9 kHz}
327 - {id: System_clock.outFreq, value: 4 MHz}
328 settings:
329 - {id: SCGMode, value: SIRC}
330 - {id: powerMode, value: VLPR}
331 - {id: SCG.DIVBUS.scale, value: '2', locked: true}
332 - {id: SCG.DIVCORE.scale, value: '2', locked: true}
333 - {id: SCG.DIVSLOW.scale, value: '9'}
334 - {id: SCG.FIRCDIV1.scale, value: '1'}
335 - {id: SCG.SCSSEL.sel, value: SCG.SIRC}
336 - {id: SCG.SIRCDIV1.scale, value: '1', locked: true}
337 - {id: SCG.SIRCDIV2.scale, value: '1', locked: true}
338 - {id: SCG.SIRCDIV3.scale, value: '1', locked: true}
339  * BE CAREFUL MODIFYING THIS COMMENT - IT IS YAML SETTINGS FOR TOOLS **********/
340 /* clang-format on */
341 
342 /*******************************************************************************
343  * Variables for BOARD_BootClockVLPR configuration
344  ******************************************************************************/
345 const scg_sys_clk_config_t g_sysClkConfig_BOARD_BootClockVLPR =
346  {
347  .divSlow = kSCG_SysClkDivBy9, /* Slow Clock Divider: divided by 9 */
348  .divBus = kSCG_SysClkDivBy2, /* Bus Clock Divider: divided by 2 */
349  .divExt = kSCG_SysClkDivBy1, /* External Clock Divider: divided by 1 */
350  .divCore = kSCG_SysClkDivBy2, /* Core Clock Divider: divided by 2 */
351  .src = kSCG_SysClkSrcSirc, /* Slow IRC is selected as System Clock Source */
352  };
353 const scg_sirc_config_t g_scgSircConfig_BOARD_BootClockVLPR =
354  {
355  .enableMode = kSCG_SircEnable | kSCG_SircEnableInLowPower,/* Enable SIRC clock, Enable SIRC in low power mode */
356  .div1 = kSCG_AsyncClkDivBy1, /* Slow IRC Clock Divider 1: divided by 1 */
357  .div2 = kSCG_AsyncClkDivBy1, /* Slow IRC Clock Divider 2: divided by 1 */
358  .div3 = kSCG_AsyncClkDivBy1, /* Slow IRC Clock Divider 3: divided by 1 */
359  .range = kSCG_SircRangeHigh, /* Slow IRC high range clock (8 MHz) */
360  };
361 const scg_firc_config_t g_scgFircConfig_BOARD_BootClockVLPR =
362  {
363  .enableMode = kSCG_FircEnable, /* Enable FIRC clock */
364  .div1 = kSCG_AsyncClkDivBy1, /* Fast IRC Clock Divider 1: divided by 1 */
365  .div2 = kSCG_AsyncClkDisable, /* Fast IRC Clock Divider 2: Clock output is disabled */
366  .div3 = kSCG_AsyncClkDisable, /* Fast IRC Clock Divider 3: Clock output is disabled */
367  .range = kSCG_FircRange48M, /* Fast IRC is trimmed to 48MHz */
368  .trimConfig = NULL,
369  };
370 const scg_lpfll_config_t g_scgLpFllConfig_BOARD_BootClockVLPR =
371  {
372  .enableMode = SCG_LPFLL_DISABLE, /* LPFLL clock disabled */
373  .div1 = kSCG_AsyncClkDisable, /* Low Power FLL Clock Divider 1: Clock output is disabled */
374  .div2 = kSCG_AsyncClkDisable, /* Low Power FLL Clock Divider 2: Clock output is disabled */
375  .div3 = kSCG_AsyncClkDisable, /* Low Power FLL Clock Divider 3: Clock output is disabled */
376  .range = kSCG_LpFllRange48M, /* LPFLL is trimmed to 48MHz */
377  .trimConfig = NULL,
378  };
379 /*******************************************************************************
380  * Code for BOARD_BootClockVLPR configuration
381  ******************************************************************************/
383 {
384 #ifndef SDK_SECONDARY_CORE
385  scg_sys_clk_config_t curConfig;
386 
387  /* Init SIRC */
388  CLOCK_InitSirc(&g_scgSircConfig_BOARD_BootClockVLPR);
389  /* Set SCG to SIRC mode. */
390  CLOCK_SetVlprModeSysClkConfig(&g_sysClkConfig_BOARD_BootClockVLPR);
391  /* Init FIRC */
392  CLOCK_InitFirc(&g_scgFircConfig_BOARD_BootClockVLPR);
393  /* Init LPFLL */
394  CLOCK_InitLpFll(&g_scgLpFllConfig_BOARD_BootClockVLPR);
395 #if defined(SDK_CORE_ID_CM4)
396  /* Set VLPR power mode. */
397  SMC_SetPowerModeProtection(SMC0, kSMC_AllowPowerModeAll);
398  SMC_SetPowerModeVlpr(SMC0);
399  while (SMC_GetPowerModeState(SMC0) != kSMC_PowerStateVlpr)
400  {
401  }
402 #elif defined(SDK_CORE_ID_CM0PLUS)
403  /* Set VLPR power mode. */
404  SMC_SetPowerModeProtection(SMC1, kSMC_AllowPowerModeAll);
405  SMC_SetPowerModeVlpr(SMC1);
406  while (SMC_GetPowerModeState(SMC1) != kSMC_PowerStateVlpr)
407  {
408  }
409 #endif
410  /* Wait for clock source switch finished */
411  do
412  {
413  CLOCK_GetCurSysClkConfig(&curConfig);
414  } while (curConfig.src != g_sysClkConfig_BOARD_BootClockVLPR.src);
415  /* Set SystemCoreClock variable. */
417 #endif
418 }
419 
#define BOARD_BOOTCLOCKHSRUN_CORE_CLOCK
Definition: clock_config.h:95
const scg_sirc_config_t g_scgSircConfig_BOARD_BootClockRUN
SIRC set for BOARD_BootClockRUN configuration.
Definition: clock_config.c:155
const scg_sys_clk_config_t g_sysClkConfig_BOARD_BootClockRUN
SCG set for BOARD_BootClockRUN configuration.
Definition: clock_config.c:141
const scg_sys_clk_config_t g_sysClkConfig_BOARD_BootClockVLPR
SCG set for BOARD_BootClockVLPR configuration.
Definition: clock_config.c:245
void BOARD_BootClockVLPR(void)
This function executes configuration of clocks.
Definition: clock_config.c:266
status_t SMC_SetPowerModeVlpr(void *arg)
Configures the system to VLPR power mode. API name used from Kinetis family to maintain compatibility...
Definition: lpc54114.c:169
const scg_lpfll_config_t g_scgLpFllConfig_BOARD_BootClockHSRUN
Definition: clock_config.c:262
const scg_sirc_config_t g_scgSircConfig_BOARD_BootClockHSRUN
SIRC set for BOARD_BootClockHSRUN configuration.
Definition: clock_config.c:245
const scg_firc_config_t g_scgFircConfig_BOARD_BootClockVLPR
Definition: clock_config.c:265
void BOARD_InitBootClocks(void)
This function executes default configuration of clocks.
Definition: clock_config.c:52
#define SCG_LPFLL_DISABLE
Definition: clock_config.c:48
const scg_firc_config_t g_scgFircConfig_BOARD_BootClockRUN
Definition: clock_config.c:161
uint32_t SystemCoreClock
void BOARD_BootClockHSRUN(void)
This function executes configuration of clocks.
Definition: clock_config.c:379
void BOARD_BootClockRUN(void)
This function executes configuration of clocks.
Definition: clock_config.c:168
const scg_firc_config_t g_scgFircConfig_BOARD_BootClockHSRUN
Definition: clock_config.c:253
#define BOARD_BOOTCLOCKVLPR_CORE_CLOCK
Definition: clock_config.h:60
const scg_lpfll_config_t g_scgLpFllConfig_BOARD_BootClockVLPR
Definition: clock_config.c:272
const scg_sirc_config_t g_scgSircConfig_BOARD_BootClockVLPR
SIRC set for BOARD_BootClockVLPR configuration.
Definition: clock_config.c:259
const scg_sys_clk_config_t g_sysClkConfig_BOARD_BootClockHSRUN
SCG set for BOARD_BootClockHSRUN configuration.
Definition: clock_config.c:237
const scg_lpfll_config_t g_scgLpFllConfig_BOARD_BootClockRUN
Definition: clock_config.c:168
#define BOARD_BOOTCLOCKRUN_CORE_CLOCK
Definition: clock_config.h:25