Commit Graph

147 Commits

Author SHA1 Message Date
morris
4865a07e3b adc: fix out of bound read
when SOC_ADC_PERIPH_NUM==1, the adc_unit should only be assigned with 0
2023-06-10 16:21:12 +08:00
morris
88600bd91b driver: minor code clean up to pass coverity scan test 2023-06-10 16:21:12 +08:00
KonstantinKondrashov
e72061695e all: Removes unnecessary newline character in logs
Closes https://github.com/espressif/esp-idf/issues/11465
2023-06-09 03:31:21 +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
laokaiyao
ffb40a89d9 adc_cali: supported channel compensation of adc calibration on esp32c6 2023-05-23 22:44:25 +08:00
Armando (Dou Yiwen)
a938fe0beb Merge branch 'bugfix/fix_adc_continuous_driver_conv_frame_issue' into 'master'
adc: fixed adc continuous driver conv frame issue

Closes IDFGH-10109

See merge request espressif/esp-idf!23772
2023-05-22 14:44:28 +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
Cao Sen Miao
faa10947a8 temperature_sensor: Apply new-shared interface in temperature sensor driver 2023-05-18 15:00:36 +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
laokaiyao
b7053b46ef esp32h4: remove esp32h4 target from peripherals 2023-04-20 15:19:45 +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
Armando
d0e4d36fb6 esp_adc: support h2 oneshot mode and continuous mode 2023-02-23 11:48:31 +08:00
morris
0a25c48d89 rmt: fix rmt buffer allocation issue 2023-02-14 14:05:12 +08:00
morris
1626766abf rmt: simplify rmt source clock configure with clk_tree API
Also decrease the payload size for testing the multi-channel behaviour.
2023-02-10 18:24:27 +08:00
morris
044a114e66 gptimer: unify clock setting with clk_tree API 2023-02-08 16:30:47 +08:00
morris
15b9352f60 mcpwm: support esp32h2 2023-02-02 19:05:31 +08:00
morris
b589fff0af rmt: support esp32h2 2023-01-18 11:40:35 +08:00
laokaiyao
c25fc7d242 i2s: fix incorrect sclk in legacy driver 2023-01-17 11:34:25 +08:00
morris
ce84476870 gptimer: support esp32h2 2023-01-12 14:10:11 +00:00
Armando (Dou Yiwen)
d1b8da74d8 Merge branch 'refactor/improve_adc_power_maintanance' into 'master'
adc: improve adc power maintanance

Closes IDF-6114 and IDF-6318

See merge request espressif/esp-idf!21151
2023-01-12 20:30:36 +08:00
Armando
5be3c21cfc adc: improve power logic 2023-01-09 17:10:04 +08:00
laokaiyao
6b631b68d1 sdm: correct concept duty to density 2023-01-06 17:01:48 +08:00
laokaiyao
943dcd2cd1 i2s_pdm: fix tx frequency limitation
Closes: https://github.com/espressif/esp-idf/issues/10420
2022-12-29 16:31:03 +08:00
laokaiyao
f95c2274b8 i2s: fix some typos 2022-12-29 16:31:03 +08:00
Cao Sen Miao
4713a9a7f2 ESP32H2: Introduce new chip target esp32h2, hello_world example supported 2022-12-29 12:29:14 +08:00
Kevin (Lao Kaiyao)
4a86240b6e Merge branch 'feature/support_adc_on_c6' into 'master'
adc: support adc on c6

Closes IDF-5310, IDF-5311, IDF-5917, and IDF-6567

See merge request espressif/esp-idf!21431
2022-12-27 21:01:43 +08:00
morris
2f711d1e82 Merge branch 'contrib/github_pr_10331' into 'master'
rmt: adding loop_count to the config initializer (GitHub PR)

Closes IDFGH-8912

See merge request espressif/esp-idf!21560
2022-12-26 15:58:20 +08: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
Song Ruo Jing
19ee95e509 gptimer: Fix esp32c6 gptimer clock source, no APB, instead, is PLL_F80M_CLK 2022-12-13 19:18:34 +08:00
Nathan Phillips
6a7e8581e9 rmt: fix bad config initializer
Merges https://github.com/espressif/esp-idf/pull/10331
2022-12-12 15:32:20 +08:00
Cao Sen Miao
fb9d0d9f03 temperature_sensor: Add support on ESP32-C6 (No calibration) 2022-11-22 16:22:31 +08:00
morris
dcaa753f37 Merge branch 'bugfix/legacy_rmt_resource_leak' into 'master'
rmt: fix memory leak in the legacy driver

Closes IDFGH-8732 and IDF-5941

