Commit Graph

1428 Commits

Author SHA1 Message Date
Chen Yi Qun
fbd25c3837 I2C: add conf_update for esp32c3 i2c 2021-08-11 13:39:07 +08:00
morris
3bcd9278fa i2s: expose resource object to other component 2021-08-10 21:06:59 +08:00
Michael (XIAO Xufeng)
e37873f285 Merge branch 'bugfix/uart_driver_obj_into_sram' into 'master'
uart: put driver object into sram

Closes IDFGH-5281 and IDFGH-5634

See merge request espressif/esp-idf!13606
2021-08-10 09:35:36 +00:00
morris
56760c9669 pcnt: refactor hal driver 2021-08-10 17:19:21 +08:00
Wang Fang
59aa60d52a Merge branch 'docs/provide_apb_clock_frequency_in_api-reference_timers' into 'master'
docs: provide APB clock frequency in api-reference/timers

Closes DOC-1689

See merge request espressif/esp-idf!14593
2021-08-06 06:50:26 +00:00
morris
dbeb4bdb84 uart: support alloc driver object in SRAM
If CONFIG_UART_ISR_IN_IRAM is on, which means user hope the uart
interrupt can still be serviced even when cache is diabled (e.g.
writing to flash). In that case, the driver should make sure to
put the all related objects into SRAM, avoid putting them in the PSRAM.

Closes https://github.com/espressif/esp-idf/issues/7044
Closes https://github.com/espressif/esp-idf/pull/7355
2021-08-06 13:37:40 +08:00
morris
62d9109eb5 uart: format driver code by astyle 2021-08-06 13:36:57 +08:00
Michael (XIAO Xufeng)
18e681ce2f Merge branch 'bugfix/spi_master_crash_cache_disabled' into 'master'
spi_master: fix the crash when using interrupt mode when cache is disabled

Closes IDFGH-4992

See merge request espressif/esp-idf!14660
2021-08-06 03:37:26 +00:00
Wang Fang
0ba73ee7e2 docs: provide APB clock frequency in api-reference/timers 2021-08-06 11:05:32 +08:00
SalimTerryLi
e5ddc12a08
MCPWM/capture: API workflow optimization
deprecate isr_register to introduce new callback based API, with framework managed interrupt routine
new HC-SR04 example
2021-08-05 19:12:58 +08:00
Michael (XIAO Xufeng)
947980ecac Merge branch 'bugfix/uart_set_pin_use_iomux' into 'master'
uart: uart_set_pin function will now use IOMUX whenever possible

Closes IDF-3183

See merge request espressif/esp-idf!14318
2021-08-05 04:17:29 +00:00
Michael (XIAO Xufeng)
de0f24e373 spi_master: fix the crash when using interrupt mode when cache is disabled
Closes https://github.com/espressif/esp-idf/issues/6529
Closes https://github.com/espressif/esp-idf/issues/6781
Closes https://github.com/espressif/esp-idf/issues/7368
2021-08-05 12:04:39 +08:00
Omar Chebib
779e7400b0 uart: uart_set_pin function will now use IOMUX whenever possible
By using IOMUX instead of GPIO Matrix for UART, it is now possible
on ESP32 boards to use the UART as a wake up source even if it is
not used as a console.
For other boards where this issue was not present, using IOMUX has
the advantage to be faster than using GPIO matrix, so a highest
baudrate can be used
2021-08-04 12:48:30 +08:00
laokaiyao
f863998e90 driver/i2s: support mclk 2021-08-04 10:20:03 +08:00
laokaiyao
3c57a6ac36 driver/i2s: refactor ll and hal 2021-08-04 10:20:03 +08:00
laokaiyao
d51b85989b doc/i2s: update i2s programming guide on s3 & c3 2021-08-04 10:20:03 +08:00
laokaiyao
f7f8c9c11f driver/i2s: support i2s on c3 and s3
1. Support i2s on esp32c3 and esp32s3
    2. Refactor i2s_config_t to avoid breaking change
    2. Fix a bug that receiving unavailable values from message queue when dma queue has been re-allocted
    4. Support i2s unit test on esp32c3 and esp32s3
2021-08-04 10:20:03 +08:00
houwenxiang
2f1247e1c4 driver: support I2S on ESP32-S3 & ESP32-C3
1. refactor I2S driver.
  2. support TDM mode for esp2s3 & esp32c3.
2021-08-04 10:20:03 +08:00
morris
5f318e902d Merge branch 'bugfix/mcpwm-deadtime-preset-config' into 'master'
bugfix/mcpwm: fix deadtime module preset config (AHC, ALC, AH, AL)

