Commit Graph

1632 Commits

Author SHA1 Message Date
bizhuangyang
8143832041 spi_master:support octal mode for esp32s2 and esp32s3
Add support for 8-line spi for lcd on esp32s2 and esp32s3

Closes https://github.com/espressif/esp-idf/issues/6371
2021-08-19 16:40:22 +08:00
morris
f40bbb01f2 Merge branch 'feature/i80_lcd_support_esp32s2' into 'master'
esp_lcd: lcd driver for esp32/esp32s2/esp32s3

Closes IDF-3144, IDF-3314, IDF-3315, and IDF-3316

See merge request espressif/esp-idf!13679
2021-08-18 07:55:06 +00:00
Omar Chebib
4e3f5573c4 uart: cleaner way of handling error in a critical section
Some critical sections have also been added, making the code more
symetric accross the similar functions.

Closes https://github.com/espressif/esp-idf/pull/6396
2021-08-12 10:52:16 +08:00
Luca Burelli
e41e67f2f1 uart: Add missing critical section wrappers around rx_buffered_len
The missing barriers caused uart_get_buffered_data_len() to (very rarely)
return a garbage value. When used in MicroPython, though, this caused
select() to return and a subsequent read() to stall indefinitely until
a char was actually available.

Signed-off-by: Chen Yi Qun <chenyiqun@espressif.com>

Closes https://github.com/espressif/esp-idf/issues/6397
Merges https://github.com/espressif/esp-idf/pull/6396
2021-08-12 10:52:16 +08:00
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
morris
d4fe219c49 mcpwm: refactor driver 2021-06-09 12:27:01 +08:00
Michael (XIAO Xufeng)
dc6d6f225e spi_flash: reverted unwilling cs_setup argument
Partially reverted 08f1bbe0c7.

The host should have this flexibility, which is consistent to the cs_hold argument.

However, the user should know as less as possible about the host.
So the wrapper layer (esp_flash_spi_init.c) should cover this, helping to set cs_setup to 1, to meet the common requirements.
2021-06-04 15:29:53 +08:00
Cao Sen Miao
08f1bbe0c7 spi_flash: fix cs line setup to make the flash driver more stable 2021-06-01 16:41:41 +08:00
Michael (XIAO Xufeng)
ff29aded19 Merge branch 'bugfix/i2s_apll_disable_issue' into 'master'
i2s: fix driver uninstall issue

Closes IDF-3129

See merge request espressif/esp-idf!13238
2021-05-31 08:16:21 +00:00
Michael (XIAO Xufeng)
aecf85e74b Merge branch 'update_copyright_notice_driver_part_2' into 'master'
driver: update copyright notice, part 2

See merge request espressif/esp-idf!13650
2021-05-31 07:52:19 +00:00
Michael (XIAO Xufeng)
4fac9668c8 Merge branch 'update_copyright_notice_driver_part_3' into 'master'
driver: update copyright notice, part 3

See merge request espressif/esp-idf!13651
2021-05-31 07:50:31 +00:00
Michael (XIAO Xufeng)
dd47340d0e Merge branch 'update_copyright_notice_driver_part_4' into 'master'
driver: update copyright notice, part 4

See merge request espressif/esp-idf!13652
2021-05-31 07:37:19 +00:00
Michael (XIAO Xufeng)
23d2d2768a Merge branch 'refactor/apply_general_check_to_timer' into 'master'
driver/timer: apply genral check

See merge request espressif/esp-idf!13746
2021-05-31 07:22:03 +00:00
Michael (XIAO Xufeng)
dd0c1c7d95 Merge branch 'bugfix/delete_i2c_cmd_mux_semaphore_more_cleanly' into 'master'
dreiver/i2c: delete i2c cmd_mux semaphore more cleanly

Closes IDFGH-5062

See merge request espressif/esp-idf!13399
2021-05-28 07:56:34 +00:00
laokaiyao
3a6043900d driver/timer: apply genral check 2021-05-27 15:52:19 +08:00
laokaiyao
b807f2a666 driver/i2c: add notes to i2c deleteing function 2021-05-27 12:43:22 +08:00
Michael (XIAO Xufeng)
cd5f4ad4c2 Merge branch 'refactor/apply_general_check_to_ledc' into 'master'
ledc: apply general check macro

See merge request espressif/esp-idf!13499
2021-05-26 07:21:50 +00:00
Andrey Starodubtsev
614f1c175a Fix couple of UART issues
- there was a small race in `uart_pattern_link_free`:
  `rx_pattern_pos.data` was accessed for reading outside spinlock
- `uart_flush_input` enabled
  `UART_INTR_RXFIFO_FULL|UART_INTR_RXFIFO_TOUT` intr mask on exit even
  if these flags weren't set when function was called

Closes https://github.com/espressif/esp-idf/pull/7023
2021-05-26 15:07:00 +08:00
Jan Brudný
690974e32f driver: update copyright notice 2021-05-25 17:43:57 +02:00
Jan Brudný
a93daccabe driver: update copyright notice 2021-05-24 02:02:15 +02:00
Jan Brudný
6667c5dc2a driver: update copyright notice 2021-05-24 01:53:34 +02:00
Jan Brudný
58f79e6b00 driver: update copyright notice 2021-05-24 01:06:17 +02:00
Michael (XIAO Xufeng)
2e4d3ad880 Merge branch 'feature/bringup_esp32s3beta_cmake_sdmmc' into 'master'
esp32s3: add sdmmc support

