Commit Graph

44 Commits

Author SHA1 Message Date
gaoxu 97a3b51d11 fix(adc): fix ESP32 ADC continuous loss sample times 2025-10-22 10:11:18 +08:00
Gao Xu 3ec9502526 Merge branch 'bugfix/fix_temp_sensor_affect_by_adc' into 'master'
ADC: fix temp sensor affect by adc continuous reset

Closes IDFGH-14786

See merge request espressif/esp-idf!38921
2025-09-24 10:05:03 +08:00
gaoxu e5c6b87c10 fix(tsens): fix temp_sensor affect by adc reset 2025-09-22 08:19:46 +08:00
Marius Vikhammer 484d2c5c2f fix(system): fixed issues with unused variable warnings when compiling with NDEBUG 2025-09-19 15:42:07 +08:00
gaoxu 3c7e54c422 feat(adc): add adc_continuous_parse_data api 2025-09-01 09:30:24 +08:00
wuzhenghui 65b7e70564 feat(driver): support acquire/release clock source dependency for all drivers 2025-05-27 21:21:38 +08:00
Chen Jichang 8555b6c837 fix(adc): only call esp_pm APIs when CONFIG_PM_ENABLE is enabled 2025-05-22 17:38:58 +08:00
gaoxu bf335a38f7 fix(adc): fix adc do not enable/disable regi2c registers 2025-04-25 14:39:01 +08:00
Song Ruo Jing 52c0278361 feat(gpio): add gpio_config_as_analog API 2025-01-08 21:58:12 +08:00
gaoxu 0c82649db0 fix(adc): fix P4 adc continuous mode stop early 2024-12-31 11:28:29 +08:00
wanckl d0e6e825d9 fix(esp_adc): fixed adc continue monitor don't work issue
Closes https://github.com/espressif/esp-idf/issues/14769
Closes https://github.com/espressif/esp-idf/issues/14814
2024-11-12 15:42:50 +08:00
Song Ruo Jing 2cb35a2955 refactor(regi2c): ana i2c master clock is enabled per request 2024-11-04 12:37:17 +08:00
wuzhenghui 13e42707a0 feat(esp_hw_support): add clk tree source gate management api 2024-09-11 10:53:01 +08:00
morris ea9630d977 change(adc): refactor DMA memory allocation 2024-06-17 11:12:06 +08:00
gaoxu 795f3fe377 feat(adc): support ADC continuous mode on ESP32P4 2024-06-03 16:50:39 +08:00
gaoxu 6d82c324bb feat(adc): move adc periph enable/reset functions to ll layer 2024-05-22 15:23:58 +08:00
morris c0289ee6eb fix(drivers): fix typos found by codespell
codespell components/esp_driver*
2024-03-28 10:01:27 +08:00
gaoxu bc98bdc087 refactor(adc): refactor dma ll functions on adc continuous mode 2024-03-12 11:12:48 +08:00
gaoxu 2eccde88f3 fix(adc): workaround to fix adc continuous get less results on c3 2024-02-19 10:34:54 +08:00
Cao Sen Miao b84434b39d fix(tsens,adc): Fix issue that disable adc will make temperature sensor crash,
Closes https://github.com/espressif/esp-idf/issues/12921
2024-01-05 12:10:30 +08:00
wanlei d0023b061f refactor(spi): replace dma_ll related in spi by dma driver (part1) 2023-12-04 16:20:05 +08:00
gaoxu 3acf3ec648 fix(adc): fix adc continuous get less results beacuse do not reset apb clk 2023-11-29 14:28:33 +08:00
gaoxu c14d7fbb17 feat(adc): added adc enable debug log config 2023-11-01 15:06:20 +08:00
Armando b774bd1457 refactor(esp_adc): reformat code with astyle_py 2023-10-08 10:35:52 +08:00
Armando 73c9182581 feat(adc): added an API to flush the continuous driver pool 2023-08-31 03:52:28 +00:00
morris 54febcae0e fix(adc): invalid assertion on the adc_unit 2023-08-23 18:36:02 +08:00
Armando (Dou Yiwen) 92419363aa Merge branch 'feat/const_ptr_adc_io_channel' into 'master'
feat(adc): use const pointer in io_to_channel APIs

