1menu "ADC and ADC Calibration"
2
3    config ADC_ONESHOT_CTRL_FUNC_IN_IRAM
4        bool "Place ISR version ADC oneshot mode read function into IRAM"
5        default n
6        help
7            Place ISR version ADC oneshot mode read function into IRAM.
8
9    config ADC_CONTINUOUS_ISR_IRAM_SAFE
10        depends on SOC_ADC_DMA_SUPPORTED
11        bool "ADC continuous mode driver ISR IRAM-Safe"
12        default n
13        select GDMA_ISR_IRAM_SAFE if SOC_ADC_DMA_SUPPORTED && SOC_GDMA_SUPPORTED
14        help
15            Ensure the ADC continuous mode ISR is IRAM-Safe. When enabled, the ISR handler
16            will be available when the cache is disabled.
17
18    menu "ADC Calibration Configurations"
19        depends on IDF_TARGET_ESP32
20
21        config ADC_CALI_EFUSE_TP_ENABLE
22            bool "Use Two Point Values"
23            default "y"
24            help
25                Some ESP32s have Two Point calibration values burned into eFuse BLOCK3.
26                This option will allow the ADC calibration component to characterize the
27                ADC-Voltage curve using Two Point values if they are available.
28
29        config ADC_CALI_EFUSE_VREF_ENABLE
30            bool "Use eFuse Vref"
31            default "y"
32            help
33                Some ESP32s have Vref burned into eFuse BLOCK0. This option will allow
34                the ADC calibration component to characterize the ADC-Voltage curve using
35                eFuse Vref if it is available.
36
37        config ADC_CALI_LUT_ENABLE
38            bool "Use Lookup Tables"
39            default "y"
40            help
41                This option will allow the ADC calibration component to use Lookup Tables
42                to correct for non-linear behavior in 11db attenuation. Other attenuations
43                do not exhibit non-linear behavior hence will not be affected by this option.
44    endmenu
45
46    config ADC_DISABLE_DAC_OUTPUT
47        depends on SOC_DAC_SUPPORTED
48        bool "Disable DAC when ADC2 is in use"
49        default y
50        help
51            By default, this is set. The ADC oneshot driver will disable the output of the
52            corresponding DAC channels:
53            ESP32:   IO25 and IO26
54            ESP32S2: IO17 and IO18
55
56            Disable this option so as to measure the output of DAC by internal ADC, for test usage.
57
58    config ADC_CONTINUOUS_FORCE_USE_ADC2_ON_C3_S3
59        depends on IDF_TARGET_ESP32C3 || IDF_TARGET_ESP32S3
60        bool "Force use ADC2 continumous mode on ESP32S3 or ESP32C3"
61        default n
62        help
63            On ESP32C3 and ESP32S3, ADC2 Digital Controller is not stable. Therefore,
64            ADC2 continuous mode is not suggested on ESP32S3 and ESP32C3
65
66            If you stick to this, you can enable this option to force use ADC2 under above conditions.
67            For more details, you can search for errata on espressif website.
68
69    config ADC_ONESHOT_FORCE_USE_ADC2_ON_C3
70        depends on IDF_TARGET_ESP32C3
71        bool "Force use ADC2 oneshot mode on ESP32C3"
72        default n
73        help
74            On ESP32C3, ADC2 Digital Controller is not stable. Therefore,
75            ADC2 oneshot mode is not suggested on ESP32C3
76
77            If you stick to this, you can enable this option to force use ADC2 under above conditions.
78            For more details, you can search for errata on espressif website.
79endmenu
80