Closes IDFGH-5600

See merge request espressif/esp-idf!14594
2021-08-03 04:22:20 +00:00
SalimTerryLi
32ca6ab65d
MCPWM/deadtime: fix and sync preset deadtime modes with well-known definition
Closes https://github.com/espressif/esp-idf/issues/7321
2021-08-03 10:12:42 +08:00
Marius Vikhammer
baf0b7cdf5 uart: fix typo in error message
Closes https://github.com/espressif/esp-idf/issues/7360
2021-08-03 09:18:21 +08:00
Song Ruo Jing
5d82d7c6ee Merge branch 'typo_fix/fix-length-typo' into 'master'
docs: Fix length typo

Closes IDFGH-5272

See merge request espressif/esp-idf!14371
2021-08-02 09:35:15 +00:00
Michael (XIAO Xufeng)
f7a7cc1014 Merge branch 'fix/sdio_slave_recv_intr_unhandled' into 'master'
sdio_slave: fixed the issue that interrupt may be cleared with finished trans unhandled

See merge request espressif/esp-idf!11399
2021-08-01 07:37:56 +00:00
Cao Sen Miao
5083ff5922 Merge branch 'feature/usb_serial_jtag_support_s3' into 'master'
usb_serial_jtag: enable blocking implementation on esp32s3(console)

Closes IDF-3635

See merge request espressif/esp-idf!14581
2021-07-31 11:27:09 +00:00
Michael (XIAO Xufeng)
f26006a3bc Merge branch 'feature/ledc_fade_callback' into 'master'
ledc: Add a callback for LEDC fade end

Closes IDF-2475 and IDF-3222

See merge request espressif/esp-idf!14302
2021-07-31 08:52:00 +00:00
Cao Sen Miao
24529a6aec usb_serial_jtag: enable blocking implementation on esp32s3 2021-07-31 16:32:09 +08:00
Armando (Dou Yiwen)
ed741a5d96 Merge branch 'bugfix/fix_adc_single_with_pm_lock_build_bug' into 'master'
adc: make adc single api only build pm lock on s2

See merge request espressif/esp-idf!14567
2021-07-31 05:32:34 +00:00
SalimTerryLi
f4314af913
MCPWM: expose API to set timer resolution
Closes https://github.com/espressif/esp-idf/issues/1101
2021-07-30 18:52:17 +08:00
Armando
23eb723daf adc: make adc single api only build pm lock on s2
Since ADC single read API only uses polling mode, we don't need to add
pm lock in it.
2021-07-30 10:16:24 +08:00
morris
f907009056 Merge branch 'refactor/cleanup_mcpwm_examples' into 'master'
mcpwm: more clean up (example + LL + doc)

Closes IDF-3295

See merge request espressif/esp-idf!12798
2021-07-29 10:41:07 +00:00
songruojing
9d098cc9bd ledc: Add a callback for LEDC fade end
This commit adds a feature where users can register a callback that is
called when an LEDC fade completes.
2021-07-29 17:56:22 +08:00
Armando (Dou Yiwen)
3c3e802048 Merge branch 'feature/essp_spi_driver' into 'master'
spi: essl spi driver and spi_slv_hd append mode example

Closes IDF-1698, IDF-2279, and IDF-2932

See merge request espressif/esp-idf!12104
2021-07-29 09:53:10 +00:00
Michael (XIAO Xufeng)
5569dedd7f Merge branch 'bugfix/i2c_example_esp32s3' into 'master'
i2c: bringup on ESP32-S3

Closes IDF-3232 and IDF-3292

See merge request espressif/esp-idf!13985
2021-07-29 07:01:38 +00:00
Ato Araki
aea865b360 Fix length typo
Closes https://github.com/espressif/esp-idf/pull/7037
2021-07-29 14:44:43 +08:00
Armando (Dou Yiwen)
30056c0116 Merge branch 'bugfix/spi_master_clear_error_fifo_status' into 'master'
spi_master: clear error fifo status before transaction starts

Closes IDF-3457 and IDF-3501

