You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@nuttx.apache.org by da...@apache.org on 2022/05/18 18:59:12 UTC
[incubator-nuttx] branch master updated: stm32h7: Adds the ability to choose the HSI divider, which must be indicated in board.h if used.
This is an automated email from the ASF dual-hosted git repository.
davids5 pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-nuttx.git
The following commit(s) were added to refs/heads/master by this push:
new 517f179f8d stm32h7: Adds the ability to choose the HSI divider, which must be indicated in board.h if used.
517f179f8d is described below
commit 517f179f8d7960836e339d80e2e2b92384ede78c
Author: Sebastien Lorquet <se...@lorquet.fr>
AuthorDate: Tue May 17 15:20:35 2022 +0200
stm32h7: Adds the ability to choose the HSI divider, which must be indicated in board.h if used.
---
arch/arm/src/stm32h7/stm32h7x3xx_rcc.c | 9 +++++++++
1 file changed, 9 insertions(+)
diff --git a/arch/arm/src/stm32h7/stm32h7x3xx_rcc.c b/arch/arm/src/stm32h7/stm32h7x3xx_rcc.c
index c6a5f457b8..9462ae2352 100644
--- a/arch/arm/src/stm32h7/stm32h7x3xx_rcc.c
+++ b/arch/arm/src/stm32h7/stm32h7x3xx_rcc.c
@@ -98,6 +98,10 @@
# define USE_PLL3
#endif
+#if defined(STM32_BOARD_USEHSI) && !defined(STM32_BOARD_HSIDIV)
+#error When HSI is used, you have to define STM32_BOARD_HSIDIV in board/include/board.h
+#endif
+
/****************************************************************************
* Private Data
****************************************************************************/
@@ -600,6 +604,11 @@ void stm32_stdclockconfig(void)
regval = getreg32(STM32_RCC_CR);
regval |= RCC_CR_HSION; /* Enable HSI */
+
+ /* Set HSI predivider to board specific value */
+
+ regval |= STM32_BOARD_HSIDIV;
+
putreg32(regval, STM32_RCC_CR);
/* Wait until the HSI is ready (or until a timeout elapsed) */