Closes IDF-1569

See merge request espressif/esp-idf!8304
2021-05-20 04:22:11 +00:00
Ivan Grokhotkov
38d902f544 Merge branch 'feature/gdbstubs_rt' into 'master'
Extension of GDBStub component for handling GDB by serial port at runtime.

See merge request espressif/esp-idf!10312
2021-05-18 17:14:51 +00:00
Michael (XIAO Xufeng)
8409485b22 Merge branch 'doc/fix_misleading_of_mcpwm_capture_enable_doc' into 'master'
driver/mcpwm: fix the misleading of mcpwm_capture_enable parameters

Closes IDFGH-3000

See merge request espressif/esp-idf!13497
2021-05-16 15:15:26 +00:00
bizhuangyang
31cdeb538d ledc: apply general check macro
Standardize LEDC_CHECK() and LEDC_ARG_CHECK() in ledc.c to ESP_RETURN_ON_FALSE() in esp_check.h.
2021-05-13 16:57:16 +08:00
Michael (XIAO Xufeng)
e941bc838c Merge branch 'feature/lcd_driver' into 'master'
esp_lcd component panel driver

Closes IDF-2933 and IDF-2934

See merge request espressif/esp-idf!12813
2021-05-13 04:29:07 +00:00
laokaiyao
e66f25caf2 driver/mcpwm: fix the misleading of mcpwm_capture_enable parameters
closes https://github.com/espressif/esp-idf/issues/5032
2021-05-13 12:23:19 +08:00
morris
270ed70f3e gdma: support reset dma fifo at runtime 2021-05-12 17:10:37 +08:00
Dmitry
7bb91f912c gdbstub component 2021-05-11 15:55:39 +03:00
laokaiyao
48c848a895 driver/ledc: support invert channel output 2021-05-11 11:54:16 +08:00
Ivan Grokhotkov
2c8f413059 driver: sdmmc: add esp32s3 support
* Extend sdmmc_slot_config_t with GPIO pin numbers for all SD bus
  signals. These new fields are available if SOC_SDMMC_USE_GPIO_MATRIX
  is set.
* Add shorter "sd" and "wp" aliases for "gpio_sd" and "gpio_wp" field
  names in sdmmc_slot_config_t.
* Deprecate sdmmc_host_pullup_en, prefer to enable this feature using
  SDMMC_SLOT_FLAG_INTERNAL_PULLUP instead.
2021-05-10 23:21:27 +02:00
Melissa LeBlanc-Williams
33e8d1e0b0 dreiver/i2c: delete i2c cmd_mux semaphore more cleanly
Merges https://github.com/espressif/esp-idf/pull/6848
2021-05-07 18:03:38 +08:00
Michael (XIAO Xufeng)
758238a8a1 Merge branch 'bugfix/separate_gdma_tx_rx_interrupt' into 'master'
gdma: separate tx/rx channel interrupt

Closes IDF-3181

See merge request espressif/esp-idf!13367
2021-05-06 16:38:44 +00:00
Ivan Grokhotkov
f67f7d6774 Merge branch 'bugfix/adc_channel_comment_typo' into 'master'
adc: fix typos in comments (Github PR)

Closes IDFGH-4774

See merge request espressif/esp-idf!13437
2021-05-06 11:49:58 +00:00
Ivan Grokhotkov
3717a318f6 Merge branch 'bugfix/gpio_isr_doc' into 'master'
gpio_isr_register(): Correct order of arguments in docs (Github PR)

Closes IDFGH-1780

See merge request espressif/esp-idf!13439
2021-05-06 11:49:34 +00:00
Alex Lisitsyn
ea6710ce98 soc/hal: add tinyusb support esp32s3
add usb hal/soc, usb_ll files and esp32s3 target for usb
move usb_hal.h into soc common folder
soc/hal: fix soc and periph for usb
tinyusb: fix tinyusb io header
hal: usb_ll fix pull up/down config for esp32s3
soc/hal: fix peripheral addresses
2021-05-06 16:20:54 +08:00
morris
6e981af406 gdma: separate tx/rx channel interrupt 2021-05-06 15:06:37 +08:00
Martin Thierer
75e0c6aaf5 gpio_isr_register(): Correct order of arguments in docs
Make documentation order consistent with function signature.

Merges https://github.com/espressif/esp-idf/pull/3999
2021-05-05 15:56:26 +02:00
Christian Winkler
13abf1ed2e Fix adc-channel typo
Merges https://github.com/espressif/esp-idf/pull/6577
2021-05-05 15:40:35 +02:00
Jakob Hasse
31bba67491 [driver]: removed redundant code in CMakeLists.txt 2021-04-27 18:07:44 +08:00
Michael (XIAO Xufeng)
fb1fd26caf Merge branch 'refactor/gdma_check_macro' into 'master'
gdma: replaced DMA_CHECK by ESP_GOTO_ON_FALSE

Closes IDF-3131

See merge request espressif/esp-idf!13208
2021-04-27 03:07:01 +00:00
Michael (XIAO Xufeng)
5997fcd45d Merge branch 'feature/update_adc_programming_guide_on_c3' into 'master'
adc: update esp32c3 programming guide

Closes IDF-2333

