@@ -103,21 +103,18 @@ void board_early_init_hook(void)
103
103
104
104
CLOCK_SetupExtClocking (BOARD_XTAL0_CLK_HZ );
105
105
106
- #if DT_NODE_HAS_STATUS_OKAY (DT_NODELABEL (flexcan1 ))
107
- /* Set up PLL1 for 80 MHz FlexCAN clock */
108
- const pll_setup_t pll1Setup = {
109
- .pllctrl = SCG_SPLLCTRL_SOURCE (1U ) | SCG_SPLLCTRL_SELI (27U ) |
110
- SCG_SPLLCTRL_SELP (13U ),
111
- .pllndiv = SCG_SPLLNDIV_NDIV (3U ),
112
- .pllpdiv = SCG_SPLLPDIV_PDIV (1U ),
113
- .pllmdiv = SCG_SPLLMDIV_MDIV (10U ),
114
- .pllRate = 80000000U
115
- };
106
+ #if DT_NODE_HAS_STATUS_OKAY (DT_NODELABEL (sai0 )) || DT_NODE_HAS_STATUS_OKAY (DT_NODELABEL (sai1 ))
107
+ /* < Set up PLL1 */
108
+ const pll_setup_t pll1_Setup = {
109
+ .pllctrl = SCG_SPLLCTRL_SOURCE (1U ) | SCG_SPLLCTRL_SELI (3U ) |
110
+ SCG_SPLLCTRL_SELP (1U ),
111
+ .pllndiv = SCG_SPLLNDIV_NDIV (25U ),
112
+ .pllpdiv = SCG_SPLLPDIV_PDIV (10U ),
113
+ .pllmdiv = SCG_SPLLMDIV_MDIV (256U ),
114
+ .pllRate = 24576000U };
116
115
117
116
/* Configure PLL1 to the desired values */
118
- CLOCK_SetPLL1Freq (& pll1Setup );
119
- /* PLL1 Monitor is disabled */
120
- CLOCK_SetPll1MonitorMode (kSCG_Pll1MonitorDisable );
117
+ CLOCK_SetPLL1Freq (& pll1_Setup );
121
118
/* Set PLL1 CLK0 divider to value 1 */
122
119
CLOCK_SetClkDiv (kCLOCK_DivPLL1Clk0 , 1U );
123
120
#endif
@@ -216,7 +213,7 @@ void board_early_init_hook(void)
216
213
217
214
#if DT_NODE_HAS_STATUS_OKAY (DT_NODELABEL (flexcan1 ))
218
215
CLOCK_SetClkDiv (kCLOCK_DivFlexcan1Clk , 1U );
219
- CLOCK_AttachClk (kPLL1_CLK0_to_FLEXCAN1 );
216
+ CLOCK_AttachClk (kFRO_HF_to_FLEXCAN1 );
220
217
#endif
221
218
222
219
#if DT_NODE_HAS_STATUS_OKAY (DT_NODELABEL (vref ))
@@ -330,6 +327,18 @@ void board_early_init_hook(void)
330
327
CLOCK_EnableClock (kCLOCK_Ewm0 );
331
328
#endif
332
329
330
+ #if DT_NODE_HAS_STATUS_OKAY (DT_NODELABEL (sai0 ))
331
+ CLOCK_SetClkDiv (kCLOCK_DivSai0Clk , 1u );
332
+ CLOCK_AttachClk (kPLL1_CLK0_to_SAI0 );
333
+ CLOCK_EnableClock (kCLOCK_Sai0 );
334
+ #endif
335
+
336
+ #if DT_NODE_HAS_STATUS_OKAY (DT_NODELABEL (sai1 ))
337
+ CLOCK_SetClkDiv (kCLOCK_DivSai1Clk , 1u );
338
+ CLOCK_AttachClk (kPLL1_CLK0_to_SAI1 );
339
+ CLOCK_EnableClock (kCLOCK_Sai1 );
340
+ #endif
341
+
333
342
/* Set SystemCoreClock variable. */
334
343
SystemCoreClock = CLOCK_INIT_CORE_CLOCK ;
335
344
}
0 commit comments