Commit Graph

1989 Commits

Author SHA1 Message Date
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
Alex Lisitsyn
9bb565b85c driver: uart rs485 fix test sync issues and fail threshold (backport v5.0) 2022-09-01 10:07:11 +08:00
Armando
0b58bbd29b esp_adc: migrate adc wifi test to test app 2022-08-29 12:33:16 +08:00
Michael (XIAO Xufeng)
69be7c4cc2 Merge branch 'feat/support_esp32c2_uart_v5.0' into 'release/v5.0'
uart: update console docs about frequency for ESP32-C2, move frequency of clock sources out of HAL (v5.0)

See merge request espressif/esp-idf!19690
2022-08-25 02:03:26 +08:00
songruojing
343acd7f88 gpio: fix USB D+ pin cannot disable pullup
Internally, disable usb serial jtag DP pin's pullup when calling gpio_ll_pullup_dis and rtcio_ll_pullup_disable
At usb serial jtag setup/install, re-enable DP pin's pullup

Closes https://github.com/espressif/esp-idf/issues/9495
2022-08-22 22:03:25 +08:00
Song Ruo Jing
26a4803048 ledc: Fix the usage of ledc_ls_timer_update and ledc_timer_rst
ledc_ls_timer_update is required only when CLK_DIV and DUTY_RES bits are changed.
Calling ledc_timer_rst while re-configure PWM frequency through ledc_set_freq can cause glitch in the signal
2022-08-22 22:02:15 +08:00
songruojing
280a241792 pm: update pm test cases to support esp32c2 2022-08-22 21:56:10 +08:00
Michael (XIAO Xufeng)
6ed15178b6 uart: move frequency of clock sources out of HAL 2022-08-22 14:28:12 +08:00
morris
50ff1b0efd mcpwm: don't use keyword operator
Closes https://github.com/espressif/esp-idf/issues/9510
2022-08-18 10:59:42 +08:00
morris
d8c2f67d63 mcpwm: added enable/disable functions
Closes https://github.com/espressif/esp-idf/pull/9523
2022-08-18 10:57:13 +08:00
morris
5020fbce1c driver: add doc on how to unregister event callbacks
Closes https://github.com/espressif/esp-idf/pull/9523
2022-08-18 10:57:13 +08:00
morris
4701d95052 driver: specify the interrupt priority
Closes https://github.com/espressif/esp-idf/issues/9520
2022-08-18 10:57:13 +08:00
morris
6820c9decc rmt: add iram safe test
Closes https://github.com/espressif/esp-idf/issues/9487
2022-08-18 10:57:13 +08:00
morris
88ee33bf4c unity_utils: added helper function to disable cache and run user function 2022-08-18 10:57:12 +08:00
morris
998451c60a driver: remove -Wno-format flag 2022-08-18 10:57:12 +08:00
laokaiyao
18356cd124 i2s: fixed duplicated test case name 2022-08-12 14:57:54 +08:00
jingli
8cd7c30bc7 kconfig: refactor xtal freq kconfig to common configuration item 2022-08-08 13:53:02 +08:00
Ivan Grokhotkov
401c10ecfb build system: re-add -Wno-format as private flag for some components 2022-08-03 16:42:47 +04:00
Alex Lisitsyn
f352469cd3 Merge branch 'bugfix/uart_fails_1M_baud_rate' into 'master'
driver: check UART physical communication on 1M baudrate

Closes IDFGH-7366

See merge request espressif/esp-idf!18211
2022-08-03 19:50:09 +08:00
Alex Lisitsyn
76a084caa3 driver: check UART physical communication on 1M baudrate 2022-08-03 19:50:09 +08:00
Kevin (Lao Kaiyao)
762da7e5ba Merge branch 'bugfix/fix_legacy_i2s_clock_test_failure' into 'master'
i2s_legacy_test: fix the clock test failure

Closes IDFCI-1402 and IDFCI-1408

See merge request espressif/esp-idf!19319
2022-08-03 17:13:43 +08:00
morris
307d26659e Merge branch 'bugfix/rmt_hw_issue' into 'master'
rmt: only use register to control the IDLE state (hardware issue workaround)

See merge request espressif/esp-idf!19344
2022-08-03 17:01:44 +08:00
Armando (Dou Yiwen)
df1c54d6fc Merge branch 'ci/raise_c3_adc_high_low_test_threshold' into 'master'
ci: raise legacy adc high/low test low thresh on ESP32C3