See merge request espressif/esp-idf!12563
2021-04-23 12:52:07 +00:00
laokaiyao
e0004dc443 gdma: replaced DMA_CHECK with ESP_GOTO_ON_FALSE and ESP_GOTO_ON_ERROR 2021-04-23 14:49:30 +08:00
Michael (XIAO Xufeng)
fdb8736a95 Merge branch 'feature/spi_slave_hd_segment_example' into 'master'
spi_slave_halfduplex: add an example for segment mode

Closes IDF-1699

See merge request espressif/esp-idf!10043
2021-04-23 03:23:25 +00:00
morris
d928cdd0b1 i2s: fix driver uninstall issue 2021-04-23 10:34:13 +08:00
Michael (XIAO Xufeng)
dfdc337e27 Merge branch 'bugfix/twai_caps_naming_and_tidy_up' into 'master'
Fix TWAI caps

Closes IDF-2456

See merge request espressif/esp-idf!13172
2021-04-23 02:21:47 +00:00
Armando
3177130256 adc: add adc programming guide on c3 2021-04-21 10:40:55 +08:00
Armando
85e29dace7 spi_slave_hd: add callback after data is loaded to the DMA for segment mode 2021-04-20 20:08:29 +08:00
Darian Leung
54eb152a96 TWAI: Simply caps and remove unused caps 2021-04-16 18:36:18 +08:00
Marius Vikhammer
826b976ba5 timer: add IRAM_ATTR to spinlock give/take API
Closes https://github.com/espressif/esp-idf/issues/6824
2021-04-15 09:50:06 +08:00
Jiang Jiang Jian
1f54d17503 Merge branch 'bugfix/esp32c3_deep_sleep_gpio_wakeup_issue' into 'master'
deep sleep: fix sleep gpio wakeup fail issue

Closes WIFI-3474

See merge request espressif/esp-idf!13074
2021-04-14 06:36:40 +00:00
Michael (XIAO Xufeng)
1f29036ead Merge branch 'feat/c3_driver_api_cleanup' into 'master'
driver: cleanup i2c, i2s on C3

Closes IDF-2759 and IDF-2760

See merge request espressif/esp-idf!12329
2021-04-13 09:00:11 +00:00
Michael (XIAO Xufeng)
f5f3c7143c Merge branch 'feat/c3_driver_api_cleanup_gpio' into 'master'
gpio, rtcio: removed unsupported features on different targets

See merge request espressif/esp-idf!13103
2021-04-13 06:51:33 +00:00
Michael (XIAO Xufeng)
54fdaa5986 Merge branch 'docs/spi_max_transfer_sz_limit' into 'master'
spi_docs: Fixed the default value of max_transfer_sz.

See merge request espressif/esp-idf!13000
2021-04-13 06:51:11 +00:00
Michael (XIAO Xufeng)
6ab5b9cbf9 gpio, rtcio: removed unsupported features on different targets 2021-04-13 13:21:08 +08:00
Michael (XIAO Xufeng)
7e06a60c0d Merge branch 'refactor/no_dac_on_esp32s3' into 'master'
dac: added DAC support macro

Closes IDF-1777

See merge request espressif/esp-idf!13038
2021-04-12 10:52:33 +00:00
Michael (XIAO Xufeng)
8cfcf6da7a Merge branch 'bugfix/enable_gpio18_gpio19_esp32c3' into 'master'
gpio: Disable USB JTAG when setting pins 18 and 19 as GPIOs on ESP32C3

Closes IDF-2964

See merge request espressif/esp-idf!12753
2021-04-12 09:39:55 +00:00
Michael (XIAO Xufeng)
67941fc495 i2s: removed unsupported features on different targets 2021-04-12 15:51:54 +08:00
Michael (XIAO Xufeng)
82e4a2431a i2c: removed unsupported features on different targets 2021-04-12 15:51:19 +08:00
morris
75dfd970b4 dac: added DAC support macro
Remove DAC support on ESP32-S3
2021-04-12 12:04:46 +08:00
Li Shuai
2c2ae5aa0a deep sleep: fix sleep gpio wakeup fail issue 2021-04-09 11:35:32 +08:00
Michael (XIAO Xufeng)
57af5acefe Merge branch 'ci/enable_all_test_for_i2c_on_c3' into 'master'
I2C: enable all unit test for i2c on esp32c3

Closes IDF-2494

See merge request espressif/esp-idf!12474
2021-04-08 12:31:51 +00:00
Michael (XIAO Xufeng)
925dacd7fb Merge branch 'bugfix/remove_HSPI_macro_on_c3' into 'master'
spi: remove HSPI macros on esp32c3 and esp32s3

Closes IDF-2535

See merge request espressif/esp-idf!12637
2021-04-08 09:33:18 +00:00
Omar Chebib
cd79f3907d gpio: Disable USB JTAG when setting pins 18 and 19 as GPIOs on ESP32C3
When `DIS_USB_JTAG` eFuse is NOT burned (`False`), it is not possible
to set pins 18 and 19 as GPIOs. This commit solves this by manually
disabling USB JTAG when using pins 18 or 19.
The functions shall use `gpio_hal_iomux_func_sel` instead of
`PIN_FUNC_SELELECT`.
2021-04-08 14:01:18 +08:00
Cao Sen Miao
c3da21a93f I2C: enable all unit test for i2c on esp32c3 2021-04-06 17:37:55 +08:00
Armando
9b9ea71ff9 spi: remove HSPI macro on esp32c3 and esp32s3 2021-04-06 13:42:49 +08:00
Michael (XIAO Xufeng)
e89fabb963 spi_docs: Fixed the default value of max_transfer_sz. 2021-04-01 14:59:29 +08:00
Angus Gratton
3c9e9a7704 Merge branch 'bugfix/renable_unit_tests' into 'master'
ci: enable previously disabled unit tests

