Commit Graph

2125 Commits

Author SHA1 Message Date
Jakob Hasse
56acd2ee03 Merge branch 'feature/uart_new_critical_section_api' into 'master'
driver: added new critical section API to UART driver

See merge request espressif/esp-idf!19678
2022-11-30 19:53:44 +08:00
tgotic
36fcb4b3a1 SPI fix DMA rxbuf size calculation
(x+31)/8 doesn't round to 4 bytes (32 bits), e.g. (16+31)/8=47/8=5,
where ((x+31)/32)*4 does round to 4 bytes: (16+31)/32=(47/32)*4=1*4=4
2022-11-30 11:46:18 +08:00
Song Ruo Jing
56302544f6 Merge branch 'ci/enable_esp32c6_target_test_stage' into 'master'
CI: Enable esp32c6 target test stage

Closes IDF-5830 and IDF-5831

See merge request espressif/esp-idf!21010
2022-11-29 19:54:05 +08:00
Song Ruo Jing
1575b9e43a ci: Disable all currently failed target tests for esp32c6 2022-11-28 12:09:08 +08:00
Song Ruo Jing
7466ddfa8c ci: Make consistence between pytest_*.py and .build-test-rules.yml for esp32c6 (i.e. to pass check_test_scripts_build_test_rules.py) 2022-11-28 11:58:30 +08:00
Song Ruo Jing
e13a4ad963 ci: Disable some unit-test-apps for esp32c6 to pass ci build stage 2022-11-28 11:58:30 +08:00
laokaiyao
502495dec1 i2s_test: update multi dev pytest script 2022-11-28 11:10:22 +08:00
Jakob Hasse
fd04374aa5 feat (driver) added new critical section API to UART driver 2022-11-25 18:11:35 +01:00
laokaiyao
888ca08cb2 uart: support examples and tests on esp32c6 2022-11-24 16:07:24 +08:00
Alexey Gerenkov
8c2ae2f9bd Merge branch 'feature/universal_clang_toolchain_support' into 'master'
build: Adds support for universal Clang toolchain

Closes LLVM-79

See merge request espressif/esp-idf!20090
2022-11-24 03:09:46 +08:00
Alexey Gerenkov
47c2c13de5 build: Adds support for universal Clang toolchain 2022-11-23 13:25:16 +03:00
morris
4186bd041c gptimer: added etm example 2022-11-23 15:32:34 +08:00
morris
00b6ec28b2 gptimer: support etm event and task 2022-11-23 15:31:33 +08:00
morris
494516d5f3 gpio: support etm extension 2022-11-23 15:31:33 +08:00
Omar Chebib
7baa63cbc2 Merge branch 'staging/asm_dedic_gpio_example' into 'master'
Dedicated/Fast GPIO: add examples implementing software I2C, UART and SPI on RISC-V targets

Closes IDF-5936

See merge request espressif/esp-idf!20921
2022-11-23 14:19:01 +08:00
Cao Sen Miao
fb9d0d9f03 temperature_sensor: Add support on ESP32-C6 (No calibration) 2022-11-22 16:22:31 +08:00
Kevin (Lao Kaiyao)
4867928160 Merge branch 'bugfix/i2s_tdm_doubled_mclk' into 'master'
i2s: fixed double mclk in tdm mode

Closes IDFGH-8764 and IDFGH-8763

See merge request espressif/esp-idf!21138
2022-11-22 15:41:16 +08:00
Omar Chebib
623bffaab8 Dedicated GPIO: add examples implementing software I2C, UART and SPI on RISC-V targets.
Use dedicated GPIOs in examples to show how to emulate a UART, I2C and SPI bus.
(Using assembly and C)
2022-11-22 14:17:40 +08:00
Wan Lei
65c0b2b81a Merge branch 'feature/c6_spi_master_driver_support' into 'master'
esp32c6: support spi master & slave driver

Closes IDF-5335 and IDF-5336

See merge request espressif/esp-idf!20877
2022-11-22 12:29:25 +08:00
Michael (XIAO Xufeng)
439a709c42 Merge branch 'feat/esp32s3_essl_sdmmc_host' into 'master'
essl: add support for ESP32-S3 SDMMC host