See merge request espressif/esp-idf!19356
2022-08-03 15:21:45 +08:00
laokaiyao
4c446222e1 i2s_test: fix mono stereo test 2022-08-03 13:14:48 +08:00
laokaiyao
a32a89b002 i2s_legacy_test: fix the clock test issue 2022-08-03 13:14:48 +08:00
Armando
50229cfe06 ci: raise legacy adc high/low test low thresh 2022-08-03 11:28:52 +08:00
morris
8de9fd8cd7 rmt: only use register to control IDLE state
hardware issue: we can't control the IDLE level by the stop item
when loop transmission is enabled.
But we can always control the IDLE state by register.
2022-08-03 10:51:43 +08:00
morris
480f80868a mcpwm: test iram safe interrupt 2022-08-02 23:07:06 +08:00
morris
a5a171926b rmt: add test with -O0 2022-08-02 23:07:06 +08:00
morris
031adc01c4 gpio: add test with -O0 2022-08-02 23:07:06 +08:00
morris
ca175857d1 pcnt: add test with -O0 2022-08-02 23:07:06 +08:00
morris
8987164385 i2s: add test with -O0 2022-08-02 23:07:06 +08:00
morris
7faf1bee73 gptimer: add test with -O0 2022-08-02 22:53:36 +08:00
Jiang Jiang Jian
b885499c74 Merge branch 'refactor/move_common_adc_part_to_hw_support' into 'master'
esp_adc: move esp_adc out of g1 dependency list

Closes IDF-5637

See merge request espressif/esp-idf!19159
2022-08-01 15:39:45 +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
jingli
7211b0a89a esp_hw_support/sleep: fix cannot pd cpu and rc fast at the same time during light sleep
Since cpu retention dma use rc fast as clk source, so rc_fast_digi
will be enabled when we config to pd cpu. And cpu retention does not
need rc fast keep on during light sleep. So, if we use rc_fast_digi
to determine whether rc fast can be powered down, then cpu and and
rc fast cannot pd at the same time.
2022-07-28 11:10:58 +08:00
morris
96c29841bb Merge branch 'feature/mcpwm_new_driver' into 'master'
 MCPWM Driver-NG

Closes IDF-2471, IDF-2895, IDF-20, and IDF-3945

See merge request espressif/esp-idf!11480
2022-07-27 19:25:06 +08:00
morris
1571417679 mcpwm: new driver implementation 2022-07-27 15:22:24 +08:00
morris
fd3a1ffc21 mcpwm: deprecate legacy driver 2022-07-27 15:08:58 +08:00
Armando
0e6c8aef19 esp_adc: increase adc continuous iram test time overhead a bit
Prior to this commit, overhead is 0us on esp32s2, s3, c3, c2. However
when the conv_done event happens, software takes some time to do
necessary operations.
2022-07-26 18:19:14 +08:00
Fu Hanxi
585e0431c7 Merge branch 'test/spi_param_redund_desc' into 'master'
test_spi: fixed redundant quotes in test descriptions

See merge request espressif/esp-idf!19140
2022-07-23 02:22:58 +08: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
c4e84751a5 driver: fix public header exceptions for driver 2022-07-22 00:12:36 +00:00
morris
9a921ada7f rmt: const callback event data 2022-07-22 00:12:36 +00:00
morris
741b031e83 soc: added SOC_TOUCH_SENSE_SUPPORTED macro 2022-07-22 00:12:36 +00:00
Guillaume Souchere
6005cc9163 hal: Deprecate interrupt_controller_hal.h, cpu_hal.h and cpu_ll.h interfaces
This commit marks all functions in interrupt_controller_hal.h, cpu_ll.h and cpu_hal.h as deprecated.
Users should use functions from esp_cpu.h instead.
2022-07-22 00:06:06 +08: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
David Čermák
36f49f361c Merge branch 'bugfix/esp_netif_clean_deps_lwip' into 'master'
esp-netif/lw-ip: Make dependencies one-directional

Closes IDF-4459, IDF-4460, IDF-1099, and IDFGH-6287

