menu "Brownout Detector"

    config ESP_BROWNOUT_DET
        bool "Hardware brownout detect & reset"
        depends on !IDF_ENV_FPGA
        default y
        help
            The ESP has a built-in brownout detector which can detect if the voltage is lower than
            a specific value. If this happens, it will reset the chip in order to prevent unintended
            behaviour.

    choice ESP_BROWNOUT_DET_LVL_SEL
        prompt "Brownout voltage level"
        depends on ESP_BROWNOUT_DET
        default ESP_BROWNOUT_DET_LVL_SEL_0
        help
            The brownout detector will reset the chip when the supply voltage is approximately
            below this level. Note that there may be some variation of brownout voltage level
            between each ESP chip.

            #The voltage levels here are estimates, more work needs to be done to figure out the exact voltages
            #of the brownout threshold levels.
        config ESP_BROWNOUT_DET_LVL_SEL_0
            bool "2.43V +/- 0.05"
        config ESP_BROWNOUT_DET_LVL_SEL_1
            bool "2.48V +/- 0.05"
        config ESP_BROWNOUT_DET_LVL_SEL_2
            bool "2.58V +/- 0.05"
        config ESP_BROWNOUT_DET_LVL_SEL_3
            bool "2.62V +/- 0.05"
        config ESP_BROWNOUT_DET_LVL_SEL_4
            bool "2.67V +/- 0.05"
        config ESP_BROWNOUT_DET_LVL_SEL_5
            bool "2.70V +/- 0.05"
        config ESP_BROWNOUT_DET_LVL_SEL_6
            bool "2.77V +/- 0.05"
        config ESP_BROWNOUT_DET_LVL_SEL_7
            bool "2.80V +/- 0.05"
    endchoice

    config ESP_BROWNOUT_DET_LVL
        int
        default 0 if ESP_BROWNOUT_DET_LVL_SEL_0
        default 1 if ESP_BROWNOUT_DET_LVL_SEL_1
        default 2 if ESP_BROWNOUT_DET_LVL_SEL_2
        default 3 if ESP_BROWNOUT_DET_LVL_SEL_3
        default 4 if ESP_BROWNOUT_DET_LVL_SEL_4
        default 5 if ESP_BROWNOUT_DET_LVL_SEL_5
        default 6 if ESP_BROWNOUT_DET_LVL_SEL_6
        default 7 if ESP_BROWNOUT_DET_LVL_SEL_7

endmenu

config ESP32_DISABLE_BASIC_ROM_CONSOLE
    bool "Permanently disable BASIC ROM Console"
    default n
    help
        If set, the first time the app boots it will disable the BASIC ROM Console
        permanently (by burning an eFuse).

        Otherwise, the BASIC ROM Console starts on reset if no valid bootloader is
        read from the flash.

        (Enabling secure boot also disables the BASIC ROM Console by default.)

config ESP32_ECO3_CACHE_LOCK_FIX
    bool
    default y
    depends on !FREERTOS_UNICORE && SPIRAM