See merge request espressif/esp-idf!14210
2021-07-29 04:03:19 +00:00
Armando
aca2bd5fcf essl: add essl spi support to communicate with spi slave hd mode 2021-07-28 18:36:13 +08:00
Armando
9063a7b7e3 test: add an SPI dual board test for master FD DMA single directions test 2021-07-28 17:51:25 +08:00
Armando
c4cc3bb895 adc: temporarily disable adc2 wifi test pending on s3 adc calibration 2021-07-28 17:50:15 +08:00
Armando
eab252456f adc: refactor adc2 single read with wifi test 2021-07-28 17:50:14 +08:00
Armando
3ce2d85e9e adc: support adc2 working with WiFi 2021-07-28 17:50:14 +08:00
morris
88c87bfe56 mcpwm: update hal and soc naming 2021-07-26 22:32:45 +08:00
Michael (XIAO Xufeng)
4d2bb1e7ec sdio_slave: fixed the issue that interrupt may be cleared with finished trans unhandled 2021-07-24 22:29:15 +08:00
Michael (XIAO Xufeng)
fbb6b1b11a Merge branch 'bugfix/fix_uart_reset_issue_on_esp32c3' into 'master'
bugfix(uart): reset uart0 core before uart apb reset

Closes IDF-3362

See merge request espressif/esp-idf!12749
2021-07-22 07:20:58 +00:00
Marius Vikhammer
a29a6ceef0 uart: update register headers and examples for S3 2021-07-22 12:05:49 +08:00
Omar Chebib
74d939fd71 Merge branch 'feature/spi_keep_cs_low' into 'master'
SPI: chip select can now be kept active if the bus has been acquired

Closes IDF-3125

See merge request espressif/esp-idf!13546
2021-07-22 03:57:58 +00:00
Cao Sen Miao
69ad24c943 temp_sensor: add docs for esp32c3 2021-07-21 13:34:52 +08:00
Chen Yi Qun
6317f5b481 add uart core reset in uart_module_enable() 2021-07-21 11:41:04 +08:00
Cao Sen Miao
24356cf7f7 temp_sensor: add check to temp_sensor api 2021-07-21 11:24:37 +08:00
Omar Chebib
b8c6c5334f i2c: modify examples to work out of the box on ESP32S3
On ESP32S3, the default I2C pins of the examples are already used by USB.
This commit changes the default pins.
2021-07-21 11:04:16 +08:00
Omar Chebib
a6e14c37b2 SPI: chip select can now be kept active if the bus has been acquired
The user can now request the chip select to remain active after the current
transfer. In order to do so, he MUST acquire the bus first with `spi_device_acquire_bus()`
function, else, an error is returned.
2021-07-21 10:39:45 +08:00
Alex Lisitsyn
c801b3a182 freemodbus: fix uart_wait_tx_done() reenable tx_done interrupt
fixes the issue with uart_wait_tx_done() when the task is suspended and transmission is done right before reenable tx_done interrupt
2021-07-21 10:07:44 +08:00
Michael (XIAO Xufeng)
59195b6fb3 Merge branch 'bugfix/update_gdma_soc' into 'master'
gdma: alignment setting for PSRAM transfer

Closes IDF-1524

See merge request espressif/esp-idf!13976
2021-07-17 14:04:03 +00:00
Angus Gratton
77b1ddbcdb driver: Add some settling time when driving USB IOs high/low
Otherwise seems to sometimes fail in release config
2021-07-16 20:14:28 +08:00
Jakob Hasse
e94117a055 Merge branch 'bugfix/correct_driver_cmake' into 'master'
[driver]: removed redundant code in CMakeLists.txt

See merge request espressif/esp-idf!13365
2021-07-16 11:27:08 +00:00
morris
d9819bc7ae gdma: set transfer ability 2021-07-16 14:47:09 +08:00
morris
3176ba11d8 gdma: update DMA soc data for esp32-s3 2021-07-16 14:47:09 +08:00
morris
217d3eb690 Merge branch 'feature/adc_single_sample_support_on_s3' into 'master'
adc: support adc single read on s3

Closes IDF-3118

See merge request espressif/esp-idf!14036
2021-07-16 06:32:08 +00:00
morris
bae28ed1ff Merge branch 'refactor/esp_check_on_rtc_tempsensor' into 'master'
Refactor/rtc_tempsensor: esp_check update & fix log level

Closes IDFGH-5546

See merge request espressif/esp-idf!14377
2021-07-16 04:25:05 +00:00
laokaiyao
27d9657b6c driver/adc: support adc single sample on s3 2021-07-15 19:13:50 +08:00
SalimTerryLi
ad505e7f03
rtc_tempsensor: esp_check update & fix log level
Closes https://github.com/espressif/esp-idf/issues/7271
2021-07-15 17:23:07 +08:00
Michael (XIAO Xufeng)
ded74889da Merge branch 'bugfix/spi_slave_wrong_miso_mosi' into 'master'
spi_slave: Fix MOSI/MISO inconsistent references on the SPI Slave drivers.