See merge request espressif/esp-idf!12582
2021-04-01 03:23:22 +00:00
Darian Leung
2f58060921 TWAI: FIFO overrun handling and errata workarounds
This commit adds handling for FIFO overruns and
adds workarounds for HW errats on the ESP32.

Closes https://github.com/espressif/esp-idf/issues/2519
Closes https://github.com/espressif/esp-idf/issues/4276
2021-03-30 14:17:31 +08:00
Marius Vikhammer
b4d2fb56a0 ci: enable previously disabled unit tests 2021-03-29 18:36:41 +08:00
Michael (XIAO Xufeng)
99aaebb5e4 Merge branch 'bugfix/adc_power_issue' into 'master'
adc: fix adc power issue

Closes IDF-2954, WIFI-3453, WIFI-3462, IDFGH-4439, and IDFGH-4887

See merge request espressif/esp-idf!12757
2021-03-29 07:31:43 +00:00
Michael (XIAO Xufeng)
bdaac823e3 Merge branch 'feature/spi_slave_hd_dual_test_for_segment_mode' into 'master'
spi slave hd: add a dual test for segment mode when master's transactions are too long

See merge request espressif/esp-idf!11176
2021-03-29 06:16:10 +00:00
Jiang Jiang Jian
72ddc6ee40 Merge branch 'bugfix/esp32c3_light_sleep_gpio_reset_issue' into 'master'
light sleep: add software workaround for esp32c3 gpio reset issue

See merge request espressif/esp-idf!12715
2021-03-29 04:55:55 +00:00
Armando
cc6bfcd9ac adc: apply adc power API to adc driver
Closes https://github.com/espressif/esp-idf/issues/6269
Closes https://github.com/espressif/esp-idf/issues/6682
2021-03-26 17:58:00 +08:00
Armando
0e0baee25a adc: add implementation of missed public API
Added ``adc1_pad_get_io_num``, ``adc2_pad_get_io_num`` and
``adc_vref_to_gpio``.
2021-03-26 12:04:46 +08:00
Armando
6f4d992ac7 adc: update lock scope on esp32c3 2021-03-26 12:04:46 +08:00
Armando
e9995fe165 adc: add pm_lock to adc driver on esp32c3 2021-03-26 12:04:46 +08:00
Armando
a5295af829 adc: update adc header files on c3 2021-03-26 12:04:46 +08:00
Armando
00a3f48bd8 adc: refactor adc single read api on esp32c3 2021-03-26 12:04:46 +08:00
Armando
69a0f8b9bb adc: seperate hal layer and driver layer 2021-03-26 12:04:46 +08:00
Armando
bee90f57f1 adc: remove unused functions on esp32c3 2021-03-26 12:04:45 +08:00
Li Shuai
b3bc27972e light sleep: add software workaround for esp32c3 gpio reset issue 2021-03-25 15:03:09 +08:00
Armando
026545b71e spi_slave_hd: add a dual-board test when master sends too long on
ESP32C3

This test can also be used between ESP32/S2/S3/C3.
2021-03-25 10:31:29 +08:00
Angus Gratton
04652619aa Merge branch 'bugfix/timer_divider_overflow' into 'master'
timer: removed downcasting when setting divider

Closes IDFCI-515

See merge request espressif/esp-idf!12840
2021-03-24 02:04:20 +00:00
Angus Gratton
fa2946d651 Merge branch 'feature/support_esp32s3_beta_3' into 'master'
Support ESP32S3 beta 3 target

Closes IDF-2908

See merge request espressif/esp-idf!12661
2021-03-23 10:17:58 +00:00
Marius Vikhammer
2711c55dc6 timer: removed downcasting when setting divider
Dividers bigger than 65536 are already handled in ll,
so we shouldnt downcast it.
2021-03-23 11:05:16 +08:00
Jiang Jiang Jian
f38871b4b3 Merge branch 'bugfix/crash_on_enabling_verbose_logs' into 'master'
Fixes issue of crashing when verbose logs are enabled.

Closes WIFI-3423

See merge request espressif/esp-idf!12414
2021-03-22 12:52:29 +00:00
Michael (XIAO Xufeng)
67ba80f2ec Merge branch 'bugfix/reduce_the_consumption_of_touch_sensor_during_deep_sleep' into 'master'
fix: reduce the consumption of touch sensor during deep sleep

See merge request espressif/esp-idf!12248
2021-03-22 07:10:44 +00:00
aditi_lonkar
e478d19b45 esp_wifi: Fixes issue of crashing when verbose logs are enabled. 2021-03-22 06:58:16 +00:00
Michael (XIAO Xufeng)
4028d4e083 Merge branch 'feature/mcpwm_add_peripheral_signal_list' into 'master'
mcpwm: added peripheral signal description list

