Commit Graph

1863 Commits

Author SHA1 Message Date
morris
a1030307f1 gptimer: bringup driver on esp32c6 2022-09-13 10:50:58 +08: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
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