See merge request espressif/esp-idf!19325
2022-11-22 11:18:32 +08:00
laokaiyao
039af72058 i2s: fixed typo 'philip'
Closes: https://github.com/espressif/esp-idf/issues/10197
2022-11-21 15:58:06 +08:00
laokaiyao
22531d2a9f i2s: fixed tdm mclk doubled issue
Closes: https://github.com/espressif/esp-idf/issues/10196
2022-11-21 15:53:54 +08:00
Michael (XIAO Xufeng)
720b86a886 example/sdio: add support for ESP32-S3 as host (via SD) 2022-11-21 14:03:41 +08:00
morris
5bd99deb48 pcnt: support accumulate count value
Closes https://github.com/espressif/esp-idf/issues/10167
2022-11-21 10:15:19 +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
wanlei
3aeedc2ad3 spi: bringup c6 spi master & slave driver support 2022-11-18 15:54:14 +08:00
laokaiyao
3b4ec64f26 i2s: support on esp32c6 2022-11-17 11:04:39 +08:00
wanlei
ee4f4ac3e0 test: move sdio unit-test to test_apps 2022-11-16 11:22:31 +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
Wan Lei
602884e668 Merge branch 'feature/_spi_slave_reset_trans_queue_api' into 'master'
spi_slave: add a private API to reset transaction queue

Closes IDF-5033

See merge request espressif/esp-idf!20825
2022-11-15 10:45:53 +08:00
Armando
ea0b839302 spi: limit esp32 dma workaround only on esp32 2022-11-14 16:01:48 +08:00
Armando
a7289587d3 spi_slave: add a test to internal api spi_slave_reset_trans_queue 2022-11-14 16:01:48 +08:00
Armando
3dc36f622c spi_slave: add a private API to reset transaction queue 2022-11-14 16:01:48 +08:00
Song Ruo Jing
eae70a8513 Merge branch 'bugfix/wakeup_io_hold_unhold_in_sleep' into 'master'
gpio: Fix deep sleep wakeup IOs unable to unhold after wakeup

Closes IDF-6122

See merge request espressif/esp-idf!20823
2022-11-14 12:48:40 +08:00
Song Ruo Jing
d0a7dc3e9f gpio: Fix IO hold function related problems
1. Fix deep sleep wakeup IOs can not be unhold issue
2. Correct hold related APIs' description
3. Fix gpio_force_hold_all API

docs: Add GPIO wakeup source to sleep_modes doc for ESP32C3 and C2
2022-11-11 20:39:04 +08:00
Song Ruo Jing
dd311381a4 rtcio: Add a test case to test RTCIO's hold ability after deep sleep wakeup 2022-11-11 20:39:04 +08:00
wanlei
76ddc2b8a7 test: move rs485 test to test_app 2022-11-11 16:59:40 +08:00
wanlei
fb7d8f49be test: move uart test to test_app 2022-11-11 16:59:40 +08:00
Wan Lei
c09322430a Merge branch 'test/move_gpspi_to_pytest_app' into 'master'
spi: move spi related unit test into itself pytest app

Closes IDF-5499 and IDFCI-1377

See merge request espressif/esp-idf!19341
2022-11-11 12:18:26 +08:00
Krzysztof Budzynski
acedae1313 Merge branch 'docs/fix-typo-touch-pad-esp32s2-esp32s3' into 'master'
docs:fix a typo in touch_sensor.h of esp32s2 and esp32s3

Closes DOC-4065

See merge request espressif/esp-idf!20956
2022-11-10 19:24:04 +08:00
wanlei
45cf44e5c8 test: move 'driver/test/esp_serial_slave_link' to 'driver/test-apps/components' and make it be a component 2022-11-10 16:02:03 +08:00
wanlei
f31ecbb42b test: move spi related unit-test into pytest app 2022-11-10 16:02:03 +08:00
wanlei
312bc6cb3a test: make 'test_common_spi' as a components named 'test_utils_spi' 2022-11-10 15:51:29 +08:00
laokaiyao
8677216576 esp32h2: renaming esp32h2 to esp32h4 2022-11-08 17:05:33 +08:00
C.S.M
86aa012c26 Merge branch 'feature/bringup_i2c_esp32c6' into 'master'
I2C: Add i2c support for ESP32C6

Closes IDF-5326 and IDF-5327

See merge request espressif/esp-idf!20905
2022-11-08 11:56:15 +08:00
morris
f69a53f56d Merge branch 'feature/twai_bringup_esp32c6' into 'master'
TWAI: initial driver bring up on esp32c6 (TWAI0 only)

Closes IDF-5313 and IDF-5940

See merge request espressif/esp-idf!20735
2022-11-07 18:00:05 +08:00
morris
9f18a0bb5b Merge branch 'doc/explain_ledc_callback_return_value' into 'master'
ledc: explain the callback return value

Closes IDFGH-8647

See merge request espressif/esp-idf!20916
2022-11-07 17:55:59 +08:00
Linda
5406c80d99 docs:fix a typo in touch_sensor.h of esp32s2 and esp32s3 2022-11-07 14:32:26 +08:00
Cao Sen Miao
803fc3fbe0 I2C: Add i2c support for ESP32C6 2022-11-07 14:12:53 +08:00
Kevin (Lao Kaiyao)
48b23b7c46 Merge branch 'feature/support_4_line_pdm_rx_on_esp32s3' into 'master'
i2s: support 4 line pdm rx on esp32s3

Closes IDF-6120

See merge request espressif/esp-idf!20753
2022-11-04 18:44:52 +08:00
morris
a83165fea0 twai: add initial version of driver component test 2022-11-04 17:40:29 +08:00
morris
a25123f703 twai: bringup on esp32c6 2022-11-04 17:40:29 +08:00
laokaiyao
fa9b022f68 i2s: support 4 line pdm rx on esp32s3 2022-11-04 15:46:34 +08:00
Ivan Grokhotkov
b14116ff95 Merge branch 'feature/partition_api_new_component_2' into 'master'
Storage: Partition APIs moved to the new component 'esp_partition'

Closes IDF-1234

See merge request espressif/esp-idf!20747
2022-11-04 14:59:08 +08:00
laokaiyao
2cccf3a804 dac: update API and file format aligning to the rule 2022-11-03 13:04:50 +08:00
morris
999a3d5e6b ledc: explain the callback return value
Closes https://github.com/espressif/esp-idf/issues/10093
2022-11-03 11:01:47 +08:00
Martin Vychodil
c9c7573f71 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:54:45 +01:00
morris
51527b302a Merge branch 'contrib/github_pr_10083' into 'master'
temperature_sensor: fix typo (github PR)

Closes IDFGH-8638

See merge request espressif/esp-idf!20887
2022-11-01 23:34:26 +08:00
Song Ruo Jing
be0fdfa176 soc: Add a soc cap, SOC_CLK_RC_FAST_D256_SUPPORTED, for whether the target has the RC_FAST_D256 clock 2022-11-01 11:23:26 +08:00
Song Ruo Jing
2557e24a28 ci: Enable esp32c6 example, test_apps, and unit tests CI build stage 2022-11-01 11:23:21 +08:00
Jonas Vanthornhout
d679ab3903 Fixed typo 2022-10-31 17:31:40 +01: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
Cao Sen Miao
9777c9d5b1 dac: refactor to new api on esp32s2 2022-10-25 17:00:41 +08:00
Cao Sen Miao
9e4ff3d374 dac_dma: Support DAC_DMA on esp32s2 2022-10-25 17:00:41 +08:00
morris
4176cb68de 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-22 18:20:07 +08:00
morris
f997b81242 mcpwm: support esp32c6 2022-10-20 11:55:03 +08:00
morris
7b425cbcd7 mcpwm: new function to fetch capture resolution 2022-10-20 11:30:14 +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
Song Ruo Jing
c8c9ce0a8b Merge branch 'feature/esp32c6_gpio_support' into 'master'
gpio: bringup driver on esp32c6 FPGA

Closes IDF-5870 and IDF-5937

See merge request espressif/esp-idf!20364
2022-10-19 18:44:30 +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
Song Ruo Jing
6d24e8bcf4 gpio: Add support for esp32c6 2022-10-18 12:38:36 +08:00
Armando (Dou Yiwen)
542bdea689 Merge branch 'feature/adc_calibration_on_c2' into 'master'
esp_adc: support adc calibration on esp32c2

Closes IDF-5203 and IDF-5899

See merge request espressif/esp-idf!20044
2022-10-18 10:50:59 +08:00
Armando
d592d983ce esp_adc: added esp32c2 adc runners 2022-10-17 16:23:22 +08:00
Linda
837d29cca0 docs: update the description of uart_read_bytes 2022-10-14 15:55:40 +08:00
Armando
f905f6ab7c esp_adc: add esp32c2 adc high/low test threshold and expected val 2022-10-13 21:03:51 +08:00
morris
9408e1372b Merge branch 'bugfix/i2s_tx_auto_clear_not_totally_clean_the_buf' into 'master'
i2s: fix tx incomplete auto clear

Closes IDFGH-8416

See merge request espressif/esp-idf!20536
2022-10-12 18:15:49 +08: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
morris
a8eacd690c Merge branch 'bugfix/allow_compare_equal_period' into 'master'
mcpwm: allow compare equals to period

See merge request espressif/esp-idf!20514
2022-10-11 16:53:27 +08:00
jingli
b903a2253b esp_hw_support/sleep: fix current leakage when hold digital io during deep sleep 2022-10-11 12:11:28 +08:00
morris
ad376e2d99 mcpwm: allow compare equals to period 2022-10-11 11:25:33 +08:00
Michael (XIAO Xufeng)
9bc18ba480 Merge branch 'feat/sdio_slave_disable_hs' into 'master'
sdio_slave: allow disabling highspeed mode

Closes IDF-5994

See merge request espressif/esp-idf!20312
2022-10-01 01:52:47 +08:00
Michael (XIAO Xufeng)
507864c4f1 sdio_slave: allow disabling highspeed mode 2022-09-27 18:38:35 +08:00
morris
c91f693408 test: fix rmt iram case random failure 2022-09-27 18:03:21 +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
Michael (XIAO Xufeng)
02a9de904a essl: move from esp-idf component to extra component 2022-09-26 12:26:55 +08:00
Martin Vychodil
7d28abae4e Merge branch 'feature/sdcard_custom_freq' into 'master'
[Storage] Enable SD card custom frequency setup

Closes IDFGH-7089

See merge request espressif/esp-idf!19038
2022-09-23 17:45:30 +08:00
Song Ruo Jing
82cbcf893a Merge branch 'bugfix/fix_uart_fake_tx_done_temp_revert' into 'master'
uart: Fix unwanted processing of TX_DONE interrupt immediately after calling uart_wait_tx_done()

See merge request espressif/esp-idf!20286
2022-09-23 15:53:45 +08:00
Wan Lei
e352382aa8 Merge branch 'feature/no_return_Q_from_isr_for_slave' into 'master'
spi_slave: add new flag SPI_SLAVE_NO_RETURN_RESULT to bypass return descriptor from ISR

Closes IDF-5971

See merge request espressif/esp-idf!20164
2022-09-23 10:34:07 +08:00
Song Ruo Jing
701e49278a 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-22 14:30:39 +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
wanlei
ee6d3de128 spi_slave: add a flag SPI_SLAVE_NO_RETURN_RESULT to bypass return descriptor from ISR
if using this flag, driver willn't return the trans-done descriptor from ISR, so
`spi_slave_get_trans_result()` shouldn't be called.
besides, callback is the only way to know transaction status in that case, so a
`post_trans_cb` will be checked mandatory.
2022-09-21 11:56:27 +08:00
morris
c71bd0e4fa rmt: disable rc_fast clock when it's used up 2022-09-17 04:56:49 +00:00
laokaiyao
af0c0bd8ce i2s: fix the data lagging of slave role
Closes https://github.com/espressif/esp-idf/issues/9513
2022-09-16 18:45:02 +08:00
wangyuanze
4d0ac129b4 test: add i2s tdm full duplex multi device test app 2022-09-16 18:45:02 +08:00
Fu Hanxi
a42849f63c Merge branch 'test/test_adc_on_dedicated_runners' into 'master'
ci: use adc dedicated test runners

See merge request espressif/esp-idf!19164
2022-09-16 15:58:36 +08:00
Armando
7be7a3e996 esp_adc: added comments to c3 test thresh, also sync to legacy tests 2022-09-16 03:21:29 +00:00
Armando
eee5085281 ci: use adc dedicated test runners for adc tests 2022-09-16 03:21:29 +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
77ce37f235 Merge branch 'feature/check_mcpwm_sync_direction' into 'master'
mcpwm: check sync direction is valid