See merge request espressif/esp-idf!13645
2021-07-15 08:51:41 +00:00
Omar Chebib
2575c0d49f i2c: fix I2C slave clock source selection
In I2C slave mode, clock source can now be changed, according to
the flags specified in `i2c_config_t` structure. Thus, ESP32-S2
can now act as an I2C slave, even with a 400KHz master clock.
2021-07-15 12:28:57 +08:00
morris
44c175649a Merge branch 'refactor/replace_wrapped_LOGD_with_macro' into 'master'
uart,i2c: deprecate and replace wrapped xxx_CHECK with macro ESP_RETURN_ON_FALSE

See merge request espressif/esp-idf!14297
2021-07-14 05:55:13 +00:00
morris
8887897f54 Merge branch 'bugfix/timer_example_crashed_not_calling_timer_group_set_alarm_value_in_isr' into 'master'
driver/timer: fixed auto reload problem in default isr callback

Closes IDFGH-5229

See merge request espressif/esp-idf!13528
2021-07-09 10:18:18 +00:00
SalimTerryLi
f545adbceb
i2c.c, uart.c: replace xxx_CHECK with ESP_RETURN_ON_FALSE 2021-07-09 15:13:34 +08:00
morris
90f05c42b2 Merge branch 'bugfix/fix_i2c_master_write_bug' into 'master'
i2c: application can now call `i2c_master_write` for sending a single byte

Closes IDF-3518 和 IDFCI-741

See merge request espressif/esp-idf!14273
2021-07-08 06:32:39 +00:00
morris
3b821b8ac3 Merge branch 'bugfix/rotary_encoder_example_main' into 'master'
bugfix: rotary encoder example isr service install

Closes IDFGH-5105

See merge request espressif/esp-idf!14114
2021-07-08 04:25:30 +00:00
Omar Chebib
e9ffe03544 i2c: the user is now allowed to call i2c_master_write even for sending a single byte 2021-07-06 12:12:16 +08:00
morris
d9d4db43a1 Merge branch 'feature/dedic_gpio_esp32s3' into 'master'
Dedicated gpio driver on esp32s3

Closes IDF-3387

See merge request espressif/esp-idf!14196
2021-07-06 03:20:04 +00:00
Michael (XIAO Xufeng)
c6716dcb39 Merge branch 'feature/esp32c3_usbjtag_console_blocking' into 'master'
USB_serial_jtag controller:  Add driver for supporting VFS on esp32c3(blocking implementation)

Closes IDF-3066 and IDF-3019

See merge request espressif/esp-idf!13414
2021-07-05 07:57:19 +00:00
Cao Sen Miao
3aa9ac2469 usb_serial_jtag: Add blocking driver to support vfs. 2021-07-05 11:22:38 +08:00
Michael (XIAO Xufeng)
5986b204c6 Merge branch 'feature/i2c_add_static_buffer_transfers' into 'master'
i2c: add `i2c_cmd_link_create_static()` to create commands from a given buffer

Closes IDFGH-3087

See merge request espressif/esp-idf!13013
2021-07-02 14:00:03 +00:00
Shu Chen
ee23a489b9 esp32h2: code clean up 2021-07-01 19:53:50 +08:00
Shu Chen
205cd469e9 esp32h2: update driver/hal/soc components to support esp32h2 2021-07-01 19:53:11 +08:00
Shu Chen
983cca8b27 esp32h2: copy driver/hal/soc components from esp32c3
Copy the esp32c3 code without any change:
 * components/driver/esp32h2
 * components/esp32h2
 * components/hal/esp32h2
 * components/soc/esp32h2
2021-07-01 19:53:11 +08:00
Michael (XIAO Xufeng)
e8ff60544d Merge branch 'bugfix/channel_clk_independent' into 'master'
rmt: clean up and support esp32-s3 (no DMA support)

Closes IDF-3296 and IDFGH-5350

See merge request espressif/esp-idf!13244
2021-07-01 04:37:07 +00:00
bizhuangyang
1829783886 bugfix:rotary encoder example isr service install
Fix the issue mentioned when using two or more encoders. Modify PCNT_CTRL_GND_IO
to avoid the affect of USB JTAG(origin pin 19 is used for USB D-). Update esp32c3.
peripherals.ld and docs for esp32s3.

