boards: stm32: nucleo_f4*1re: Configure clocks using dt
Configure clock for the f401re/f411re nucleo boards using device tree. Signed-off-by: Armando Visconti <armando.visconti@st.com>
This commit is contained in:
parent
d367fc73c5
commit
08c750a397
4 changed files with 46 additions and 41 deletions
|
@ -52,6 +52,29 @@
|
|||
};
|
||||
};
|
||||
|
||||
&clk_hse{
|
||||
hse-bypass;
|
||||
clock-frequency = <DT_FREQ_M(8)>; /* STLink 8MHz clock */
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&pll {
|
||||
div-m = <8>;
|
||||
mul-n = <336>;
|
||||
div-p = <4>;
|
||||
div-q = <7>;
|
||||
clocks = <&clk_hse>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&rcc {
|
||||
clocks = <&pll>;
|
||||
clock-frequency = <DT_FREQ_M(84)>;
|
||||
ahb-prescaler = <1>;
|
||||
apb1-prescaler = <2>;
|
||||
apb2-prescaler = <1>;
|
||||
};
|
||||
|
||||
&usart1 {
|
||||
pinctrl-0 = <&usart1_tx_pb6 &usart1_rx_pb7>;
|
||||
current-speed = <115200>;
|
||||
|
|
|
@ -2,8 +2,6 @@
|
|||
|
||||
CONFIG_SOC_SERIES_STM32F4X=y
|
||||
CONFIG_SOC_STM32F401XE=y
|
||||
# 84MHz system clock
|
||||
CONFIG_SYS_CLOCK_HW_CYCLES_PER_SEC=84000000
|
||||
|
||||
# Enable MPU
|
||||
CONFIG_ARM_MPU=y
|
||||
|
@ -25,20 +23,3 @@ CONFIG_GPIO=y
|
|||
|
||||
# clock configuration
|
||||
CONFIG_CLOCK_CONTROL=y
|
||||
|
||||
# Clock configuration for Cube Clock control driver
|
||||
CONFIG_CLOCK_STM32_HSE_CLOCK=8000000
|
||||
CONFIG_CLOCK_STM32_SYSCLK_SRC_PLL=y
|
||||
# use HSE as PLL input
|
||||
CONFIG_CLOCK_STM32_PLL_SRC_HSE=y
|
||||
# however, the board does not have an external oscillator, so just use
|
||||
# the 8MHz clock signal coming from integrated STLink
|
||||
CONFIG_CLOCK_STM32_HSE_BYPASS=y
|
||||
# produce 84MHz clock at PLL output
|
||||
CONFIG_CLOCK_STM32_PLL_M_DIVISOR=8
|
||||
CONFIG_CLOCK_STM32_PLL_N_MULTIPLIER=336
|
||||
CONFIG_CLOCK_STM32_PLL_P_DIVISOR=4
|
||||
CONFIG_CLOCK_STM32_PLL_Q_DIVISOR=7
|
||||
CONFIG_CLOCK_STM32_AHB_PRESCALER=1
|
||||
CONFIG_CLOCK_STM32_APB1_PRESCALER=2
|
||||
CONFIG_CLOCK_STM32_APB2_PRESCALER=1
|
||||
|
|
|
@ -42,6 +42,29 @@
|
|||
};
|
||||
};
|
||||
|
||||
&clk_hse{
|
||||
hse-bypass;
|
||||
clock-frequency = <DT_FREQ_M(8)>; /* STLink 8MHz clock */
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&pll {
|
||||
div-m = <8>;
|
||||
mul-n = <384>;
|
||||
div-p = <4>;
|
||||
div-q = <8>;
|
||||
clocks = <&clk_hse>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&rcc {
|
||||
clocks = <&pll>;
|
||||
clock-frequency = <DT_FREQ_M(96)>;
|
||||
ahb-prescaler = <1>;
|
||||
apb1-prescaler = <2>;
|
||||
apb2-prescaler = <1>;
|
||||
};
|
||||
|
||||
&usart1 {
|
||||
pinctrl-0 = <&usart1_tx_pb6 &usart1_rx_pb7>;
|
||||
current-speed = <115200>;
|
||||
|
|
|
@ -2,8 +2,6 @@
|
|||
|
||||
CONFIG_SOC_SERIES_STM32F4X=y
|
||||
CONFIG_SOC_STM32F411XE=y
|
||||
# 96MHz system clock (highest value to get a precise USB clock)
|
||||
CONFIG_SYS_CLOCK_HW_CYCLES_PER_SEC=96000000
|
||||
|
||||
# Enable MPU
|
||||
CONFIG_ARM_MPU=y
|
||||
|
@ -25,23 +23,3 @@ CONFIG_GPIO=y
|
|||
|
||||
# clock configuration
|
||||
CONFIG_CLOCK_CONTROL=y
|
||||
|
||||
# Clock configuration for Cube Clock control driver
|
||||
CONFIG_CLOCK_STM32_HSE_CLOCK=8000000
|
||||
CONFIG_CLOCK_STM32_SYSCLK_SRC_PLL=y
|
||||
# use HSE as PLL input
|
||||
CONFIG_CLOCK_STM32_PLL_SRC_HSE=y
|
||||
# however, the board does not have an external oscillator, so just use
|
||||
# the 8MHz clock signal coming from integrated STLink
|
||||
CONFIG_CLOCK_STM32_HSE_BYPASS=y
|
||||
|
||||
# produce 96MHz clock at PLL output
|
||||
CONFIG_CLOCK_STM32_PLL_M_DIVISOR=8
|
||||
CONFIG_CLOCK_STM32_PLL_N_MULTIPLIER=384
|
||||
CONFIG_CLOCK_STM32_PLL_P_DIVISOR=4
|
||||
CONFIG_CLOCK_STM32_PLL_Q_DIVISOR=8
|
||||
CONFIG_CLOCK_STM32_AHB_PRESCALER=1
|
||||
|
||||
# APB1 clock must not exceed 50MHz limit
|
||||
CONFIG_CLOCK_STM32_APB1_PRESCALER=2
|
||||
CONFIG_CLOCK_STM32_APB2_PRESCALER=1
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue