Commit Graph

1958 Commits

Author SHA1 Message Date
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