zephyr/drivers/clock_control
Jeremy LOCHE 33abbbfd85 drivers: clock_control: stm32h7: Add HSE,HSI,CSI,PLL sysclk opt.
Add HSE,HSI,CSI,PLL as system clock options.
Also add correct configuration of the PLL.

New sysclk options:
- HSI with: CONFIG_CLOCK_STM32_SYSCLK_SRC_HSI=y
- HSE with: CONFIG_CLOCK_STM32_SYSCLK_SRC_HSE=y
- CSI with: CONFIG_CLOCK_STM32_SYSCLK_SRC_CSI=y
Existing sysclk options:
- PLL with: CONFIG_CLOCK_STM32_SYSCLK_SRC_PLL=y

PLL clock options:
- More PLL source clocks:
Existing:
	1. HSE with: CONFIG_CLOCK_STM32_PLL_SRC_HSE=y
New:
	2. HSI with: CONFIG_CLOCK_STM32_PLL_SRC_HSI=y
	3. CSI with: CONFIG_CLOCK_STM32_PLL_SRC_CSI=y
- PLL vco input range is auto-calculated based on PLL DIVM1

-> Example for sysclock 96MHz generated with PLL from HSI
CONFIG_CLOCK_STM32_PLL_SRC_HSI=y
CONFIG_SYS_CLOCK_HW_CYCLES_PER_SEC=96000000
CONFIG_CLOCK_STM32_SYSCLK_SRC_PLL=y
CONFIG_CLOCK_STM32_PLL_M_DIVISOR=4
CONFIG_CLOCK_STM32_PLL_N_MULTIPLIER=12
CONFIG_CLOCK_STM32_PLL_P_DIVISOR=2
CONFIG_CLOCK_STM32_PLL_Q_DIVISOR=4
CONFIG_CLOCK_STM32_PLL_R_DIVISOR=2

Use LL_SetFlashLatency function from stm32h7xx_ll_utils.h
instead to setup the correct latency.

Signed-off-by: Jeremy LOCHE <lochejeremy@gmail.com>
2020-07-27 13:24:27 +02:00
..
CMakeLists.txt drivers: esp32/clock_control: Add Clock Driver 2020-06-16 09:00:51 -05:00
Kconfig drivers: esp32/clock_control: Add Clock Driver 2020-06-16 09:00:51 -05:00
Kconfig.beetle
Kconfig.esp32 drivers: esp32/clock_control: Add Clock Driver 2020-06-16 09:00:51 -05:00
Kconfig.mcux_ccm
Kconfig.mcux_mcg
Kconfig.mcux_pcc
Kconfig.mcux_scg
Kconfig.mcux_sim
Kconfig.nrf drivers: clock_control: nrf: Add clock status shell command 2020-07-20 16:22:21 +02:00
Kconfig.rv32m1
Kconfig.stm32 drivers: clock_control: stm32h7: Add HSE,HSI,CSI,PLL sysclk opt. 2020-07-27 13:24:27 +02:00
Kconfig.stm32f0_f3 drivers: clock_control: stm32f0/f3: fix PREDIV options 2020-07-05 07:56:21 -04:00
Kconfig.stm32f1 drivers/clock_control: Remove useless CLOCK_STM32_PLL_XTPRE config 2020-07-02 08:14:45 -05:00
Kconfig.stm32f2_f4_f7
Kconfig.stm32g0
Kconfig.stm32g4
Kconfig.stm32h7
Kconfig.stm32l0_l1
Kconfig.stm32l4_l5_wb drivers/clock_control: Add clock_control on STM32L5 series 2020-05-08 00:34:34 -05:00
beetle_clock_control.c zephyr: replace zephyr integer types with C99 types 2020-06-08 08:23:57 -05:00
clock_control_esp32.c drivers: esp32/clock_control: Add Clock Driver 2020-06-16 09:00:51 -05:00
clock_control_esp32.h drivers: esp32/clock_control: Add Clock Driver 2020-06-16 09:00:51 -05:00
clock_control_mcux_ccm.c clock_control: add EDMA clock support 2020-06-12 13:03:28 -05:00
clock_control_mcux_mcg.c zephyr: replace zephyr integer types with C99 types 2020-06-08 08:23:57 -05:00
clock_control_mcux_pcc.c zephyr: replace zephyr integer types with C99 types 2020-06-08 08:23:57 -05:00
clock_control_mcux_scg.c zephyr: replace zephyr integer types with C99 types 2020-06-08 08:23:57 -05:00
clock_control_mcux_sim.c zephyr: replace zephyr integer types with C99 types 2020-06-08 08:23:57 -05:00
clock_control_rv32m1_pcc.c zephyr: replace zephyr integer types with C99 types 2020-06-08 08:23:57 -05:00
clock_stm32_ll_common.c drivers: clock: stm32: fix Flash latency & clock settings for MSI & HSE 2020-06-23 17:32:38 +02:00
clock_stm32_ll_common.h
clock_stm32_ll_h7.c drivers: clock_control: stm32h7: Add HSE,HSI,CSI,PLL sysclk opt. 2020-07-27 13:24:27 +02:00
clock_stm32_ll_mp1.c zephyr: replace zephyr integer types with C99 types 2020-06-08 08:23:57 -05:00
clock_stm32f0_f3.c drivers: clock_control: stm32f0/f3: streamline PREDIV handling 2020-07-05 07:56:21 -04:00
clock_stm32f1.c drivers/clock_control: Remove useless CLOCK_STM32_PLL_XTPRE config 2020-07-02 08:14:45 -05:00
clock_stm32f2_f4_f7.c treewide: use full path to clock_control/stm32_clock_control.h header 2020-01-26 17:52:12 +01:00
clock_stm32g0.c treewide: use full path to clock_control/stm32_clock_control.h header 2020-01-26 17:52:12 +01:00
clock_stm32g4.c driver: clock: stm32: boost voltage when clock exceeds 150MHz 2020-02-26 12:21:04 -06:00
clock_stm32l0_l1.c drivers: clock_control: stm32: Enable SYSCFG on STM32L0 2020-06-09 14:44:25 +02:00
clock_stm32l4_l5_wb.c drivers: STM32 dualcore concurrent register access protection with HSEM 2020-07-09 11:27:56 +02:00
nrf_clock_calibration.c drivers: clock_control: nrf: Add onoff service support 2020-07-20 16:22:21 +02:00
nrf_clock_calibration.h drivers: clock_control: nrf: Add onoff service support 2020-07-20 16:22:21 +02:00
nrf_power_clock.c drivers: clock_control: nrf: Add clock status shell command 2020-07-20 16:22:21 +02:00