Wykres commitów

50 Commity (master)

Autor SHA1 Wiadomość Data
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
laokaiyao e88d528b81 refactor(dac): remove redundant ll config for dac mode
Closes https://github.com/espressif/esp-idf/issues/12741
2023-12-09 20:14:54 +08:00
laokaiyao dd4072a80c refactor(hal): use hal utils to calculate clock division 2023-09-20 23:33:25 +08:00
morris 56a376c696 feat(esp_gdma): add hal interface for common operations
GDMA driver will be adapted to more DMA peripherals in the future.
This commit is to extract a minimal interface in the hal layer
2023-07-10 13:45:57 +08:00
laokaiyao 1b22591ea7 i2s: fixed i2s_ll compiling failure under C++ evironment
Closes: https://github.com/espressif/esp-idf/issues/11625
2023-06-23 11:41:43 +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 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
Armando 486c765a93 adc: remove adc_hal_conf.h
Macros inside adc_hal_conf.h are moved to adc_ll.h
2023-02-23 11:48:31 +08:00
Armando 5653018cd1 esp_adc: support selecting clock source for oneshot driver 2023-02-23 11:48:31 +08:00
morris 774a05399b soc: fix wrong APB_CLK_FREQ value on esp32c6 2023-01-28 06:33:23 +00:00
laokaiyao 5333ac81bf adc: support ADC on esp32c6 (driver/test/example) 2022-12-23 11:24:06 +08:00
laokaiyao e27f3e3128 adc: support ADC on esp32c6 (hal) 2022-12-23 11:24:06 +08:00
Armando 5b523a3313 esp_adc: new esp_adc component and adc drivers 2022-07-15 18:31:00 +08:00
laokaiyao 28b8fc6a7e i2s: update documents for driver-NG 2022-06-15 10:30:04 +08:00
laokaiyao 0fe3bb8ab7 i2s: update examples and unit-tests 2022-06-15 10:29:06 +08:00
laokaiyao 621d0aa942 i2s: Introduced a brand new driver 2022-06-15 10:29:06 +08:00
Armando 49747bb486 adc: create common adc hal layer 2022-05-07 19:20:44 +08:00
laokaiyao f17edba20b i2s: extract std/pdm/tdm modes
Type structures of these modes are defined. Driver and HAL layer are modified to fit these concepts.
2022-03-22 10:14:45 +08:00
Armando 386363cafd adc: unify adc_ll_num_t and adc_unit_t 2022-03-18 11:36:50 +08:00
Armando 494b996ecc sleep: restore analog calibration registers after waking up from light sleep
Closes https://github.com/espressif/esp-idf/issues/8287
Closes https://github.com/espressif/esp-idf/issues/7921
2022-03-04 12:10:20 +08:00
Armando 4dc0d6b2fe adc: support adc dma driver on all chips 2021-12-16 00:19:15 +00:00
Cao Sen Miao 09487761cf ESP8684: add freertos, hal, esp_system support 2021-11-06 17:33:44 +08:00
Armando ddd0235783 adc: support adc self-calibration on esp32s3 2021-09-16 15:17:29 +08:00
Armando c45c6f52f1 adc: support adc efuse-based calibration on esp32s3 2021-09-14 11:42:50 +08:00
Armando 3ce2d85e9e adc: support adc2 working with WiFi 2021-07-28 17:50:14 +08:00
laokaiyao 27d9657b6c driver/adc: support adc single sample on s3 2021-07-15 19:13:50 +08:00
Shu Chen 205cd469e9 esp32h2: update driver/hal/soc components to support esp32h2 2021-07-01 19:53:11 +08:00
morris 9afdf54748 hal: added HAL_ASSERT 2021-06-22 11:28:01 +08:00
morris 6e981af406 gdma: separate tx/rx channel interrupt 2021-05-06 15:06:37 +08:00
Armando cc6bfcd9ac adc: apply adc power API to adc driver
Closes https://github.com/espressif/esp-idf/issues/6269
Closes https://github.com/espressif/esp-idf/issues/6682
2021-03-26 17:58:00 +08:00
Armando 0e0baee25a adc: add implementation of missed public API
Added ``adc1_pad_get_io_num``, ``adc2_pad_get_io_num`` and
``adc_vref_to_gpio``.
2021-03-26 12:04:46 +08:00
Armando e9995fe165 adc: add pm_lock to adc driver on esp32c3 2021-03-26 12:04:46 +08:00
Armando 00a3f48bd8 adc: refactor adc single read api on esp32c3 2021-03-26 12:04:46 +08:00
Armando 69a0f8b9bb adc: seperate hal layer and driver layer 2021-03-26 12:04:46 +08:00
Armando 5427c18781 adc: apply gdma api to adc on esp32c3 2021-02-08 11:41:21 +08:00
Michael (XIAO Xufeng) 351ba5ff9e adc: fixed the issue that ADC power is left on after the calibration is done
Also refactor the locks in the adc_common.c file.
2021-02-05 14:17:52 +08:00
Michael (XIAO Xufeng) 2b83418141 adc: add fallback calibration method
Also:
1. Separate static configuration into init phase to improve
performance
2. Add a init code config layer to avoid duplicated configuration
3. Add a HW_CALIBRATION_V1 caps
2021-01-25 20:30:42 +08:00
Michael (XIAO Xufeng) 3d7da2c8ff adc: simplify LL on C3 2021-01-25 15:08:55 +08:00
Armando d8a4b247b9 adc_digi: update_adc_api_for_5M_freq_limit
The ``adc_digi_config_t`` struct is modified on esp32c3: configuration
of clock divider factors are not provided anymore. The SARADC sampling
frequency is provided instead. In this way, we can handle the frequency
limit better.
2021-01-25 04:51:40 +00:00
fuzhibo 19fb11549b driver(adc): update adc ll and hal driver for esp32c3 2021-01-25 04:51:40 +00:00
Armando 02600309c8 adc: fix some regression issues 2021-01-25 04:51:40 +00:00
Armando 2b737c1927 adc: fix adc invalid data issue by update adc_reset 2021-01-25 04:51:40 +00:00
Armando b38f4646de adc_digi: add dma drivers 2021-01-25 04:51:40 +00:00
morris e6d23a35ec gdma: dynamic alloc DMA channels 2021-01-13 10:52:27 +08:00
Armando 2d37bfa126 driver: Add adc_digi single conversion mode
- add lock for single read and continuous read APIs
- update onetime read start singal delay for hardware limitation[*]
- move adc_caps to soc_caps.h
- update license dates