See merge request espressif/esp-idf!12480
2021-03-18 10:07:59 +00:00
Marius Vikhammer
2aead8ba57 Support ESP32S3 Beta 3 target
Update ROM API. Port changes from bringup branch.
2021-03-18 10:24:22 +08:00
morris
ff65363ada mcpwm: configure gpio using by lookup table 2021-03-16 21:54:00 +08:00
morris
f5ca47c0fc mcpwm: rename macros related to soc capbility 2021-03-16 21:53:59 +08:00
Armando
dd8076acf4 spi: update slv dual board test for ci due to no pullup resistor on io10 on c3 2021-03-16 15:28:17 +08:00
fuzhibo
6b361ed70f fix: reduce the consumption of touch sensor during deep sleep 2021-03-15 03:59:54 +00:00
Armando
0fb93c3726 spi_master: fix cmd test ci failure 2021-03-15 11:31:38 +08:00
Michael (XIAO Xufeng)
23eff08638 Merge branch 'feature/gpio_esp32c3_add_deprecated_header' into 'master'
Added missing ESP32-S3 target for /rom/gpio.h include

Closes IDFGH-4870

See merge request espressif/esp-idf!12648
2021-03-12 07:49:30 +00:00
Seon Rozenblum
dd2a8e330b Added missing ESP32-S3 target for /rom/gpio.h include
I know this is being depreciated in 5, but we need it working for S3 in 4.x :)

Closes https://github.com/espressif/esp-idf/pull/6666
2021-03-08 17:54:16 +08:00
William Ferguson
13bc5feb0a [cxx]: fixed extern "C" declarations
* Moving #includes above
  #ifdef __cplusplus extern "C" { #endif
  So that we can compile with CPP.

Signed-off-by: Jakob Hasse <jakob.hasse@espressif.com>

Merges https://github.com/espressif/esp-idf/pull/6634
2021-03-08 14:11:33 +08:00
Angus Gratton
c68f869411 driver: Remove some stray __FILE__ macros
Related to https://github.com/espressif/esp-idf/issues/6306
2021-03-03 10:26:57 +11:00
Angus Gratton
d6f4d99d93 core system: Fix warnings in compilation when assertions are disabled
Adds a CI config for hello world that sets this, to catch future regressions
2021-03-03 10:26:57 +11:00
Cao Sen Miao
a8343bc470 esp_system: support gpio wakeup from deep sleep on esp32c3 2021-02-26 12:26:49 +08:00
Marius Vikhammer
06abe3413f temp_sensor: fix broken include path 2021-02-26 10:25:05 +08:00
Angus Gratton
501af6dfa2 Merge branch 'feature/secure_boot_revoke_check' into 'master'
secure_boot: Checks secure boot efuses

Closes IDF-2609

See merge request espressif/esp-idf!12148
2021-02-25 22:38:42 +00:00
morris
efa92cb204 rmt: support invert RMT signal by GPIO matrix 2021-02-25 12:42:23 +08:00
morris
7b37158ede rmt: distinguish group and channel in HAL layer 2021-02-25 12:42:23 +08:00
Angus Gratton
a0eb455ec3 Merge branch 'refactor/misc_move_from_esp_common' into 'master'
Movements from esp_common

Closes IDF-1947

See merge request espressif/esp-idf!9692
2021-02-24 23:16:52 +00:00
Michael (XIAO Xufeng)
2f78b2e46f Merge branch 'bugfix/fix_spi_slv_hd_dma_reset_issue' into 'master'
spi_slave_hd: fix dma reset issue

See merge request espressif/esp-idf!12275
2021-02-24 12:41:33 +00:00
Renz Bagaporo
5e8799bbfe esp_common: move some headers 2021-02-24 12:16:37 +08:00
Armando
8d90d3072c spi_slave_hd: refactor the hal append api to remove the spinlock 2021-02-24 12:01:31 +08:00
morris
9f1c82d547 gdma: fix wrong level of {group,pair} ref count 2021-02-24 11:38:57 +08:00
Cao Sen Miao
85855ad8a6 temp_sensor: add calibration for esp32c3 2021-02-23 10:48:17 +08:00
KonstantinKondrashov
90f2d3199a secure_boot: Checks secure boot efuses
ESP32 V1 and V2 - protection bits.
ESP32xx V2: revoke bits, protection bits

- refactor efuse component
- adds some APIs for esp32 chips as well as for esp32xx chips
2021-02-23 03:56:21 +08:00
Omar Chebib
727481d71c gpio: enable GPIO19 on ESP32C3 boards 2021-02-22 08:44:55 +00:00
Armando
889de9ebd9 spi: add enum for spi dma channels 2021-02-22 07:06:05 +00:00
Armando
d0415bd8f6 spi: remove hard-coded DMA chan in soc_caps.h 2021-02-22 07:06:05 +00:00
Armando
db3bf8b544 spi: refactor spi_common dma allocator 2021-02-22 07:06:05 +00:00
Armando
c8d9ed1f3d spi: update unit tests to spi gdma allocator 2021-02-22 07:06:05 +00:00
Armando
c438ad5d72 spi: apply gdma allocator to SPI 2021-02-22 07:06:05 +00:00
Armando
2e670bf6af spi: add dma channel auto-alloc feature on esp32 2021-02-22 07:06:05 +00:00
Armando
5427c18781 adc: apply gdma api to adc on esp32c3 2021-02-08 11:41:21 +08:00
Michael (XIAO Xufeng)
822a40a6cf Merge branch 'fix/adc_xpd_calibration' into 'master'
adc: fixed the issue that ADC power is left on after the calibration is done

