| # Kconfig - STM32F1X Connectivity Line MCU clock control driver config |
| # |
| # Copyright (c) 2016 RnDity Sp. z o.o. |
| # |
| # SPDX-License-Identifier: Apache-2.0 |
| # |
| |
| if SOC_STM32F10X_CONNECTIVITY_LINE_DEVICE |
| |
| menuconfig CLOCK_CONTROL_STM32F10X_CONN_LINE |
| bool |
| prompt "STM32F107x Reset & Clock Control" |
| default y if SOC_STM32F10X_CONNECTIVITY_LINE_DEVICE |
| help |
| Enable driver for Reset & Clock Control subsystem found |
| in STM32F105/STM32F107 family of MCUs |
| |
| config CLOCK_CONTROL_STM32F10X_CONN_LINE_DEVICE_INIT_PRIORITY |
| int "Clock Control Device Priority" |
| default 1 |
| depends on CLOCK_CONTROL_STM32F10X_CONN_LINE |
| help |
| This option controls the priority of clock control |
| device initialization. Higher priority ensures that the device |
| is initialized earlier in the startup cycle. If unsure, leave |
| at default value 1 |
| |
| choice |
| prompt "STM32F10x Connectivity Line System Clock Source" |
| depends on CLOCK_CONTROL_STM32F10X_CONN_LINE |
| |
| config CLOCK_STM32F10X_CONN_LINE_SYSCLK_SRC_HSI |
| bool "HSI" |
| help |
| Use HSI as source of SYSCLK |
| |
| config CLOCK_STM32F10X_CONN_LINE_SYSCLK_SRC_HSE |
| bool "HSE" |
| help |
| Use HSE as source of SYSCLK |
| |
| config CLOCK_STM32F10X_CONN_LINE_SYSCLK_SRC_PLLCLK |
| bool "PLLCLK" |
| help |
| Use PLLCLK as source of SYSCLK |
| |
| endchoice |
| |
| choice |
| prompt "STM32F10x Connectivity Line PLL Clock Source" |
| depends on CLOCK_CONTROL_STM32F10X_CONN_LINE && CLOCK_STM32F10X_CONN_LINE_SYSCLK_SRC_PLLCLK |
| |
| config CLOCK_STM32F10X_CONN_LINE_PLL_SRC_HSI |
| bool "HSI" |
| help |
| Use HSI divided by 2 as source of PLL |
| |
| config CLOCK_STM32F10X_CONN_LINE_PLL_SRC_PREDIV1 |
| bool "PREDIV1" |
| help |
| Use clock from PREDIV1 as source of PLL |
| |
| endchoice |
| |
| choice |
| prompt "STM32F10x Connectivity Line PREDIV1 entry clock source" |
| depends on CLOCK_CONTROL_STM32F10X_CONN_LINE && CLOCK_STM32F10X_CONN_LINE_PLL_SRC_PREDIV1 |
| |
| config CLOCK_STM32F10X_CONN_LINE_PREDIV1_SRC_HSE |
| bool "HSE" |
| help |
| Use HSE as source of PREDIV1 |
| |
| config CLOCK_STM32F10X_CONN_LINE_PREDIV1_SRC_PLL2CLK |
| bool "PLL2CLK" |
| help |
| Use clock from PLL2CLK as source of PLL |
| |
| endchoice |
| |
| config CLOCK_STM32F10X_CONN_LINE_HSE_BYPASS |
| bool "HSE bypass" |
| depends on CLOCK_CONTROL_STM32F10X_CONN_LINE && (CLOCK_STM32F10X_CONN_LINE_SYSCLK_SRC_HSE || CLOCK_STM32F10X_CONN_LINE_PREDIV1_SRC_HSE) |
| help |
| Enable this option to bypass external high-speed clock (HSE). |
| |
| config CLOCK_STM32F10X_CONN_LINE_PREDIV1 |
| int "PREDIV1 Prescler" |
| depends on CLOCK_CONTROL_STM32F10X_CONN_LINE && CLOCK_STM32F10X_CONN_LINE_PLL_SRC_PREDIV1 |
| default 0 |
| range 0 16 |
| help |
| PREDIV1 is PREDIV1SCR clock signal prescaler, allowed values: 0 - 16. |
| |
| config CLOCK_STM32F10X_CONN_LINE_PLL_MULTIPLIER |
| int "PLL multiplier" |
| depends on CLOCK_CONTROL_STM32F10X_CONN_LINE && CLOCK_STM32F10X_CONN_LINE_SYSCLK_SRC_PLLCLK |
| default 9 |
| range 4 13 |
| help |
| PLL multiplier, allowed values: 4 - 9 and 13 (in fact the multiplication factor is 6.5). |
| Values in range 10-12 are reserved. PLL output must not exceed 72MHz. |
| |
| config CLOCK_STM32F10X_CONN_LINE_PLL2_MULTIPLIER |
| int "PLL2 multiplier" |
| depends on CLOCK_CONTROL_STM32F10X_CONN_LINE && CLOCK_STM32F10X_CONN_LINE_PREDIV1_SRC_PLL2CLK |
| default 8 |
| range 8 20 |
| help |
| PLL2 multiplier, allowed values: 8 - 20. PLL2 output must not exceed 72MHz. |
| |
| config CLOCK_STM32F10X_CONN_LINE_PREDIV2 |
| int "PREDIV2 Prescler" |
| depends on CLOCK_CONTROL_STM32F10X_CONN_LINE && CLOCK_STM32F10X_CONN_LINE_PREDIV1_SRC_PLL2CLK |
| default 0 |
| range 0 16 |
| help |
| PREDIV2 is HSE prescaler, allowed values: 0 - 16. |
| |
| config CLOCK_STM32F10X_CONN_LINE_AHB_PRESCALER |
| int "AHB prescaler" |
| depends on CLOCK_CONTROL_STM32F10X_CONN_LINE |
| default 0 |
| range 0 512 |
| help |
| AHB prescaler, allowed values: 0, 2, 4, 8, 16, 64, 128, |
| 256, 512. |
| |
| config CLOCK_STM32F10X_CONN_LINE_APB1_PRESCALER |
| int "APB1 prescaler" |
| depends on CLOCK_CONTROL_STM32F10X_CONN_LINE |
| default 0 |
| range 0 16 |
| help |
| APB1 Low speed clock (PCLK1) prescaler, allowed values: |
| 0, 2, 4, 8, 16. The APB1 clock must not exceed 36MHz. |
| |
| config CLOCK_STM32F10X_CONN_LINE_APB2_PRESCALER |
| int "APB2 prescaler" |
| depends on CLOCK_CONTROL_STM32F10X_CONN_LINE |
| default 0 |
| range 0 16 |
| help |
| APB2 High speed clock (PCLK2) prescaler, allowed values: |
| 0, 2, 4, 8, 16 |
| |
| endif |