See merge request espressif/esp-idf!21084
2022-11-20 16:55:39 +08:00
laokaiyao
3b4ec64f26 i2s: support on esp32c6 2022-11-17 11:04:39 +08:00
morris
6c8807e789 rmt: fix memory leak in the legacy driver
Closes https://github.com/espressif/esp-idf/issues/10173
2022-11-15 06:29:59 +00:00
laokaiyao
8677216576 esp32h2: renaming esp32h2 to esp32h4 2022-11-08 17:05:33 +08:00
laokaiyao
2cccf3a804 dac: update API and file format aligning to the rule 2022-11-03 13:04:50 +08:00
morris
c25031212d driver: test with non-isr freertos functions in the flash 2022-10-26 13:43:13 +08:00
laokaiyao
8ef9fd4623 dac: optimize the dma stratege 2022-10-25 17:14:59 +08:00
laokaiyao
f9f9a09dfb dac: update unit-test docs and examples for driver-NG 2022-10-25 17:00:41 +08:00
laokaiyao
351a18415c dac: driver-ng framework 2022-10-25 17:00:41 +08:00
morris
f997b81242 mcpwm: support esp32c6 2022-10-20 11:55:03 +08:00
morris
a22aa2d183 mcpwm: fix wrong return value in the legacy driver
For APIs that not return esp_err_t value, we can't use macros like
ESP_RETURN_ON_xxx
2022-10-20 11:30:14 +08:00
morris
78dfb58295 mcpwm: update compare value on both tep and tez
Closes https://github.com/espressif/esp-idf/issues/9904
2022-10-18 06:29:53 +00:00
laokaiyao
be7c656f6e i2s: fix tx incomplete auto clear
Closes: https://github.com/espressif/esp-idf/issues/9882
2022-10-11 16:57:05 +08:00
wuzhenghui
5115e31175 driver: Minor update for esp32c6
Leave TODO for esp_adc and legacy adc driver
HAL/SOC update for spi and i2s
2022-09-26 20:32:13 +08:00
morris
c99edc6715 mcpwm: make set_compare_value iram safe
Closes https://github.com/espressif/esp-idf/issues/9793
2022-09-21 13:37:49 +00:00
laokaiyao
bae4944b90 i2s: bringup i2s on esp32c6 2022-09-15 20:03:39 +08:00
laokaiyao
7197e987cb i2s: add XTAL clock source 2022-09-15 19:32:06 +08:00
morris
1fc458b3f7 mcpwm: check sync direction is valid 2022-09-14 11:49:37 +08:00
morris
a1030307f1 gptimer: bringup driver on esp32c6 2022-09-13 10:50:58 +08:00
morris
731db1c873 mcpwm: fix multiplication overflow in converting us to compare ticks
Closes https://github.com/espressif/esp-idf/issues/9648
2022-08-31 17:38:29 +08:00
morris
a0d03a60cd legacy_timer: propagate isr register failure
Closes https://github.com/espressif/esp-idf/issues/9651
2022-08-31 17:18:55 +08:00
morris
995b89fbb6 gptimer: add API to get captured count value 2022-08-25 17:55:19 +08:00
Armando
eaf7fbf35a adc: use esp_check in adc_legacy.c 2022-08-23 17:47:04 +08:00
morris
1d4c08cef4 mcpwm: added enable/disable functions
Closes https://github.com/espressif/esp-idf/pull/9523
2022-08-15 14:46:56 +08:00
morris
6f2ac1ce2a rmt: add iram safe test
Closes https://github.com/espressif/esp-idf/issues/9487
2022-08-12 11:30:14 +08:00
morris
d91c8759c0 driver: remove -Wno-format flag 2022-08-08 08:30:09 +00:00
laokaiyao
a32a89b002 i2s_legacy_test: fix the clock test issue 2022-08-03 13:14:48 +08:00
Armando
4f80c0f27e esp_adc: remove esp_adc from g1 component dependencies 2022-07-28 03:49:48 +00:00
Armando
5e6a16380a esp_adc: move adc common hw related code into esp_hw_support 2022-07-28 03:49:48 +00:00
morris
fd3a1ffc21 mcpwm: deprecate legacy driver 2022-07-27 15:08:58 +08:00
Armando (Dou Yiwen)
097e64f8c7 Merge branch 'bugfix/adc2_legacy_oneshot_clk_gating_issue' into 'master'
adc: fix legacy oneshot driver clock gating issue on c3 and c2

See merge request espressif/esp-idf!19144
2022-07-21 19:13:20 +08:00
laokaiyao
edee3ee3cd i2s: add slot sequence table
Closes: https://github.com/espressif/esp-idf/issues/9208