See merge request espressif/esp-idf!12207
2021-02-05 16:28:53 +08:00
Michael (XIAO Xufeng)
351ba5ff9e adc: fixed the issue that ADC power is left on after the calibration is done
Also refactor the locks in the adc_common.c file.
2021-02-05 14:17:52 +08:00
Michael (XIAO Xufeng)
09b827b2c8 Merge branch 'feature/spi_slave_double_board_test_for_slave_transaction' into 'master'
spi slave: add a double board test for esp32c3 relating to sending/receiving unaligned data

See merge request espressif/esp-idf!11153
2021-02-05 00:51:24 +08:00
Michael (XIAO Xufeng)
67779e8e25 Merge branch 'docs/spi_mode' into 'master'
spi: add explaination to the modes

See merge request espressif/esp-idf!12251
2021-02-04 23:00:28 +08:00
Michael (XIAO Xufeng)
52a76867d1 Merge branch 'bugfix/spi_lose_last_3_bytes' into 'master'
spi_master: fix an issue where master cannot correctly receive data when using DMA in halfduplex mode.

Closes IDFGH-612

See merge request espressif/esp-idf!11354
2021-02-04 18:35:48 +08:00
Michael (XIAO Xufeng)
586dd7d7cd spi: add explaination to the modes 2021-02-03 21:56:53 +08:00
Michael (XIAO Xufeng)
a2aa349dcc adc: fixed the issue adc_gpio_init doesn't support ADC_UNIT_BOTH 2021-02-03 20:55:58 +08:00
Michael (XIAO Xufeng)
c4346abfb7 Merge branch 'feature/i2c_master_cmd_begin_const' into 'master'
i2c: modify internal impl to ensure the cmd will not be modified

See merge request espressif/esp-idf!12153
2021-02-01 11:18:02 +08:00
Michael (XIAO Xufeng)
9ff04b2e79 Merge branch 'feature/musical_buzzer' into 'master'
RMT example: musical buzzer

See merge request espressif/esp-idf!10346
2021-01-28 01:04:24 +08:00
Martin Vychodil
69096ddce5 Security: ESP32C3 memory protection feature (IRAM0/DRAM0)
Software support for PMS module.
Allows controlled memory access to IRAM (R/W/X) and DRAM0 (R/W)
On/locked by default, configurable in Kconfig (esp_system)

Closes https://jira.espressif.com:8443/browse/IDF-2092
2021-01-27 08:44:03 +01:00
Michael (XIAO Xufeng)
baedf7c9bb Merge branch 'bugfix/potential_cocurrency_issue_in_gdma' into 'master'
gdma: fix potential cocurrency issue

Closes IDF-2646

See merge request espressif/esp-idf!12001
2021-01-27 15:07:35 +08:00
Michael (XIAO Xufeng)
da4b4fc565 Merge branch 'bugfix/mcpwm_can_set_two_falut_signal' into 'master'
mcpwm: fix second fault line broken issue

Closes IDFGH-4194

See merge request espressif/esp-idf!12119
2021-01-27 11:36:30 +08:00
Michael (XIAO Xufeng)
31955fd7ea i2c: modify internal impl to ensure the cmd will not be modified
related to: https://github.com/espressif/esp-idf/issues/5108
2021-01-27 01:31:49 +08:00
Michael (XIAO Xufeng)
2b83418141 adc: add fallback calibration method
Also:
1. Separate static configuration into init phase to improve
performance
2. Add a init code config layer to avoid duplicated configuration
3. Add a HW_CALIBRATION_V1 caps
2021-01-25 20:30:42 +08:00
Michael (XIAO Xufeng)
c257daa950 wifi: run adc2 calibration on C3 2021-01-25 15:08:50 +08:00
Armando
f5f0461264 tmpsensor: add temp_sensor.h for c3 2021-01-25 04:51:40 +00:00
Armando
f9ec7ddda3 adc: add comment for ADC sampling frequency 2021-01-25 04:51:40 +00:00
Armando
d8a4b247b9 adc_digi: update_adc_api_for_5M_freq_limit
The ``adc_digi_config_t`` struct is modified on esp32c3: configuration
of clock divider factors are not provided anymore. The SARADC sampling
frequency is provided instead. In this way, we can handle the frequency
limit better.
2021-01-25 04:51:40 +00:00
Michael (XIAO Xufeng)
90fc3e7030 adc: update the monitor and filter in the HAL on C3
On C3 ADC has no enable bit for monitor and filter. However we can use context variables to implement one
2021-01-25 04:51:40 +00:00
fuzhibo
19fb11549b driver(adc): update adc ll and hal driver for esp32c3 2021-01-25 04:51:40 +00:00
Armando
271c97149d rtc_tmpsensor: remove redundant semaphore on c3 2021-01-25 04:51:40 +00:00
Angus Gratton
feb293797f driver: esp32c3 rtc_tempsensor compile fixes 2021-01-25 04:51:40 +00:00
fuzhibo
33647c7cd4 update temperature Sensor driver for esp32c3 2021-01-25 04:51:40 +00:00
Angus Gratton
a5fb7deda5 driver: Update/cleanup esp32c3 rtc_tempsensor.c 2021-01-25 04:51:40 +00:00
Armando
02600309c8 adc: fix some regression issues 2021-01-25 04:51:40 +00:00
Armando
2b737c1927 adc: fix adc invalid data issue by update adc_reset 2021-01-25 04:51:40 +00:00
Cao Sen Miao
4e6e34e3ad adc_i2s: solve the i2s_adc issue when using wifi 2021-01-25 04:51:40 +00:00
Ivan Grokhotkov
abe94e3b53 adc: add adc_power_acquire/release, deprecate adc_power_on/off 2021-01-25 04:51:40 +00:00
Michael (XIAO Xufeng)
d7d1dee208 system: reset dma when soft reset 2021-01-25 04:51:40 +00:00
Armando
b38f4646de adc_digi: add dma drivers 2021-01-25 04:51:40 +00:00
Jiang Jiang Jian
76bb9565af Merge branch 'bugfix/fix_wifi_interface_use' into 'master'
esp_wifi: Modify ESP_IF_WIFI_STA to WIFI_IF_STA

