Boot Linux faster!

Check our new training course

Boot Linux faster!

Check our new training course
and Creative Commons CC-BY-SA
lecture and lab materials

Bootlin logo

Elixir Cross Referencer

# Zephyr Kernel Configuration
CONFIG_ARM=y
CONFIG_ARCH="arm"
CONFIG_SOC_SERIES="stm32f1"
CONFIG_SOC_FAMILY="st_stm32"
CONFIG_BOARD="stm3210c_eval"
CONFIG_SOC_SERIES_STM32F1X=y

# Platform Configuration
CONFIG_SOC_FAMILY_STM32=y
CONFIG_SOC_STM32F107XC=y
CONFIG_SOC_STM32F10X_CONNECTIVITY_LINE_DEVICE=y
CONFIG_BOARD_STM3210C_EVAL=y

# General Kernel Options
CONFIG_CORTEX_M_SYSTICK=y
# 72MHz system clock
CONFIG_SYS_CLOCK_HW_CYCLES_PER_SEC=72000000

# Serial Drivers
CONFIG_SERIAL=y
CONFIG_SERIAL_HAS_DRIVER=y
CONFIG_UART_INTERRUPT_DRIVEN=y
CONFIG_UART_STM32=y
# enable USART2 - passthrough to STLINK v2 connector
CONFIG_UART_STM32_PORT_2=y
CONFIG_UART_STM32_PORT_2_BAUD_RATE=115200
# enable console on this port by default
CONFIG_CONSOLE=y
CONFIG_UART_CONSOLE=y
CONFIG_UART_CONSOLE_ON_DEV_NAME="UART_2"

# Pinmux Driver
CONFIG_PINMUX=y
CONFIG_PINMUX_STM32=y

# GPIO Controller
CONFIG_GPIO=y
CONFIG_GPIO_STM32=y
CONFIG_GPIO_STM32_PORTA=y
CONFIG_GPIO_STM32_PORTB=y
CONFIG_GPIO_STM32_PORTC=y

# RCC configuration
CONFIG_CLOCK_CONTROL=y
CONFIG_CLOCK_CONTROL_STM32F10X=n
CONFIG_CLOCK_CONTROL_STM32F10X_CONN_LINE=y
CONFIG_CLOCK_STM32F10X_CONN_LINE_SYSCLK_SRC_PLLCLK=y
# use PREDIV1 as PLL input
CONFIG_CLOCK_STM32F10X_CONN_LINE_PLL_SRC_PREDIV1=y
# however, the board does not have an external oscillator, so just use
# the 8MHz clock signal coming from integrated STLink
CONFIG_CLOCK_STM32F10X_CONN_LINE_PREDIV1_SRC_HSE=y
CONFIG_CLOCK_STM32F10X_CONN_LINE_HSE_BYPASS=y
# produce 72MHz clock at PLL output
CONFIG_CLOCK_STM32F10X_CONN_LINE_PREDIV1=0
CONFIG_CLOCK_STM32F10X_CONN_LINE_PLL_MULTIPLIER=9
CONFIG_CLOCK_STM32F10X_CONN_LINE_AHB_PRESCALER=0
# APB1 clock must not to exceed 36MHz limit
CONFIG_CLOCK_STM32F10X_CONN_LINE_APB1_PRESCALER=2
CONFIG_CLOCK_STM32F10X_CONN_LINE_APB2_PRESCALER=0