See merge request espressif/esp-idf!20134
2022-09-15 19:05:57 +08:00
morris
5f550b2a13 rmt,gptimer: don't support rc_fast clock source for c6 and h2
The RC_FAST clock source on ESP32C6 and ESP32H2 can't be calibrated.
Which makes it impossible to work stable for peripherals like timer, RMT
2022-09-14 14:40:28 +00:00
morris
1fc458b3f7 mcpwm: check sync direction is valid 2022-09-14 11:49:37 +08:00
Wan Lei
f7748beb4d Merge branch 'bugfix/spi2_add_device_cs_more_than_3' into 'master'
spi_master: fix error when use `spi_bus_add_device` add more than 3 devices

Closes IDFGH-7288

See merge request espressif/esp-idf!19798
2022-09-14 10:33:37 +08:00
wanlei
241f182408 spi_master: add test for spi_bus_add_device() more than 3 device
1.add 6 devices freely to check master can mount 6 devices
2.replace each one by a real device to check they can work
2022-09-13 19:20:07 +08:00
Song Ruo Jing
0b048387bc Merge branch 'test/move_rtcio_test_to_test_app' into 'master'
rtcio: Move unit test to gpio test_apps

Closes IDF-5618

See merge request espressif/esp-idf!19919
2022-09-13 14:33:42 +08:00
Kevin (Lao Kaiyao)
8880d38522 Merge branch 'bugfix/add_error_check_for_esptimer_in_touch_sensor' into 'master'
touch_sensor: add esp_timer error check

Closes IDF-5905

See merge request espressif/esp-idf!20072
2022-09-13 14:09:18 +08:00
wangyuanze
ad8d6cdedd rtcio: Move rtcio test cases from unit-test-app to gpio test_app, and enable the tests for ESP32S3 2022-09-13 12:13:51 +08:00
morris
a1030307f1 gptimer: bringup driver on esp32c6 2022-09-13 10:50:58 +08:00
Martin Vychodil
56f2001317 sdmmc/sdspi: allow custom setup of SD card frequency
In order to allow flexible setup of SD card frequency, sdmmc_host_t.max_freq_khz is used as a limit

Closes https://github.com/espressif/arduino-esp32/issues/6225
2022-09-12 17:08:36 +02:00
Dai Zi Yan
3ca44d4d0f Merge branch 'docs/update_get-started' into 'master'
docs: updated gpio and sync up line numbers

Closes DOC-3350 and DOC-3390

See merge request espressif/esp-idf!19959
2022-09-09 17:24:32 +08:00
Armando (Dou Yiwen)
2c2384e39c Merge branch 'bugfix/fix_spi_bus_lock_concurrency_issue' into 'master'
spi_bus_lock: fix a concurrency bug

Closes IDFGH-6528

See merge request espressif/esp-idf!19925
2022-09-09 15:42:24 +08:00
laokaiyao
91c2928ff5 touch_sensor: add esp_timer error check 2022-09-09 14:59:42 +08:00
daiziyan
49aaea7509 docs: updated gpio and sync up line numbers 2022-09-09 02:39:35 +00:00
morris
6539aa2275 pcnt: support esp32c6 2022-09-08 18:26:04 +08:00
laokaiyao
586a14af63 touch_sensor: fixed timer period 2022-09-07 19:13:39 +08:00
Simon
c6610ec4c2 Merge branch 'bugfix/fix_the_duplicated_type_name_in_i2s' into 'master'
i2s: fix the duplicated type name in i2s

Closes IDF-5891

See merge request espressif/esp-idf!19960
2022-09-07 10:53:28 +08:00
Armando
3c8f6dd1cf 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-06 16:59:02 +08:00
laokaiyao
3bdcf2edf5 i2s: add notes for the read task of i2s basic examples 2022-09-06 10:29:30 +08:00
laokaiyao
648a75dbed i2s: fixed the duplicated type name 2022-09-06 10:27:52 +08:00
laokaiyao
045b65e85d touch_senser: fixed ci issue timer expired after it is deleted 2022-09-05 18:25:32 +08:00
Song Ruo Jing
0637ea91a3 Merge branch 'bugfix/fix_gpio_intr_lost' into 'master'
gpio: Fix interrupt lost issue

Closes IDFGH-5069

See merge request espressif/esp-idf!19625
2022-09-02 18:54:17 +08:00
Simon
e923c15859 Merge branch 'refactor/i2c_hal' into 'master'
I2C: Refactor i2c hal and ll(pre-MR of I2C driver-NG)

See merge request espressif/esp-idf!19750
2022-09-02 10:47:35 +08:00
Song Ruo Jing
61282cc5dd 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-01 16:01:01 +08:00
Cao Sen Miao
31b88a4c88 I2C: Refactor i2c hal and ll 2022-09-01 15:53:59 +08:00
songruojing
9d515185d0 esp32c6: clean up existing soc files and header file inclusion in IDF to be compatible with the new chip 2022-09-01 12:28:06 +08:00
morris
82f2ad9b6d Merge branch 'bugfix/propagate_isr_allocation_failure' into 'master'
Fix MCPWM multiplication overflow

Closes IDFGH-8151 and IDFGH-8155

See merge request espressif/esp-idf!19829
2022-09-01 10:44:15 +08:00
Song Ruo Jing
6a60ecf780 soc_caps: Introduce SOC_LEDC_SUPPORTED and SOC_I2C_SUPPORTED caps to IDF
Wrap the ledc, i2c source files with the new caps in CMakeLists and linker.lf.
This could avoid potential source file not found warning during linking time.
2022-08-31 20:43:22 +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
Marius Vikhammer
dfaaefe2ce Merge branch 'bugfix/uart_sclk_freq' into 'master'
uart: fixed sclk_freq not init warning when compiling with asserts disabled

Closes IDFGH-8144

See merge request espressif/esp-idf!19792
2022-08-30 16:24:38 +08:00
morris
1ca3fad458 Merge branch 'bugfix/gpio_ut_usj' into 'master'
gpio: add a test case to test the ability of disabling USB D+ pin pull-up

See merge request espressif/esp-idf!19838
2022-08-30 14:09:45 +08:00
Gao Xu
0da21aca0d Merge branch 'bugfix/fix_spi_hd_quad_issue_esp32c3' into 'master'
essl_spi: fix wrong dummy cycle under quad spi mode ant add a test to verify spi quad mod

Closes IDF-5182 and IDF-5181

See merge request espressif/esp-idf!18680
2022-08-30 10:53:11 +08:00
Song Ruo Jing
46886286c4 gpio: add a test case to test the ability of disabling USB D+ pin pull-up 2022-08-29 19:38:13 +08:00
Marius Vikhammer
b844df8c85 uart: fixed sclk_freq not init warning when compiling with asserts disabled
Closes https://github.com/espressif/esp-idf/issues/9642
2022-08-26 11:52:46 +08:00
morris
995b89fbb6 gptimer: add API to get captured count value 2022-08-25 17:55:19 +08:00
Omar Chebib
6f3c6dcd86 Merge branch 'bugfix/i2c_port_unsigned' into 'master'
I2C: i2c_port_t type is now an enumeration

Closes IDFGH-7433

See merge request espressif/esp-idf!18230
2022-08-25 17:25:51 +08:00
Wan Lei
c5b094a96f Merge branch 'test/fix_sio_mode_multi_test_faile' into 'master'
spi_master: in unit test modify communication bringup flow to fix spi sio mode test failure

See merge request espressif/esp-idf!19712
2022-08-25 16:33:10 +08:00
morris
853a27b491 Merge branch 'refactor/migrate_adc_wifi_test_to_test_app' into 'master'
esp_adc: migrate adc wifi test to test app

Closes IDFCI-1405 and IDFCI-578

See merge request espressif/esp-idf!19736
2022-08-25 10:57:07 +08:00
Armando (Dou Yiwen)
335ca8a687 Merge branch 'refactor/use_esp_check_in_adc_legacy_driver' into 'master'
adc: use esp_check in adc_legacy.c

Closes IDF-3657