See merge request espressif/esp-idf!18084
2022-07-21 20:18:05 +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
92ea22fe81 i2s: support esp32h2 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
wangyuanze
ab0c4abd6e rmt: add open-drain flag on tx channel 2022-07-20 14:12:43 +00:00
David Cermak
5c383d7b73 esp_netif/lwip: Fix deps cycles to "lwip -> esp_netif -> phy-drivers"
Fix dependency tree so that lwip doesn't depend on any specific network
interface component.
Network interface drivers shall depend on esp_netif.
esp_netif shall depend on lwip (but not on any specific interface
driver) -- it optionally depends on vfs and esp_eth (need ethernet
header for L2/bridge mode)
2022-07-20 14:59:07 +02:00
Armando
638f39ff40 adc: fix legacy oneshot driver clock gating issue on c3 and c2 2022-07-20 16:35:59 +08:00
Michael (XIAO Xufeng)
5d24a207b6 test_spi: fixed redundant quotes in test descriptions 2022-07-20 15:36:10 +08:00
morris
edb5600348 sdm: refactor example with new driver 2022-07-20 14:59:50 +08:00
morris
f33428f2e5 sdm: added channel allocator for sigma delta module 2022-07-20 14:59:50 +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
morris
9e532696f4 pcnt: add const qualifier to event data 2022-07-20 14:59:50 +08:00
morris
bec44ca2e9 gptimer: test on c2 with xtal 26mhz 2022-07-20 04:40:28 +00:00
Marius Vikhammer
1315f85e01 docs: fixed misc broken links 2022-07-20 09:43:52 +08:00
Armando (Dou Yiwen)
9f6f61345b Merge branch 'feature/adc_driver_ng' into 'master'
ADC Driver NG

Closes IDF-4560, IDF-3908, IDF-4225, IDF-2482, IDF-4111, IDF-3610, IDF-4058, IDF-3801, IDF-3636, IDF-2537, IDF-4310, IDF-5150, IDF-5151, and IDF-4979

See merge request espressif/esp-idf!17960
2022-07-19 21:28:31 +08:00
Cao Sen Miao
53580a62b5 I2C: Fullfill the I2C clock tree, and support 26M XTAL on ESP32-C2 2022-07-19 11:41:42 +08:00
Armando
5b523a3313 esp_adc: new esp_adc component and adc drivers 2022-07-15 18:31:00 +08:00
Wang Yuan Ze
b666bdb01e Merge branch 'example/fix_ir_nec_transceiver_issue' into 'master'
example: Fix rmt callback memory issue in ir_nec_transceiver

See merge request espressif/esp-idf!19040
2022-07-15 11:39:36 +08:00
wangyuanze
61f19094b0 example: fix rmt callback memory issue in ir_nec_transceiver 2022-07-14 18:59:38 +08:00
Fu Hanxi
c0568611dd docs: changes docs supported targets tables 2022-07-14 08:26:32 +08:00
Fu Hanxi
05d2357062 feat: use standalone project idf-build-apps for find/build apps utils 2022-07-14 08:26:31 +08:00
Fu Hanxi
1129bd7587 test: increase test gpio time timeout 2022-07-14 08:26:01 +08:00
Marius Vikhammer
f463c42791 Merge branch 'bugfix/ringbuf_iram_fix' into 'master'
esp_ringbuf: placement in flash is no longer controlled by...

Closes IDFGH-7646

See merge request espressif/esp-idf!18774
2022-07-12 09:56:25 +08:00
Marius Vikhammer
6cc871d793 Merge branch 'feature/ulp_riscv_adc' into 'master'
ulp-riscv: add support for using ADC as well as an example show-casing it.

Closes IDFGH-7564 and IDF-1714

See merge request espressif/esp-idf!18767
2022-07-11 12:30:31 +08:00
Marius Vikhammer
e8b5096f52 ulp-riscv: add support for using ADC as well as an example show-casing it. 2022-07-11 09:31:22 +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
morris
a92cce9861 Merge branch 'bugfix/calib_i2c_clk' into 'master'
I2C: Make I2C clock frequency accurate

Closes IDF-5363

See merge request espressif/esp-idf!18686
2022-07-06 20:52:31 +08:00
Cao Sen Miao
e218723e0e I2C: Make I2C clock frequency accurate 2022-07-06 11:58:08 +08:00
songruojing
9d73475e44 uart: Add a new API to get the free space size of tx buffer
Closes https://github.com/espressif/esp-idf/issues/8932

Closes https://github.com/espressif/esp-idf/issues/3078
2022-07-05 18:39:22 +08:00
Cao Sen Miao
a690a87829 spi_flash: Remove legacy spi_flash drivers 2022-07-01 11:01:34 +08:00
Zhang Xiao Yan
be4d13d888 Merge branch 'docs/add_chiptype_link_gpio' into 'master'
docs: Add chip target and link to gpio.h