See merge request espressif/esp-idf!12050
2021-01-25 12:18:27 +08:00
Michael (XIAO Xufeng)
06f22fc4b0 Merge branch 'feature/new_restart_mode_driver_and_ut_for_spi_slave_hd' into 'master'
spi_slave_halfduplex: append mode driver

See merge request espressif/esp-idf!10845
2021-01-24 09:27:12 +08:00
morris
d4b9198f05 mcpwm: fix second fault line broken
Closes: https://github.com/espressif/esp-idf/issues/6053
2021-01-22 16:18:37 +08:00
Armando
0538dc2d93 spi_slave_hd: add DMA Append Mode feature 2021-01-21 18:53:53 +08:00
Angus Gratton
cfdd7f0f22 Merge branch 'feature/c3_crypto_gdma' into 'master'
AES/SHA: GDMA crypto driver

Closes IDF-2192 and IDF-2501

See merge request espressif/esp-idf!12014
2021-01-20 16:42:39 +08:00
Jiang Jiang Jian
26ae354dc5 Merge branch 'feature/support_esp32c3_lightsleep_master' into 'master'
support esp32c3 lightsleep for master

Closes IDF-2106

See merge request espressif/esp-idf!11975
2021-01-20 16:00:06 +08:00
Krzysztof Budzynski
08815671e0 Merge branch 'bugfix/adc_full_scale_voltages' into 'master'
docs: Update full-scale voltages for ESP32-S2 chip

Closes DOC-578

See merge request espressif/esp-idf!11214
2021-01-19 16:03:53 +08:00
Li Shuai
6d12fdd6e7 light sleep: add gpio configure workaround at slept status for esp32c3 2021-01-19 14:51:22 +08:00
Krzysztof
6df6123ff6 docs: Update full-scale voltages for ESP32-S2 chip 2021-01-19 14:47:17 +08:00
xiehang
b8a8fe3f54 esp_wifi: Modify ESP_IF_WIFI_STA to WIFI_IF_STA 2021-01-19 11:55:44 +08:00
Marius Vikhammer
51169b0e0c AES/SHA: use GDMA driver instead of LL 2021-01-19 11:02:51 +08:00
ninh
659d805411 esp_wifi: light sleep optimization 2021-01-18 15:31:03 +08:00
ninh
27aa6c289f components/pm: Add slp gpio configure workaround 2021-01-15 15:34:45 +08:00
morris
467d44970e rmt: support setting loop count at runtime 2021-01-14 21:26:04 +08:00
morris
914ba4914a gdma: fix potential cocurrency issue
Alloc handle memory first then hook, we can benifit:
1. Don't have to do malloc in a critical section
2. Don't have to do esp_intr_free in a critical section
2021-01-14 20:37:36 +08:00
Marius Vikhammer
0713e93b8f TWAI: bringup for S3 and C3 2021-01-14 20:30:31 +08:00
Michael (XIAO Xufeng)
ea996df725 Merge branch 'feature/rmt_support_user_context_in_translator' into 'master'
rmt: support user context in translator

Closes IDFGH-4135 and IDFGH-3237

See merge request espressif/esp-idf!10894
2021-01-14 19:26:26 +08:00
morris
95e712039c rmt: add workaround to get user context in a graceful way 2021-01-14 11:01:41 +08:00
Michael (XIAO Xufeng)
2d3f22918f Merge branch 'feature/gdma_channel_allocator' into 'master'
gdma channel allocator

Closes IDF-2124

See merge request espressif/esp-idf!11570
2021-01-14 10:52:49 +08:00
Nishanth Samala
21bb6f2334 rmt: support rmt user context in translator
Merges https://github.com/espressif/esp-idf/pull/6002
2021-01-14 10:51:25 +08:00
Angus Gratton
f683db7aea Merge branch 'feature/c3_IDF-2554' into 'master'
global: Uses CCOUNT API instead of XTHAL macro

Closes IDF-2554

See merge request espressif/esp-idf!11954
2021-01-13 12:55:21 +08:00
Angus Gratton
9769be3fde Merge branch 'bugfix/fix_sign_compare' into 'master'
global: fix sign-compare warnings for system level components

See merge request espressif/esp-idf!11252
2021-01-13 12:45:05 +08:00
morris
e6d23a35ec gdma: dynamic alloc DMA channels 2021-01-13 10:52:27 +08:00
KonstantinKondrashov
dada7cd035 global: Uses CCOUNT API instead of XTHAL macro 2021-01-12 16:24:23 +08:00
morris
753a929525 global: fix sign-compare warnings 2021-01-12 14:05:08 +08:00
Armando
2bc1442351 spi_slave: add a dual board test of sending/receiving unalinged data on
esp32c3