When I2S is configured into different modes, the slot sequence varies.
This commit updates slot sequence tables and corresponding descriptions
in (both code and programming guide).
2022-07-21 15:52:39 +08:00
laokaiyao
90866e99fb i2s: add basic examples for STD/TDM/PDM mode 2022-07-21 15:52:39 +08:00
Armando
638f39ff40 adc: fix legacy oneshot driver clock gating issue on c3 and c2 2022-07-20 16:35:59 +08:00
morris
e080248141 sdm: deprecate legacy driver 2022-07-20 14:59:50 +08:00
morris
4154eaec93 sdm: clean up soc/hal/ll code 2022-07-20 14:59:50 +08:00
Armando
5b523a3313 esp_adc: new esp_adc component and adc drivers 2022-07-15 18:31:00 +08:00
Marius Vikhammer
fd37129651 esp_ringbuf: placement in flash is no longer controlled by CONFIG_FREERTOS_PLACE_FUNCTIONS_INTO_FLASH
esp-ringbuf funtion placement is now controlled by its own configs:
CONFIG_RINGBUF_PLACE_FUNCTIONS_INTO_FLASH and CONFIG_RINGBUF_PLACE_ISR_FUNCTIONS_INTO_FLASH

Closes https://github.com/espressif/esp-idf/issues/9198
2022-07-11 09:24:20 +08:00
Cao Sen Miao
2c0651a671 Add regi2c enable/disable reference count 2022-06-23 15:36:44 +08:00
Cao Sen Miao
3a820462ac temperature_sensor: Add temperature sensor support for ESP32-C2 2022-06-23 15:36:43 +08:00
Omar Chebib
8fae0f0753 G0: Support Xtensa targets for G0-only compilation
G0-only example now supports Xtensa targets. This means that G0 layer
does not depend on G1+ layers anymore
2022-06-20 11:34:20 +00: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
morris
4b26a5d340 legacy_timer: fix converting count value into time second 2022-06-02 11:08:59 +08:00
morris
8138f8bb02 driver: remove deprecated code
that declared as deprecated in the previous release
2022-05-19 11:31:53 +08:00
morris
ab87dde1d4 rmt_legacy: don't use early log in isr handler
...but use ESP_DRAM_LOGx instead

Closes https://github.com/espressif/esp-idf/issues/5414
2022-05-19 11:10:59 +08:00
morris
2fb43820c2 driver_ng: implement new rmt driver
The legacy driver can't handle the breaking change between esp chips

very well.

And it's not elegant to extend new feature like DMA, ETM.

The new driver can return a opaque handle for each RMT channel.

An obvious transaction concept was also introduced.

TX and RX functionalities are splited out.
2022-05-07 10:34:50 +00:00
morris
df474e74a1 rmt_legacy: fix undetermined idle level
Closes https://github.com/espressif/esp-idf/issues/8864
2022-05-07 10:34:50 +00:00
morris
5bfe873725 driver: deprecate legacy rmt driver
The legacy driver is still available, but new feature won't be added.
Enable RMT_SUPPRESS_DEPRECATE_WARN if you don't want to see the
deprecated warnings.
2022-05-07 10:34:50 +00:00
morris
9ab4abfb46 hw_support: move rtc_ctrl from driver to hw_support 2022-04-29 14:28:09 +08:00
morris
f32a89826c clk_tree: added default clock source for peripheral 2022-04-14 15:44:56 +08:00
morris
cb5507f11c Merge branch 'feature/clk_tree_defs' into 'master'
clk_tree: prework of introducing clock subsystem control

Closes IDF-4892

See merge request espressif/esp-idf!17631
2022-04-13 10:36:56 +08:00
songruo
60bb5c913d clk_tree: prework of introducing clk subsystem control
1. Clean up clk usage in IDF, replace rtc_clk_xtal/apb_freq_get with
   upper level API esp_clk_xtal/apb_freq
2. Fix small errors and wrong comments related to clock
3. Add clk_tree_defs.h to provide an unified clock id for each chip
   Modify the NGed drivers to adopt new clock ids
2022-04-11 12:09:06 +08:00
morris
a7d380c80a driver: a better way to avoid new/old driver coexistence 2022-04-08 15:15:05 +08:00
morris
5732e2a4be driver: fix dead code in error handling path
... for gptimer and pulse_cnt driver, reported by Coverity Scan
2022-04-08 15:13:34 +08:00
morris
31f9915603 driver: move deprecated drivers into single folder 2022-03-24 21:34:41 +08:00
morris
21e29f285f temp_sensor: avoid coexistence of new and legacy driver 2022-03-08 11:57:53 +08:00
Cao Sen Miao
441900caa2 Temperature_sensor: keep legacy drivers 2022-03-04 17:59:07 +08:00
morris
04b3f8b210 pcnt: deprecated as legacy driver 2022-03-03 22:38:32 +08:00
morris
5deb83b12d gptimer: new driver for previous timer group 2022-01-07 14:44:50 +08:00
Armando
4dc0d6b2fe adc: support adc dma driver on all chips 2021-12-16 00:19:15 +00:00
morris
16677b0d3c global: make periph enable/disable APIs private
peripheral enable/disable usually should be managed by driver itself,
so make it as espressif private APIs, not recommended for user to use it
in application code.
However, if user want to re-write the driver or ports to other platform,
this is still possible by including the header in this way:
"esp_private/peripheral_ctrl.h"
2021-11-08 10:37:47 +08:00