Closes DOC-3169

See merge request espressif/esp-idf!18623
2022-06-30 17:12:04 +08:00
Kevin (Lao Kaiyao)
47266d7736 Merge branch 'refactor/add_description_to_touch_pad_set_meas_time' into 'master'
touch_sensor: add description to distinguish the API on different target

Closes IDFGH-7499

See merge request espressif/esp-idf!18341
2022-06-28 20:00:02 +08:00
morris
602e154c12 Merge branch 'refactor/move_gdma_to_hw_support' into 'master'
dma: move from driver to hw_support

See merge request espressif/esp-idf!18706
2022-06-28 15:57:56 +08:00
morris
7fd9a91034 dma: move from driver to hw_support 2022-06-28 14:17:12 +08:00
laokaiyao
d5e55e0563 touch_sensor: add description to distinguish the API on different target
Closes https://github.com/espressif/esp-idf/issues/9067
2022-06-28 02:20:43 +00:00
Armando
f31d88e3fe spi: move spi_common_internal to esp_private 2022-06-24 19:12:13 +08:00
Linda
ca7138e653 docs:add chiptype and link to gpio.h 2022-06-24 17:13:15 +08:00
Sudeep Mohanty
2c7b4cf8d5 Merge branch 'bugfix/fix_legacy_pcnt_driver_test_with_freertos_smp' into 'master'
freertos-smp: Fix legacy_pcnt_driver for FreeRTOS SMP config

Closes IDF-5274

See merge request espressif/esp-idf!18631
2022-06-23 20:19:08 +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
Sudeep Mohanty
755789113b freertos-smp: Fix legacy_pcnt_driver for FreeRTOS SMP config
This commit increases the memory leak threshold for legacy_pcnt_driver
test from 300 bytes to 400 bytes. The test fails due to a breach of the
threshold value by 8 bytes.
2022-06-22 13:19:34 +02: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
Jakob Hasse
d7cceabbb4 Merge branch 'feature/upgrade_c_cxx_standards' into 'master'
build system: use C17 and C++2a by default

Closes IDF-1499, IDFGH-1788, IDFGH-2781, and IDFGH-7617

See merge request espressif/esp-idf!18371
2022-06-20 12:24:08 +08:00
morris
06eb494a61 pcnt: support set the level of virtual IO 2022-06-18 15:00:37 +08:00
Ivan Grokhotkov
a2ca5d03c5
examples, components: remove C/C++ standard overrides
...where they are not necessary after switching to C17 and C++20.
2022-06-17 16:44:17 +02:00
Michael (XIAO Xufeng)
7c7d53813c Merge branch 'feat/revert_touch_s3' into 'master'
touch: Added support for using touch in sleep modes back on ESP32-S3

Closes IDF-5041

See merge request espressif/esp-idf!18421
2022-06-15 16:11:50 +08:00
Kevin (Lao Kaiyao)
bb30edf35a Merge branch 'refactor/i2s_driver_rewrite' into 'master'
🔨 i2s: i2s driver-NG

Closes IDF-3714 and IDF-4592

See merge request espressif/esp-idf!15175
2022-06-15 14:22:58 +08:00
morris
d421f26562 Merge branch 'bugfix/update_gpio_intr_enable_note' into 'master'
Update the note of the gpio_intr_enable function

See merge request espressif/esp-idf!18488
2022-06-15 11:16:58 +08:00
Armando (Dou Yiwen)
1b63128237 Merge branch 'contrib/github_pr_9133' into 'master'
driver(spi): fix flag check in bus initialization (GitHub PR)

Closes IDFGH-7574

See merge request espressif/esp-idf!18462
2022-06-15 10:59:42 +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
Darian
e213e66ba3 Merge branch 'refactor/esp_hw_support_cpu' into 'master'
esp_hw_support: Add new esp_cpu.h abstraction

Closes IDF-4769

See merge request espressif/esp-idf!17091
2022-06-14 21:11:30 +08:00
morris
919344547b Merge branch 'bugfix/rmt_register_file_s3' into 'master'
rmt: update register file after fixing csv of RMT peripheral (esp32s2/s3)

Closes IDFGH-7537