Closes https://github.com/espressif/esp-idf/issues/6889
2021-06-30 18:44:02 +08:00
morris
c8c3015018 dedic_gpio: support on esp32s3 2021-06-30 18:10:54 +08:00
morris
9df57b3ae6 dedic_gpio: apply general esp_check macro 2021-06-30 18:10:54 +08:00
Gustavo Henrique Nihei
ef0041b545 driver: Refactor and clean up SPI Slave test 2021-06-28 18:59:00 -03:00
Gustavo Henrique Nihei
f5bfa0babf driver: Create TX/RX-only test cases for SPI Slave 2021-06-28 18:59:00 -03:00
bizhuangyang
78c67d2384 gpio:support gpio in/out/interrupt for esp32s3(728)
Add support of gpio for esp32s3(728). Adjust some pins and comments in test_gpio.c. Add support for gpio functions for gpio19 and gpio20. Update S3 programming guide Peripheral API: gpio and sigmadelta. Add unit test for input and output function of S3 USB pins(GPIO19 and GPIO20) and C3 USB pins(GPIO18 and GPIO19). Adjust input only test in test_spi_master.c.
2021-06-28 11:44:14 +08:00
Angus Gratton
c9287888a5 Merge branch 'feature/driver_mock' into 'master'
[driver]: added mocking of spi master and gpio

See merge request espressif/esp-idf!12054
2021-06-28 00:38:44 +00:00
Michael (XIAO Xufeng)
25f5fc7d6f Merge branch 'feature/support_spi_on_728' into 'master'
spi_master: enable a unit test closed on esp32s3 before

Closes IDF-3226

See merge request espressif/esp-idf!13845
2021-06-27 05:41:10 +00:00
laokaiyao
1138be502e driver/timer: only re-enable alarm in callback when auto reload is true
closes https://github.com/espressif/esp-idf/issues/7001
2021-06-25 15:44:23 +08:00
Jakob Hasse
79b0256d63 [driver]: partial mocking of driver component
* added mocking of spi master and gpio
* mock registering in one function in
  component.cmake
2021-06-24 10:10:29 +08:00
morris
01a28add47 rmt: apply general check macro 2021-06-22 15:29:11 +08:00
morris
8d9e968d3f rmt: fix wrong macro of independent channel clock 2021-06-22 15:29:11 +08:00
morris
8e483e34a8 rmt: restructure rmt_signal_conn_t 2021-06-22 15:29:11 +08:00
morris
a1494809b2 rmt: clean up LL driver 2021-06-22 15:29:11 +08:00
laokaiyao
48fdf6912d test_pwm: relax the requirement of mcpwm test 2021-06-22 10:41:09 +08:00
Armando
6a49ceb67e spi_master: enable a test closed for s3 before 2021-06-21 19:42:49 +08:00
Michael (XIAO Xufeng)
18860ff304 sdio_slave: format source file 2021-06-17 09:40:09 +08:00
Michael (XIAO Xufeng)
591e4c4b31 sdio_slave: allow getting end of frame information 2021-06-17 09:40:08 +08:00
Michael (XIAO Xufeng)
38f0d52e2c Merge branch 'bugfix/uart_race_condition' into 'master'
Fix couple of UART issues

Closes IDFGH-5254

See merge request espressif/esp-idf!13631
2021-06-16 07:48:06 +00:00
Marius Vikhammer
79b5dedeb1 CI: minor testcases fixes and disable some cases that cant run on S3 2021-06-15 13:39:48 +08:00
Omar Chebib
7dd499d1f4 i2c: commands can now be re-used without deleting and creating new cmd links
It is now possible to call `i2c_master_cmd_begin()` on the same
`i2c_cmd_handle_t` parameter. Thus, no extra allocation will be performed.
Moreover, as commands contains pointers to data, these can be modified
between two calls to `i2c_master_cmd_begin()`. This becomes very handy
for framebuffers.
2021-06-09 17:03:39 +08:00
Omar Chebib
cfcbca1271 i2c: optimize space allocated for read or write buffers
Only a single command will be allocated now when a read or write is
prepared in the command list. The size of a command's buffer is not
limited to 255 bytes anymore.
2021-06-09 15:21:20 +08:00
Omar Chebib
e1f388f114 i2c: add i2c_cmd_link_create_static() to create commands from a given buffer
Application can now provide a buffer in order to allocate commands link.
Fixed few unclear details in the documentation.
Added wrappers to simplify I2C transfers.

Closes https://github.com/espressif/esp-idf/issues/5108
2021-06-09 15:21:20 +08:00
morris
b47d012720 mcpwm: refactor unit test 2021-06-09 12:27:01 +08:00