Skip to content

Commit 023bc75

Browse files
hal/imxrt106x: fix enet PLL init
- correct clk0 enable bit - add bypass during clock frequency change JIRA: RTOS-507
1 parent 7d57309 commit 023bc75

File tree

1 file changed

+7
-2
lines changed

1 file changed

+7
-2
lines changed

hal/armv7m/imxrt/10xx/imxrt10xx.c

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -968,7 +968,7 @@ void _imxrt_ccmInitEnetPll(u8 enclk0, u8 enclk1, u8 enclk2, u8 div0, u8 div1)
968968
u32 enet_pll = ((div1 & 0x3) << 2) | (div0 & 0x3);
969969

970970
if (enclk0 != 0) {
971-
enet_pll |= 1 << 12;
971+
enet_pll |= 1 << 13;
972972
}
973973

974974
if (enclk1 != 0) {
@@ -979,10 +979,15 @@ void _imxrt_ccmInitEnetPll(u8 enclk0, u8 enclk1, u8 enclk2, u8 div0, u8 div1)
979979
enet_pll |= 1 << 21;
980980
}
981981

982-
*(imxrt_common.ccm_analog + ccm_analog_pll_enet) = enet_pll;
982+
/* enable bypass during clock frequency change */
983+
*(imxrt_common.ccm_analog + ccm_analog_pll_enet) = 1 << 16;
984+
985+
*(imxrt_common.ccm_analog + ccm_analog_pll_enet) |= enet_pll;
983986

984987
while ((*(imxrt_common.ccm_analog + ccm_analog_pll_enet) & (1 << 31)) == 0) {
985988
}
989+
990+
*(imxrt_common.ccm_analog + ccm_analog_pll_enet) &= ~(1 << 16);
986991
}
987992

988993

0 commit comments

Comments
 (0)