See merge request espressif/esp-idf!18392
2022-06-14 18:24:28 +08:00
Darian Leung
149872131a hal: Move dedicated GPIO LL and HAL
This commit moves the dedicated GPIO LL and HAL functions from
cpu_ll.h to dedic_gpio_cpu_ll.h.

- cpu_ll_enable_cycle_count() has also been removed due to lack of feasible usage scenarios
2022-06-14 14:38:29 +08:00
xiongweichao
82730166aa Update the note of the gpio_intr_enable function 2022-06-14 10:44:02 +08:00
Marius Vikhammer
e18f381905 HAL: fix kconfig HAL_ASSERTION typo 2022-06-13 16:19:28 +08:00
Matus Fabo
384d61f156 remove: sdspi_host deprecated api
add: migration guide documentation
2022-06-12 20:07:27 +00:00
Michael (XIAO Xufeng)
f522865462 Revert "touch: add protection for touch sleep case"
This reverts commit 974ac3b4b8.
2022-06-13 01:51:15 +08:00
Michael (XIAO Xufeng)
069ef38ff6 Revert "touch_sensor: forbid from using touch sensor with sleep on ESP32-S3"
This reverts commit a84faa3cef.
2022-06-13 01:51:12 +08:00
morris
4094f13fd3 rmt: fix error in rmt register file
Closes https://github.com/espressif/esp-idf/issues/9100
2022-06-10 18:38:42 +08:00
Martin Vychodil
16a4ee7c36 Merge branch 'bugfix/spi_mode_status_check' into 'master'
sdmmc, sdspi: fixes related to status checks, R1b response support, erase fix for SPI mode, fix for erase timeout calculation

Closes IDF-4728

See merge request espressif/esp-idf!17727
2022-06-10 13:15:47 +08:00
morris
5daa73d236 Merge branch 'refactor/mcpwm_hal_driver_doc' into 'master'
mcpwm: don't support disable carrier one-shot pulse

Closes IDFGH-7406

See merge request espressif/esp-idf!18295
2022-06-10 10:28:59 +08:00
Yannis Huber
3397cf465d driver(spi): fix flag check in bus initialization
The current flag check in the SPI bus initialization is wrong and
causes exceptions when using certain SPI hosts in quad transfert mode.
2022-06-09 17:20:30 +02:00
Michael (XIAO Xufeng)
773715d900 Merge branch 'feature/support_refresh_brownout_v1' into 'master'
spi_flash: send reset when brownout detected on XMC flash

Closes IDF-3882

See merge request espressif/esp-idf!16873
2022-06-06 16:27:58 +08:00
morris
3247335770 mcpwm: don't support disable carrier first pulse
The first pulse of MCPWM carrier can not be disabled, this commit will
remove the feature.

Closes https://github.com/espressif/esp-idf/issues/8984
2022-06-02 15:01:18 +08:00
morris
a12936dca9 mcpwm: rename MCPWM_ISR_IN_IRAM to MCPWM_ISR_IRAM_SAFE 2022-06-02 15:01:18 +08:00
morris
f7ff7ac4d0 mcpwm: clean up hal driver and add doc 2022-06-02 15:01:18 +08:00
Michael (XIAO Xufeng)
6a8aed12ee ci: partially enable ut tests for esp32c2
Disabled test cases are tracked in:

 IDF-4465, IDF-5045, IDF-5057, IDF-5058, IDF-5059, IDF-5060, IDF-5061, IDF-5131

- test_fatfs: IDF-5136

- test_pm: IDF-5053

- test_cache_mmu: IDF-5138

- test_partitions: IDF-5137

- test_vfs: IDF-5139

- test_freertos: IDF-5140

- test_wpa_supplicant: IDF-5046

- test_mbedtls: IDF-5141

- test_pthread: IDF-5142

- test_protocomm: IDF-5143

- test_lightsleep: IDF-5053

- test_taskwdt: IDF-5055

- test_tcp_transport: IDF-5144

- test_app_update: IDF-5145

- test_timer: IDF-5052

- test_spi: IDF-5146

- test_rtc_clk: IDF-5060

- test_heap: IDF-5167

ci: fixed issues for tests of libgcc, ets_timer, newlib