[*] There is a hardware limitation. If the APB clock frequency is high, the
step of this reg signal: ``onetime_start`` may not be captured by the
ADC digital controller (when its clock frequency is too slow). A rough
estimate for this step should be at least 3 ADC digital controller
clock cycle.
2020-12-23 09:53:24 +11:00
Angus Gratton f09b8ae7a4 driver: Add esp32c3 ADC driver
Based on internal commit 3ef01301fffa552d4be6d81bc9d199c223224305
2020-12-23 09:53:24 +11:00
Michael (XIAO Xufeng) 647dea9395 soc: combine xxx_caps.h into one soc_caps.h
During HAL layer refactoring and new chip bringup, we have several
caps.h for each part, to reduce the conflicts to minimum. But this is
The capabilities headers will be relataive stable once completely
written (maybe after the featues are supported by drivers).

Now ESP32 and ESP32-S2 drivers are relative stable, making it a good
time to combine all these caps.h into one soc_caps.h

This cleanup also move HAL config and pin config into separated files,
to make the responsibilities of these headers more clear. This is
helpful for the stabilities of soc_caps.h because we want to make it
public some day.
2020-10-17 16:10:15 +08:00
Michael (XIAO Xufeng) 5425ef4ee4 hal: extract hal component from soc component 2020-09-01 13:25:32 +08:00