See merge request espressif/esp-idf!24672
2023-08-02 14:10:35 +08:00
Darian Leung 6fc935e584 refactor(freertos): Refactor usage of portBASE_TYPE to BaseType_t
portBASE_TYPE is an internal macro defined by the porting layer. This commit
changes all references to BaseType_t which is the official type exposed by
FreeRTOS.
2023-07-31 17:10:34 +02:00
Armando 984f77fc3e feat(adc): use const pointer in io_to_channel APIs 2023-07-10 14:36:51 +08:00
Armando 97c30c7da6 adc: port gh pr to current adc continuous mode driver
DMA EOF may happens per multiple dma descriptors, instead of only one.

Closes https://github.com/espressif/esp-idf/pull/11500
2023-06-05 14:25:53 +08:00
Niklas Gürtler 2a8b9fb636 Fix #10804 by running continuous ADC DMA in endless loop instead of restarting after each run (descriptor chain) to avoid losing samples. Use descriptor error callback for GDMA to check for DMA buffer overrun.
Signed-off-by: Armando <douyiwen@espressif.com>
2023-06-05 12:24:14 +08:00
Armando c68e4bbb6f adc: added a flag to replace internal pool data with newest data, when pool is full 2023-05-31 10:55:01 +08:00
Armando 73791ff4e0 adc: fix adc continuous driver conv_frame_size not bigger than 4092 issue
Closes https://github.com/espressif/esp-idf/issues/11385
2023-05-22 10:55:28 +08:00
Song Ruo Jing a4e8960ab4 esp_clk_tree: Rename clk_tree_xxx to esp_clk_tree_xxx, add compilation warning to clk_tree.h 2023-04-25 14:12:06 +08:00
Armando 53f1c35826 esp_adc: fix continuous mode pm lock release fail issue and add tests
Closes https://github.com/espressif/esp-idf/issues/10853
2023-02-28 16:33:50 +08:00
Armando 5653018cd1 esp_adc: support selecting clock source for oneshot driver 2023-02-23 11:48:31 +08:00
Armando 3afa671069 esp_adc: added adc digital filter feature 2023-02-10 16:46:20 +00:00
Armando 5be3c21cfc adc: improve power logic 2023-01-09 17:10:04 +08:00
Armando b4c90c44d2 adc: no longer support adc2 continuous mode on esp32c3 and esp32s3
Due to HW limitation, we don't support this anymore. On s3 and c3, ADC2 under continuous  mode is not stable.

However, you can enable CONFIG_ADC_CONTINUOUS_FORCE_USE_ADC2_ON_C3_S3 to force use
ADC2.

Refer to errata to know more details:
https://www.espressif.com/sites/default/files/documentation/esp32-s3_errata_en.pdf
https://www.espressif.com/sites/default/files/documentation/esp32-c3_errata_en.pdf
2022-12-16 02:06:03 +00:00
Armando 5e6a16380a esp_adc: move adc common hw related code into esp_hw_support 2022-07-28 03:49:48 +00:00
Darian c8ee369a7c Merge branch 'feature/deprecate-old-cpu-api' into 'master'
HAL: Deprecate old CPU/SoC/Interrupt Controller HAL API

Closes IDF-4919 and IDF-5032

See merge request espressif/esp-idf!18987
2022-07-23 00:37:33 +08:00
morris 5dbae0c2cd esp_adc: fix dead code reported by coverity 2022-07-22 00:12:36 +00:00
Darian Leung 781d06af73 esp_hw_support: Remove compare_set.h API
This function removes the following legacy atomic CAS functions:

From compare_set.h (file removed):
- compare_and_set_native()
- compare_and_set_extram()

From portmacro.h
- uxPortCompareSet()
- uxPortCompareSetExtram()

Users should call esp_cpu_compare_and_set() instead as this function hides the details
of atomic CAS on internal and external RAM addresses.

Due to the removal of compare_set.h, some missing header includes are also fixed in this commit.
2022-07-22 00:06:06 +08:00
Armando 5b523a3313 esp_adc: new esp_adc component and adc drivers 2022-07-15 18:31:00 +08:00