test_pm: support on C2
2022-06-02 14:23:35 +08:00
morris
17a688749a timer: disable nano printf for gptimer examples
because we need to use %llu to print the timer count value, but nano
printf doesn't known that format
2022-06-02 11:08:59 +08:00
morris
4b26a5d340 legacy_timer: fix converting count value into time second 2022-06-02 11:08:59 +08:00
Cao Sen Miao
895a3e1bb2 esp_intr: Split RTC interrupt, making some of signals can be triggered with cache disabled 2022-06-02 10:38:55 +08:00
Djordje Nedic
facab8c5a7 tools: Increase the minimal supported CMake version to 3.16
This updates the minimal supported version of CMake to 3.16, which in turn enables us to use more CMake features and have a cleaner build system.
This is the version that provides most new features and also the one we use in our latest docker image for CI.
2022-06-01 06:35:02 +00:00
Ivan Grokhotkov
79659e3096
sdmmc: better calculation of erase timeout
Previous version of the code used a fixed constant (500 ms) for the
erase timeout and added 1 ms for each sector erased.
This commit improves timeouts calculation:
- For SD cards, check if erase timeout information is present in the
  SSR register. If yes, use it for erase timeout calculation.
  Otherwise assume 250ms per erase block, same as Linux does.
- For eMMC assume 250ms per erase block (but no less than 1 second).
  This has to be improved later to use the erase timeout info in the
  extended CSD register.
2022-05-30 15:39:02 +02:00
Ivan Grokhotkov
3ad98984e9
driver: sdspi: add support for R1b response
Same as R1 but with busy indication polling
2022-05-30 15:39:01 +02:00
Ivan Grokhotkov
f1e3536f3c
driver: sdspi: fix decoding of R2 response 2022-05-30 15:39:00 +02:00
Ivan Grokhotkov
17b7981e2e
driver: sdmmc: add SPI mode R2 response definitions 2022-05-30 15:39:00 +02:00
Anton Maklakov
b0369aa898 test, spi: randr_r() expects unsigned int * type 2022-05-30 12:58:57 +07:00
Tomas Rezucha
3b7018923e Merge branch 'docs/i2c_thread_safety' into 'master'
docs: Fix I2C thread-safety

Closes IDF-5034

See merge request espressif/esp-idf!18172
2022-05-27 08:24:13 +08:00
Song Ruo Jing
cf32e49aeb Merge branch 'refactor/cleanup_rtc_h' into 'master'
clk_tree: Prework2 of introducing clock subsystem control

Closes IDF-4934

See merge request espressif/esp-idf!17861
2022-05-26 09:16:47 +08:00
Tomas Rezucha
b6771b7f83 docs: Fix I2C thread-safety 2022-05-25 07:22:02 +00:00
songruojing
a5b09cf015 rtc_clk: Clean up some clock related enum and macro in soc/rtc.h, replace with new ones in
soc/clk_tree_defs.h
2022-05-24 22:59:41 +08:00
Kevin (Lao Kaiyao)
94d7ae03da Merge branch 'bugfix/i2s_write_timeout_when_setting_clock' into 'master'
i2s: fixed write timeout while setting the clock

Closes IDFGH-7273 and IDFGH-7261

See merge request espressif/esp-idf!18201
2022-05-24 10:01:12 +08:00
Marius Vikhammer
0687daf2c8 kconfig: move remaining kconfig options out of target component
The kconfig options are moved to the component where they are used,
mostly esp_hw_support and esp_system.
2022-05-23 17:57:45 +08:00
laokaiyao
f523fbc73b i2s: Fixed divide 0 issue while setting PDM down sampling issue
Closes https://www.github.com/espressif/esp-idf/issues/8850
2022-05-23 16:28:42 +08:00
laokaiyao
f36ae3f603 i2s: fixed write timeout while setting the clock 2022-05-23 16:28:37 +08:00
Omar Chebib
872a4311f2 I2C: Fix a bug making the I2C task wait too long on an event
The I2C ISR will now notify the task waiting on an event. Thus, the task can stop waiting on the event queue as soon as possible.
2022-05-23 02:02:00 +00: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
Marius Vikhammer
c8617fe965 docs: fix all doxygen warnings
Doxygen warnings would previously not result in a failed pipeline.
Fixed this as well as all current warnings.
2022-05-12 14:50:03 +08:00
morris
24f5fecef0 hal: use ROM implementation for systimer and wdt on esp32c2 2022-05-12 05:18:57 +00:00
morris
df5872b3a4 Merge branch 'feature/support_i2c_on_esp32h2' into 'master'
i2c: support i2c on esp32h2

Closes IDF-4155

