1choice RTC_CLK_SRC
2    prompt "RTC clock source"
3    default RTC_CLK_SRC_INT_RC
4    help
5        Choose which clock is used as RTC clock source.
6
7    config RTC_CLK_SRC_INT_RC
8        bool "Internal 136kHz RC oscillator"
9    config RTC_CLK_SRC_EXT_CRYS
10        bool "External 32kHz crystal"
11        select ESP_SYSTEM_RTC_EXT_XTAL
12    config RTC_CLK_SRC_EXT_OSC
13        bool "External 32kHz oscillator at 32K_XP pin"
14        select ESP_SYSTEM_RTC_EXT_OSC
15endchoice
16
17config RTC_CLK_CAL_CYCLES
18    int "Number of cycles for RTC_SLOW_CLK calibration"
19    default 3000 if RTC_CLK_SRC_EXT_CRYS || RTC_CLK_SRC_EXT_OSC
20    default 1024 if RTC_CLK_SRC_INT_RC
21    range 0 8190 if RTC_CLK_SRC_EXT_CRYS || RTC_CLK_SRC_EXT_OSC
22    range 0 32766 if RTC_CLK_SRC_INT_RC
23    help
24        When the startup code initializes RTC_SLOW_CLK, it can perform
25        calibration by comparing the RTC_SLOW_CLK frequency with main XTAL
26        frequency. This option sets the number of RTC_SLOW_CLK cycles measured
27        by the calibration routine. Higher numbers increase calibration
28        precision, which may be important for applications which spend a lot of
29        time in deep sleep. Lower numbers reduce startup time.
30
31        When this option is set to 0, clock calibration will not be performed at
32        startup, and approximate clock frequencies will be assumed:
33
34        - 136000 Hz if internal RC oscillator is used as clock source. For this use value 1024.
35        - 32768 Hz if the 32k crystal oscillator is used. For this use value 3000 or more.
36            In case more value will help improve the definition of the launch of the crystal.
37            If the crystal could not start, it will be switched to internal RC.
38