See merge request espressif/esp-idf!19727
2022-08-24 14:22:51 +08:00
wanlei
0f92a706ba spi_master: change sio test communication bringup flow to fix testcase failure
test failed by slave obtain data incorrectly at the time before master started
2022-08-24 14:20:26 +08:00
Omar Chebib
f6ac350337 I2C: i2c_port_t type is now an enumeration
* Closes https://github.com/espressif/esp-idf/issues/9009
2022-08-24 10:51:09 +08:00
Armando
a8c0f1feb6 esp_adc: migrate adc wifi test to test app 2022-08-23 21:23:21 +08:00
Armando
eaf7fbf35a adc: use esp_check in adc_legacy.c 2022-08-23 17:47:04 +08:00
wangyuanze
6ca1db3ef2 touch_sensor: fix touch_sensor_v1 filter issue 2022-08-23 07:34:51 +00:00
gaoxu
ec649b0a30 SPI: a test to verify the SPI halfduplex communicate on quad mod 2022-08-23 10:47:21 +08:00
Song Ruo Jing
72a15e3c7a Merge branch 'bugfix/gpio_usb_pin_pupd' into 'master'
gpio: fix USB D+ pin cannot disable pullup

Closes IDFGH-7984

See merge request espressif/esp-idf!19191
2022-08-22 17:18:05 +08:00
Michael (XIAO Xufeng)
0a2e5a7774 Merge branch 'feat/support_esp32c2_uart' into 'master'
uart: update console docs about frequency for ESP32-C2, move frequency of clock sources out of HAL

Closes IDF-5424 and IDF-4332

See merge request espressif/esp-idf!19274
2022-08-22 14:24:26 +08:00
Song Ruo Jing
aae3c7ba08 Merge branch 'bugfix/fix_ledc_timer_update_usage' into 'master'
ledc: Fix the usage of ledc_ls_timer_update and ledc_timer_rst

See merge request espressif/esp-idf!19637
2022-08-22 14:23:44 +08:00
Song Ruo Jing
0445c87459 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-19 19:07:46 +08:00
songruojing
01143bd732 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-19 15:05:28 +08:00
wanlei
a462022205 spi_master:modify test case name for spi sio mode test 2022-08-18 20:17:15 +08:00
Wan Lei
60d794501f Merge branch 'test/add_test_spi_sio_master_all' into 'master'
SPI Master: add sio multi-device test case for all chips

Closes IDF-4455

See merge request espressif/esp-idf!19249
2022-08-18 14:41:48 +08:00
Wan Lei
8226806295 Merge branch 'feature/reduce-overhead-of-xQueueSendFromISR' into 'master'
SPI Master: add callback feature to reducing overhead

Closes IDFGH-7584

See merge request espressif/esp-idf!18969
2022-08-18 11:02:17 +08:00
morris
31d4ab6e04 Merge branch 'bugfix/mcpwm_operator_naming_issue_with_cxx' into 'master'
mcpwm: don't use keyword operator

Closes IDFGH-8000

See merge request espressif/esp-idf!19581
2022-08-18 10:56:15 +08:00
morris
2cea860318 Merge branch 'contrib/github_pr_9491' into 'master'
[gpio] calloc in critical section (GitHub PR)

Closes IDFGH-7980

See merge request espressif/esp-idf!19380
2022-08-18 10:49:41 +08:00
wanlei
4757efe21d spi_master: fix config check of both in&out phases used in half-duplex mode
Add a check in spi_master driver to prevent using both 'trans->length'
and 'trans->rxlength' on chips other than ESP32 and ESP32S2 which hardware
not support using both TX and RX phases in half-duplex mode
2022-08-17 15:52:08 +08:00
wanlei
6864f72ab7 test: add new spi-sio multi-board test for all chip
test sio master only, and splited into master input & output ability
slave device work on full duplex mode to provide input/output source only
2022-08-17 15:52:08 +08:00
wanlei
5726f3d8cb spi_master: add check for 'post_cb' when flag 'SPI_DEVICE_NO_RETURN_RESULT' is set
There are two ways to know which transaction descriptor is finished,
by either calling `spi_device_get_trans_result`, or getting it from `post_cb`.
When `SPI_DEVICE_NO_RETURN_RESULT` is set, driver will not push finished
transaction descriptors into the queue. So you can't get it from
`spi_device_get_trans_result`. The only way to know this is via `post_cb`.

