blob: 562ae1eda66c30079d32cec24a6c9a3e2b25ec0c [file] [log] [blame]
# STM32 Cube LL RTC
# Copyright (c) 2018, Linaro Limited
# SPDX-License-Identifier: Apache-2.0
menuconfig COUNTER_RTC_STM32
bool "STM32 Counter RTC driver"
default y
depends on DT_HAS_ST_STM32_RTC_ENABLED
select USE_STM32_LL_RTC
select USE_STM32_LL_PWR
select USE_STM32_LL_RCC
select USE_STM32_LL_EXTI
help
Build RTC driver for STM32 SoCs.
Tested on STM32 F0, F2, F3, F4, L1, L4, F7, G0, G4, H7 series
if COUNTER_RTC_STM32
choice COUNTER_RTC_STM32_CLOCK_SRC
bool "RTC clock source"
depends on COUNTER_RTC_STM32
config COUNTER_RTC_STM32_CLOCK_LSI
bool "LSI"
help
Use LSI as RTC clock
config COUNTER_RTC_STM32_CLOCK_LSE
bool "LSE"
help
Use LSE as RTC clock
endchoice #COUNTER_RTC_STM32_CLOCK_SRC
if !SOC_SERIES_STM32F4X
choice COUNTER_RTC_STM32_LSE_DRIVE
prompt "LSE oscillator drive capability"
depends on COUNTER_RTC_STM32_CLOCK_LSE
config COUNTER_RTC_STM32_LSE_DRIVE_LOW
bool "Low"
help
Xtal mode lower driving capability
config COUNTER_RTC_STM32_LSE_DRIVE_MEDIUMLOW
bool "Medium Low"
help
Xtal mode medium low driving capability
config COUNTER_RTC_STM32_LSE_DRIVE_MEDIUMHIGH
bool "Medium High"
help
Xtal mode medium high driving capability
config COUNTER_RTC_STM32_LSE_DRIVE_HIGH
bool "High"
help
Xtal mode higher driving capability
endchoice
config COUNTER_RTC_STM32_LSE_DRIVE_STRENGTH
hex
default 0x00000000 if COUNTER_RTC_STM32_LSE_DRIVE_LOW
default 0x00000008 if COUNTER_RTC_STM32_LSE_DRIVE_MEDIUMLOW
default 0x00000010 if COUNTER_RTC_STM32_LSE_DRIVE_MEDIUMHIGH
default 0x00000018 if COUNTER_RTC_STM32_LSE_DRIVE_HIGH
endif # !SOC_SERIES_STM32F4X
config COUNTER_RTC_STM32_LSE_BYPASS
bool "LSE oscillator bypass"
depends on COUNTER_RTC_STM32_CLOCK_LSE
help
Enable LSE bypass
config COUNTER_RTC_STM32_BACKUP_DOMAIN_RESET
bool "Do backup domain reset"
default y
help
Force a backup domain reset on startup
config COUNTER_RTC_STM32_SAVE_VALUE_BETWEEN_RESETS
bool "Save rtc time value between resets"
default y
depends on !COUNTER_RTC_STM32_BACKUP_DOMAIN_RESET
help
Do not reset the rtc time and date after each reset.
endif # COUNTER_RTC_STM32