Commit Graph

20 Commits

Author SHA1 Message Date
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