update document for function `spi_bus_add_device`
2022-08-17 15:08:06 +08:00
morris
2c5a866ea3 mcpwm: don't use keyword operator
Closes https://github.com/espressif/esp-idf/issues/9510
2022-08-17 06:31:50 +00:00
Alex Lisitsyn
c78f126eed driver: uart rs485 fix test sync issues and fail threshold 2022-08-16 13:10:13 +08:00
Michael (XIAO Xufeng)
746f4b814c uart: move frequency of clock sources out of HAL 2022-08-15 18:55:43 +00: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
970d4cab09 driver: add doc on how to unregister event callbacks
Closes https://github.com/espressif/esp-idf/pull/9523
2022-08-15 14:46:56 +08:00
morris
0d881fc9e0 driver: specify the interrupt priority
Closes https://github.com/espressif/esp-idf/issues/9520
2022-08-15 14:46:56 +08:00
meawoppl
677a0c438d spi_master: added a device flag "SPI_DEVICE_NO_RETURN_RESULT"
Add this flag to select if returning done transaction descriptors from ISR.
You should get the finished transaction descriptor by the callback "post_cb"
if you using this flag, if not, same as the past.

Close https://github.com/espressif/esp-idf/pull/9141
2022-08-15 12:10:50 +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
f24983a942 unity_utils: added helper function to disable cache and run user function 2022-08-12 11:29:52 +08:00
Martin Vychodil
d7e3072040 Merge branch 'fix/sdspi_no_cs' into 'master'
sdspi: Allow CS line to be set to GPIO_NUM_NC (-1)

Closes IDFGH-6175

See merge request espressif/esp-idf!19420
2022-08-11 20:17:26 +08:00
morris
6aa08af572 Merge branch 'bugfix/remove_format_warnings_in_driver' into 'master'
driver: remove -Wno-format flag

Closes IDF-5764

See merge request espressif/esp-idf!19401
2022-08-11 12:19:50 +08:00
Wang Yuan Ze
debf2c0b70 Merge branch 'test/move_touch_related_unit_tests_to_test_apps' into 'master'
test: move touch related unit tests to test apps

Closes IDFCI-1283, IDFCI-1156, and IDF-5766

See merge request espressif/esp-idf!19348
2022-08-09 23:15:18 +08:00
morris
ad59ae38d8 Merge branch 'bugfix/duplicate_i2s_test_case_name' into 'master'
i2s: fixed duplicated test case name

See merge request espressif/esp-idf!19442
2022-08-09 12:01:11 +08:00
Omar Chebib
790aa40c38 Merge branch 'contrib/github_pr_7144' into 'master'
Update i2c.c to consider two I2C buses for clear bus counter (GitHub PR)

Closes IDFGH-5398

See merge request espressif/esp-idf!19093
2022-08-09 10:26:25 +08:00
laokaiyao
3c4bc80712 i2s: fixed duplicated test case name 2022-08-08 20:35:47 +08:00
wangyuanze
5e4ab6481f touch_sensor: move unit tests to test_app 2022-08-08 19:12:56 +08:00
wangyuanze
48ce5d7c01 touch: adapt touch-related code to compile with -Wno-format flag 2022-08-08 19:12:56 +08:00
Adam Múdry
afe78ba0aa sdspi: Allow CS line to be set to GPIO_NUM_NC (-1)
Closes https://github.com/espressif/esp-idf/issues/7852
2022-08-08 09:13:36 +00:00
morris
d91c8759c0 driver: remove -Wno-format flag 2022-08-08 08:30:09 +00:00
songruojing
4983b2786a pm: update pm test cases to support esp32c2 2022-08-08 14:45:53 +08:00
Omar Chebib
75ede16b38 I2C: Fix the reset counter 2022-08-08 11:05:11 +08:00
Eckhard Völlm
0257eba526 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-08-08 02:46:13 +00:00
jingli
ee3423834e kconfig: refactor xtal freq kconfig to common configuration item 2022-08-05 19:12:29 +08:00
songruojing
6e8ebdb6b7 gpio: fix potential race condition inside gpio_install_isr_service 2022-08-05 11:06:01 +08:00
tgotic
34ff721c92 [gpio] calloc in critical section
Remove calloc out of critical section. In critical section, assign allocated memory to gpio_isr_func.
Free resources if gpio_isr_register() fails.
2022-08-04 17:11:32 +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