This test can also be used between ESP32/S2/S3/C3.
2021-01-05 21:26:53 +08:00
Armando
23d08fbe85 spi_master: add a test for HD master to receive data correctly via dma
Issue Description:
If master is in HD mode, if it sends data without receiving data,
it will still enable the RX DMA because of old version ESP32 silicon issue.
And because there is no correctly linked RX DMA descriptor,
an inlink_dscr_error intr will be seen, which will influence the following RX transactions.

This issue is only found on ESP32.
2021-01-05 19:32:46 +08:00
fuzhibo
e51a7a6b6f driver: update touch sensor apis 2021-01-05 03:11:58 +00:00
Marius Vikhammer
68608f804c esp32c3: Misc fixes needed to build & run 2020-12-31 15:20:05 +11:00
Mahavir Jain
7d387cf65e Merge branch 'fix/i2c_pm_lock' into 'master'
i2c: Acquire PM lock after acquiring mutex

See merge request espressif/esp-idf!11704
2020-12-30 15:44:34 +08:00
Ivan Grokhotkov
7f3b16a99d freertos: always enable static allocation
to use it for newlib locks
2020-12-29 16:18:04 +01:00
Angus Gratton
c3ba995f2c Merge branch 'ci/ccomp_performance_tests' into 'master'
unit_test: Refactor all performance tests that rely on cache compensated timer

See merge request espressif/esp-idf!11709
2020-12-24 13:44:52 +08:00
Angus Gratton
1cc206f393 driver: Only build dedic_gpio driver on supported chips 2020-12-23 09:53:24 +11:00
Armando
2d37bfa126 driver: Add adc_digi single conversion mode
- add lock for single read and continuous read APIs
- update onetime read start singal delay for hardware limitation[*]
- move adc_caps to soc_caps.h
- update license dates

[*] There is a hardware limitation. If the APB clock frequency is high, the
step of this reg signal: ``onetime_start`` may not be captured by the
ADC digital controller (when its clock frequency is too slow). A rough
estimate for this step should be at least 3 ADC digital controller
clock cycle.
2020-12-23 09:53:24 +11:00
Angus Gratton
8e0d423a5e driver: Add rtc_io hold/wakeup c3 support
Temporary implementation, should be moved to HAL

Copied from internal commit 3ef01301ff
2020-12-23 09:53:24 +11:00
Angus Gratton
f09b8ae7a4 driver: Add esp32c3 ADC driver
Based on internal commit 3ef01301fffa552d4be6d81bc9d199c223224305
2020-12-23 09:53:24 +11:00
Angus Gratton
27a9cf861e driver: Add esp32c3 drivers (except ADC/DAC) and update tests
Some ESP32-C3 drivers are still pending.

Based on internal commit 3ef01301fffa552d4be6d81bc9d199c223224305
2020-12-23 09:53:24 +11:00
Marius Vikhammer
0a95151a75 unit_test: Refactor all performance tests that rely on cache compensated timer
There is no ccomp timer on C3, which means our performance tests will start
failing again due to variance caused by cache misses.

This MR adds TEST_PERFORMANCE_CCOMP_ macro that will only fail
performance test if CCOMP timer is supported on the target
2020-12-22 18:56:24 +11:00
Sachin Parekh
6e1f53bce3 i2c: Acquire PM lock after acquiring mutex 2020-12-22 00:50:19 +05:30
Michael (XIAO Xufeng)
04d6b115ae adc: fixed efuse called in critical section issue 2020-12-08 17:41:49 +08:00
Michael (XIAO Xufeng)
f174cc35a8 Merge branch 'test/disable_sdio_single_core_tests' into 'master'
ci: disable some sdio_slave tests on single core config

Closes IDFCI-233 and IDFCI-240

See merge request espressif/esp-idf!11492
2020-12-08 11:48:13 +08:00
Cao Sen Miao
d6f0b4af6f adc_i2s: solve the i2s_adc issue when using wifi 2020-12-07 10:45:04 +08:00
Ivan Grokhotkov
d890a516a1 driver: add notes about GPIO36/39 issue (ECO 3.11) workaround
Closes IDFGH-1917
Closes https://github.com/espressif/esp-idf/issues/4117
2020-12-07 10:45:04 +08:00
Ivan Grokhotkov
a4f81d0bd3 adc: add adc_power_acquire/release, deprecate adc_power_on/off 2020-12-07 10:45:04 +08:00
Michael (XIAO Xufeng)
a579011584 ci: disable some sdio_slave tests on single core config 2020-12-07 10:15:35 +08:00
Wu Bo Wen
5cc329b9d0 driver/adc: support for esp32s2 adc calibration scheme V2
notice that the o_code is now pulled from efuse instead of automatically calibrated. This may influence other parts of the system.

Closes https://github.com/espressif/esp-idf/issues/5455
2020-12-03 20:08:59 +08:00
Angus Gratton
337985de04 driver: Simplify spi dma peripheral enable/disable logic 2020-12-01 10:58:50 +11:00
Angus Gratton
beb75b13f2 driver test: Use regular target guards for single-target test files 2020-12-01 10:58:50 +11:00
Angus Gratton
5228d9f9ce esp32c3: Apply one-liner/small changes for ESP32-C3 2020-12-01 10:58:50 +11:00