morris
c24222dcde
gptimer: fix race condition between start and stop
...
Added state transition in gptimer_start/stop functions.
So that it's not possible to make a stopped timer continue to run
because of race condition.
2023-03-11 11:42:09 +08:00
laokaiyao
a6b190c083
sdm: fixed potential memory leak
2023-03-10 03:48:27 +00:00
Zim Kalinowski
2a804de4b7
Merge branch 'staging/rename_twdt_config_examples_v5.0' into 'release/v5.0'
...
TWDT: Use the new TWDT Kconfig options in the examples and tests (Backport v5.0)
See merge request espressif/esp-idf!22631
2023-03-08 16:09:58 +08:00
Omar Chebib
83907aaa20
TWDT: Use the new TWDT Kconfig options in the examples and tests
2023-03-07 10:23:43 +08:00
Gustavo Henrique Nihei
24484887a9
esp_system: Ensure TIMG0 clock is always enabled during normal operation
...
If the TimerGroup 0 clock is disabled and then reenabled, the watchdog
registers (Flashboot protection included) will be re-enabled, and some
seconds later, will trigger an unintended reset.
Signed-off-by: Gustavo Henrique Nihei <gustavo.nihei@espressif.com>
2023-03-07 10:02:06 +08:00
Song Ruo Jing
639e49d157
gpio: add a test case to test the ability of disabling USB D+ pin pull-up
2023-03-06 11:14:05 +08:00
morris
2b14b7d061
Merge branch 'contrib/github_pr_10402_v5.0' into 'release/v5.0'
...
ledc: move callback to IRAM as it's called from an ISR (GitHub PR) (v5.0)
See merge request espressif/esp-idf!22590
2023-03-06 10:14:58 +08:00
Song Ruo Jing
f177b2c6c6
uart: Fix two TX concurrency issues
...
1. Concurrency might cause ESP_ERR_TIMEOUT when calling uart_wait_tx_done
2. Concurrency might cause RTS line being de-assreted during tx transmission for rs485 mode
2023-03-03 19:18:08 +08:00
wanlei
62e1e2500c
spi_slave: fix io re-config issue
2023-03-03 17:56:23 +08:00
Song Ruo Jing
bdffb4403d
ledc: Add check for whether the registered callback is in iram in ledc_cb_register
2023-03-03 17:21:56 +08:00
Bradley McFadden
701780891c
uart: Correct typo in referenced function name
...
The functions `uart_enable_pattern_det_intr` have been renamed to `uart_enable_pattern_det_baud_intr`, but a reference to these functions in the programming guide was not updated.
Merges https://github.com/espressif/esp-idf/pull/10856
2023-03-03 16:45:17 +08:00
Chen Yudong
c8e7ab7f17
CI: add generic to xtal_40mhz jobs
2023-03-01 22:40:32 +08:00
Jiang Jiang Jian
d759ee5aea
Merge branch 'touch_sensor/update_touch_sensor_examples_v5.0' into 'release/v5.0'
...
touch: update examples and tests (v5.0)
See merge request espressif/esp-idf!19725
2023-02-28 19:55:27 +08:00
Zim Kalinowski
fd707e1d03
Merge branch 'bugfix/twai_listen_only_errata_v5.0' into 'release/v5.0'
...
twai: Add errata workaround for listen only mode (v5.0)
See merge request espressif/esp-idf!22514
2023-02-27 18:13:11 +08:00
Jiang Jiang Jian
4abb6efb36
Merge branch 'bugfix/fix_gpio_wakeup_related_issues_in_ssc_sleep_test_backport_v5.0' into 'release/v5.0'
...
sleep: fix gpio wakeup related issues(backport v5.0)
See merge request espressif/esp-idf!22332
2023-02-27 15:12:13 +08:00
Darian Leung
3318fac02f
twai: Add errata workaround for listen only mode
...
This commit adds a workaround for the TWAI listen only mode errata which is
present on the ESP32, ESP32-S2, ESP32-S3, and ESP32-C3. twai_get_status_info()
has also been updated to account for the fact that TEC/REC are frozen in
listen only mode.
Errata Description:
When the TWAI controller is put into listen only mode, it should not influence
the TWAI bus in any way (i.e., should never send a dominant bit). However,
on the targets listed above, the TWAI controller will send dominant bits in an
error frame (i.e., active error frame), even if the controller is set to listen
only mode.
Workaround:
We can force the TWAI controller into the error passive state on startup (by
setting the REC to >= 128). Since the TEC/REC are frozen in listen only mode,
the TWAI controller will remain error passive and only send recessive bits
(i.e., passive error frames), thus will not influence the TWAI bus.
Closes https://github.com/espressif/esp-idf/issues/9157
2023-02-24 19:26:22 +08:00
morris
b731bd6a60
rmt: fix rmt buffer allocation issue
2023-02-20 15:12:30 +08:00
Armando
d101d9c100
esp_adc: update license
2023-02-20 10:34:34 +08:00
Armando
45776dc0cc
esp_adc: add esp32c2 adc high/low test threshold and expected val
2023-02-20 10:34:34 +08:00
morris
3f68b61f3e
Merge branch 'feature/mcpwm_non_varg_version_api_v5.0' into 'release/v5.0'
...
mcpwm: support non-vararg version of generator functions (v5.0)
See merge request espressif/esp-idf!21951
2023-02-18 15:04:17 +08:00
morris
15471b450d
Merge branch 'feature/mcpwm_cap_not_reset_io_at_exit_v5.0' into 'release/v5.0'
...
mcpwm: support not reset GPIO config at exit (v5.0)
See merge request espressif/esp-idf!22023
2023-02-18 15:03:13 +08:00
morris
27ca6549d5
Merge branch 'bugfix/gdma_uhci_id_5.0' into 'release/v5.0'
...
gdma: correct the dma trigger of UHCI && fix async memcpy conflict with peripheral DMA (v5.0)
See merge request espressif/esp-idf!22006
2023-02-18 15:02:32 +08:00
morris
10dd0cc4a1
Merge branch 'feature/rmt_no_light_sleep_lock_v5.0' into 'release/v5.0'
...
rmt: avoid auto light sleep when use xtal as the clock source (v5.0)
See merge request espressif/esp-idf!22053
2023-02-18 15:00:56 +08:00
morris
92b1f4fa27
Merge branch 'bugfix/gptimer_pm_lock_xtal_5.0' into 'release/v5.0'
...
gptimer: acquire pm lock for xtal clock source (v5.0)
See merge request espressif/esp-idf!22281
2023-02-18 15:00:24 +08:00
Cao Sen Miao
256dd53120
mcpwm: modify wrong config name
2023-02-15 17:55:55 +08:00
jingli
7f15980de9
sleep: fix gpio wakeup not working properly in some cases
...
Before this fix, when we call esp_pm_configure after gpio_wakeup_enable,
the configuration of GPIO in sleep state in gpio_wakeup_enable will be
overwritten by esp_pm_configure.
2023-02-09 17:32:13 +08:00
jingli
50feb8f75b
soc_caps: remove SOC_GPIO_SUPPORT_SLP_SWITCH
...
all esp chips support this feature
2023-02-09 17:29:40 +08:00
morris
de8409fa88
gptimer: acquire pm lock for xtal clock source
2023-02-09 14:10:15 +08:00
wangyuanze
5de3f74f5e
touch_sensor: fix touch_sensor_v1 filter issue
2023-02-08 14:32:36 +08:00
wangyuanze
9892fb760b
touch: move unit tests to test_app
2023-02-08 12:26:27 +08:00
wangyuanze
e51845d04c
touch: update touch-related code to compile without -Wno-format flag
2023-02-08 12:23:40 +08:00
morris
6b8d4dfe14
gdma: prevent mutli-channels connect to the same peripheral
...
1. add check in the gdma driver, to prevent multiple channels connecting
to the same peripheral
2. memory copy DMA ID will occupy the peripheral's DMA ID on some ESP
targets (e.g. esp32c3/s3). We should search for a free one when
install async memcpy driver.
Closes https://github.com/espressif/esp-idf/issues/10575
2023-02-01 11:06:48 +08:00
morris
5aa55ffc34
mcpwm: support not reset GPIO config at exit
...
By default, the driver will reset the GPIO used by the MCPWM capture
channel at exit. But in some special use cases, the same gpio may also
be used by another device, which shares the same gpio configuration,
resetting the gpio is not expected.
Closes https://github.com/espressif/esp-idf/issues/10327
2023-01-16 11:22:58 +08:00
morris
1884442a80
rmt: no auto light sleep if xtal is working as the clock source
2023-01-16 10:20:40 +08:00
morris
ae7c8de4a7
mcpwm: support non-varg version of generator functions
...
Closes https://github.com/espressif/esp-idf/issues/10449
2023-01-09 15:09:40 +08:00
Song Ruo Jing
e8386ed732
ledc: Fix -Werror=maybe-uninitialized warning on glb_clk variable on specific kconfig options selected
...
Closes https://github.com/espressif/esp-idf/pull/9025
Closes https://github.com/espressif/esp-idf/issues/10322
2023-01-07 17:29:45 +08:00
Ivan Grokhotkov
20d4335d60
Merge branch 'fix/sdspi_no_cs_v5.0' into 'release/v5.0'
...
sdspi: Allow CS line to be set to GPIO_NUM_NC (-1) (v5.0)
See merge request espressif/esp-idf!20915
2022-12-21 16:37:25 +08:00
Armando
bb074904b4
adc: no longer support adc2 oneshot mode on esp32c3
...
Due to HW limitation, we don't support this anymore. On c3, ADC2 under oneshot mode is not stable.
However, you can enable CONFIG_ADC_ONESHOT_FORCE_USE_ADC2_ON_C3 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 12:07:38 +08:00
morris
a3b040e991
Merge branch 'feature/_spi_slave_reset_trans_queue_api_v5.0' into 'release/v5.0'
...
spi: limit esp32 dma workaround only on esp32(v5.0)
See merge request espressif/esp-idf!21381
2022-12-13 16:29:41 +08:00
morris
e843281c8f
Merge branch 'doc/explain_ledc_callback_return_value_v5.0' into 'release/v5.0'
...
ledc: explain the callback return value (v5.0)
See merge request espressif/esp-idf!20966
2022-12-06 18:08:32 +08:00
Jiang Jiang Jian
77333d2d64
Merge branch 'bugfix/fix_current_leakage_when_hold_digital_io_during_deep_sleep_backport_v5.0' into 'release/v5.0'
...
esp_hw_support/sleep: fix current leakage when hold digital io during deep sleep(backport v5.0)
See merge request espressif/esp-idf!20806
2022-12-05 14:00:59 +08:00
wanlei
ec7265dca4
spi: limit esp32 dma workaround only on esp32
2022-12-05 12:10:45 +08:00
Ivan Grokhotkov
864ca34199
Merge branch 'bugfix/i2c_func_iram_v5.0' into 'release/v5.0'
...
I2C: put some interrupt used functions into IRAM( v5.0)
See merge request espressif/esp-idf!21404
2022-12-05 10:31:33 +08:00
morris
631ba1e88d
Merge branch 'bugfix/fix_slave_gpio_cs_mixed_with_iomux_bus_v5.0' into 'release/v5.0'
...
spi_slave: fix slave can't use iomux bus mixed with gpio cs_pin (v5.0)
See merge request espressif/esp-idf!21374
2022-12-05 10:21:09 +08:00
morris
2dd67ecd05
ledc: explain the callback return value
...
Closes https://github.com/espressif/esp-idf/issues/10093
2022-12-05 02:11:48 +00:00
morris
31ebcad8d6
Merge branch 'contrib/github_pr_7144_v5.0' into 'release/v5.0'
...
Update i2c.c to consider two I2C buses for clear bus counter (GitHub PR) (backport v5.0)
See merge request espressif/esp-idf!20504
2022-12-05 10:11:18 +08:00
morris
75c3a69feb
Merge branch 'docs/fix-typo-touch-pad-esp32s2-esp32s3_v5.0' into 'release/v5.0'
...
docs:fix a typo in touch_sensor.h of esp32s2 and esp32s3 (v5.0)
See merge request espressif/esp-idf!21043
2022-12-02 22:47:33 +08:00
morris
302ecb0764
Merge branch 'doc/pcnt_overflow_compensate_v5.0' into 'release/v5.0'
...
pcnt: support accumulate the count value in the high/low limit event (v5.0)
See merge request espressif/esp-idf!21170
2022-12-02 22:42:50 +08:00
morris
e17b4463c1
Merge branch 'bugfix/legacy_rmt_resource_leak_v5.0' into 'release/v5.0'
...
rmt: fix memory leak in the legacy driver (v5.0)
See merge request espressif/esp-idf!21166
2022-12-02 22:43:05 +08:00
jingli
21c9ec5eee
esp_hw_support/sleep: fix current leakage when hold digital io during deep sleep
2022-12-02 12:24:52 +00:00
Cao Sen Miao
1bd4c6a8cf
I2C: put some interrupt used functions into IRAM,
...
closes https://github.com/espressif/esp-idf/issues/10079
2022-12-02 15:13:51 +08:00
wanlei
12f9170862
spi_slave: fix slave can't use iomux bus mixed with gpio cs_pin
2022-12-01 20:12:58 +08:00
laokaiyao
592a51ae96
i2s: fixed typo 'philip'
...
Closes: https://github.com/espressif/esp-idf/issues/10197
2022-11-22 15:59:51 +08:00
laokaiyao
85661a037f
i2s: fixed tdm mclk doubled issue
...
Closes: https://github.com/espressif/esp-idf/issues/10196
2022-11-22 15:57:33 +08:00
morris
0dbbf7bac5
pcnt: support accumulate count value
...
Closes https://github.com/espressif/esp-idf/issues/10167
2022-11-21 15:17:55 +08:00
morris
0bf7145181
rmt: fix memory leak in the legacy driver
...
Closes https://github.com/espressif/esp-idf/issues/10173
2022-11-21 09:59:58 +08:00
Linda
4a6d51e698
docs:fix a typo in touch_sensor.h of esp32s2 and esp32s3
2022-11-11 17:40:09 +08:00
Adam Múdry
7ca457b519
sdspi: Allow CS line to be set to GPIO_NUM_NC (-1)
...
Closes https://github.com/espressif/esp-idf/issues/7852
2022-11-03 10:12:29 +08:00
Omar Chebib
4ef2ba26f9
I2C: Fix the reset counter
2022-11-03 02:09:44 +00:00
Eckhard Völlm
1ea5682617
Update i2c.c
...
Fix issue with single bus clear counter but two I2C buses (I2C0, I2C1). The previously implemented single (static) counter would impact the second bus either if one bus has counter expiry.
Merges https://github.com/espressif/esp-idf/pull/7144
2022-11-03 02:09:44 +00:00
Martin Vychodil
af81bd1b0a
Storage: Partition APIs moved to the new component 'esp_partition'
...
All the partition handling API functions and data-types were moved from the 'spi_flash' component to the new one named 'esp_partition'. See Storage 5.x migration guide for more details
2022-11-02 21:49:08 +01:00
Jonas Vanthornhout
bc225c8886
Fixed typo
2022-11-01 14:36:44 +08:00
morris
88482af17a
Merge branch 'bugfix/i2s_tx_auto_clear_not_totally_clean_the_buf_v5.0' into 'release/v5.0'
...
i2s: fix tx incomplete auto clear (v5.0)
See merge request espressif/esp-idf!20570
2022-11-01 10:14:54 +08:00
morris
8481fbf752
Merge branch 'bugfix/change_clock_name_v5.0' into 'release/v5.0'
...
mcpwm: fix wrong return value in the legacy MCPWM driver (5.0)
See merge request espressif/esp-idf!20693
2022-10-28 10:02:40 +08:00
morris
e2cac5bf58
mcpwm: update compare value on both tep and tez
...
Closes https://github.com/espressif/esp-idf/issues/9904
2022-10-25 13:20:33 +08:00
morris
acb3b06ed6
twai: remove deprecated code and add hint
...
name "CAN" has been deprecated for a long time, this commit just remove
it from the code base.
Please use "TWAI" driver instead.
2022-10-24 18:39:45 +08:00
morris
0db5909b47
mcpwm: new function to fetch capture resolution
2022-10-21 07:37:36 +00:00
morris
1af428dff3
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-21 07:37:36 +00:00
Armando
46d3627e66
esp_adc: added esp32c2 adc runners
2022-10-21 11:20:41 +08:00
Michael (XIAO Xufeng)
2209831dd2
Merge branch 'feat/sdio_slave_disable_hs_v5.0' into 'release/v5.0'
...
sdio_slave: allow disabling highspeed mode (v5.0)
See merge request espressif/esp-idf!20456
2022-10-14 12:11:14 +08:00
morris
1729c79577
Merge branch 'feature/mcpwm_update_compare_iram_safe_5.0' into 'release/v5.0'
...
mcpwm: make set_compare_value iram safe (5.0)
See merge request espressif/esp-idf!20304
2022-10-14 11:58:55 +08:00
Jiang Jiang Jian
a9cc30e3e2
Merge branch 'bugfix/fix_spi_bus_lock_concurrency_issue_v5.0' into 'release/v5.0'
...
spi_bus_lock: fix a concurrency issue (v5.0)
See merge request espressif/esp-idf!20136
2022-10-14 11:13:51 +08:00
laokaiyao
e302d9a976
i2s: fix tx incomplete auto clear
...
Closes: https://github.com/espressif/esp-idf/issues/9882
2022-10-12 19:42:37 +08:00
morris
e2e97a5a33
mcpwm: allow compare equals to period
2022-10-12 08:41:58 +00:00
morris
54813cc19b
mcpwm: make set_compare_value iram safe
...
Closes https://github.com/espressif/esp-idf/issues/9793
2022-10-12 08:41:58 +00:00
Michael (XIAO Xufeng)
a2de42c096
Merge branch 'test/test_adc_on_dedicated_runners_v5.0' into 'release/v5.0'
...
ci: use adc dedicated test runners (v5.0)
See merge request espressif/esp-idf!20357
2022-10-12 16:32:26 +08:00
morris
3eb3f9f744
Merge branch 'bugfix/rmt_iram_test_random_failure_v5.0' into 'release/v5.0'
...
test: fix rmt iram case random failure (v5.0)
See merge request espressif/esp-idf!20383
2022-10-09 17:59:34 +08:00
Michael (XIAO Xufeng)
1d09c78c17
sdio_slave: allow disabling highspeed mode
2022-10-01 01:53:28 +08:00
Michael (XIAO Xufeng)
c15f5f352c
essl: move from esp-idf component to extra component
2022-09-29 07:39:45 +00:00
morris
eb2f472069
test: fix rmt iram case random failure
2022-09-28 10:52:29 +08:00
Armando
4f8bd12479
esp_adc: added comments to c3 test thresh, also sync to legacy tests
2022-09-27 12:19:36 +08:00
Armando
3ae1c587c0
ci: use adc dedicated test runners for adc tests
2022-09-27 12:19:25 +08:00
Song Ruo Jing
9ffb65f52e
uart: Fix unwanted processing of TX_DONE interrupt immediately after calling uart_wait_tx_done()
...
In previous transmission(s), the TX_DONE interrupt raw bit may be raised, but never been cleared.
TX_DONE interrrupt status bit should be cleared before enabling it to check the new transmission.
Introduced in 4e09d147b11ed8a094b5858642c9f60d658ef656
2022-09-23 15:44:37 +08:00
morris
c4aa24c54e
rmt: disable rc_fast clock when it's used up
2022-09-18 15:52:25 +08:00
morris
70ee85d38b
mcpwm: check sync direction is valid
2022-09-15 19:07:31 +08:00
Jiang Jiang Jian
f8f3eb27c1
Merge branch 'bugfix/touch_sensor_v1_timer_expired_after_deleted_v5.0' into 'release/v5.0'
...
touch_senser: fixed ci issue timer expired after it is deleted (v5.0)
See merge request espressif/esp-idf!19985
2022-09-14 13:58:52 +08:00
Jiang Jiang Jian
393bbbc851
Merge branch 'bugfix/uart_sclk_freq_v5.0' into 'release/v5.0'
...
uart: fixed sclk_freq not init warning when compiling with asserts disabled (v5.0)
See merge request espressif/esp-idf!19870
2022-09-14 13:46:35 +08:00
Armando
64d9852e1f
SPI_BUS_LOCK: fix a concurrency issue
...
define: lock_bits = (lock->status & LOCK_MASK) >> LOCK_SHIFT; This `lock_bits` is the Bit 29-20 of the lock->status
1. spi_hdl_1:
acquire_end_core():
uint32_t status = lock_status_clear(lock, dev_handle->mask & LOCK_MASK);
Becuase this is the first `spi_hdl_1`, so after this , lock_bits == 0`b0. status == 0
2. spi_hdl_2:
acquire_core:
uint32_t status = lock_status_fetch_set(lock, dev_handle->mask & LOCK_MASK);
Then here status is 0`b0, but lock_bits == 0`b10. Because this is the `spi_hdl_2`
3. spi_hdl_2:
`acquire_core` return true, because status == 0. `spi_bus_lock_acquire_start(spi_hdl_2)` then won't block.
4. spi_hdl_2:
spi_device_polling_end(spi_hdl_2).
5. spi_hdl_1:
acquire_end_core:
status is 0, so it cleas the lock->acquiring_dev
6. spi_hdl_2:
spi_device_polling_end:
assert(handle == get_acquiring_dev(host)); Fail
Closes https://github.com/espressif/esp-idf/issues/8179
2022-09-14 12:08:24 +08:00
laokaiyao
434966f7b1
touch_sensor: add esp_timer error check
2022-09-14 02:40:32 +00:00
laokaiyao
b333c1a9f1
touch_sensor: fixed timer period
2022-09-14 02:40:32 +00:00
laokaiyao
0401aedd0c
touch_senser: fixed ci issue timer expired after it is deleted
2022-09-14 02:40:32 +00:00
Michael (XIAO Xufeng)
eea8629fa1
Merge branch 'bugfix/fix_gpio_intr_lost_v5.0' into 'release/v5.0'
...
gpio: Fix interrupt lost issue (backport v5.0)
See merge request espressif/esp-idf!19935
2022-09-09 15:05:50 +08:00
morris
43b1c0c875
Merge branch 'bugfix/fix_the_duplicated_type_name_in_i2s_v5.0' into 'release/v5.0'
...
i2s: fix the duplicated type name in i2s (v5.0)
See merge request espressif/esp-idf!19999
2022-09-08 15:11:52 +08:00
Song Ruo Jing
3017b65d4d
gpio: Fix interrupt lost issue
...
In previous gpio default isr, interrupt status bits get cleared at the exit of the isr.
However, for edge-triggered interrupt type, the interrupt status bit should be cleared before entering the per-pin handlers to avoid any potential interrupt lost.
Closes https://github.com/espressif/esp-idf/pull/6853
2022-09-08 11:52:25 +08:00
laokaiyao
d836d8cf35
i2s: add notes for the read task of i2s basic examples
2022-09-07 11:03:26 +08:00
laokaiyao
0f0baa5bb4
i2s: fixed the duplicated type name
2022-09-07 11:03:26 +08:00
Marius Vikhammer
a43850ca17
uart: fixed sclk_freq not init warning when compiling with asserts disabled
...
Closes https://github.com/espressif/esp-idf/issues/9642
2022-09-02 06:15:20 +00:00
morris
47bf0ef212
mcpwm: fix multiplication overflow in converting us to compare ticks
...
Closes https://github.com/espressif/esp-idf/issues/9648
2022-09-01 10:48:20 +08:00
morris
9747c3a8d6
legacy_timer: propagate isr register failure
...
Closes https://github.com/espressif/esp-idf/issues/9651
2022-09-01 10:48:08 +08:00
morris
02bedfac62
Merge branch 'bugfix/driver_rs485_fix_test_sync_issues_v50' into 'release/v5.0'
...
driver: uart rs485 fix test sync issues and fail threshold (backport v5.0)
See merge request espressif/esp-idf!19603
2022-09-01 10:07:11 +08:00