See merge request espressif/esp-idf!17798
2022-05-10 22:48:05 +08:00
morris
c49e99f9e7 uart: use clk_tree API to acquire FAST_RC clock 2022-05-09 11:26:30 +08:00
morris
722fde218d uart: add default source clock for all targets 2022-05-09 11:26:30 +08:00
morris
660ff8e840 rmt: declare RMTMEM as a block of memory 2022-05-09 11:26:30 +08:00
Armando (Dou Yiwen)
03aeac1dde Merge branch 'refactor/adc_hal_common_layer' into 'master'
adc: create common adc hal layer

See merge request espressif/esp-idf!17577
2022-05-08 15:45:56 +08:00
Armando
49747bb486 adc: create common adc hal layer 2022-05-07 19:20:44 +08:00
morris
c5cd86ae8b test_utils: migrate to use new rmt driver 2022-05-07 10:34:50 +00: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
3a5fdfe35a temp_sensor: added enable/disable functions
The previous start/stop functions have been rename to enable/disable.
2022-05-06 18:18:39 +08:00
morris
d67888b92b pcnt: added enable/disable functions 2022-05-06 18:18:39 +08:00
morris
e7295c3577 gptimer: added enable/disable functions 2022-05-06 18:18:39 +08:00
Simon
0b00831703 Merge branch 'bugfix/i2c_timeout_issue' into 'master'
I2C: Patch for solving watchdog timeout issue

Closes IDFGH-6923, IDFGH-6463, and IDFGH-5558

See merge request espressif/esp-idf!17956
2022-05-06 10:38:38 +08:00
Cao Sen Miao
9a9f10e4c9 I2C: patch for solving watchdog timeout issue 2022-05-05 14:36:49 +08:00
morris
595df1d3fa Merge branch 'refactor/move_rtc_ctrl_to_esp_hw_support' into 'master'
hw_support: move rtc_ctrl from driver to hw_support

See merge request espressif/esp-idf!17963
2022-05-05 11:57:31 +08:00
morris
9ab4abfb46 hw_support: move rtc_ctrl from driver to hw_support 2022-04-29 14:28:09 +08:00
Vamshi Gajjela
f116228cd6 Add high speed mode switch validation check for MMC. 2022-04-28 15:23:21 +02:00
Omar Chebib
5bd4decad1 I2C: Read transactions, without a STOP, won't panic anymore
* Closes https://github.com/espressif/esp-idf/issues/8548
2022-04-27 03:55:19 +00:00
Simon
e4d85807ea Merge branch 'feature/spi_flash_esp8684_support' into 'master'
spi_flash: refactor spi_flash clock configuration logic and support esp32c2

Closes IDF-4474, IDF-4025, and IDF-4066

See merge request espressif/esp-idf!16602
2022-04-27 11:05:45 +08:00
Ivan Grokhotkov
3175e472ba Merge branch 'bugfix/freertos_esp_timer_deps' into 'master'
esp_timer: remove from freertos public requirements

See merge request espressif/esp-idf!17818
2022-04-27 04:13:25 +08:00
Alex Lisitsyn
09c1fbae4a Merge branch 'bugfix/driver_uart_fix_tx_bytes_rts_assert_failure' into 'master'
driver: uart fix send bytes in RS485 mode rts assert failure

See merge request espressif/esp-idf!14583
2022-04-26 21:48:07 +08:00
Alex Lisitsyn
fe41cc13f8 driver: uart fix send bytes in RS485 mode rts assert failure 2022-04-26 21:48:07 +08:00
Cao Sen Miao
4418a855ba spi_flash: refactor the spi_flash clock configuration, and add support for esp32c2 2022-04-26 15:22:37 +08:00
Ivan Grokhotkov
708e99497b
global: add dependency on esp_timer component and include esp_timer.h
Some components were including esp_timer.h without declaring a
dependency on esp_timer component. This used to work due to a
transitive public dependency on esp_timer from freertos component.
Add explicit dependencies where needed.
Also some source files were using esp_timer functions without
including the header file. This used to work because esp_timer.h was
included from freertos port header file. This commit adds esp_timer.h
includes where needed.
2022-04-25 18:39:23 +02:00
morris
080953ce02 Merge branch 'contrib/github_pr_8812' into 'master'
usb_serial_jtag: make CONFIG_DEFAULT initializer match order of structure definition (GitHub PR)

Closes IDFGH-7218

See merge request espressif/esp-idf!17886
2022-04-25 18:54:55 +08:00